-
December 3rd, 2006, 03:46 PM
#1
scrnsave.lib problem
I'm attempting to write a screen saver. scrnsave.lib has been linked but I keep getting the following error:
1>scrnsave.lib(scrnsave.obj) : error LNK2019: unresolved external symbol _ScreenSaverProc@16 referenced in function _RealScreenSaverProc@16
I'm at a bit of a loss here, Since this is at its most basic stage.
Please help!!
Code:
#include <windows.h>
#include <scrnsave.h>
void InitGL(HWND hWnd, HDC &hDC, HGLRC &hRC);
void CloseGL(HWND hWnd, HDC hDC, HGLRC hRC);
//globals used by the function below to hold the screen size
int Width;
int Height;
//define a Windows timer
#define TIMER 1
// Screen Saver Procedure
LRESULT WINAPI ScreenSaverProc(HWND hWnd, UINT message,
WPARAM wParam, LPARAM lParam)
{
static HDC hDC;
static HGLRC hRC;
static RECT rect;
switch ( message ) {
case WM_CREATE:
// get window dimensions
GetClientRect( hWnd, &rect );
Width = rect.right;
Height = rect.bottom;
//get configuration from registry if applicable
//set up OpenGL
InitGL( hWnd, hDC, hRC );
//Initialize perspective, viewpoint, and
//any objects you wish to animate
//create a timer that ticks every 10 milliseconds
SetTimer( hWnd, TIMER, 10, NULL );
return 0;
case WM_DESTROY:
KillTimer( hWnd, TIMER );
//delete any objects created during animation
//and close down OpenGL nicely
CloseGL( hWnd, hDC, hRC );
return 0;
case WM_TIMER:
//call some function to advance your animation
return 0;
}
//let the screensaver library take care of any
//other messages
return DefScreenSaverProc(
hWnd, message, wParam, lParam );
}
static void InitGL(HWND hWnd, HDC & hDC, HGLRC & hRC)
{
PIXELFORMATDESCRIPTOR pfd;
ZeroMemory( &pfd, sizeof pfd );
pfd.nSize = sizeof pfd;
pfd.nVersion = 1;
pfd.dwFlags = PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER;
pfd.iPixelType = PFD_TYPE_RGBA;
pfd.cColorBits = 24;
hDC = GetDC( hWnd );
int i = ChoosePixelFormat( hDC, &pfd );
SetPixelFormat( hDC, i, &pfd );
hRC = wglCreateContext( hDC );
wglMakeCurrent( hDC, hRC );
}
static void CloseGL(HWND hWnd, HDC hDC, HGLRC hRC)
{
wglMakeCurrent( NULL, NULL );
wglDeleteContext( hRC );
ReleaseDC( hWnd, hDC );
}
BOOL WINAPI
ScreenSaverConfigureDialog(HWND hDlg, UINT message,
WPARAM wParam, LPARAM lParam)
{
return FALSE;
}
// needed for SCRNSAVE.LIB
BOOL WINAPI RegisterDialogClasses(HANDLE hInst)
{
return TRUE;
}
-
December 4th, 2006, 02:30 AM
#2
Re: scrnsave.lib problem
Regards,
Ramkrishna Pawar
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|