这是我的主循环:
while(TRUE)
{
PeekMessage(&msg,hWnd,0,0,PM_REMOVE);
if (msg.message==WM_QUIT)
break;
TranslateMessage(&msg);
DispatchMessage(&msg);
}
Run Code Online (Sandbox Code Playgroud)
这是我的回调程序:
LRESULT CALLBACK WinProc(HWND hWnd,UINT msg1,WPARAM wParam,LPARAM lParam)
{
switch(msg1)
{
case WM_DESTROY :
{
PostQuitMessage(0);
return 0;
}
break;
}
return DefWindowProc(hWnd,msg1,wParam,lParam);
}
Run Code Online (Sandbox Code Playgroud)
我发现当我按下关闭按钮时,下一个循环中的PeekMessage函数将返回WM_NCLBUTTONDOWN,而没有WM_QUIT!
我正在用 C 语言开发一个迷你 Windows 进程资源管理器,我有一个线程的句柄。
如何检索该线程的起始地址?像这样的东西:

是否有任何控件可用于在winapi32控制中绘制这样的图表?
在你不知道我怎么画一个?

(像这样!)
我想用winAPI创建一个窗口:
int WINAPI WinMain(HINSTANCE hInst,HINSTANCE hPrevInst,LPSTR lpCmdLine,
int nShowCmd)
{
WNDCLASSEX wClass;
HWND hWnd;
wClass.cbClsExtra=NULL;
wClass.cbSize=sizeof(WNDCLASSEX);
wClass.cbWndExtra=NULL;
wClass.hbrBackground=(HBRUSH)COLOR_WINDOW;
wClass.hCursor=LoadCursor(NULL,IDC_ARROW);
wClass.hIcon=NULL;
wClass.hIconSm=NULL;
wClass.hInstance=hInst;
wClass.lpfnWndProc=(WNDPROC)WinProc;
wClass.lpszClassName=TEXT("Window Class");
wClass.lpszMenuName=NULL;
wClass.style=CS_HREDRAW|CS_VREDRAW|CS_DROPSHADOW ;
if(!RegisterClassEx(&wClass))
{
int nResult=GetLastError();
MessageBox(NULL,
TEXT("Window class creation failed"),
TEXT("Window Class Failed"),
MB_ICONERROR);
}
hWnd=CreateWindowEx(NULL,
TEXT("Window Class"),
TEXT("My Process Explorer"),
WS_OVERLAPPEDWINDOW,
200,
20,
800,
630,
NULL,
NULL,
hInst,
NULL);
}
Run Code Online (Sandbox Code Playgroud)
但是我收到了访问冲突错误.为什么?