Deutsch
Forum

Datei wird nicht gefunden

 

Thomas
Zielinski
Grüßt euch,
Ich hab ein Problem mit LoadFile$ und weis nicht weiter.
Wenn man in folgendem Beispiel auf "Laden" klickt und eine Datei auswählt, wird ganz normal der Pfad gespeichert und die Größe der Datei ausgegeben. Klickt man nun nochmal auf "Laden" und wählt diese Datei aus, so erzählt mir mein XProfan8 dass es die Datei nicht finden kann. Das tritt aber nur auf, wenn man die Datei mit Assign öffnet.
KompilierenMarkierenSeparieren
Declare but&,e%,file$
cls
but& = Create("Button",%HWnd,"Laden",0,0,100,25)
e%=0

WhileNot e%=1

    WaitInput

    If GetFocus(but&)

        file$ = LoadFile$("Laden:","Bitmaps|*.bmp")
        MessageBox(STR$(FileSize(file$)),"INFO",4096)Bei zweitem aufruf wird hier der fehler angezeigt
        Datei nicht gefunden.
        Assign #1, file$aber nur wenn die 2 Zeilen hier stehen
        Hier die ueblichen dateiarbeiten
        Close #1

    EndIf

Wend

End
 
XProfan X4; Win10 x64
Der Kuchen ist eine lüge!
22.07.2008  
 



XProfan8? Weil XProfan10 macht da keine Probleme...
 
22.07.2008  
 




Paul
Glatz
xprofan 10 free macht keine probleme
 
22.07.2008  
 




Michael
Dell
Hallo Thomas,

setzt mal folgende MSB hinter den LoadFile() Dialog.
KompilierenMarkierenSeparieren
MessageBox(("%IOResult = " + STR$(%IOResult)),"Bugster",48)
%IOResult meldet ab dem zweiten mal Fehler 103 (Datei nicht geöffnet). Interessant ist das durch diese zusätzliche MSB mit %IOResult- Abfrage kein Fehler mehr gemeldet wird.
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
22.07.2008  
 




Michael
Dell
Nachtrag: Des Rätsels Lösung, setze Close nie ohne ReSet / ReWrite oder OpenRW ein!
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
22.07.2008  
 




Michael
Dell
Ich frag mich grad wieso nachfolgende Versionen sich da nicht beschweren?
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
22.07.2008  
 




Dietmar
Horn

Das tritt aber nur auf, wenn man die Datei mit Assign öffnet.


@Thomas: Mit assign "öffnet" man keine Datei, sondern weist dem Dateinamen lediglich eine Dateikennung zu (#1, #2, ...). In Deinem Code fehlt Irgendwas in Richtung reset, rewrite, append, usw.

Bin gleich ab 14.00 Uhr im NATZ HY  [...]  wegen neuem XProfan-Schnupperkurs - kannst ja mal vorbeischauen, wenn Du Bock drauf haben solltest. . Das ist bestimmt nur mal wieder ein klitzekleiner dropsmäßiger Schusselfehler Deinerseits in Deinem restlichen Code ...

Gruß
Dietmar
 
Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V.  [...] 

Windows 95 bis Windows 7
Profan² 6.6 bis XProfan X2 mit XPSE

Das große XProfan-Lehrbuch:  [...] 
22.07.2008  
 




RGH
Michael Dell
Ich frag mich grad wieso nachfolgende Versionen sich da nicht beschweren?


Ich vermute mal Folgendes:

Es wird einer Dateinummer mit Assign #n,Name$ ein Dateiname zugewiesen. Dann wird die Datei, ohne dass sie je mit OpenRW, Reset, Append oder Rewrite geöffnet wurde mit Close #n bzw. CloseRW #n geschlossen. Der Versuch, eine nicht geöffnete Datei zu schließen, führt natürlich zu einem I/O-Fehler, der die Systemvariable %IOResult auf ungleich 0 setzt.

Wenn nun ein weiterer I/O-Befehl folgt, der möglicherweise sogar fehlerfrei funktioniert, bleibt die Variable in älteren XProfan-Versionen trotzdem gesetzt. Also gibt es die beanstandete Fehlermeldung. %IOResult wird durch Auslesen zurückgesetzt, deshalb ist das Problem weg, sobald die Messagebox-Zeile im Programm ist. Man sollte also nach jedem Befehl, der %IOResult setzen könnte, %IOResult auf einen aufgetretenen Fehler hin abfragen.

In neueren XProfan-Versionen komme ich vergesslichen Programmierern entgegen und setze bei entsprechenden Befehlen %IOResult vorher zurück, sodass auch dann ein nach dem Befehl gesetzes %IOResult auf einen Fehler im letzten Befehl hinweist.

Gruß
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
22.07.2008  
 




Thomas
Zielinski
Irgendwo stand mal was von Minimalbsp.!(Welches unter P8 nich geht) Ich verwende dann ein OpenRW und glaube das da der Hund begraben liegt. RGH hat mich aber mit CloseRW #n auf eine Idee gebracht.
Gruß Thomas.

Da liefert man ordnungs gemäß ein kleines Beispiel und dann ist es zu klein.
 
XProfan X4; Win10 x64
Der Kuchen ist eine lüge!
22.07.2008  
 




Thomas
Zielinski

mal wieder ein klitzekleiner dropsmäßiger Schusselfehler


Jup!
Close durch CloseRW ersetz und es klapt. Sowas muss man erstmal gesagt bekommen. Danke dann mal!
Gruß Thomas
 
XProfan X4; Win10 x64
Der Kuchen ist eine lüge!
22.07.2008  
 



Thomas Zielinski
...Da liefert man ordnungs gemäß ein kleines Beispiel und dann ist es zu klein.


Tja! Ein Minimalbeispiel muss ja kein "kleines Beispiel" sein - sondern ist vermutlich manchmal sogar riesig!
 
22.07.2008  
 




Michael
Dell
@Roland: Alles klar! Wieder was gelernt.
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
23.07.2008  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

2.098 Betrachtungen

Unbenanntvor 0 min.
Michaeal07.05.2012
Michael Borowiak12.03.2011

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie