none
Fremde Programme/Prozesse öffnen? RRS feed

  • Frage

  • Hallo,

    ich möchte gern, das mein Programm, wenn ich auf ein Buttoon klicke, einen bestimmten Prozess öffnet. Das habe ich hier bereits erfolgslos versucht:
    private: System::Void button5_Click(System::Object^  sender, System::EventArgs^  e) {
    			 ShellExecuteA(0, "open", "H:\Programme\meinprogramm\meinprogramm.exe", "", "", SW_SHOW);
    		 }
    Jetzt meine Frage: Wie mache ich das richtig?
    Und noch eine Frage: Wie mache ich das, wenn ich den Pfad nicht kenne?

    MfG
    Donnerstag, 13. August 2009 23:02

Antworten

  • 1. Wenn die EXE vom Installer im Windows installiert wurde oder im PATH liegt, dann musst Du den Pfad nicht angeben.
    2. Wenn Die EXE irgendwo liegt, musst Du Dir den Pfad besorgen. ALso suchen, oder Dir durch einen Auswahldialog in Deiner Anwendung merken. (Sprich den Benutzer suchen lassen).
    3. Ein Backslash muss in einem konstanten String escaped werden. Also musst Du "H:\\Programme\\meinprogramm\\meinprogramm.exe" schreiben.
    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Freitag, 14. August 2009 06:31

Alle Antworten

  • 1. Wenn die EXE vom Installer im Windows installiert wurde oder im PATH liegt, dann musst Du den Pfad nicht angeben.
    2. Wenn Die EXE irgendwo liegt, musst Du Dir den Pfad besorgen. ALso suchen, oder Dir durch einen Auswahldialog in Deiner Anwendung merken. (Sprich den Benutzer suchen lassen).
    3. Ein Backslash muss in einem konstanten String escaped werden. Also musst Du "H:\\Programme\\meinprogramm\\meinprogramm.exe" schreiben.
    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Freitag, 14. August 2009 06:31
  • Okay, das funktioniert. Nur noch zur letzzten Frage: Könnte man da auch Systemvariablen benutzen? Etwa so:
    private: System::Void button5_Click(System::Object^  sender, System::EventArgs^  e) {
    			 ShellExecuteA(0, "open", "%ProgramFiles%meinprogramm%meinprogramm.exe", "", "", SW_SHOW);
    		 }
    
    Freitag, 14. August 2009 13:05
  • Hallo? Ich braüchte eine Anttwort auf meine Frage...
    Sonntag, 16. August 2009 17:45
  • Wenn Du dirngend eine Antwort benötigst, dann bemühe Google.

    Nein!
    Die Frage war doch gerade hier erst im Forum.
    Suche nach ExpandEnvironmentString
    Ansonsten verwende ShGetFolderPath
    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Sonntag, 16. August 2009 18:33
  • Danke für den Tipp.. werde es versuchen
    Sonntag, 16. August 2009 18:35