irgendwie geht das nicht



  • hi,

    ich weiß meine überschrift ist nich besonders toll^^ hier mein problem: ich will eine html datei mit

    static HWND hWndActiveX;
    staticI WebBrowser2* pWebBrowser2;
    CoInitialize(NULL);
    HINSTANCE hDLL = LoadLibrary(_T("atl.dll"));
    typedef BOOL (__stdcall *PAAWI)(void);
    PAAWI pAtlAxWinInit = (PAAWI)GetProcAddress(hDLL, "AtlAxWinInit");
    if (pAtlAxWinInit)
    pAtlAxWinInit();
    typedef HRESULT (__stdcall *PAAGC) (HWND hWnd, IUnknown**pUnknown);
    PAAGC pAtlAxGetControl = (PAAGC) GetProcAddress(hDLL,"AtlAxGetControl");
    HRESULT hr;
    hWndActiveX = CreateWindow(_T("AtlAxWin"), _T("about:blank"),
                       WS_VISIBLE | WS_CHILD|WS_CLIPSIBLINGS , NULL, NULL, NULL,
                NULL, hWnd, 0, 0, 0);
                IUnknown* pUnknown;
                hr = pAtlAxGetControl(hWndActiveX, &pUnknown);
    if (SUCCEEDED(hr))
    {
    hr = pUnknown->QueryInterface(__uuidof(IWebBrowser2),(void**)&pWebBrowser2);
                }
    pWebBrowser2->Navigate(L"C:\info.html", NULL, NULL, NULL, NULL);
    

    anzeigen, bekomme aber folgende fehlermeldungen:

    1>------ Erstellen gestartet: Projekt: ffff, Konfiguration: Debug Win32 ------
    1>Kompilieren...
    1>main.cpp
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(81) : error C2143: Syntaxfehler: Es fehlt ';' vor '*'
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(81) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(81) : error C2065: 'pWebBrowser2': nichtdeklarierter Bezeichner
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(83) : error C3861: "_T": Bezeichner wurde nicht gefunden.
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(93) : error C2065: 'hWnd': nichtdeklarierter Bezeichner
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(93) : error C3861: "_T": Bezeichner wurde nicht gefunden.
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(93) : error C3861: "_T": Bezeichner wurde nicht gefunden.
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(98) : error C2065: 'IWebBrowser2': nichtdeklarierter Bezeichner
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(98) : error C2065: 'pWebBrowser2': nichtdeklarierter Bezeichner
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(100) : error C2065: 'pWebBrowser2': nichtdeklarierter Bezeichner
    1>c:\users\asde\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(100) : error C2227: Links von "->Navigate" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
    1>        Typ ist ''unknown-type''
    


  • 2. Zeile:
    staticI <- Was soll des da?



  • oh sry, hier die alten/neuen fehlermeldungen

    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(81) : error C2143: Syntaxfehler: Es fehlt ';' vor '*'
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(81) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(81) : error C2065: 'pWebBrowser2': nichtdeklarierter Bezeichner
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(83) : error C3861: "_T": Bezeichner wurde nicht gefunden.
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(93) : error C2065: 'hWnd': nichtdeklarierter Bezeichner
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(93) : error C3861: "_T": Bezeichner wurde nicht gefunden.
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(93) : error C3861: "_T": Bezeichner wurde nicht gefunden.
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(98) : error C2065: 'IWebBrowser2': nichtdeklarierter Bezeichner
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(98) : error C2065: 'pWebBrowser2': nichtdeklarierter Bezeichner
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(100) : error C2065: 'pWebBrowser2': nichtdeklarierter Bezeichner
    1>c:\users\masd\desktop\projekte\c++\fggggggggg\ffff\ffff\main.cpp(100) : error C2227: Links von "->Navigate" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
    1>        Typ ist ''unknown-type''
    1>Das Buildprotokoll wurde unter "file://c:\Users\Moe\Desktop\Projekte\C++\fggggggggg\ffff\ffff\Debug\BuildLog.htm" gespeichert.
    




  • Ohje, Du stellst uns vor echten Herausforderungen!

    Wo ist eigentlich die Zeile 81 (siehe Fehlermeldungen) ???
    Welche Include-Dateien verwendest Du?

    Nicht gerade motivierend für uns Leser und Helfer, wenn viele Informationen fehlen!

    Kann es sein, daß

    static WebBrowser2* pWebBrowser2;
    

    zur Fehlermeldung führt, weil die beiden Begriffe (Variable und Pointer dazu) bereits in einer include-Datei definiert wurden?

    Daher mein erster Vorschlag: Ändere den Namen um in

    static WebBrowser2* pMyBrowser;
    

    Martin



  • entschuldigung! hier nochmal mein problem für euch dargestellt: der compiler sagt, dass bei

    static WebBrowser2* pWebBrowser2;
    

    anscheinend ein ";" vor dem "*" muss. nun meine frage: wie kann ich diese fehlermeldung beheben?



  • achja @Mmacher: leider hat das nichts geholfen



  • Jetzt hab ich's: Ein kleiner Tippfehler! 💡

    Der "böse" mad_martin hat Dich erstmal auf den falschen Pfad gebracht! (Wieso gibts hier im Forum eigentlich soviele mit dem Namen Martin?)

    Nun, es sieht so aus, daß Du nur blindes "copy & paste" gemacht hast, ohne zu verstehen was die Zeilen denn so machen oder gar was Du da tust (ich weiß klingt hart, ist aber so...)

    Zur "Strafe" gebe ich Dir erstmal nur einen kleinen Hinweis als Hilfe zur Selbsthilfe:

    staticI WebBrowser2* pWebBrowser2;
    

    Was soll denn diese Zeile eigentlich bewirken?

    Wenn Du Dir diese Frage stellst und (hoffentlich) die Antwort dazu findest, kommst Du von ganz alleine auf die Ursache der Fehlermeldungen!

    Martin



  • also ich versteh eig schon was "static IWebBrowser2* pWebBrowser;" (<- deinen tippfehler hab ich korrigiert), aber ich versteh echt nicht warum der compiler mir den fehler mit dem ";" vor "*" ausgibt.



  • IWebBrowser2 ist ein unbekannter Typ. Wahrscheinlich hast du vergessen, die entsprechenden Header einzubinden.



  • #include <atlbase.h>
    #include <shlobj.h>
    


  • die zwei headerdateien hab ich schon eingefügt gehabt...





  • hat alles geklappt, danke



  • Mmacher schrieb:

    Der "böse" mad_martin hat Dich erstmal auf den falschen Pfad gebracht!

    Naja, ich hab halt ein bisschen was unterschlagen 😉

    Mmacher schrieb:

    (Wieso gibts hier im Forum eigentlich soviele mit dem Namen Martin?)

    Keine Ahnung. Toller Name halt 😃


Anmelden zum Antworten