代码之家  ›  专栏  ›  技术社区  ›  NN_

如何创建MSBuild编译目标

  •  0
  • NN_  · 技术社区  · 5 年前

    我是怎么做到的? 我尝试了以下操作,但是“Compile”按钮没有出现在该文件的VisualStudio上下文菜单中。

      <Target Name="MyCompile">
        <Exec Command="test"/>
      </Target>
      <ItemGroup>
        <MyCompile Include="testfile"/>
      </ItemGroup>
    
    0 回复  |  直到 5 年前
        1
  •  0
  •   C.J.    5 年前

    正确的行为。您不能仅仅通过定义自己的自定义项组就将自定义UI扩展(右键单击菜单和构建支持)添加到VisualStudioUI中。如果您需要VisualStudio帮助编译标准代码文件(例如,*.cs,*.cpp等),则必须使用CLCompile。

        2
  •  0
  •   LoLance    5 年前

    但“Compile”按钮不会出现在VisualStudio上下文菜单中。我想定义自己的编译目标,类似于ClCompile或ResourceCompile目标。

    对于C++(如CleCube或RealCeCeMePope)定义的条目中包含的文件,将启用编译按钮(C++项目)。

    获取一个定制目标(不确定,但我认为它比单个目标更复杂)作为ClCompile工作。这可能是一个相当复杂的事情。对于C++项目,我认为编译选项不仅仅是关于编译目标或项目。

    我对一些xxx.targets和xxx.props进行了注释,发现即使有些文件包含在ClCompile Itemgroup中,编译也会被禁用,因此我认为compile菜单会检查msbuild结构中的其他深层内容。

    VS如何知道它可以显示.cpp的“Compile”菜单项?

    enter image description here

    经过我的检查,我发现这与 Microsoft.Cpp.DesignTime.targets 哪一个 contains targets that are only used by IDE and not the real build

    对于你的情况,在我们聊天之后 compile Code Generation 可以满足你的需要。