2010-08-18 16 views
7

Wie kann ich Parameter an CMD senden? zum Beispiel senden Sie einen Pfad und starten Sie ihn von diesem Pfad? Wie kann ich CMD Befehle ausführen? DankParameter an CMD senden

Antwort

9

cmd.exe zu starten und sofort einen Befehl ausführen, verwenden Sie die /K Flagge:

procedure TForm1.FormCreate(Sender: TObject); 
begin 
    ShellExecute(Handle, nil, 'cmd.exe', '/K cd C:\WINDOWS', nil, SW_SHOWNORMAL); 
end; 

Um einen Befehl in cmd.exe laufen und dann sofort das Konsolenfenster schließen, verwenden Sie die /C Flagge:

procedure TForm1.FormCreate(Sender: TObject); 
begin 
    ShellExecute(Handle, nil, 'cmd.exe', '/C del myfile.txt', nil, SW_SHOWNORMAL); 
end; 
+0

Vielen Dank für Ihre Hilfe, aber es gibt ein kleines Problem, wenn ich dies verwende: ShellExecute (Handle, Null, 'cmd.exe', '/ K cd C: \ WINDOWS', nil, SW_SHOWNORMAL); cmd wird ausgeführt, aber nicht auf meinem Pfad, es beginnt von wo ich mein Projekt gespeichert habe. – Armin

+4

Ich lade Sie ein, die [Dokumentation über ShellExecute] (http://msdn.microsoft.com/en-us/library/bb762153.aspx), Armin zu lesen. Dort erfahren Sie, wofür der fünfte Parameter steht. –

+0

Ich weiß nicht, was los war, aber nach einigen Versuchen funktioniert es richtig. Danke, es war hilfreiche Hilfe. – Armin

2

Sie können auch die Klasse Prozess verwenden - siehe ein Beispiel unten

Verwandte Themen