C++ 从其他函数调用WinMain
因此,我有一个.cpp文件,它有一些函数:drawLine()、drawSquare()和main()。在main()中,我想调用(来自其他文件的)函数,该函数使用WinApi创建一个窗口,然后调用drawLine()和drawSquare()在该窗口中绘制一些图形。如果这个WinMain()看起来像这样,我如何调用它(仅声明):C++ 从其他函数调用WinMain,c++,winapi,C++,Winapi,因此,我有一个.cpp文件,它有一些函数:drawLine()、drawSquare()和main()。在main()中,我想调用(来自其他文件的)函数,该函数使用WinApi创建一个窗口,然后调用drawLine()和drawSquare()在该窗口中绘制一些图形。如果这个WinMain()看起来像这样,我如何调用它(仅声明): 还有一件事。此创建窗口必须在WinMain中,还是有办法将指令放入常规函数中?WinMain是入口点,必须(与c中的main类似)按原样命名。抱歉,无法重命名此函数。
还有一件事。此创建窗口必须在WinMain中,还是有办法将指令放入常规函数中?WinMain是入口点,必须(与c中的main类似)按原样命名。抱歉,无法重命名此函数。从另一个文件调用此函数可能会起作用,但这通常不会也不应该这样做,因为只有windows操作系统才是所有WinMain函数的合法调用方
main
是控制台应用程序的入口点
WinMain
用于GUI应用程序
您的项目应该只有其中一个,句号
你可以把窗口创建代码放在任何地方;它不需要位于
WinMain
Q中。如果这个WinMain()看起来像那样(只有声明),我如何调用它呢?
- 参数对于GUI应用程序的工作不是必需的。试着这样做:
- WinMain只是一个入口点。你可以把它放在任何你想放的地方
您的设置似乎有点混乱。据我所知,你并不真的需要WinMain。。。只需调用Windows API函数即可创建窗口。您可以重命名此函数(=更改入口点名称)。告诉链接器应该使用/entry开关使用另一个入口点。哇,从没听说过。谢谢澄清。你们都错了。名称
WinMain
实际上只是一个约定,它也不是入口点。默认情况下,入口点是WinMainCRTStartup
或wwinmincartstartup
。这是CRT执行所有启动代码的地方。然而,CRT要求“入口点”实际上被称为WinMain
或wWinMain
。如果你不使用CRT,你可以用任何你喜欢的名字。
int WINAPI WinMain (HINSTANCE hThisInstance,
HINSTANCE hPrevInstance,
LPSTR lpszArgument,
int nFunsterStil)