Visual c++

Thid code compiles fine in the dev but gives error in the visual c++
at line Number 87 and 90
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
#include <windows.h>
 
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
static char sClassName[]  = "MyClass";

static HINSTANCE zhInstance = NULL;

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

        WNDCLASSEX WndClass;

        HWND hwnd;

        MSG Msg;

        zhInstance = hInstance;

        WndClass.cbSize        = sizeof(WNDCLASSEX);

        WndClass.style         = NULL;

        WndClass.lpfnWndProc   = WndProc;

        WndClass.cbClsExtra    = 0;

        WndClass.cbWndExtra    = 0;

        WndClass.hInstance     = zhInstance;

        WndClass.hIcon         = LoadIcon(NULL, IDI_APPLICATION);

        WndClass.hCursor       = LoadCursor(NULL, IDC_ARROW);

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

        WndClass.lpszMenuName  = NULL;

        WndClass.lpszClassName = sClassName;

        WndClass.hIconSm       = LoadIcon(NULL, IDI_APPLICATION);

 

        if(!RegisterClassEx(&WndClass)) {

                MessageBox(0, "Error Registering Class!", "Error!", MB_ICONSTOP | MB_OK);

                return 0;

        }


            hwnd = CreateWindowEx(WS_EX_STATICEDGE, sClassName, "mouse lisner", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 320, 240, NULL, NULL, zhInstance, NULL);

              if(hwnd == NULL) {

                                MessageBox(0, "Error Creating Window!", "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_LBUTTONDOWN:
                                               
                                            MessageBox(hwnd,"Left Mouse Button Pressed","Mouse Press Information",MB_OK | MB_ICONINFORMATION);
                                            break;
                         case WM_RBUTTONDOWN:
                                            MessageBox(hwnd,"Right Mouse Button Pressed","Mouse Press Information",MB_OK | MB_ICONINFORMATION);
                                            break;
                         case WM_CLOSE:
                                            DestroyWindow(hwnd);
                                            break;
                         case WM_DESTROY:
                                            PostQuitMessage(0);
                                            break;
                          

                         default:

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

                     }

                       return 0;

                }
What's the error?

Maybe try casting the strings to LPCWSTRs.

1
2
3
4
MessageBox( hwnd, 
           (LPCWSTR)L"Left Mouse Button Pressed",
           (LPCWSTR)L"Mouse Press Information",
            MB_OK | MB_ICONINFORMATION );
Topic archived. No new replies allowed.