IExplorer öffnen mit programmierter exe



  • @Mod kannst mal diesen *** Diebeslink aus der Sig von Frido1982 entfernen? Ich find grad keine Pm funktion?!
    Ist die phpBB ersion hier echt von 2002? Würde ja sonst (c) 2006 stehen...



  • Wenn du den Standardbrowser benutzen willst benutze doch lieber folgenden Befehl:

    system ("rundll32 url.dll,FileProtocolHandler http://www.google.de");
    


  • @Frido1989: ps. wennde das mit ner verknuepfung machst is das keine .exe mehr 😃
    das is dan eine ".lnk" außerdem bei der verknuepfung aufn richtigen namen achten 😛



  • Dieser Thread wurde von Moderator/in c.rackwitz aus dem Forum ANSI C in das Forum WinAPI verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Da dieser Post jetzt bei WinAPI ist, würde ich das so lösen:

    #include windows.h
    #include shellapi.h
    
    int main (void)
    { 
    ShellExecute(NULL,"open","http://www.google.de",NULL,NULL,1);
    return 0;
    }
    

    So, ich glaube da muss dann auch noch die "Shell32.lib" beim Linker angegeben werden und dem Compiler gesagt, dass es nun Windows-Programm ist.



  • @ -=Chris=- :

    Das öffnet die URL aber im Standard-Browser, ist dies nicht der Internet Explorer, führt dies nicht zum erwünschten Ergebnis.

    So gehts richtig:

    ShellExecute(NULL, TEXT("open"), TEXT("C:\\Programme\\Internet Explorer\\iexplore.exe"), TEXT("http://www.google.de"), NULL, SW_SHOW);
    

    Der 4 Parameter legt die die Command-Line für das Programm, welches im 3 Parameter festgelegt, eben hier der Internet Explorer.

    Nochwas:
    Wenn WIN32_LEAN_AND_MEAN nicht definiert wurde, ist ein

    #include <Windows.h>
    

    ausreichend.
    Ein

    #include <ShellApi.h>
    

    ist nicht mehr nötig.

    Hoffe das war hiflreich 😉



  • Hier nochmal das 'komplette' Programm:

    #include <Windows.h>
    
    int main()
    {
    	ShellExecute
    		(
    		  NULL,
    		  TEXT("open"),
    		  TEXT("C:\\Programme\\Internet Explorer\\iexplore.exe"),
    		  TEXT("http://www.google.de"),
    		  NULL,
    		  SW_SHOW
    		);
    	return (0);
    }
    


  • Das setzt aber voraus, dass iexplore.exe immer im Programme-Ordner ist. Das ist z.B. alleine bei englischen Windows-Versionen nicht der Fall. Der Pfad steht in
    HKEY_CLASSES_ROOT/Applications/iexplore.exe/shell/open/command
    oder
    HKEY_CLASSES_ROOT/{0002DF01-0000-0000-C000-000000000046}/LocalServer32
    oder (wie ich finde am besten)
    HKEY_LOCAL_MACHINE/Software/Clients/StartMenuInternet/IEXPLORE.EXE/shell/open/command
    oder (auch gut)
    HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/Current Version/App Paths/IEXPLORE.EXE



  • @ -=Chris=- :

    Das öffnet die URL aber im Standard-Browser, ist dies nicht der Internet Explorer, führt dies nicht zum erwünschten Ergebnis.

    So gehts richtig:

    ShellExecute(NULL, TEXT("open"), 
                       TEXT("C:\\Programme\\Internet Explorer\\iexplore.exe"), 
                       TEXT("http://www.google.de"), NULL, SW_SHOW);
    

    Das stimmt AUCH, aber wenn das mit dem Standard-Browser geschehen soll, dann reicht mein Beispiel eigentlich aus. Jedenfalls hab ich das schon getestet,
    mehfach.



  • Doh!

    @CodeFinder

    Tut mir Leid, hab zu schnell gelesen :S

    Da stehts ja gleich am Anfang deines Postings. Sorry 😞


Anmelden zum Antworten