www.mikrocontroller.net

Forum: PC-Programmierung C# Process start


Autor: Heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich möchte eine *.exe starten und mache dies wie folgt:
Process Proc = new Process();
            Proc.StartInfo.FileName = "/Pfad/*.exe"
            Proc.Start();
Pfad ist nur Platzhalter. Jedoch habe ich nun das Problem das es einen 
unterschied gibt zwischen doppelklick und das Programm ( Treiber ) 
startet mit icon neben Uhr hoch oder ob ich es wie oben geschrieben 
aufrufe. Mache ich es mittel dem Code startet das Programm kurz ( im 
taskmgr zu sehen ( jedoch schließt sich gleich wieder.

Wie bekomme ich das Problem gelöst?

Danke

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heinz schrieb:
> und das Programm ( Treiber )
> startet mit icon neben Uhr hoch

Könntest Du versuchen, das, was Du da versucht hast zu beschreiben, 
nochmal zu beschreiben? Mit anderen Worten, die Du Dir dann nochmal 
durchliest?

Autor: Heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Programm welches ich starte ist ein Treiber. Ist der Treiber 
gestartet erscheint neben der Windows Uhr rechts unten ein Icon welches 
mir zeigt das der Treiber gestartet wurde.

Starte ich die gleiche *.exe mittels Code wiebeschrieben, startet der 
Treiber kurz zu sehen im taskmgr jedoch verschwindet nach wenigen sek 
aus dem taskmgr und das logo neben der Uhr erscheint leider auch nicht.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Treiber im eigentlichen Sinne ist das ziemlich sicher nicht, denn 
die werden nicht auf diese Art und Weise gestartet.

Wie genau rufst Du das Programm auf, wenn der Aufruf funktioniert? "Mit 
Doppelklick" ist nicht aussagekräftig genug. Doppelklick worauf? Auf die 
*.exe-Datei im Explorer, oder auf eine Verknüpfung, die z.B. auf dem 
Desktop liegt?

Autor: Heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Doppelklick auf eine passende Verküpfung Desktop.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ah. Dann sieh Dir doch mal genau an, was in der Verknüpfung so alles 
drinsteht.

Autor: Heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nix keine Argumente etc.

Autor: Heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hab jetzt grad versucht mit startInfo.WindowStyle = 
ProcessWindowStyle.Normal

hat aber nix gebracht.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und was passiert, wenn Du das in der Verknüpfung angegebene Programm aus 
einer Kommandozeile heraus aufrufst?

Autor: Heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
anbei ich starte die exe über ein nant script. Wenn ich Verknüpfung 
ausführe passiert das selbe wie zuvor.

Autor: Chris R. (hownottobeseen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich weiß nicht genau, wie die Process-Klasse das Arbeitsverzeichnis 
setzt, es könnte aber sein, dass es auf den Pfad deiner Exe-Datei liegt 
und die Zielanwendung "ihre" Dateien nicht mehr findet.

Setze es doch mal den Pfad der zu startenden Anwendung (Property dafür 
kann ich aus dem Kopf heraus nicht sagen) als 
Arbeits-/Ausführungsverzeichnis.

HTH

Chris

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heinz schrieb:
> anbei ich starte die exe über ein nant script.

Hä?

Autor: Jasch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heinz schrieb:
> Das Programm welches ich starte ist ein Treiber. Ist der Treiber

Ist es ganz sicher nicht. Siehe Windows DDK, Vorsicht, starker Tobak.

> gestartet erscheint neben der Windows Uhr rechts unten ein Icon welches
> mir zeigt das der Treiber gestartet wurde.

Aha, es benutzt also irgendwie das API fuer die Notification Area oder 
wie das heisst. Grusel-Kram, das ist doch COM?

> Starte ich die gleiche *.exe mittels Code wiebeschrieben, startet der
> Treiber kurz zu sehen im taskmgr jedoch verschwindet nach wenigen sek
> aus dem taskmgr und das logo neben der Uhr erscheint leider auch nicht.

Ich denke Du bist verwirrt. Du verlaesst Dich auf irgendwelche Dinge die 
bei der Verknüpfung Windows für Dich tut, aber wenn Du das Programm 
selber startest Du auch selber tun musst. Steht alles irgendwo in der 
Doku, könnte Arbeitsverzeichnis, Environment, COM-Dreck (STA, MTA?), 
blah, fasel, irgendwas sein.

Mal den Debugger versucht?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.