Windows Web Services Framework中的Visual Studio 2015无法识别的错误

时间:2017-01-12 20:13:52

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

我在Visual Studio 2015中看到以下错误(尝试过社区和专业版)。 写了一个简单的Visual C ++ CosoleApplication,它有" printf(" Hello World \ n");"。

  1. 使用平台调试" x86"编译并逐步完成工作。
  2. 使用Platform" x64"进行调试编译,但运行时会抛出此错误。
  3. 代码很简单,有以下几行:

    // ConsoleApplication1.cpp : Defines the entry point for the console application.
    //
    #include "stdafx.h"
    
    
    int main()
    {
        printf("Hello World \n");
        return 0;
    }
    

    我的桌面有以下配置: 操作系统:Windows 7 Enterprise 64位版本 反病毒:运行McAfee防病毒软件;无法禁用它。 防火墙:开启(为了安全起见,不能禁用它)

    问题:使用(Debug x86平台)逐步执行代码。为什么"调试x64平台"不起作用?

    任何建议都会有所帮助。

    由于 gshant

5 个答案:

答案 0 :(得分:0)

我遇到了同样的麻烦。这就是我所做的。

  1. 转到项目,项目属性。
  2. 选择“应用程序”选项卡,记下您正在使用的框架。对我来说这是4.5.2。
  3. 使用下拉菜单选择其他框架。在底部有一个安装额外框架的选项。
  4. 在网页打开后,选择您之前记下的框架并下载开发包。
  5. 关闭Visual Studio并安装开发包。
  6. 当我选择x64时,这对我有用。

    希望这会对你有所帮助。

答案 1 :(得分:0)

确保安装了x86和x64 .NET Core运行时。

https://www.microsoft.com/net/download/windows

答案 2 :(得分:0)

此答案涉及使用IIS 7进行调试。我没有用IIS Express检查它。

如果您的Web应用程序是32位(x86),则需要运行IIS管理器并执行:

  • 查看您网站的“基本设置”。检查一下IIS 您的项目正在使用的应用程序池。
  • 查看此应用程序池的“高级设置”并确保 “启用32位应用程序”为True。

答案 3 :(得分:0)

这对我来说是一个防火墙问题。我不确定确切的根本原因,但我发现阻止我的防火墙解决了这个问题。如果我找到确切的根本原因,我会更新我的答案,以便可以编写防火墙例外规则。

我认为问题在于你正在调试它实际上是使用远程调试器仍在幕后(将x86 Visual Studio连接到x64进程等),防火墙可以阻止它。

答案 4 :(得分:0)

对我来说,解决方法是:

项目->属性->构建->首选启用32位

使用平台目标->“任何CPU”。