解決此類方法
一般式C#調用C++封裝的dll時 ,出現的警告 ,在正常編譯之后如果不是debug那就不會有問題,只是在debug的時候感覺比較煩。
1. Long的類型應該是C# int類型。一般常見。
2.,CharSet=System.Runtime.InteropServices.CharSet.Ansi,添加編碼格式 我沒有遇到過時這樣的問題出現的原因。
3.添加 CallingConvention = CallingConvention.Cdecl 雖然我不知道為什么 不過我出現問題的重點是這里
CallingConvention
Cdecl:
StdCall:
我是使用后者才不出現警告的 ,曾想着 不讓出現警告 但是害怕如果后邊什么地方再有這樣的東西就麻煩了 。現在好了
這樣就解決了問題 ,記錄下來 以便后面什么時候忘記了 。
對了還有一個問題 就是C++dll包 ,通過DllImport引入之后呢 總是出現 Dll包不能用 ,那就要去查看Dll的依賴性了
用工具是DEPENDS.exe 只要上邊出現?的都是你系統環境沒有的dll包 ,所以需要你自己找到dll包並且放到system32下 ,然后注冊dll。這樣項目才不會出錯~。
添加下載:DEPENDS.rar