C++指针,如何?

Stu*_*ntX 1 c++ winapi

我需要一个指针传递给std::string作为LPARAM一个的WM_USER消息,并得到字符串或char*WM_USER主窗口的消息处理程序.

我怎么做 ?

我现在正在做什么(这是不正确的,因为它不会产生应该的结果):

PostMessage(hwnd, LP_DOWNLOADUPDATE, (WPARAM)hHandleToWindow, (LPARAM)&remSize);
Run Code Online (Sandbox Code Playgroud)

哪里remSizesdt::string remSize;一个全局变量.

在我正在做的消息处理程序中:

SetWindowText( (HWND)wParam, (char*)lParam );
Run Code Online (Sandbox Code Playgroud)

unw*_*ind 6

只需要获得一个C风格的字符串,即一个指向零终止字符数组的指针:

PostMessage( hwnd, LP_DOWNLOADUPDATE, (WPARAM)hHandleToWindow, remSize.c_str() );
Run Code Online (Sandbox Code Playgroud)

确保remSize不会超出范围,直到您可以确定消息已被处理,否则将有悬空指针.