VC++的SendMessage函数如何利用wParam lParam传递参数

DWORD或其小于等于DWORD(一般为4字节)长度的变量直接传再强转: 
unsigned int a =12345; 
unsigned int* b = &a; 
SendMessage(DWORD(a), DWORD(b)); 

OnMessage(DWORD wParam, DWORD lParam) 
{ 
unsigned int a =(unsigned int)wParam; 
unsigned int* b = (unsigned int*)lParam; 
... 
} 
复杂数据传指针再强转(或提升): 
struct a_t 
{ 
int aa; 
char ab; 
}; 

a_t a; 

SendMessage(DWORD(&a), DWORD(0)); 

OnMessage(DWORD wParam, DWORD lParam) 
{ 
a_t* pa =(a_t*)wParam; 
cout << pa->aa << endl; 
... 
}

转自:http://zhidao.baidu.com/question/69002874.html

你可能感兴趣的:(Win,C/C++)