Exe-Datei via DOS ausführen (Problem)

d4kine

Erfahrenes Mitglied
So, erstmal grüße an alle Coder :)
Ich habe zwar nicht die Beste Coder-Erfahrung, aber wie man z.B. den Taschenrechner von Windows per Button ausführt, weiß ich...
(Shell "cmd /c start C:\Windows\System32\calc.exe", vbNormalFocus)
Soviel dazu...

Aber wenn ich jetzt eine Datei ausführen möchte wie z.B.
D:\Eigene Dateien\d4kine.exe zeigt mir das MS-DOS fenster einen fehler, wegen der leerzeile in Eigene Dateien an.
was muss ich zwischen Eigene Dateien schreiben, damit das MS-DOS Fenster das als leerzeichen anerkennt?
 
Zum Öffnen von Dateien würde ich die API "ShellExecute" verwenden. Hier kannst du auch den Dateipfad mit Leerzeichen angeben.

Beispiel:

Option Explicit
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal Operation As String, ByVal Filename As String, Optional ByVal Parameters As String, Optional ByVal Directory As String, Optional ByVal WindowStyle As Long = vbMinimizedFocus) As Long

Private Sub Command1_Click()
ShellExecute 0, "Open", "C:\Eigene Dateien\calc.exe"
End Sub
 
Wenn Du das Programm mit DOS öffnen willst, brauchst Du den Befehl nur in Anführungszeichen zu setzen. "D:\Eigene Dateien\d4kine.exe"
Dann wird auch das Leerzeichen akzeptiert.
 
Zurück