c++ - 在 Windows Server 2012 上运行 VS2019 编译的应用程序需要什么?

标签 c++ .net windows visual-studio-2019 windows-server

最近我用VS2019编写了一个程序,调用C++(x64)编译的Tesseract OCR dll并在.NET Windows窗体上显示结果。在我的 Windows 10 开发电脑上一切正常。当部署到 Windows Server 2012 (x64) 时,它崩溃了,并提示找不到 C++ dll。

我尝试过的:

  • 安装微软的vc_redist.x64.exe,还是不行。 (也许还不够?)
  • 在该服务器上运行一个简单的.NET Windows 窗体程序,并且运行良好。 (这不是 .NET 问题)

更新:

我使用了 @Fenixil 建议的 Dependency Walker,但未找到以下 dll:

  • API-MS-WIN-CORE-KERNEL-32-PRIVATE-L1-1-1.DLL
  • API-MS-WIN-CORE-PRIVATEPROFILE-L1-1-1.DLL
  • API-MS-WIN-SERVICE-PRIVATE-L1-1-1.DLL
  • MF.DLL
  • MFPLAT.DLL
  • MFREADWRITE.DLL
  • API-MS-WIN-CORE-SHUTDOWN-L1-1-1.DLL
  • EXT-MS-WIN-NTUSER-UICONTEXT-EXT-L1-1-0.DLL
  • IESHIMS.DLL
  • SETTINGSYNCPOLICY.DLL
  • WLANAPI.DLL

这些dll可以在我的开发PC中的C:/Windows/WinSxS中找到,不同目录下有多个同名文件。它们是否属于某些Windows SP更新,或者它们在Win10平台API中?安装它们而不是简单地将它们复制到生产服务器的最佳方法是什么?

最佳答案

vc_redist 有多个版本,您需要提供一个在您的应用程序中使用的版本。 Here未找到与 vc_redist 的一些讨论,可能与您的问题有关。

您可以使用Dependency Walker检查系统中缺少哪些dll的工具

关于c++ - 在 Windows Server 2012 上运行 VS2019 编译的应用程序需要什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57841900/

相关文章:

c++ - 模板推导/替换在智能指针上失败

c# - C#中的分布式计算

c# - 异步方法可以在第一个 'await' 之前有昂贵的代码吗?

windows - 如何使用 WMI 了解进程的 CPU 和内存使用情况?

windows - 是否可以在上下文/线程之间共享 opengl 帧缓冲区对象?

c++ - gdb类是不完整的类型,直到我在类构造函数中设置断点?

c++ - 调整场景节点大小

c++ - 如何获得从资源文件生成的 Win32 对话框的视觉主题?

c++ - 我将如何继续处理函数之间的 "return"字符串数组?

C#项目引用netcoreapp3.1中的F#类lib