關於VC MFC中獲得argc,argv的問題

2021-06-05 07:57:42 字數 495 閱讀 7338

在網上搜尋了兩天,各種方法都有,不過貌似都存在這樣那樣的問題……

在vc/mfc中獲得傳給程式的引數,最靠譜的方法,貌似就是呼叫系統api:"getcommandline()"。

這個函式能夠獲得傳遞給程式的整個命令列,當然我們需要的不僅僅是如此,還要把引數分成乙個乙個的,所以有了這乙個系統api:"commandlinetoargvw()"

通過這兩個api就能夠正常的獲得傳遞給程式的引數了。

**如下:

lptstr cmd = ::getcommandline();

int argc = 0;

wchar * const *argv;

argv = ::commandlinetoargw(cmd, &argc);

然後就可以使用了

在網上看到有手動去使用strtok來分割「getcommandline」獲得的命令列的方法,這種方法有個缺陷,就是當程式的路徑中有空格的時候,就會出現錯誤。

關於VC MFC的學習心得

通過學習呂鑫的書,對利用mfc編寫 有了一點認識。其實 的最終目的是資料互動與資料操作,其實是與記憶體裡的資料打交道。我們在利用vc 編寫 的時候,需要對資料進行操作。c 語法通常情況下對資料的操作是針對個體的,但是vc 是基於乙個記憶體模組的,這個模組實際上就是乙個類,而模組中儲存的具體的例項資料...

vc mfc 關於視窗 控制代碼 函式的總結

第一篇 getactivewindow 只是獲取當前程式中 嚴格地說是執行緒中 被啟用的視窗 hwnd hwnd getactivewindow 注意 如果是在多執行緒中某個子執行緒函式內部掉該函式,則返回null,建議在主線程中呼叫 即 如果某個函式有子執行緒呼叫的,則該函式內部使用getacti...

VC MFC程式開發中的斷言

首先要確認一點,使用斷言可以驗證你的程式是否有效,但並不表示你的程式是正確的.下面開始介紹各種型別斷言 一.c執行時斷言 它宣告在 crtdbg.h中,有如下兩個斷言 1 assert booleanexpression 2 asserte booleanexpression 其中,asserte巨...