windows WTL使用命令列參數

來源:互聯網
上載者:User

標籤:介紹   null   logs   方式   comm   分割   color   命令   version   

兩中方法:

第一種:

 1 int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPTSTR lpstrCmdLine, int nCmdShow){ 2         int argc = 0; 3     LPWSTR *argv= NULL; 4     //分割命令列參數   5     USES_CONVERSION; 6     LPCWSTR temp= A2W(lpstrCmdLine); 7     argv= CommandLineToArgvW(temp, &argc); 8         //到此處已經擷取到了兩個參數  argc  argv,與控制台程式不同的是:argc的個數為真實的參數個數 ,並不包括  .\test.exe 本身。argv也一樣,argv[0]為第一個參數,並不是.\test.exe 9     //此方法有一個缺陷,在命令參數有空格時,會解析失敗,造成參數不完整。10 }

第二種:

 1 #include <misc/cmdline.h> 2 int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPTSTR lpstrCmdLine, int nCmdShow){ 3     CmdLine cmdline; 4     cmdline.Analyze(lpstrCmdLine); 5  6     if (cmdline.HasParam("test")){ 7             printf("%s",cmdline["test"]); 8     } 9 } 10 //這種方法在命令列參數輸入時為 KEY:VALUE形式,在程式中可以用KEY擷取VALUE,該類還有SetParam等方法,具體請參考源碼。11 使用方式為 .\test.exe -KEY:VALUE

 至此兩種方法介紹完畢,有建議的小夥伴可以給我留言評論。

如需轉載,請標明出處:http://www.cnblogs.com/guozht/7680893.html

windows WTL使用命令列參數

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.