有誰知道是否有一種方法可以獲取通過C#interop調用加載的庫的路徑嗎?獲取P/Invoke調用加載的庫的路徑#
例如,如果我這樣做:
[DllImport("R")]
private static extern IntPtr someFunc()
單(我假設.NET)明確查找路徑庫上。有沒有辦法獲得圖書館作爲變量找到的路徑? (如/usr/bin/libR.so或C:\程序\ r \ R.dll「)
有誰知道是否有一種方法可以獲取通過C#interop調用加載的庫的路徑嗎?獲取P/Invoke調用加載的庫的路徑#
例如,如果我這樣做:
[DllImport("R")]
private static extern IntPtr someFunc()
單(我假設.NET)明確查找路徑庫上。有沒有辦法獲得圖書館作爲變量找到的路徑? (如/usr/bin/libR.so或C:\程序\ r \ R.dll「)
不可能的。單聲道庫做複雜的負載,但任何地方都不會存儲這些信息用於以後程序中使用。
您可以使用環境變量MONO_LOG_LEVEL和MONO_LOG_MASK爲了這個目的,這種方式:
MONO_LOG_LEVEL="debug" MONO_LOG_MASK="dll" mono YourProgram.exe
您可以使用水平發揮可能得到較少的信息,但仍然不夠。更多信息here。
謝謝!這實際上是我知道它有這個信息。任何想法如何讓它在控制檯(而不是命令行?) – evolvedmicrobe
你是什麼意思與控制檯?我以爲控制檯和命令行是一樣的 – knocte
對不起,我的意思是在程序中而不是在命令行中 – evolvedmicrobe
更多的PInvoke ,在Windows上使用GetModuleFileName()當然不會很好。 –