• 解决 Cocos2d-x 3.2 error C1041: 无法打开程序数据库vc120.pdb


    单个项目解决方案

    解决方案是为项目添加 /FS (Force Synchronous PDB Writes) 编译选项,具体位置在:

    一劳永逸的解决方案

    直接修改cocos的项目模板templatescpp-template-defaultproj.win32HelloCpp.vcxproj为:

    1. <?xml version="1.0" encoding="utf-8"?>
    2. <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    3.   <ItemGroup Label="ProjectConfigurations">
    4.     <ProjectConfiguration Include="Debug|Win32">
    5.       <Configuration>Debug</Configuration>
    6.       <Platform>Win32</Platform>
    7.     </ProjectConfiguration>
    8.     <ProjectConfiguration Include="Release|Win32">
    9.       <Configuration>Release</Configuration>
    10.       <Platform>Win32</Platform>
    11.     </ProjectConfiguration>
    12.   </ItemGroup>
    13.   <PropertyGroup Label="Globals">
    14.     <ProjectGuid>{76A39BB2-9B84-4C65-98A5-654D86B86F2A}</ProjectGuid>
    15.     <RootNamespace>test_win32</RootNamespace>
    16.     <Keyword>Win32Proj</Keyword>
    17.   </PropertyGroup>
    18.   <Import Project="$(VCTargetsPath)Microsoft.Cpp.Default.props" />
    19.   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
    20.     <ConfigurationType>Application</ConfigurationType>
    21.     <CharacterSet>Unicode</CharacterSet>
    22.     <WholeProgramOptimization>true</WholeProgramOptimization>
    23.     <PlatformToolset Condition="'$(VisualStudioVersion)' == '10.0'">v100</PlatformToolset>
    24.     <PlatformToolset Condition="'$(VisualStudioVersion)' == '11.0'">v110</PlatformToolset>
    25.     <PlatformToolset Condition="'$(VisualStudioVersion)' == '11.0' and exists('$(MSBuildProgramFiles32)Microsoft SDKsWindowsv7.1A')">v110_xp</PlatformToolset>
    26.     <PlatformToolset>v120</PlatformToolset>
    27.   </PropertyGroup>
    28.   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
    29.     <ConfigurationType>Application</ConfigurationType>
    30.     <CharacterSet>Unicode</CharacterSet>
    31.     <PlatformToolset Condition="'$(VisualStudioVersion)' == '10.0'">v100</PlatformToolset>
    32.     <PlatformToolset Condition="'$(VisualStudioVersion)' == '11.0'">v110</PlatformToolset>
    33.     <PlatformToolset Condition="'$(VisualStudioVersion)' == '11.0' and exists('$(MSBuildProgramFiles32)Microsoft SDKsWindowsv7.1A')">v110_xp</PlatformToolset>
    34.     <PlatformToolset>v120</PlatformToolset>
    35.   </PropertyGroup>
    36.   <Import Project="$(VCTargetsPath)Microsoft.Cpp.props" />
    37.   <ImportGroup Label="ExtensionSettings">
    38.   </ImportGroup>
    39.   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
    40.     <Import Project="$(UserRootDir)Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
    41.     <Import Project="..cocos2dcocos2dcocos2dx.props" />
    42.     <Import Project="..cocos2dcocos2dcocos2d_headers.props" />
    43.   </ImportGroup>
    44.   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
    45.     <Import Project="$(UserRootDir)Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
    46.     <Import Project="..cocos2dcocos2dcocos2dx.props" />
    47.     <Import Project="..cocos2dcocos2dcocos2d_headers.props" />
    48.   </ImportGroup>
    49.   <PropertyGroup Label="UserMacros" />
    50.   <PropertyGroup>
    51.     <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
    52.     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration).win32</OutDir>
    53.     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration).win32</IntDir>
    54.     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
    55.     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration).win32</OutDir>
    56.     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration).win32</IntDir>
    57.     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
    58.     <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
    59.     <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
    60.     <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
    61.     <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
    62.     <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
    63.     <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
    64.   </PropertyGroup>
    65.   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    66.     <LibraryPath>$(MSBuildProgramFiles32)Microsoft SDKsWindowsv7.1Alib;$(LibraryPath)</LibraryPath>
    67.   </PropertyGroup>
    68.   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    69.     <LibraryPath>$(MSBuildProgramFiles32)Microsoft SDKsWindowsv7.1Alib;$(LibraryPath)</LibraryPath>
    70.   </PropertyGroup>
    71.   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    72.     <ClCompile>
    73.       <Optimization>Disabled</Optimization>
    74.       <AdditionalIncludeDirectories>$(EngineRoot)cocosaudioinclude;$(EngineRoot)external;$(EngineRoot)externalchipmunkincludechipmunk;$(EngineRoot)extensions;..Classes;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
    75.       <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USE_MATH_DEFINES;GL_GLEXT_PROTOTYPES;CC_ENABLE_CHIPMUNK_INTEGRATION=1;COCOS2D_DEBUG=1;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    76.       <MinimalRebuild>false</MinimalRebuild>
    77.       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
    78.       <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
    79.       <PrecompiledHeader>
    80.       </PrecompiledHeader>
    81.       <WarningLevel>Level3</WarningLevel>
    82.       <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
    83.       <DisableSpecificWarnings>4267;4251;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>
    84.       <MultiProcessorCompilation>true</MultiProcessorCompilation>
    85.       <AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
    86.     </ClCompile>
    87.     <Link>
    88.       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
    89.       <OutputFile>$(OutDir)$(ProjectName).exe</OutputFile>
    90.       <AdditionalLibraryDirectories>$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
    91.       <GenerateDebugInformation>true</GenerateDebugInformation>
    92.       <SubSystem>Windows</SubSystem>
    93.       <TargetMachine>MachineX86</TargetMachine>
    94.     </Link>
    95.     <PostBuildEvent>
    96.       <Command>
    97.       </Command>
    98.     </PostBuildEvent>
    99.     <PreLinkEvent>
    100.       <Command>if not exist "$(OutDir)" mkdir "$(OutDir)"
    101. xcopy /Y /Q "$(EngineRoot)externalwebsocketsprebuiltwin32*.*" "$(OutDir)"</Command>
    102.     </PreLinkEvent>
    103.   </ItemDefinitionGroup>
    104.   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    105.     <ClCompile>
    106.       <Optimization>MaxSpeed</Optimization>
    107.       <IntrinsicFunctions>true</IntrinsicFunctions>
    108.       <AdditionalIncludeDirectories>$(EngineRoot)cocosaudioinclude;$(EngineRoot)external;$(EngineRoot)externalchipmunkincludechipmunk;$(EngineRoot)extensions;..Classes;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
    109.       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USE_MATH_DEFINES;GL_GLEXT_PROTOTYPES;CC_ENABLE_CHIPMUNK_INTEGRATION=1;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    110.       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
    111.       <FunctionLevelLinking>true</FunctionLevelLinking>
    112.       <PrecompiledHeader>
    113.       </PrecompiledHeader>
    114.       <WarningLevel>Level3</WarningLevel>
    115.       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
    116.       <DisableSpecificWarnings>4267;4251;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>
    117.       <MultiProcessorCompilation>true</MultiProcessorCompilation>
    118.     </ClCompile>
    119.     <Link>
    120.       <AdditionalDependencies>libcurl_imp.lib;websockets.lib;%(AdditionalDependencies)</AdditionalDependencies>
    121.       <OutputFile>$(OutDir)$(ProjectName).exe</OutputFile>
    122.       <AdditionalLibraryDirectories>$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
    123.       <GenerateDebugInformation>true</GenerateDebugInformation>
    124.       <SubSystem>Windows</SubSystem>
    125.       <OptimizeReferences>true</OptimizeReferences>
    126.       <EnableCOMDATFolding>true</EnableCOMDATFolding>
    127.       <TargetMachine>MachineX86</TargetMachine>
    128.     </Link>
    129.     <PostBuildEvent>
    130.       <Command>
    131.       </Command>
    132.     </PostBuildEvent>
    133.     <PreLinkEvent>
    134.       <Command>if not exist "$(OutDir)" mkdir "$(OutDir)"
    135. xcopy /Y /Q "$(EngineRoot)externalwebsocketsprebuiltwin32*.*" "$(OutDir)"</Command>
    136.     </PreLinkEvent>
    137.   </ItemDefinitionGroup>
    138.   <ItemGroup>
    139.     <ClCompile Include="..ClassesAppDelegate.cpp" />
    140.     <ClCompile Include="..ClassesHelloWorldScene.cpp" />
    141.     <ClCompile Include="main.cpp" />
    142.   </ItemGroup>
    143.   <ItemGroup>
    144.     <ClInclude Include="..ClassesAppDelegate.h" />
    145.     <ClInclude Include="..ClassesHelloWorldScene.h" />
    146.     <ClInclude Include="main.h" />
    147.   </ItemGroup>
    148.   <ItemGroup>
    149.     <ProjectReference Include="..cocos2dcocos2dcocos2d.vcxproj">
    150.       <Project>{98a51ba8-fc3a-415b-ac8f-8c7bd464e93e}</Project>
    151.       <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
    152.     </ProjectReference>
    153.     <ProjectReference Include="..cocos2dcocosaudioproj.win32CocosDenshion.vcxproj">
    154.       <Project>{f8edd7fa-9a51-4e80-baeb-860825d2eac6}</Project>
    155.     </ProjectReference>
    156.     <ProjectReference Include="..cocos2dexternalchipmunkproj.win32chipmunk.vcxproj">
    157.       <Project>{207bc7a9-ccf1-4f2f-a04d-45f72242ae25}</Project>
    158.     </ProjectReference>
    159.   </ItemGroup>
    160.   <ItemGroup>
    161.     <ResourceCompile Include="game.rc" />
    162.   </ItemGroup>
    163.   <Import Project="$(VCTargetsPath)Microsoft.Cpp.targets" />
    164.   <ImportGroup Label="ExtensionTargets">
    165.   </ImportGroup>
    166. </Project>

    这样不仅解决了这个问题,还能避免每次开新项目时的强制升级。

  • 相关阅读:
    HttpServletRequest request 获取form参数的两种方式
    mysql中计算两个日期的时间差函数TIMESTAMPDIFF用法
    Better exception message for missing @RequestBody method parameter
    下载Xcode历史版本方法
    CGLib与JDK的动态代理
    LeetCode: Longest Consecutive Sequence [128]
    POJ训练计划2777_Count Color(线段树/成段更新/区间染色)
    JBoss AS 7性能调优(三)
    java的Future使用方法
    Redis学习资源
  • 原文地址:https://www.cnblogs.com/djiankuo/p/5289174.html
Copyright © 2020-2023  润新知