Seite 1 von 1
Windows XP - Check Disk
Verfasst: 26.02.2010 11:51
von purebas
Wie kann ich das WindowsXP-Tool "Check Disk" per WinAPI aufrufen?
Ich meine das Tool, was man bei der Laufwerks-Eigenschaft unter
Extras -> "Jetzt prüfen..." aufrufen kann.
Re: Windows XP - Check Disk
Verfasst: 26.02.2010 14:09
von Vera
Hallo purebas,
vielleicht hilft Dir folgendes weiter:
-
How to perform disk error checking in Windows XP
-
Chkdsk
Gruß ~ Vera
Re: Windows XP - Check Disk
Verfasst: 26.02.2010 14:17
von Kaeru Gaman
wieso per WinAPI...?
probier doch mal RunProgram("chkdsk" ...
Re: Windows XP - Check Disk
Verfasst: 26.02.2010 15:29
von purebas
Ich möchte aus meinem Programm das Windows-Tool mit der Oberfläche aufrufen.
Bei meinem Programm handelt es sich um ein Tool für USB-Sticks. Da öfters
Probleme mit dem Dateisystem auftreten, möchte ich dem Anwender ermöglichen,
das kleine Windows-Tool starten zu können.
Irgentwie finde ich den Kommandozeilenbefehl für den Anwender inakzeptabel,
wobei ich den doch nehme, wenn es garnicht anders geht.
Re: Windows XP - Check Disk
Verfasst: 26.02.2010 18:10
von Little John
Angenommen der USB-Stift ist Laufwerk H:, dann könntest Du evtl. folgendes versuchen:
Anschließend mit Hilfe der
AutoWin UserLibrary o.Ä.
Kontextmenu > Eigenschaften > Extras ... usw.
aufrufen (Windows XP). Für andere Windows-Versionen sind z.T. andere Aufrufe nötig. Das ist nicht elegant, aber wenn es nicht anders geht ...
//edit:
So geht's schon mal:
Code: Alles auswählen
; getestet mit PB 4.41 und AutoWin 1.0 unter Windows XP Pro x86
XIncludeFile "AutoWin_Include.pbi"
Procedure CheckDisk (Laufwerk$)
RunProgram("explorer", Laufwerk$, "")
AW_WinWait(LaufWerk$)
AW_SendKeys("{SHIFTDOWN}{F10}{SHIFTUP}i") ; Kontextmenü > Eigenschaften
Delay(500)
; für USB-Stift u.Ä. hier *2x* {TAB}:
AW_SendKeys("{CONTROLDOWN}{TAB}{TAB}{CONTROLUP}ps") ; 3. Reiter > p > s
EndProcedure
AW_ChangeMatchMode(1) ; Match any substring in the title
CheckDisk("H:")
Oder Du könntest kucken ob es ein externes Freeware-CheckDisk-Tool gibt, das Du mit Deinem Programm zusammen ausliefern darfst und von diesem aus aufrufen kannst.
Gruß, Little John