请问,mfc里面,如何获得控制台所传出来的参数? 用控制台来启动应用程序,想在后面加两个参数,mfc工程该如何接收?请大家指教 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ANSI版本的C++程序仍然可以使用标准C的main主函数入口参数argc和argv或者WinMain函数的lpCmdLine参数。但是,这些参数都是LPSTR类型而不是LPTSTR类型,所以不能用于Unicode版本的程序。Unicode版本的程序可以使用GetCommandLine获得命令行字符串,以及使用CommandLineToArgvW来获得argc和argv风格的数据。MFC程序当然也是C++程序,所以上面的方法仍然有效。一般情况下,应用程序可以访问CWinApp::m_lpCmdLine来处理参数。为了简化这个处理,MFC也提供了命令行处理过程的封装类CCommandLineInfo,支持了标准的命令行开关的分析。更高级的命令行参数的处理可以参考MSJ 1999年10月号,Paul DiLascia在C++Q&A专栏中描述的CCommandLineInfoEx类(http://www.microsoft.com/msj/1099/c/c1099.aspx)。它通过重载CCommandLineInfo ::ParseParam,之后保存分析的结果来提供自定义命令行开关分析方式的方法。 http://www.codeproject.com/cpp/cmdlineparser.asp可以用这个类来解析命令行参数从CWinApp::m_lpCmdLine即可以获得 if (AfxGetApp()->m_lpCmdLine[0] != '\0') { TCHAR strHandle[128]; TCHAR strServer[128]; int nChannel; istrstream(AfxGetApp()->m_lpCmdLine) >> strHandle >> strServer >> nChannel;} MFC 创建模态对话框的问题 mscomm的问题 当鼠标移到EDIT控件上时,旁边出现一个说明(文字框),怎样实现?? VC6中带参数的win32 console 应用如何调试? 怎么实现CToolTipCtrl的多行显示? 请问VC能够处理什么样的位图? 高手请进!!! 又碰到奇怪的问题,我的程序在退出时为何总要响一声?? 如何在c++中调用c写的函数,拜托,尽快回复! 求助:如何在一个具有串口转网口的usb驱动中,加入定制的操作 请教:如何把float数如5.35455550000变成5.35? 升星散分! 求助!关于VC中用ODBC的m_strFilter。
可以用这个类来解析命令行
参数从CWinApp::m_lpCmdLine即可以获得
{
TCHAR strHandle[128];
TCHAR strServer[128];
int nChannel; istrstream(AfxGetApp()->m_lpCmdLine) >> strHandle >> strServer >> nChannel;
}