AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi ShellExecute - Rückgabe des ausgeführten?
Thema durchsuchen
Ansicht
Themen-Optionen

ShellExecute - Rückgabe des ausgeführten?

Ein Thema von quendolineDD · begonnen am 16. Aug 2007 · letzter Beitrag vom 16. Aug 2007
Antwort Antwort
quendolineDD

Registriert seit: 19. Apr 2007
Ort: Dresden
781 Beiträge
 
Turbo Delphi für Win32
 
#1

ShellExecute - Rückgabe des ausgeführten?

  Alt 16. Aug 2007, 01:25
Hallo DP Community,
ich hab bis jetzt einiges im Forum über ShellExecute gelesen auch in externen Foren.
Zum einen kam ich darauf, dass man ShellExecuteEx oder CreateProcess (o.ä.) um etwas zum laufen zu bringen, wenn man die ProcessID braucht.
Nun ich weiß nicht, inwiefern mein Anliegen dem nahe kommt.

Ich möchte über ShellExecute die CMD aufrufen, als Params hab ich '/C ipconfig /all'.

Die Abfrgae, ob ShellExecute <= 32 ist, habe ich auch implementiert. Dahingehend kommen keine Errors.

Delphi-Quellcode:
var path, params: string;

...

path:= 'C:\WINDOWS\system32\cmd.exe';
params:= '/C ipconfig /all';

ShellExecute(0,
             'open',
              PChar(path),
              PChar(params),
              nil,
              SW_HIDE);
Nun, ich würde gerne das, was die CMD normalerweise bei 'ipconfig /all' ausgibt, in ein TMemo laden.
Zudem hatte ich vorher in path '%SYSTEMROOT%\system32\cmd.exe' stehen, jedoch kam Delphi mit dem %SYSTEMROOT% nicht klar, und ich bekam andauernd einen Error zurück.

Ich weiß nun einfach nicht, wie ich auf das, was mir die CMD zurück gibt, auch zugreifen kann?!

Mit freundlichen Grüßen
Lars S.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: ShellExecute - Rückgabe des ausgeführten?

  Alt 16. Aug 2007, 06:32
Beim cmd kannst du den Pfad weglassen. Dann kannst du die Ausgabe umleiten
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: ShellExecute - Rückgabe des ausgeführten?

  Alt 16. Aug 2007, 06:37
auf die Ausgabe kannst du mit Pipes zugreifen welche du bei CreateProcess mitgeben kannst.
Ein Beispiel gibts hier: http://www.delphipraxis.net/internal...=598121#598121

Im übrigen handelt es sich da nicht um die Rückgabe sondern die Std-Ausgabe. Die Rückgabe wäre das worauf man mit ErrorLevel in der Console zugreifen kann.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz