Benutzer mit den meisten Antworten
Prozessaufrufe

Frage
-
Hallo,
wie könnte man so etwas in C# lösen?
Klick auf Server, dann öffnet sich der Client mit.
Idee1: Batch Idee 2: Neues Programm in C# Ruft über Process irgendwie auf Idee 3: Server ruft automatisch den Client auf. Wäre für den Bediener am besten Danke für Tipps Grüße Andreas
Antworten
-
Hallo Andreas,
- eigentlich das in C# in einem Programm [...Dein WScript-Beispiel..]
Dein Beispiel sieht in C# folgendermassen aus, bzw. "kann" so umgesetzt werden:
using System.Diagnostics; using System.Threading; namespace ConsoleStart { class Program { static void Main(string[] args) { Process.Start("P1.exe"); Thread.Sleep(700); //warten 700 ms Process.Start(@"C:\P2\p2.exe"); } } }
ciao Frank- Als Antwort markiert Andreas Bauer2 Mittwoch, 4. Mai 2011 16:40
Alle Antworten
-
Hallo
Idee1: http://www.wintotal-forum.de/index.php?topic=77809.0 Dafür brauchst du zB die Sleep.exe (wird in dem Forum abgehandelt)
Idee2: Bei einem Klick --> Entweder Timer auslösen welcher nach 10 Sek einmalig was macht oder ein wenig dirty : Neuer Thread starten Thread.sleep für 10 Sek dann Process ausführen.
Idee3: Klar mit Servercallbacks usw. würde das gehen
Für eine umfangreichere Hilfe müssten wir aber schon wissen, was genau du vorhast ?
Grüße
-
Für eine umfangreichere Hilfe müssten wir aber schon wissen, was genau du vorhast ?
Hallo Pawel,
eigentlich das in C#
in einem Programm
Grüße Andreas
Set oWsh = CreateObject("WScript.Shell") oWsh.Run "P1.exe" 'warten 700 ms WScript.Sleep 700 oWsh.Run "C:\P2\p2.exe"
-
Hallo Andreas,
- eigentlich das in C# in einem Programm [...Dein WScript-Beispiel..]
Dein Beispiel sieht in C# folgendermassen aus, bzw. "kann" so umgesetzt werden:
using System.Diagnostics; using System.Threading; namespace ConsoleStart { class Program { static void Main(string[] args) { Process.Start("P1.exe"); Thread.Sleep(700); //warten 700 ms Process.Start(@"C:\P2\p2.exe"); } } }
ciao Frank- Als Antwort markiert Andreas Bauer2 Mittwoch, 4. Mai 2011 16:40
-
Hallo Frank,
genau das habe ich Ihm auch vorgeschlagen wobei ich das ganze nicht so toll finde (Thread.Sleep = Böse)
Lieber einen Timer sauber nutzen.
Wenn aber P1.Exe sich nach kurzer Zeit beendet könnte man bei der Process klasse auch auf das schließen von P1 warten.
Grüße
-
Hallo Pawel,
- genau das habe ich Ihm auch vorgeschlagen
kein Problem, ich wollte nur mal zeigen, wie das in C# Code aussieht.
- (Thread.Sleep = Böse)
also, das ist nicht unbedingt so - gilt nicht allgemein.
Aber in einem Main-Thread in einen Windows Form etwa wäre es ggf. ungeschickt, da man dann den HauptThread ja reaktionsfähig halten muss, was auch geht, aber Zusatzaufwand bedeutet. In einer Konsolen-Anwendung je nach Szenario schon weniger.Beim Thema Timer würde es davon abhängen, ob wirklich immer bei gleichen Zeitabständen eine Aktion ausgeführt werden soll.
Ebenfalls, da es mehrere Timer-Typen gibt, welcher Typ von Anwendung gewählt wird.
Ausserdem würde man Timer natürlich eher bei "ständig" in gleichen Zeitabständen wiederkehrenden Aktionen benutzen und nicht so sehr wählen, wenn es um einen einmaligen Vorgang ginge, was aber natürlich trotzdem möglich ist.Im Prinzip habe ich aber erstmal einfach nur sein WScript in C# umgesetzt.
ciao Frank