问题标签 [vcxproj]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1668 浏览

c++ - 如何使头文件包含在在项目中全局可见?

当我的 .vcxproj 文件中有这一行时

然后在位于其他地方的 .c 文件中,我使用了一个简单的

头文件在编译中不可见,尽管它在 Visual Studio 的项目/解决方案资源管理器中可见。

我知道我可以简单地将我的包含文件夹添加到附加包含目录列表中,编译器将使用该目录来搜索包含文件,但这不是标签本身应该做的事情吗?

0 投票
2 回答
3415 浏览

windows-installer - Visual Studio 2015 vdproj -- 更改或删除数字签名

我从以前的程序员那里得到了一个旧版 Visual Studio 解决方案文件,其中有一个 vdproj,它会生成一个 .msi 安装程序。我正在使用 Visual Studio 2015 社区版,为了使用 vdproj,我在此位置安装了扩展程序,以便实际创建 msi。就创建一个安装功能软件的合法安装程序而言,这一切都很好,除了代码签名的一些错误。在 Windows 10 上,Edge 浏览器指出文件的签名已损坏或无效,并且在尝试安装产品时会引发类似的警告。您可以跳过警告,但我们不希望我们的客户不得不处理这个问题。

该软件的旧版本(v4.0.106)没有问题。它的 MSI 文件甚至没有数字签名选项卡,所以我很困惑。

如果重要的话,主项目是 C++ 项目 (vcxproj)。

任何人都对如何:

  • 完全在 Visual Studio 中修复代码签名问题
  • 在 Visual Studio 中删除 MSI 创建中的数字签名步骤,所以我根本不必处理这个问题

我在以下链接中有一些关于这些问题的图片:点击。没有更多代表,我不能发布超过 1 个链接或 1 张图片。

0 投票
5 回答
18761 浏览

c++ - x64 build: error MSB8013: This project doesn't contain the Configuration and Platform combination of Debug|Win32

我正在尝试为具有许多解决方案(一些用于 CI,一些用于开发人员)和数百个项目的复杂构建运行纯 x64 构建,并且遇到了“错误 MSB8013:此项目不包含配置和平台组合调试|Win32"

我已将其简化为简单的配置:

  • 解决方案 A 包含项目 X 和项目 Y。项目 X 具有对项目 Y的项目引用。
  • 解决方案 B 还包含项目 X。

没有一个项目或解决方案包含 Win32 平台 - 它已被删除。

当我构建解决方案 B(作为 x64)时,我收到

错误 MSB8013:此项目不包含 Debug|Win32 的配置和平台组合

错误消息有时包含其他信息:

如果其他项目试图遵循对此项目的项目到项目引用,此项目已卸载或未包含在解决方案中,并且引用项目未使用相同或等效项构建,则也可能出现此错误配置或平台。

问题是引用项目确实“使用相同或等效的配置或平台构建”。

查看 msbuild 诊断,项目 Y 正在构建,因为项目 X 包含对它的项目引用。但是配置和平台属性在项目 Y 构建之前被删除:

因此,Microsoft.Cpp.Default.props 启动并将这些设置为 Debug|Win32:

如何防止这种情况并使 msbuild 通过所选的配置和平台?

(我了解使用 NuGet 管理包依赖项的最终解决方案,但这在短期内是不可行的)

0 投票
1 回答
139 浏览

c++ - 有没有办法使用 Visual Studio 2013 使属性页中的 vcxproj 属性不加粗?

我知道当一个属性在属性页中显示为粗体时,它表示它已被修改。

https://msdn.microsoft.com/en-us/library/675f1588.aspx

我有一个用于发送样本的 API,我希望它们中的所有设置都保持一致和相同。

不幸的是,一些示例 vcxprojs 似乎具有正确的设置并且没有加粗,而另一些示例的设置有误,在将其更改为正确的设置后,它显然仍然是粗体。

我希望所有示例属性页在所有示例中保持一致,甚至是文本的粗体。我意识到这实际上只是一个强迫症外观类型的问题,背后没有技术问题。

0 投票
1 回答
565 浏览

visual-studio - 将文件/目录自动同步到 Visual Studio 项目

我正在尝试将整个文件夹结构自动添加到 VS C++ makefile 项目中。这不是为了构建项目(它总是从 scons 文件构建),我主要想使用 VS 来编辑项目/智能感知等中的代码/查找。

我已经尝试过这里建议的解决方案:Is there a way to automatically include content files into asp.net project file? 我的项目目前包含标签

但我没有任何成功 - 没有任何建议给我 Visual Studio 中的文件列表。这是 VS 不支持的 MSBuild 功能吗?还是仅限于托管产品?关于如何使它工作的任何建议?

0 投票
1 回答
391 浏览

c++ - Visual Studio 2013 中不必要的重建:.RSP 生成输入丢失

我在 VS2013 中混合了 C#/C++ 解决方案。每次我运行 build 时,其中一个 C++ 项目都会重新构建,即使没有任何更改。在诊断输出中它说:

当我从 cmd 行运行 MSBuild.exe 时,我得到以下输出:

请注意,每次运行 build 时随机 guid 都会发生变化。

此 .rsp 文件在其他 .obj 文件中被列为任务“LIB”的输入文件。

很多项目都依赖于这个,所以这触发了几乎整个解决方案的重建。

我在 MSDN 上发现 .rsp 是包含 MSBuild.exe 命令行开关的 MSBuild 响应文件。看起来项目已配置为每次编译都是通过生成的 .rsp 文件进行的,这可以在 Visual Studio 中关闭吗?

0 投票
1 回答
385 浏览

visual-studio-2015 - MSBUILD 14.0 Visual Studio 2015 CustomBuild 命令环境不包含 SetEnv 的结果,即使 Exec 包含

我使用 CoApp 创建了一个 nuget 包来打包一些代码生成器(二进制文件)。我希望能够在 msbuild custombuild 步骤中使用这些代码生成器来生成代码

我有一个定义以下内容的目标文件(使用 CoApp)

包含此代码段的目标文件像这样导入项目(vcxproj 文件)

项目内

返回期望的结果,即采取形式的结果 ../..//build/native/bin/x64\v100\Release;C:\

所以我可以调用我想从项目中运行的可执行文件。(除了与 custombuild 命令步骤不同,没有 . 的概念outputs。因此增量构建将不起作用)

然而

不包含通过 SetEnv 设置的我想要的路径。

我想这样做,以便可以在自定义构建步骤中调用通过 nuget 打包的代码生成器。

我了解command内部custombuild运行/在新 cmd 中运行,并且环境是通过设置的用户或系统环境继承的。此外,我可以使用 启动 Msbuild /p:useenv ,从而泵出我想要的任何环境。在我看来,这/p:useenv相当于硬编码路径 - 提前知道它。

我希望能够更新我的包并运行,即我希望项目管理路径,因为它是在导入的目标文件中定义的。

0 投票
1 回答
1881 浏览

c++ - Msbuild 和 ClCompile 选项

我用编译 C++ 代码并在item 中msbuild指定cl选项。ClCompile就像是...

以上只是一个例子。现在我想打印所有用于cl调用的选项。问题是:我该怎么做?我的第一次尝试是使用如下内容:

可悲的是,这仅记录文件名(something.cpp)而不是选项。

请注意,我知道编译器选项存储Tracker.exeCL.command.*.tlog文件中,但首先,我不想依赖它,因为它可能会发生变化,其次,我很可能需要稍后进行一些转换。我也知道我可以访问单个选项(如%(ClCompile.FloatingPointModel)),但我也不想单独处理每个选项。

有一个更好的方法吗?

0 投票
1 回答
1448 浏览

python - 用 python 和 lxml 解析 vcxproj

我正在尝试使用 Python 和 lxml 解析 vcxproj。当我尝试这样做时,除非我删除<Project >.

这是我的 .vcxproj (我将其简化为测试):

还有我的python代码:

如果我这样运行,脚本可以工作但什么也不显示。DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"如果我在节点项目脚本中删除...

我是 xml 新手,也许我做错了什么。你能帮我解决这个问题吗?

感谢帮助。

0 投票
1 回答
1617 浏览

c++ - 我需要帮助将 vcxproj 转换为 cmake

有 Visual Studio 2015 项目。我需要为 Debian 编译它。我正在尝试使用 vcxproj2cmake 将其转换为 makefile。首先,我想在 Windows 上编译它。

perl vcxproj2cmake.pl project1.vcxproj "\Debug|Win32"生成的文件

将此文件重命名为 Makefile1 并输入后,make -f Makefile-1
我得到

Makefile.1:1: *** 缺少分隔符。停止。

我需要做什么?