Project file contains ToolsVersion="12.0". This toolset may be unknown or miss

本文介绍了解决VS2010打开项目时出现ToolsVersion不匹配警告的方法。通过修改项目文件中的ToolsVersion值从12.0到4.0,可以消除警告并确保项目的正常构建。

用VS2010打开解决方案时,输出窗口有如下提示信息:

1>Project file contains ToolsVersion="12.0". This toolset may be unknown or missing, in which case you may be able to resolve this by installing the appropriate version of MSBuild, or the build may have been forced to a particular ToolsVersion for policy reasons. Treating the project as if it had ToolsVersion="4.0". For more information, please see http://go.microsoft.com/fwlink/?LinkId=291333.


发生此警告的原因:

原本是VS2010的项目用VS2013打开后,然后又强行转为VS2010项目。


解决方案如下:

用文本编辑器(例如Notepad++)打开VC项目(后缀名为.vcxproj),找到这一行内容:

<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

把 ToolsVersion="12.0"  改为  ToolsVersion="4.0" 即可。

<?xml version="1.0" encoding="utf-8"?> <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <ItemGroup Label="ProjectConfigurations"> <ProjectConfiguration Include="Debug|Win32"> <Configuration>Debug</Configuration> <Platform>Win32</Platform> </ProjectConfiguration> <ProjectConfiguration Include="Release|Win32"> <Configuration>Release</Configuration> <Platform>Win32</Platform> </ProjectConfiguration> <ProjectConfiguration Include="Debug|x64"> <Configuration>Debug</Configuration> <Platform>x64</Platform> </ProjectConfiguration> <ProjectConfiguration Include="Release|x64"> <Configuration>Release</Configuration> <Platform>x64</Platform> </ProjectConfiguration> </ItemGroup> <PropertyGroup Label="Globals"> <VCProjectVersion>16.0</VCProjectVersion> <Keyword>Win32Proj</Keyword> <ProjectGuid>{a3c5d40e-8d33-4232-8dcf-ce32a21873f4}</ProjectGuid> <RootNamespace>MCUSim</RootNamespace> <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion> </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <ConfigurationType>Application</ConfigurationType> <UseDebugLibraries>true</UseDebugLibraries> <PlatformToolset>v142</PlatformToolset> <CharacterSet>Unicode</CharacterSet> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <ConfigurationType>Application</ConfigurationType> <UseDebugLibraries>false</UseDebugLibraries> <PlatformToolset>v142</PlatformToolset> <WholeProgramOptimization>true</WholeProgramOptimization> <CharacterSet>Unicode</CharacterSet> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <ConfigurationType>Application</ConfigurationType> <UseDebugLibraries>true</UseDebugLibraries> <PlatformToolset>v142</PlatformToolset> <CharacterSet>Unicode</CharacterSet> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <ConfigurationType>Application</ConfigurationType> <UseDebugLibraries>false</UseDebugLibraries> <PlatformToolset>v142</PlatformToolset> <WholeProgramOptimization>true</WholeProgramOptimization> <CharacterSet>Unicode</CharacterSet> </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <ImportGroup Label="ExtensionSettings"> </ImportGroup> <ImportGroup Label="Shared"> </ImportGroup> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> </ImportGroup> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> </ImportGroup> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> </ImportGroup> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> </ImportGroup> <PropertyGroup Label="UserMacros" /> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <LinkIncremental>true</LinkIncremental> <LibraryPath>C:\Program Files %28x86%29\Kvaser\Canlib\Lib\x64;$(LibraryPath)</LibraryPath> <LibraryWPath>C:\Program Files %28x86%29\Kvaser\Canlib\Bin;$(LibraryWPath)</LibraryWPath> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <LinkIncremental>false</LinkIncremental> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <LinkIncremental>true</LinkIncremental> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <LinkIncremental>false</LinkIncremental> </PropertyGroup> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <ClCompile> <WarningLevel>Level3</WarningLevel> <SDLCheck>true</SDLCheck> <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;WIN32_SIM;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> <ConformanceMode>true</ConformanceMode> <AdditionalIncludeDirectories>..\ALL_INCLUDE;..\COM;..\ALL_INCLUDE\OSM;..\MID\ShareOBJ;..\APP\Control\include;..\APP\Control\lib\include;..\HAL\CAN;..\MID\Serial\DataLinkCtrl;C:\Program Files %28x86%29\Kvaser\Canlib\INC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> </ClCompile> <Link> <SubSystem>Console</SubSystem> <GenerateDebugInformation>true</GenerateDebugInformation> <AdditionalLibraryDirectories>..\APP\Control\lib\X86;..\CanOSS;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> <AdditionalDependencies>canlib32.lib;ControlModelCal.lib;%(AdditionalDependencies)</AdditionalDependencies> </Link> </ItemDefinitionGroup> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <ClCompile> <WarningLevel>Level3</WarningLevel> <FunctionLevelLinking>true</FunctionLevelLinking> <IntrinsicFunctions>true</IntrinsicFunctions> <SDLCheck>true</SDLCheck> <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> <ConformanceMode>true</ConformanceMode> </ClCompile> <Link> <SubSystem>Console</SubSystem> <EnableCOMDATFolding>true</EnableCOMDATFolding> <OptimizeReferences>true</OptimizeReferences> <GenerateDebugInformation>true</GenerateDebugInformation> </Link> </ItemDefinitionGroup> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <ClCompile> <WarningLevel>Level3</WarningLevel> <SDLCheck>true</SDLCheck> <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> <ConformanceMode>true</ConformanceMode> </ClCompile> <Link> <SubSystem>Console</SubSystem> <GenerateDebugInformation>true</GenerateDebugInformation> </Link> </ItemDefinitionGroup> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <ClCompile> <WarningLevel>Level3</WarningLevel> <FunctionLevelLinking>true</FunctionLevelLinking> <IntrinsicFunctions>true</IntrinsicFunctions> <SDLCheck>true</SDLCheck> <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> <ConformanceMode>true</ConformanceMode> </ClCompile> <Link> <SubSystem>Console</SubSystem> <EnableCOMDATFolding>true</EnableCOMDATFolding> <OptimizeReferences>true</OptimizeReferences> <GenerateDebugInformation>true</GenerateDebugInformation> </Link> </ItemDefinitionGroup> <ItemGroup> <ClCompile Include="..\APP\Control\src\Control_can_api.c" /> <ClCompile Include="..\APP\Control\src\Control_config_api.c" /> <ClCompile Include="..\APP\Control\src\Control_emergencybraking_api.c" /> <ClCompile Include="..\APP\Control\src\Control_main_task.c" /> <ClCompile Include="..\APP\Control\src\Control_soc_api.c" /> <ClCompile Include="..\COM\com_log.c" /> <ClCompile Include="..\COM\seqqueue.c" /> <ClCompile Include="..\HAL\CAN\hal_can.c" /> <ClCompile Include="..\HAL\CAN\hal_can_api.c" /> <ClCompile Include="..\HAL\CAN\hal_can_ring_queue.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_api.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_drv.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_gen_acu_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_gen_asc_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_gen_eps_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_gen_esc_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_gen_gw_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_gen_ibooster_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_gen_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_gen_uss_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_gen_vcu_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_il.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_nm.c" /> <ClCompile Include="..\MID\CAN\mid_can_ctrl_task.c" /> <ClCompile Include="..\MID\CAN\mid_can_parser.c" /> <ClCompile Include="..\MID\Serial\DataLinkCtrl\mid_dl_ctrl_api.c" /> <ClCompile Include="..\MID\Serial\DataLinkCtrl\mid_dl_ctrl_callback.c" /> <ClCompile Include="..\MID\Serial\DataLinkCtrl\mid_dl_ctrl_main.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_common_api.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_control.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_gen_acu_api.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_gen_asc_api.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_gen_eps_api.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_gen_esc_api.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_gen_gw_api.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_gen_ibooster_api.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_gen_uss_api.c" /> <ClCompile Include="..\MID\ShareOBJ\mid_share_gen_vcu_api.c" /> <ClCompile Include="..\OSM\osm.c" /> <ClCompile Include="..\OSM\osm_timer.c" /> <ClCompile Include="main.c" /> </ItemGroup> <ItemGroup> <Library Include="..\APP\Control\lib\X86\ControlModelCal.lib" /> </ItemGroup> <ItemGroup> <ClInclude Include="..\APP\Control\include\Control_can_api.h" /> <ClInclude Include="..\APP\Control\include\Control_common.h" /> <ClInclude Include="..\APP\Control\include\Control_config_api.h" /> <ClInclude Include="..\APP\Control\include\Control_emergencybraking_api.h" /> <ClInclude Include="..\APP\Control\include\Control_main_task.h" /> <ClInclude Include="..\APP\Control\include\Control_soc_api.h" /> <ClInclude Include="..\MID\Serial\DataLinkCtrl\mid_dl_ctrl_api.h" /> <ClInclude Include="..\MID\Serial\DataLinkCtrl\mid_dl_ctrl_callback.h" /> <ClInclude Include="..\MID\Serial\DataLinkCtrl\mid_dl_ctrl_main.h" /> <ClInclude Include="..\MID\Serial\DataLinkCtrl\mid_dl_ctrl_protocol.h" /> </ItemGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <ImportGroup Label="ExtensionTargets"> </ImportGroup> </Project> 将这个.vcxproj文件改写成CMakeLists.txt文件,然后用vscode编译运行。
10-16
``` # -*- coding: UTF-8-*- from abaqusConstants import * # type: ignore from abaqusGui import * # type: ignore from kernelAccess import mdb, session # type: ignore import os import csv global savepath thisPath = os.path.abspath(__file__) thisDir = os.path.dirname(thisPath) class CubeDialog(AFXForm): # type: ignore def __init__(self, owner): AFXForm.__init__(self, owner) self.owner = owner self.partName = 'ParamCube' self.modelName = 'ParametricModel' # 输入框 self.length = AFXTextField(p=self, ncols=12, labelText='长度 (mm):', tgt=self, sel=0) self.width = AFXTextField(p=self, ncols=12, labelText='宽度 (mm):', tgt=self, sel=1) self.height = AFXTextField(p=self, ncols=12, labelText='高度 (mm):', tgt=self, sel=2) # 设置默认值 self.length.setText('10') self.width.setText('10') self.height.setText('10') # 确认按钮 AFXButton(p=self, text='生成立方体', tgt=self, sel=self.onConfirm) def onConfirm(self, sender, sel): try: l = float(self.length.getText()) w = float(self.width.getText()) h = float(self.height.getText()) except: showAFXErrorDialog(getAFXApp().getAFXMainWindow(), '请输入有效的数字!') return # 创建模型和部件 if self.modelName not in mdb.models.keys(): my_model = mdb.Model(name=self.modelName) else: my_model = mdb.models[self.modelName] my_part = my_model.Part( name=self.partName, dimensionality=THREE_D, type=DEFORMABLE_BODY ) my_part.Box(width=w, length=l, height=h) # 刷新视图 session.viewports['Viewport: 1'].setValues(displayedObject=my_part) self.hide() # 注册插件 toolset = getAFXApp().getAFXMainWindow().getPluginToolset() toolset.registerGuiMenuButton( buttonText='参数化立方体', object=CubeDialog(toolset), kernelInitString='import sys', author='Your Name', version='1.0', description='生成参数化立方体' )```创建各级__init__.py空文件是什么意思
03-08
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值