VC6 編譯選項問題

2022-07-31 09:57:13 字數 1110 閱讀 7642

為了能將原始檔編譯成dll目標**。以前總以為是要設定/mt,/md /mt d,/md d. 那麼在link命令列中有:

1)kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:no /pdb:"release/audiolab.pdb" /machine:i386 /def:".\exportlib.def" /out:"release/audiolab.dll" /implib:"release/audiolab.lib"

kernel32.lib user32.lib gdi32.lib  winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo/subsystem:windows /incremental:no /pdb:"release/audiolab.pdb" /machine:i386 /def:"../cpp/libexport.def" /out:"release\audiolab.dll"

很重要一點就是將 /subsystem:console or /subsystem:windows 替換成/dll 是主要的。

其次,對於其他編譯選項也要經常去學習。

如 /nologo /gz /zp4 /mt /w3 /gx /o2 /d "win32" /d "ndebug" /d "_windows" /d "_mbcs" /d "_usrdll" /d "vc6win32dll_exports" /fo"release/" /fd"release/" /fd /c

/nologo /gz /zp4 /mt /w3 /gx /o2 /d "win32" /d "_debug" /d "_windows" /d "_mbcs" /d "_usrdll" /fo"release/" /fd"release/" /fd  /c  

各個命令表示何意?請參閱網路資料。

1)2)

3) 

vc6 控制項

詳見msdn 為控制項新增乙個控制項型變數然後訪問之 edit idc edit1 m edit1 void ctest1dlg onbutton1 也可以直接使用id訪問 cstring str int i getdlgitemtextw idc edit1,str afxmessagebox s...

VC 6中的預編譯頭

vc 6中的預編譯頭 預編譯頭的概念 在很多程式中,每個原始檔都存在一些相同的部分。比如要包括相同的一些標頭檔案,而且這些標頭檔案可能很長,例如 window.h 如果用普通的方法編譯這些原始檔,對這些標頭檔案在每個原始檔中的出現都要重新編譯,作了很多重複工作。如果能將這些標頭檔案專門進行編譯,並且...

VC編譯選項

vc編譯選項 od 禁用優化 預設值 disable optimizations default ox 最大化選項。ogityb2 gs maximum opts.ogityb1 gs og 啟用全域性優化 enable global optimization oy 啟用框架指標省略 enable ...