Veröffentlicht 10. März 201510 j Hallo, ich möchte eine Toolbar erstellen, wie es hier beschrieben wird: https://msdn.microsoft.com/en-us/library/hh298381(v=vs.85).aspx. Wie andere Tutorials zeigen, brauche ich dafür den Header "CommCtrl.h" und muss "Comctl32.lib" verlinken. Das habe ich getan. Beim Erstellen bekomme ich jetzt allerdings etliche Fehlermeldungen, alle bezogen auf den Header "prsht.h". Da gibt es fehlende Typspezifizierer, unzählige Syntaxfehler und letztlich die Meldung: "Mehr als 100 Fehler gefunden; Kompilierung wird abgebrochen". Kann es sein, das ich noch andere Bibliotheken brauche? Wenn ja, welche? Wenn nein, woran kann das dann liegen? Gruß PL1994
10. März 201510 j #include <windows.h> vergessen? Ansonsten musst du ein paar mehr Details herausrücken. Entwicklungsumgebung, Code, der das Problem reproduziert, die ersten paar Fehlermeldungen usw.
11. März 201510 j Autor Vielen Danke schon mal für die Antwort. Nein, die habe ich nicht vergessen - wäre ja auch zu schön gewesen ... Entwicklungsumgebung ist Visual Studio Express 2013. Das Folgende ist nur ein Teil des gesamten Programmes, aber ich schätze, dass das Problem da liegen müsste: View.h #pragma once #define STRICT #define EXIT_ITEM 0 #include <CommCtrl.h> #include <windows.h> class View { public: View(); ~View(); void create(), hide(), show(); const int imageListId = 0, numToolbarButtons = 4, toolbarImageSize = 48; HIMAGELIST hImageList; HMENU hMenu, hMenubar; HWND hWnd, hWndToolbar; WNDCLASS wndCls; }; View.cpp (Wahrscheinlich irrelevant, da ich außer "include" und der Definition einer "HIMAGELIST" noch gar nichts mit der Bibliothek gemacht habe) #include "Resources.h" #include "View.h" View::View() { wndCls.style = CS_HREDRAW | CS_VREDRAW; wndCls.cbClsExtra = 0; wndCls.cbWndExtra = 0; wndCls.hInstance = GetModuleHandle(0); wndCls.hCursor = LoadCursor(NULL, IDC_ARROW); wndCls.hIcon = LoadIcon(GetModuleHandle(0), MAKEINTRESOURCE(PROGRAM_ICON)); wndCls.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH); wndCls.lpszClassName = "Anwendung"; wndCls.lpszMenuName = NULL; } View::~View() { } void View::create() { hWnd = CreateWindow("Anwendung", "Anwendung", WS_OVERLAPPEDWINDOW, GetSystemMetrics(SM_CXSCREEN)/2-400, GetSystemMetrics(SM_CYSCREEN)/2-300, 800, 600, NULL, NULL, GetModuleHandle(0), NULL); hMenu = CreateMenu(); hMenubar = CreateMenu(); AppendMenu(hMenu, MF_STRING, EXIT_ITEM, "Schließen"); AppendMenu(hMenubar, MF_POPUP, (UINT_PTR)hMenu, "Datei"); SetMenu(hWnd, hMenubar); } void View::hide() { ShowWindow(hWnd, SW_HIDE); UpdateWindow(hWnd); } void View::show() { ShowWindow(hWnd, SW_SHOW); UpdateWindow(hWnd); }
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.