所以,我有一个关于WinMain的问题。在VS2010中,_tWinMain的返回值是"(int) msg.wParam“。我不明白它为什么返回wParam。
wParam是什么?我能把它改为“返回0”吗?
发布于 2017-03-28 06:09:49
当WM_QUIT由GetMessage处理时,它将终止消息循环。WM_QUIT的文档说明如下:
wParam PostQuitMessage函数中给出的退出代码。
这是从WinMain返回的值。因此,这个值只是作为退出代码传递给PostQuitMessage的值。
您可以更改代码以返回您想要的任何东西,如果您愿意,则为零。然而,在正常的终止中,PostQuitMessage将被传递为零,因此通过这样的更改没有什么可获得的。
发布于 2017-03-28 06:45:35
从WinMain返回的值将像传递给ExitProcess函数一样传递。c/c++运行时或ExitProcess本身不解释和使用uExitCode -因此您可以使用绝对的任何值(可能只是返回STILL_ACTIVE不太好,但甚至不会返回错误)--这是您的应用程序,您需要自己决定需要返回哪些代码。这段代码可以通过调用GetExitCodeProcess来检索另一个应用程序--如果应用程序中的uExitCode包含一些信息(通常这是错误代码,0表示没有错误),那么可以以某种方式解释它。然而,在大多数情况下,uExitCode不包含任何信息,也没有人对您的返回代码感兴趣-所以绝对没有什么不同,您返回的值。当然,返回msg.wParam也是可能的,但没有比返回0或者说__LINE__更有意义
https://stackoverflow.com/questions/43060574
复制相似问题