1樓:空雪夢見
1、能的話最好用工具檢視一下dll檔案裡面函式的名字匯出變成什麼樣了,這類工具很多。vc自帶的命令列工具dumpbin好像是可以……我平時用的mingw裡面附帶的pexports。或者ollydbg載入dll以後在模組裡面對其檢視名稱也行
2、c++製作dll檔案的時候可以使用乙個模組定義檔案(def檔案)來指定函式名
3、為了避免c++過載機制造成的函式名修飾,使用extern "c"關鍵字例如
extern "c" __declspec(dllexport) void thisisafunction() {}
4、winapi形式的函式在未使用def檔案的情況下匯出的名稱後面會帶有@nn (nn為數字)形式的修飾
2樓:匿名使用者
可以把呼叫的**貼上來看一下麼?我幫你分析一下
3樓:
你要顯式,指定dll入口的
c# 呼叫c++ dll,無法在 dll「scandll.dll」中找到名為「 startscan 」的入口點
4樓:匿名使用者
只能說明 c#在訪問 startscan 這個函式是沒有成功。
你用dll檢視器,看看已經生成的dll檔案裡面startscan函式原型是否與呼叫的一致?
5樓:匿名使用者
[dllimport("scandll.dll", entrypoint = " startscan ", charset = charset.ansi, callingconvention = callingconvention.
stdcall)]
這一行"startscan"引號中的內容不能有空格
6樓:喻元愷
這個你要看看你的dll中有沒有startscan的哈,還有你要注意大小寫的問題的
c#中需要引用乙個dll檔案,已經引用好了,編譯時能找到,但是執行時找不到,怎麼辦
7樓:
雖然已引用,但在.cs中,還是得using這個型別才行!
8樓:匿名使用者
在你的介面引用一下:using sensor_microsec 重新編譯一下
電腦執行軟體顯示檔案被損壞?電腦提示檔案損壞怎麼辦
電腦在執行軟體的時候提示檔案已經損壞的話,那麼可能你的這個程式已經被破壞掉了,比如你是。現一不小心給刪除了,或者有一電腦。在非正常關機的時候,硬碟發生了損壞等等。親,你可以將軟體解除安裝掉,重新安裝一遍,可能就能恢復正常了,如果仍然無法正常的話,那麼你。可以執行軟體掃瞄一下電腦硬碟,看看是不是硬碟本...
為什麼c語言不能通過執行呼叫函式來改變實參指標變數的值
呼叫函式,只能改變指標指向的記憶體空間的內容,不能改變實參指標變數的值。專 我覺得題 屬主對指標變數,還算有一點了解。指標變數,其實也就是乙個變數,但它的值是一塊記憶體的位址。函式呼叫時,你只是把實參指標變數的值,即一塊記憶體的位址,賦 複製 給了形參,然後,你在函式內把形參指標指向別的記憶體空間位...
c語言源程式檔案,目標檔案,和可執行檔案的副檔名是什麼
根據平台 抄不同,副檔名也有所不襲同 1 源程式。在各個平台上,c語言的源程式副檔名都是相同的,即c。比如test.c等。c 的源程式則是cpp。2 目標檔案。目標檔案是源程式經過編譯生成的檔案,平台不同,編譯工具不同生成的目標副檔名也不同。在windows上比較常見的為obj,在linux下比較常...