C# Einführung-Anwendung mit mehreren Argumenten
Habe ich versucht, eine Anwendung zu starten, aus einer C# - Anwendung, aber es funktioniert nicht ordnungsgemäß gestartet. Aus der cmd die Anwendung plus die Argumente Start ein kleines Fenster, das den Ausgang dann die Anwendung minimiert sich in den system tray.
Start der Anwendung aus der C# - Anwendung unter Verwendung der code unten führt der Prozess erscheint in der task-manager aber sonst nichts, keine Ausgabe-Fenster, keine system-tray-icon. Was könnte das Problem sein?
myProcess.StartInfo.FileName = ...;
myProcess.StartInfo.Arguments = ...;
myProcess.Start();
versuchte auch, wobei Sie folgende
myProcess.StartInfo.RedirectStandardOutput = true; //tried both
myProcess.StartInfo.UseShellExecute = false; //tried both
myProcess.StartInfo.CreateNoWindow = false;
mit
Process.Start(Filename, args)
hat auch nicht funktioniert. Würde wirklich zu schätzen jede Hilfe, die zur Bekämpfung dieser.
UPDATE:
Ich denke, dass das Problem vielleicht mehrere Argumente, die übergeben werden sollen, um den Prozess
RunMode=Server;CompanyDataBase=dbname;UserName=user;PassWord=passwd;DbUserName=dbu;Server=localhost;LanguageCode=9
hinsichtlich
- Versuchen Sie umschließt die Argumente in Anführungszeichen.
- Keine änderung
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich sehe keine Fehler in deinem code. Ich habe geschrieben, ein kleines Programm, das druckt seine Argumente auf der Konsole
und dann habe ich es in C:, der name der app "PrintingArgs.exe" so ich geschrieben habe, einem anderen, führt das erste:
das gibt mir die gewünschte Ausgabe der Liste von zahlen. Die app, die Anrufe PrintingArgs beendet, wie es fäll p.Start(), dies könnte vermieden werden, indem
p.WaitForExit();
oder nurConsole.Read();
.Auch ich habe beide
p.UseShellExecute
undp.CreateNoWindow
. Nur in dem Fall, dassmacht die PrintingArgs app nicht zu zeigen, ein Fenster (auch wenn ich nur
p.CreateNoWindow = true
es zeigt ein Fenster).Nun kommt es mir in den Sinn, dass vielleicht die auf der Durchreise sind die args in eine falsche Richtung und macht das andere Programm zu Versagen und unseren Kurs in der Nähe, oder vielleicht sind Sie nicht auf die richtige Datei. Überprüfen Sie die Pfade und Namen, um das zu finden, jeder Fehler könnte man weglassen.
Auch mit
nicht verwendet die Informationen, die Sie mit StartInfo in Ihre Prozess-Instanz.
Hoffe das hilft weiter,
hinsichtlich
Nicht sicher, ob jemand noch nach diesem, aber hier ist was ich kam mit.
Hinzufügen eines Leerzeichens im string erlaubt zwei Argumente übergeben werden, in das Programm, das ich ausführen wollte. Das Programm lief ohne Probleme nach dem ausführen des Codes.
Haben u legen Sie Ihre ProcessWindowStyle zu Versteckt?
Das ist mein code, funktioniert Prima:
ZB