符号状态显示“;跳过加载”;用于模块窗口中的dll

本文关键字:窗口 用于 模块 dll 加载 显示 状态 符号 | 更新日期: 2023-09-27 18:22:07

我最近将一些解决方案升级到了Visual studio 2013。除了一个现在生成之外,所有的都很好

未加载模块"name"的符号。

每次运行时都会出错。

当我在模块调试窗口中查看时,我可以看到dll(这是一个web服务dll)

Name           Path                       Optimised    User Code    Symbol Status
dllName.dll    Tempoary ASP.Net...etc.    Yes          No           Skipped Loading...

如果我查看'bin,我会看到dll,它是对应的.pdb文件。

检查项目的构建菜单,我可以看到Debug Info: full

长话短说,我觉得一切都很好,只是没有加载任何符号。

知道我错过了什么吗?

更新

看起来,如果我运行我的解决方案,尽管IIS表示问题会消失。但是运行IIS(8)时,我仍然有这个问题。

符号状态显示“;跳过加载”;用于模块窗口中的dll

在痛苦地比较了两个项目文件后,一个有效,另一个无效,我注意到有效的项目有:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
  <DebugSymbols>true</DebugSymbols>
  <DebugType>full</DebugType>
  <!-- This works -->
     <Optimize>false</Optimize>
  <!----------------------->
  <OutputPath>bin'</OutputPath>
  <DefineConstants>DEBUG;TRACE</DefineConstants>
  <ErrorReport>prompt</ErrorReport>
  <WarningLevel>4</WarningLevel>
</PropertyGroup>

哪里有

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
  <DebugSymbols>true</DebugSymbols>
  <DebugType>full</DebugType>
  <!-- This DOESN'T -->
     <Optimize>true</Optimize>
  <!----------------------->
  <OutputPath>bin'</OutputPath>
  <DefineConstants>DEBUG;TRACE</DefineConstants>
  <ErrorReport>prompt</ErrorReport>
  <WarningLevel>4</WarningLevel>
</PropertyGroup>

通过将<Optimize>属性设置为false,所有问题都消失了。

这个答案似乎也很相关,因为.csproj.user文件可能不同步,我删除了它。