Lowlevel

Lowlevel => Softwareentwicklung => Thema gestartet von: bscreator am 26. April 2011, 14:28

Titel: Windows und Datei suchen
Beitrag von: bscreator am 26. April 2011, 14:28
Hallo,

ich bin grad ein bisl in der Windows - SW - Entwicklung mit Assembler.
Zum Einstag wollt ich mir mal alle Dateinamen im aktuellen Verzeichnis ausgeben lassen.
Dazu hab ich den Interrupt 4Eh des INT 21h (Search for first match) ausprobiert.
Laut Interrupt sollte die Ausgabe in den Bytes 30-42 zu finden sein.

Nach Ausführen des Interrupts ist allerdings kein Dateiname in den Bytes zu finden.

Wie kann man unter Windows mit Assembler eigentlich sonst alle Dateinamen im aktuellen Verzeichnis ausgeben lassen?

PS : Der Interrupt 4Eh des INT 21h befindet sich nicht in RALF BROWNS Interrupt List

Vielen Dank,
Matthias
Titel: Re:Windows und Datei suchen
Beitrag von: Jidder am 26. April 2011, 17:18
Hallo,

hast du den Fehlercode ausgewertet?

Wie kann man unter Windows mit Assembler eigentlich sonst alle Dateinamen im aktuellen Verzeichnis ausgeben lassen?

Unter Windows (in fett, damit du es nicht übersiehst ;)), mit den API-Funktionen FindFirstFile und FindNextFile. Google findet zu dem Stichwort sogar für Assembler jede Menge.

Zitat
PS : Der Interrupt 4Eh des INT 21h befindet sich nicht in RALF BROWNS Interrupt List
In meiner schon. -> http://www.ctyme.com/intr/rb-2977.htm (Ist übrigens ein DOS-Interrupt)
Titel: Re:Windows und Datei suchen
Beitrag von: DerHartmut am 26. April 2011, 21:17
Ich spiel' mal Onkel Tante Google:

http://www.codingcrew.de/programmierung/win32hlp.php - Win-API als .hlp-Datei
http://www.acm.uiuc.edu/sigwin/old/workshops/winasmtut.pdf - Ganz ordentliches Tutorial
http://win32assembly.online.fr/tutorials.html - Eine fast ultimative Seite zum Thema Windows-Assembler (habe ich damals, als ich noch Interesse daran hatte, exzessiv genutzt).

Int21 ist übrigens, wie PorkChiken schon sagte, DOS und nicht Windows - vergiss' den Int21 ganz schnell wieder (außer du programmierst noch unter Win9x oder purem DOS).