![]() |
AW: Dos command
Es geht mir nicht nur um DIR sondern um Alle Befehle, welche ich in einem CMD Prompt executen kann. (ipconfig, dir, copy, usw usw )
Der Sinn liegt darin, das ich ein kleines commandline Tool bastle, indem ich verschiedene Befehle ausführen kann. hier möchte ich eben noch oben genannte DOS Befehle einbinden dh. Die Eingabe sieht dann ca so aus: execcmd <DOS-BEFEHL>. |
AW: Dos command
Bei mir funktioniert der Code. Hast Du denn nun endlich den Rückgabewert von ShellExecute ausgewertet? Was steht drin?
[edit] Oder was sagt diese Variante?
Delphi-Quellcode:
[/edit]
procedure ExecuteCommand(const command: string);
const ENV_VAR = '%COMSPEC%'; var comspec: string; ReturnValue: integer; begin SetLength(comspec, ExpandEnvironmentStrings(ENV_VAR, nil, 0) + 1); ExpandEnvironmentStrings(ENV_VAR, PChar(comspec), Length(comspec)); SetLength(comspec, StrLen(PChar(comspec))); if comspec <> '' then begin ReturnValue := ShellExecute(0, 'open', PChar(comspec), PChar('/k ' + command), nil, SW_SHOW); if ReturnValue < 33 then MessageBox(0, PChar(Format('Fehler bei ShellExecute: %d', [ReturnValue]) ), nil, MB_OK or MB_ICONERROR); end else MessageBox(0, 'Kommandointerpreter konnte nicht ermittelt werden.', nil, MB_OK or MB_ICONERROR); end; |
AW: Dos command
Das funktioniert echt gut! Aber wie krieg ich das in meine Consoleapp und nicht in das extra cmd Fenster ?
LG |
AW: Dos command
Dein Programm ist eine Konsolenanwendung? Dann wird das mit ShellExecute vermutlich nicht funktionieren. Wenn ich die Hilfe zu
![]() |
AW: Dos command
Jupp, du mußt dann die Handle deines Consolenfensters an die anderen Anwendungen übergeben,
nicht daß die sich noch eine eigene Console aufmachen. |
AW: Dos command
Ich gebe zu ich hab keinen Plan :(
|
AW: Dos command
Ich empfehle dir ein
![]() |
AW: Dos command
![]() |
AW: Dos command
Du möchtest eine Consolenanwendung erstellen, die ähnlich wie die CMD.EXE agiert, zusätzlich aber noch die Möglichkeit bietet, Abfragen an eine DB zu schicken.
Mir ist entfallen welche DB Du nutzt, aber ich möchte wetten, daß auch diese eine Möglichkeit bietet per Kommandozeile auf sie zuzugreifen. Vielleicht wäre es einfacher für Dich, bereits vorhandene Tools zu nutzen, als das Rad noch einmal neu zu erfinden? Gruß K-H |
AW: Dos command
Vielleicht ist das nen Blick wert:
![]() Hab damit mal ein eigenes "Konsolenfenster" programmiert und ihm Extrafeatures verpasst. Geht ja fast in deine Richtung. Gruß, Toni |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz