【问题标题】:C++: MFC Application on both Windows 10 x64 & Windows 7 x64C++:Windows 10 x64 和 Windows 7 x64 上的 MFC 应用程序
【发布时间】:2017-10-17 14:31:23
【问题描述】:

我正在使用 CLR 构建 MFC 应用程序,它可以在 windows 10 x64 和 windows 7 x64 上运行,并且无需安装 Visual Studio 即可执行。 首先,我试图在不安装 Visual Studio 的情况下为应用程序找到解决方案。 在谷歌上做了一些工作后,我发现了一些关于这个问题的线索。 发布版本不需要安装 Visual Studio。 我在 Windows 10 x64 上构建项目。所以发布版本可以在没有 Visual Studio 的其他 Windows 10 电脑上运行。 但它不能在 Windows 7 上运行。 所以直到现在我一直在寻找这个问题,我发现了一些东西。 “使用 Visual Studio 2015 为 Windows 7 和 Windows 10 构建应用程序”是我在这里找到的。 答案是我尝试过的正确方法。 在他们的评论中,我看到了一个词——CMake。 我不确定我能否用这个 CMake 完成我的解决方案。 有人可以告诉我这件事吗? 或者无论如何要解决这个问题?

谢谢。

【问题讨论】:

    标签: c++ visual-studio-2015 mfc


    【解决方案1】:

    CMake 帮不了你。

    如果尚未安装 redistbutable 软件包,我认为您需要在任何未安装 Visual Studio 的机器上安装 Visual C++ Redistributable for Visual Studio 2015

    您还需要使用安装在两台机器上的 .NET 框架,我想 .NET 4 已经足够了。

    编辑:

    尝试从控制台运行您的 exe,并检查是否有缺少 dll 或其他内容的打印。

    无论如何,您可以使用dependency walker 检查您是否缺少某些 dll,(下载 x64 版本)将您的 exe 拖放到其中并检查阻止它运行的原因。

    【讨论】:

    • 事实上,我已经在 Windows 7 x64 上尝试了 Visual C++ Redistributable for Visual Studio 2015。但该应用程序根本无法运行。所以你的意思是我还必须尝试适当版本的 .NET Framework?
    • 你安装了 x64 rdist 吗?
    • 是的,我只安装了 x64 redist。
    • 现在,该应用程序可以运行了。但这里还有一个错误。有时,我收到错误消息 - “(我的应用程序名称)已停止工作 Windows 可以在线检查问题的解决方案。”你遇到过这个错误吗?
    • 通常是内存或驱动问题,可能是使用了不正确的dll。尝试创建日志以了解它发生的确切点。
    【解决方案2】:

    现在,我找到了关于这个我自己的问题的正确解决方案。 事实上,@SHR 对这个答案很有帮助,但有一些东西需要修改以获得正确的解决方案。 安装 .NET 4.0 是正确的,并且必须在 Windows 10 和 7 x64 上工作。 但是“Visual C++ Redistributable for Visual Studio 2015”应该不是必需的。 如果没有这些包,该应用程序可以在 Windows 7 和 10 x64 上执行。 当然,该应用程序需要 C++ Redistributable 包中的一些 dll。但不是所有的。 因此,我将应用程序所需的 dll 放在 .exe 文件的同一目录中。 就这样。 没有其他要求。

    【讨论】:

      猜你喜欢
      • 2011-07-01
      • 2011-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-25
      • 2010-11-29
      • 1970-01-01
      相关资源
      最近更新 更多