WinMain( )的第3个参数是lpCmdLine,这是一个字符串,可以直接用MessageBox把内容显示出来。我是在Code::Blocks中调试这个程序的。
程序编好后如果直接运行,看不到任何内容,此时lpCmdLine是空串。
要想在lpCmdLine中装载有效内容,需要事先设置Code::Blocks的相关选项。步骤是:Project->Set Program's Arguments...然后在相应的输入框中输入命令行参数。由于这个程序的命令行参数只是示例,并不产生实际作用,因此输入什么都可以。例如输入: cmd1 cmd2 cmd3
运行程序就会在消息窗口中显示设置好的字符串的内容。完整的程序如下。
//Third.cpp
//
//第3个例子
//吴新 2009/01/07
#include <windows.h>
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nShowCmd)
{
HWND hWnd = GetDesktopWindow();
MessageBox(hWnd, lpCmdLine, "例3", MB_OK);
return 0;
}
如果真要使用命令行参数,还要设法把各个参数分离出来。那是另外的话题,这里就不深入了。
在VS2005中设置命令行参数的地方要隐蔽些,我第一次用VS2005写程序时,恰巧要引用命令行参数,找了老半天还是没找着,只好改用C::B。