Results 1 to 2 of 2

Thread: Trouble with resource files

  1. #1

    Thread Starter
    Addicted Member kikelinus's Avatar
    Join Date
    Nov 2000
    Posts
    219

    Unhappy Trouble with resource files

    I have a resource file with a dialog box...When I try to compile the program, it says that there is an undeclaired indentifier for my dialogbox (IDD_ABOUT)....
    Here is the code I am using (I have also uploaded the files into a zip file if you wish to download):
    Code:
    #include <windows.h>
    #include "resource.h"
    
    // function prototype
    LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
    BOOL CALLBACK AboutDlgProc(HWND, UINT, WPARAM, LPARAM);
    
    const char className[] = "myWindowClass";
    
    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
    {
    	WNDCLASSEX wc;		// window class
    	HWND hwnd;			// handle to a window
    	MSG msg;			// message
    
    	// regster the window class
    	wc.cbSize = sizeof(WNDCLASSEX);
    	wc.style = 0;
    	wc.lpfnWndProc = WndProc;
    	wc.cbClsExtra = 0;
    	wc.cbWndExtra = 0;
    	wc.hInstance = hInstance;
    	wc.hIcon = LoadIcon(GetModuleHandle(NULL), MAKEINTRESOURCE(IDI_MYICON));
    	wc.hCursor = LoadCursor(NULL, IDC_ARROW);
    	wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
    	wc.lpszMenuName = MAKEINTRESOURCE(IDR_MENU1);
    	wc.lpszClassName = className;
    	wc.hIconSm = (HICON)LoadImage(GetModuleHandle(NULL), MAKEINTRESOURCE(IDI_MYICON), IMAGE_ICON, 16, 16, 0);
    
    	if(!RegisterClassEx(&wc)) {
    		MessageBox(NULL, "Failed to initialize class", "Error", MB_ICONEXCLAMATION | MB_OK);
    		return 0;
    	}
    
    	// creating the window
    	hwnd = CreateWindowEx(WS_EX_CLIENTEDGE, className, "Henrique", WS_OVERLAPPEDWINDOW,
    		CW_USEDEFAULT, CW_USEDEFAULT, 250, 250, NULL, NULL, hInstance, NULL);
    
    	if(hwnd == NULL) {
    		MessageBox(NULL, "Failed to create window", "Error", MB_ICONEXCLAMATION | MB_OK);
    		return 0;
    	}
    
    	ShowWindow(hwnd, nCmdShow);
    	UpdateWindow(hwnd);
    
    	// message loop
    	while(GetMessage(&msg, NULL, 0, 0) > 0)	
    	{
    		TranslateMessage(&msg);
    		DispatchMessage(&msg);
    	}
    	return msg.wParam;
    }
    
    // window procedure
    LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
    {
    	switch(msg) {
    	case WM_CLOSE:
    		DestroyWindow(hwnd);
    		break;
    
    	case WM_DESTROY:
    		PostQuitMessage(0);
    		break;
    
    	case WM_COMMAND:
        switch(LOWORD(wParam))
        {
    		case ID_FILE_EXIT:
    			PostMessage(hwnd, WM_CLOSE, 0, 0);
    		break;
    
            case ID_HELP_ABOUT:
            {
                int ret = DialogBox(GetModuleHandle(NULL), 
                   MAKEINTRESOURCE(IDD_ABOUT), hwnd, AboutDlgProc);
                if(ret == IDOK){
                    MessageBox(hwnd, "Dialog exited with IDOK.", "Notice",
                        MB_OK | MB_ICONINFORMATION);
                }
                else if(ret == IDCANCEL){
                    MessageBox(hwnd, "Dialog exited with IDCANCEL.", "Notice",
                        MB_OK | MB_ICONINFORMATION);
                }
                else if(ret == -1){
                    MessageBox(hwnd, "Dialog failed!", "Error",
                        MB_OK | MB_ICONINFORMATION);
                }
            }
            break;
        }
    break;
    
    	default:
    		return DefWindowProc(hwnd, msg, wParam, lParam);
    	}
    	return 0;
    }
    
    // about dialog procedure
    BOOL CALLBACK AboutDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
    {
    	switch(msg)
    	{
    	case WM_INITDIALOG:
    		return true;
    
    	case WM_COMMAND:
    		switch(LOWORD(wParam))
    		{
    		case IDOK:
    			EndDialog(hwnd, IDOK);
    			break;
    
    		case IDCANCEL:
    			EndDialog(hwnd, IDCANCEL);
    			break;
    		}
    		break;
    
    	default:
    		return false;
    	}
    	return true;
    }
    Thanks.
    Attached Files Attached Files

  2. #2

    Thread Starter
    Addicted Member kikelinus's Avatar
    Join Date
    Nov 2000
    Posts
    219

    Problem Solved

    Problem solved...Thanks anyways

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width