快速删除安装项目中的文件
Fast deletion of files in a Setup project
我正在维护一个 VS2008 下的安装项目。该项目包含排列在文件夹层次结构中的数千个文件。
时不时地,我想更新这个层次结构的一部分,这意味着删除一些节点并重新插入新内容。我需要这样做,因为有些文件已经过时,需要删除。全部删除比把过时的文件赶走安全得多。
不幸的是,这是一项非常繁琐的任务,因为您不能删除空文件夹,而且您必须一个一个地删除层次结构中的每个节点。另外,对于一个大项目,每次删除都需要秒
您知道加速或自动化该任务的方法吗?仅仅擦除 .vdproj 文件中的行似乎不起作用。
如果你不觉得太反胃....如果变化频繁,这是值得的。
.vcproj 文件为 xml 格式。您可以使用资源管理器来管理您的文件,并编写一个小实用程序来检查并从您的项目中删除(当时)丢失的文件。这些文件用标签标记,如
<File
RelativePath=".\AudioPlayerPane.cpp"
>
</File>
您必须删除整个 "File" 标签,即 3 行或更多行(如果文件有特殊的编译选项等),直至并包括“/File”标签。此外,您还需要删除 .suo、.ncb 和 .cache 文件
很遗憾 boost.property_tree xml 不支持除 UTF-8 之外的任何编码,因为我建议您使用它来递归遍历 vcproj 文件。这将使该实用程序非常容易编写,并确保生成的文件是正确的。或许你可以利用notepad++的编码功能,手动更改文件前后的编码。
我正在维护一个 VS2008 下的安装项目。该项目包含排列在文件夹层次结构中的数千个文件。
时不时地,我想更新这个层次结构的一部分,这意味着删除一些节点并重新插入新内容。我需要这样做,因为有些文件已经过时,需要删除。全部删除比把过时的文件赶走安全得多。
不幸的是,这是一项非常繁琐的任务,因为您不能删除空文件夹,而且您必须一个一个地删除层次结构中的每个节点。另外,对于一个大项目,每次删除都需要秒
您知道加速或自动化该任务的方法吗?仅仅擦除 .vdproj 文件中的行似乎不起作用。
如果你不觉得太反胃....如果变化频繁,这是值得的。
.vcproj 文件为 xml 格式。您可以使用资源管理器来管理您的文件,并编写一个小实用程序来检查并从您的项目中删除(当时)丢失的文件。这些文件用标签标记,如
<File
RelativePath=".\AudioPlayerPane.cpp"
>
</File>
您必须删除整个 "File" 标签,即 3 行或更多行(如果文件有特殊的编译选项等),直至并包括“/File”标签。此外,您还需要删除 .suo、.ncb 和 .cache 文件
很遗憾 boost.property_tree xml 不支持除 UTF-8 之外的任何编码,因为我建议您使用它来递归遍历 vcproj 文件。这将使该实用程序非常容易编写,并确保生成的文件是正确的。或许你可以利用notepad++的编码功能,手动更改文件前后的编码。