1. mfc程序怎麼接受命令行參數
三種方法:
假設我們啟動程序的時候執行的是以下命令:
D:mfcapp.exe -l -f ./1.txt
方法1,調用全局函數
::GetCommandLine();
將獲取到全部參數信息:D:mfcapp.exe -l -f ./1.txt
方法2,使用宏__argc和__argv,使用方法和命令行main(int argc,char *argv[])一樣,示例代碼:
for(inti=0;i<__argc;i++)
{
__argv[i];//依次遍歷可以得到D:mfcapp.exe-l-f./1.txt
}
方法3:使用CWinApp類的成員變數m_lpCmdLine,它裡麵包含除了第一個參數的所有信息,比如:
AfxGetApp()->m_lpCmdLine;//結果為-l -f ./1.txt
2. 如何在命令行下編譯和執行win32應用程序和MFC
僅供參考:
1、首先需要有編譯器,比如g++
2、在程序源文件所在目錄,執行 gcc test.cpp
3、執行:./a.out
3. MFC按鈕調用一程序,如何執行程序命令行參數呢
標准
c
庫函數
不知道行不行,如果在win32環境下,調用win32
API絕對是可以的,用shellexecute
函數
啟動
程序
,
命令行參數
在程序
名稱
後按
空格
隔開,在調用程序
main函數
中使用string
strLine=::AfxGetApp()->m_lpCmdLine;就可以獲取命令行參數了,在開發多進程項目的時候用的比較多,常用於進程間啟動
參數傳遞
。
4. MFC中怎麼調用cmd並執行命令
ShellExecute(NULL, "open", "ping", "127.0.0.1", NULL, SW_SHOW);
5. MFC中定時器運行時能執行其他命令嗎
僅供參考:
可以。
在定時器啟動的時候,定時器函數中的代碼定時執行。
在啟動定時器之後的代碼也會依次執行。
6. 在MFC程序中怎麼打開CMD命令窗口,運行一些代碼
很多人問,但無正確答案。CSDN也有人問,但CSDN的帖子過期就不能回復,所以別人有答案了也干著急。CSDN領導人腦袋長了腫瘤吧?
答案如下:
using namespace std;
STARTUPINFO si;
memset(&si, 0, sizeof(STARTUPINFO));//初始化si在內存塊中的值(詳見memset函數)
si.cb = sizeof(STARTUPINFO);
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOW;
PROCESS_INFORMATION pi;//必備參數設置結束
if (!CreateProcessW(TEXT("C:\\WINDOWS\\system32\\cmd.exe"),
TEXT("/k tclsh "),
NULL,
NULL,
FALSE,
0,
NULL,
NULL,
&si,
&pi
)){
cout << "CreateFail!" << endl;
exit(1);
}
else{
cout << "Success!" << endl;
}
//不使用的句柄最好關掉
CloseHandle(pi.hThread);
CloseHandle(pi.hProcess);
重點是CreateProcessW函數的第二個參數要帶上/k參數!!!!!!!!!!!!
7. 如何在MFC里調用bat命令
ShellExecute調用cmd.exe,bat文件作為參數來執行
8. mfc 如何調用cmd並連續執行命令
"&"
cd c:\xx & yyy.exe 10000
可以有很多命令 用 "&" 號分割
9. MFC中調用控制台程序如何進行自動輸入並執行
以ping命令為例。
CStringA str = "ping sohu.com";
str += " -t";
system(str);
以上是vs2008環境。在vc6下如果CStringA不能通過編譯請使用CString代替。
你把ping sohu.com改成你的長文件路徑就可以了啊。
CStringA str = "c:\\mypass\\MypassCCCCC.exe";
// str += " -t";
system(str);
另外,要確認你的控制台程序中有接收參數的功能。如果沒有,光靠簡單的調用api函數是達不到你要求的,即使用其他函數也一樣。這樣的話,你可以考慮編寫一個.bat批處理文件。
system( "X:\\xxxx\\xx.bat");
這下應該夠明白了吧
10. 利用MFC執行dos命令,system()函數的相關問題。
每個system會彈出一個窗口
如果想在同一窗口中執行多個命令,可採用下面方式:
system("命令1 && 命令2 && 命令3...");
如
system("d: && md abc && cd abc && md def");
相當於打開cmd後執行了如下的命令:
d:
md abc
cd abc
md def
我的回答有沒有幫到你?