Windows programming

Moderators: None (Apply to moderate this forum)
Number of threads: 3711
Number of posts: 9173

This Forum Only
Post New Thread
Single Post View       Linear View       Threaded View      f

Report
keep getting an error(win api) Posted by ProtomanMt on 30 Jul 2010 at 6:43 PM
header files

#define ID_FILE_EXIT 1000
#define ID_HELP_ABOUT 1001
#define IDOK 2000
#define IDEMAIL 2001
#define IDAZTEK 2003
#define IDBSRF 2004



Resource file:



#include "my_header.h"

ABOUTDLG DIALOG 19, 17, 182, 71
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "About"
FONT 8, "MS Sans Serif"
BEGIN
CTEXT "Written by AZTEK", 101, 17, 30, 81, 11
GROUPBOX "About", 102, 11, 11, 95, 48, WS_TABSTOP
DEFPUSHBUTTON "&Ok", IDOK, 112, 6, 64, 14
PUSHBUTTON "&E-mail AZTEK", IDEMAIL, 112, 21, 64, 14
PUSHBUTTON "Visit &AZTEK", IDAZTEK, 112, 36, 64, 14
PUSHBUTTON "Visit &Blacksun", IDBSRF, 112, 51, 64, 14
END

ID_MENU MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "E&xit", ID_FILE_EXIT
END
POPUP "&Help"
BEGIN
MENUITEM "&About", ID_HELP_ABOUT
END
END







Source Code:



#include <windows.h>

#include "my_header.h"

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

BOOL CALLBACK DlgProc(HWND, UINT, WPARAM, LPARAM);

static char gszClassName[] = "MyWindowClass";

static HINSTANCE ghInstance = NULL;

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {

WNDCLASSEX WndClass;

HWND hwnd;

MSG Msg;

ghInstance = hInstance;

WndClass.cbSize = sizeof(WNDCLASSEX);

WndClass.style = NULL;

WndClass.lpfnWndProc = WndProc;

WndClass.cbClsExtra = 0;

WndClass.cbWndExtra = 0;

WndClass.hInstance = ghInstance;

WndClass.hIcon = LoadIcon(NULL, IDI_APPLICATION);

WndClass.hCursor = LoadCursor(NULL, IDC_ARROW);

WndClass.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);

WndClass.lpszMenuName = NULL;

WndClass.lpszClassName = gszClassName;

WndClass.hIconSm = LoadIcon(NULL, IDI_APPLICATION);

if(!RegisterClassEx(&WndClass)) {

MessageBox(0, "Window Registration Failed!", "Error!", MB_ICONSTOP | MB_OK);

return 0;

}

hwnd = CreateWindowEx(

WS_EX_STATICEDGE,

gszClassName,

"Windows Title",

WS_OVERLAPPEDWINDOW,

CW_USEDEFAULT, CW_USEDEFAULT,

320, 240,

NULL, NULL,

ghInstance,

NULL);

if(hwnd == NULL) {

MessageBox(0, "Window Creation Failed!", "Error!", MB_ICONSTOP | MB_OK);

return 0;

}

ShowWindow(hwnd, nCmdShow);

UpdateWindow(hwnd);

while(GetMessage(&Msg, NULL, 0, 0)) {

TranslateMessage(&Msg);

DispatchMessage(&Msg);

}

return Msg.wParam;

}

LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) {

switch(Message) {

case WM_COMMAND:

switch(LOWORD(wParam)) {

case ID_FILE_EXIT:

PostMessage(hwnd, WM_CLOSE, 0, 0);

break;

case ID_HELP_ABOUT:

DialogBox(ghInstance, "ABOUTDLG", hwnd, DlgProc);

break;

}

break;

case WM_CLOSE:

DestroyWindow(hwnd);

break;

case WM_DESTROY:

PostQuitMessage(0);

break;

default:

return DefWindowProc(hwnd, Message, wParam, lParam);

}

return 0;

}

BOOL CALLBACK DlgProc(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, IDOK);

return TRUE;

case IDEMAIL:

ShellExecute(hwnd, "open", "mailto:aztek@faction7.com", 0, 0, 0);

EndDialog(hwnd, IDEMAIL);

return TRUE;

case IDAZTEK:

ShellExecute(hwnd, "open", "http://aztek.faction7.com", 0, 0, 0);

EndDialog(hwnd, IDAZTEK);

return TRUE;

case IDBSRF:

ShellExecute(hwnd, "open", "http://blacksun.box.sk", 0, 0, 0);

EndDialog(hwnd, IDBSRF);

return TRUE;

}

break;

}

return FALSE;

}



I'm gettting an error within the resource file.


Report
Re: keep getting an error(win api) Posted by anthrax11 on 30 Jul 2010 at 9:55 PM
#include <windows.h> in the resource file and don't define your own IDOK, it's defined by Windows already.



 

Recent Jobs

Official Programmer's Heaven Blogs
Web Hosting | Browser and Social Games | Gadgets

Popular resources on Programmersheaven.com
Assembly | Basic | C | C# | C++ | Delphi | Flash | Java | JavaScript | Pascal | Perl | PHP | Python | Ruby | Visual Basic
© Copyright 2011 Programmersheaven.com - All rights reserved.
Reproduction in whole or in part, in any form or medium without express written permission is prohibited.
Violators of this policy may be subject to legal action. Please read our Terms Of Use and Privacy Statement for more information.
Operated by CommunityHeaven, a BootstrapLabs company.