在此https://docs.microsoft.com/en-us/information-protection/develop/setup-configure-mip之后 ,我创建了控制台应用程序,添加代码。运行后出现以下错误:LoadLibrary failed for: [sdk_wrapper_dotnet.dll] at MIP.Initialize(MipComponent.File);
请让我知道我错过了什么。
谢谢,拉吉
在此https://docs.microsoft.com/en-us/information-protection/develop/setup-configure-mip之后 ,我创建了控制台应用程序,添加代码。运行后出现以下错误:LoadLibrary failed for: [sdk_wrapper_dotnet.dll] at MIP.Initialize(MipComponent.File);
请让我知道我错过了什么。
谢谢,拉吉
`
//Step 1:
internal static class UnsafeKernel32NativeMethods
{
[DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Unicode,
CallingConvention = CallingConvention.StdCall)]
internal static extern bool SetDllDirectory([In] [MarshalAs(UnmanagedType.LPWStr)] string lpPathName);
}
//第二步:设置bins文件夹的路径
var path = Path.Combine( Directory.GetParent(Path.GetDirectoryName(new Uri(System.Reflection.Assembly.GetExecutingAssembly().CodeBase).LocalPath)).FullName, Environment.Is64BitProcess ? "binsx64" : "binsx86");
//第 3 步:使用自定义 UnsafeKernel32NativeMethods 类来配置托管到非托管编组。
Utilities.UnsafeKernel32NativeMethods.SetDllDirectory(path);
//完成上述步骤后,下面的代码在 Web 应用程序中工作 MIP.Initialize(MipComponent.File);
`
SDK dll-s 与您的运行配置不兼容。尝试将处理器从“任何 CPU”更改为“x64”。
如果您尝试在 IIS 上运行它,请确保在 64 位模式下运行它。
现在 Visual Studio 2013 中有一个选项可以指示 IIS Express(通常用于调试)在 64 位模式下运行。它位于工具 -> 选项 -> 项目和解决方案 -> Web 项目 -> 使用 64 位版本的 IIS Express...</p>
我的解决方案是从https://www.microsoft.com/en-us/download/details.aspx?id=48145为 Visual Studio 2015 安装 Visual C++ Redistributable 。我猜 MIP SDK 对它有依赖。我使用的是 64 位操作系统,所以只安装 vc_redist.x64.exe 就可以了。