Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   ShellExecute cmd net use syntax (https://www.delphipraxis.net/137164-shellexecute-cmd-net-use-syntax.html)

LuCSteR 15. Jul 2009 12:44


ShellExecute cmd net use syntax
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hey,

also ich möchte aus meinem Programm heraus (per shellexecute) folgendes automatisieren:
--> ausführen: cmd --> dort den befehl "net use \\ip" ausführen lassen. der Punkt ist, ich bekomme es erstens nicht hin, das er automatisch diesen befehl an das cmd fenster übergibt und zweitens komme ich mit der notaion/syntax nicht klar vom net use, denn ich möchte direkt in dem befehl nutzername und passwort mit übergeben. Die Syntaxerklärung ist als Bild angehängt.
Ich möchte also den Befehl "net use \\IP username password" übergeben.
im gleichen fenster muss ein nächster befehl (shutdown) ausgeführt werden. Wie kann ich das realisieren?
Mein Code bisher:
Delphi-Quellcode:
ShellExecute(0, 'open', PChar('cmd'), PChar('net use \\'+IP+' '+username+' '+password), nil, SW_SHOWNORMAL);
//ShellExecute(0, 'open', PChar('cmd'), PChar('shutdown -r -f -m\\ '+IP+' -t 02'), nil, SW_SHOWNORMAL);
Das zweite ShellExecute ist nat unsinnig, weil dadurch nur ein zweites fenster geöffnet wird. die beiden befehle sollen aber in einem fenster sequenziell ausgeführt werden. Auch das "PChar('net use \\'+IP+' '+username+' '+password)" haut so nicht hin, weil ich mit der Syntaxerklärung nicht so recht klar komme :/

Gibt es denn eine Zeichenfolge, die ein "enter" realisiert, um die beiden befehle nacheinander ausführen zu können?

grüße lucster

Luckie 15. Jul 2009 12:50

Re: ShellExecute cmd net use syntax
 
Kannst du keine Batchdatei machen und diese mit Shellexecute ausführen lassen? Ansonsten guck dir mal den Schalter /k für die cmd.exe an.

LuCSteR 15. Jul 2009 12:52

Re: ShellExecute cmd net use syntax
 
Ja Luckie daran habe ich auch gedacht, eine batch auszuführen, doch wollte ich es auch gern einmal so probieren. Schalter /k schau ich mir mal an :)

Luckie 15. Jul 2009 12:55

Re: ShellExecute cmd net use syntax
 
Es kann auch /c sein; ich bin mir da nicht sicher. Aber es gibt einen Schalter, der die Konsole nicht schließt.

LuCSteR 15. Jul 2009 13:30

Re: ShellExecute cmd net use syntax
 
Hier ist ne Übersicht über alle möglichen cmd.exe Funktionen.

Okay habs jetzt über die Bat gelöst. Er führt die bat aus und das dos fenster schließt sich wieder. Jedoch öffnet sich dann noch ein leeres dos fenster? warum?

Delphi-Quellcode:
ShellExecute(0, 'open', PChar(GetCurrentDir+'\rebootpc.bat'), PChar(IP), nil, SW_SHOWNORMAL);
Verstehe ich nicht wirklich o_O


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:07 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