使用调试模式构建时,凭据提供程序DLL无法正确加载

时间:2014-05-07 15:33:44

标签: c++ visual-studio dll credential-providers

我已成功为x64在发布模式下构建了DLL。在使用Register.reg文件注册后,当我锁定计算机时,Crdential Provider会正确加载。

但是,当我在x64的调试模式下构建时,当我锁定计算机时,我的凭据提供程序将无法加载。我的构建配置有问题吗?我需要检查什么?

1 个答案:

答案 0 :(得分:0)

您可能没有遇到过这个问题,但它可能与其他遇到此问题的人相关。

在我的情况下,我在与构建代码不同的机器上运行凭据提供程序。事实证明,我没有在目标机器上安装 C++ 运行时文件的调试版本。

调试运行时文件不随普通 C++ 可再发行包一起提供,您可以从 Microsoft 网站下载该包。它们只能从您的 Visual Studio 安装中获得(请参阅 this reference for Visual Studio 2017)。

复制以下文件夹的内容:

  • [VisualStudioFolder]\VC\Redist\MSVC\[version]\debug_nonredist\x64\Microsoft.VC[version].DebugCRT\

致:

  • C:\Windows\System32

还要确保将手动复制的文件的所有者更改为 SYSTEM 用户。

请注意,这些文件不允许与您的应用程序一起分发,它们仅可用于开发目的。