如何在 F# 交互中加载本机 DLL?
How do I load a native DLL in F# interactive?
尝试使用 Microsoft.TeamFoundationServer.ExtendedClient
nuget 包时,出现以下错误:
System.DllNotFoundException: Unable to load DLL 'Microsoft.WITDataStore32.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
发生这种情况是因为包中包含的 DLL 之一是本机 DLL,无法使用正常方式在 F# 交互式中加载 DLL (#r "dllname.dll"
)。
如何加载或帮助 F# interactive 查找本机 DLL?
所有必要的是确保 FSI 进程在包含本机 DLL 的目录中查找 DLL。你不需要直接引用它。
完成此操作的一种方法是将其添加到系统路径:
Environment.SetEnvironmentVariable("Path",
Environment.GetEnvironmentVariable("Path") + ";" + __SOURCE_DIRECTORY__ + @"\..\packages\Microsoft.TeamFoundationServer.ExtendedClient.15.112.1\lib\native\x86\")
一些其他选项的解释如下:
http://christoph.ruegg.name/blog/loading-native-dlls-in-fsharp-interactive.html
尝试使用 Microsoft.TeamFoundationServer.ExtendedClient
nuget 包时,出现以下错误:
System.DllNotFoundException: Unable to load DLL 'Microsoft.WITDataStore32.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
发生这种情况是因为包中包含的 DLL 之一是本机 DLL,无法使用正常方式在 F# 交互式中加载 DLL (#r "dllname.dll"
)。
如何加载或帮助 F# interactive 查找本机 DLL?
所有必要的是确保 FSI 进程在包含本机 DLL 的目录中查找 DLL。你不需要直接引用它。
完成此操作的一种方法是将其添加到系统路径:
Environment.SetEnvironmentVariable("Path",
Environment.GetEnvironmentVariable("Path") + ";" + __SOURCE_DIRECTORY__ + @"\..\packages\Microsoft.TeamFoundationServer.ExtendedClient.15.112.1\lib\native\x86\")
一些其他选项的解释如下:
http://christoph.ruegg.name/blog/loading-native-dlls-in-fsharp-interactive.html