• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

[C++]Screensaver - fehlermeldungen, die ich nicht verstehe

  • Ersteller Ersteller Cryspy
  • Erstellt am Erstellt am
Status
Für weitere Antworten geschlossen.
C

Cryspy

Guest
Ich versuche gerade die programmierung von screensaverm in c++ zu lernen und da hab ich folgenden Beispiel-Code verscuth zu komplilieren

Code:
#include<windows.h>
#include<scrnsave.h>


UINT timer_id;
int r,g,b = 50;

long WINAPI ScreenSaverProc(HWND hWnd, UINT message, WPARAM wParam,LPARAM lParam)
{
    HDC dc;
    dc = GetDC(hWnd);
    char hallo[] = "Hallo Welt";

    switch(message)
    {
        case WM_CREATE:
               SetTimer(hWnd,timer_id,100,NULL);
               break;

        case WM_TIMER:
               SetBkColor(dc,RGB(0,0,0));
               SetTextColor(dc,RGB(r,g,b));
               TextOut(dc,300,250,hallo,strlen(hallo));

               r+=5;
               b+=10;
               g+=2;

               break;

        case WM_DESTROY:
               KillTimer(hWnd,timer_id);
               ReleaseDC(hWnd,dc);
               break;
    }
    return DefScreenSaverProc(hWnd,message,wParam,lParam);
}

BOOL WINAPI ScreenSaverConfigureDialog(HWND hWnd,UINT message,WPARAM wParam, LPARAM lParam)
{
    switch(message)
    {
        case WM_INITDIALOG:
               return TRUE;

        case WM_COMMAND:
               switch(LOWORD(wParam))
               {
                   case IDOK:
                        EndDialog(hWnd,0);
                        return TRUE;

                   case IDCANCEL:
                        EndDialog(hWnd,0);
                        return FALSE;
               }
               break;

        case WM_CLOSE:
               EndDialog(hWnd,0);
               return TRUE;
    }
    return FALSE;
}

BOOL WINAPI RegisterDialogClasses(HANDLE hInst)
{
    return TRUE;
}

aber dann kommen die Fehlermeldungen:

Code:
scrnsave.lib(scrnsave.obj) error LNK2019: unresolved external symbol __imp__RegCloseKey@4 referenced in function _LoadPwdDLL@0

scrnsave.lib(scrnsave.obj) error LNK2019: unresolved external symbol __imp__RegQueryValueExA@24 referenced in function _LoadPwdDLL@0

scrnsave.lib(scrnsave.obj) error LNK2019: unresolved external symbol __imp__RegOpenKeyEx@20 referenced in function _LoadPwdDLL@0

scrnsave.lib(scrnsave.obj) error LNK2019: unresolved external symbol __imp__InitCommonControlsEx@4 referenced in function _WinMainN@16

scrnsaver.exe fatal error LNK1120: 4 unresolved externals

(ich musste die meldungen von hand abtippen da ich nicht wei´ß wie man sie aus Code::Blocks rauskopiert)

Aber ich habe keine Ahnuing was sie bedeuten sollen und wo sie her kommen könnten.



Bitte um Hilfe Danke!
 
Hallo,

die Meldung bedeutet, dass die Funktionen RegCloseKey usw. in keiner mitgelinkten Library gefunden wurden.


RegCLoseKey benötigt zum Beispiel die Advapi32.lib. Musst bei den anderen FUnktionen mal in der MSDN schaun, welche Lib die brauchen.


N43
 
Merci!

@ w7: Rat mal was ich versucht habe! des klappt bei meiner version net!

-------------------

Nachtrag:

Falls jemand auch einen screensaver machen:

>>Code steht oben

Libraries:
~> Advapi32.lib
~> comctl32.lib
~> scrnsave.lib
 
Zuletzt bearbeitet von einem Moderator:
Status
Für weitere Antworten geschlossen.
Zurück
Oben