我知道你需要打開'Native Code'調試器才能進入pinvoke'd dll,但是我甚至沒有進入這一點。取而代之的是,當我嘗試步入DLL我收到以下異常調試asp.net&pinvoke
「無法加載DLL‘Native.dll’:指定的模塊找不到(異常來自HRESULT:0x8007007E)。」
如果我檢查我的模塊,我發現當前的.Net dll位於: C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files \ project \ c4e2b8a9 \ 1234a123 \ assembly \ d12 \ de123456 \ 12345678_0304cb01 \ dotnet.dll
所以它是有道理的,我沒有找到我pinvoked DLL,因爲它不存在於此路徑。我該如何做到這一點,以便當我的代碼從'Temporary ASP.Net files'位置運行時,它會看到我的pinvoked dll? (沒有硬編碼路徑)。
目前我decleration如下:
[DllImport("Native.dll")]
public static extern int RunTest();
編輯:
我發現了一個類似的問題,有一些很好的建議。 Unmanaged DLLs fail to load on ASP.NET server
嘗試將其放置到Windows或system32目錄。 – 2010-06-04 17:26:55