創建過程我使用的CreateProcess調用cl
編譯和鏈接其它C++程序(TestProg.cxx
)爲DLL的入口點。我調用cl
與以下編譯選項:如何設置從CreateProcess的
/Od /nologo /Fo /RTC /w /Zc /EHsc /I\INCLUDE /I\LIB /I\PATH TestProg.cxx /DLL
電話:
if (CreateProcess(full path to cl.exe, compilation options, NULL,NULL,FALSE,0, NULL,NULL,&si,&pi))
{
//....
}
運行從VS工具的應用提示,我得到了以下鏈接錯誤:
LINK : fatal error LNK1561: entry point must be defined
什麼時我做錯了? 我搜索了最後半天在網上查詢答案,但沒有找到它。使用Windows API對我來說是新的。
感謝
做'TestProg.css'有['DllMain'](http://msdn.microsoft.com/en-us/library/windows/desktop /ms682583%28v=vs.85%29.aspx)函數? – 2012-03-15 12:32:57
如果從命令行運行cl,是否會得到相同的錯誤? – 2012-03-15 12:33:05
@JoachimPileborg:我添加了一個默認的DllMain()我'TestProg.cxx' '的extern 「C」 BOOL WINAPI的DllMain(HINSTANCE的hInstance,DWORD dwReason,LPVOID lpReserved) { 返回TRUE; }' 也加入'/輸入:DllMain'的鏈接選項。 但現在我得到了以下鏈接錯誤: 'LINK:錯誤LNK2001:解析外部符號_DllMain main.obj:錯誤LNK2001:解析外部符號__RTC_Shutdown main.obj:錯誤LNK2001:解析外部符號__RTC_InitBase 爲主。 DLL:致命錯誤LNK1120:3懸而未決externals' 可否請你讓我知道如何解決它?謝謝 – ZOK 2012-03-19 09:27:10