16,471
社区成员
发帖
与我相关
我的任务
分享
//////////////////////////////////////////////////////////////////////////
// SDK.cpp
// SDK线程创建对话框实例
#include <windows.h>
#include "Resource.h"
//////////////////////////////////////////////////////////////////////////
// 线程函数、对话框回调函数
DWORD WINAPI ThreadProc(LPVOID lpParameter);
LRESULT CALLBACK DialogProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
// 全局变量:实例句柄、窗口句柄
HINSTANCE hCurInstance = NULL;
HWND hWnd = NULL;
/************************************************************************/
/* 函数说明:WinMain函数
/************************************************************************/
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
hCurInstance = hInstance;
DWORD dwThread;
CreateThread(NULL,0,ThreadProc,NULL,0,&dwThread);
Sleep(100);
return 0;
}
/************************************************************************/
/* 函数说明:线程函数、用来创建对话框
/* 参 数:LPVOID
/* 返 回 值:msg.wParam
/************************************************************************/
DWORD WINAPI ThreadProc(LPVOID lpParameter)
{
if(DialogBox(NULL,MAKEINTRESOURCE(IDD_DIALOG_DIALOG),NULL,(DLGPROC)DialogProc) == IDOK)
return 0;
}
/************************************************************************/
/* 函数说明:窗口回调函数
/* 参 数:消息处理
/* 返 回 值:msg.wParam
/************************************************************************/
LRESULT CALLBACK DialogProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
switch(uMsg)
{
case WM_INITDIALOG:
return TRUE;
case WM_COMMAND:
{
switch(LOWORD(wParam))
{
case IDCANCEL:
PostQuitMessage(0);
break;
case IDOK:
break;
default:
break;
}
break;
}
case WM_DESTROY:
PostQuitMessage(0);
break;
}
return FALSE;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
hCurInstance = hInstance;
DWORD dwThread;
CreateThread(NULL,0,ThreadProc,NULL,0,&dwThread);
WaitForSingleObject(hThread,INFINITE);
return 0;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
hCurInstance = hInstance;
DWORD dwThread;
UINT i=DialogBoxParam(hInstance,MAKEINTRESOURCE(IDD_DIALOG_DIALOG),0,DialogProc,0);
ExitProcess(i);
return 0;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
hCurInstance = hInstance;
DWORD dwThread;
DialogBoxParam(hInstance,MAKEINTRESOURCE(IDD_DIALOG_DIALOG),0,DialogProc,0);
return 0;
}
CreateThread(NULL,0,ThreadProc,NULL,0,&dwThread);
Sleep(100);
return 0;
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
hCurInstance = hInstance;
DWORD dwThread;
HANDLE hThread = CreateThread(NULL,0,ThreadProc,NULL,0,&dwThread);
WaitForSingleObject(hThread);
Sleep(100);
return 0;
}