簡體   English   中英

在DLL中調用函數

[英]Calling a function inside DLL

所有,

我有一個要從中導出函數的DLL。 僅有一個帶有源代碼的C ++文件。

事實證明,我需要向該源C ++文件添加一個函數,然后從導出的函數調用此函數。 不幸的是,MSVC 2010引發錯誤:

extern "C" declspec(__dllexport) ExportedFunc()
{
    int result = Foo();
}

int Foo();

Foo():找不到標識符。

我嘗試導出Foo()函數,但沒有任何改變。

修復它的最佳方法是什么?

謝謝。

我認為@Captain指出了可能的錯誤。 我將添加一些要點,以幫助您更好地處理鏈接。

分別了解編譯器和鏈接器錯誤很有用。 您可以使用-c標志來編譯客戶端代碼,該標志只會給出來自編譯器的錯誤,其中包括找不到的標識符。 這些錯誤與您的庫無關,根本不需要該庫。 一旦清除了這些錯誤,就可以不使用-c標志(可以使用通過-c標志而不是.cpp生成的.o目標文件)和庫來進行鏈接並生成可執行文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM