【发布时间】:2010-07-27 02:01:54
【问题描述】:
我正在使用 Visual Studio 2008 Team System 版本创建自定义项目模板。我还为自定义模板创建了一个自定义向导。
所以我必须更新 vstemplate 文件来告诉模板使用我的自定义向导。但存档已损坏!
7zip 认为存档中的文件夹使用非标准 zip 压缩。最新的 winzip 认为文件夹上的 CRC 标头与主 CRC 标头不匹配。
我做错了什么?
如果我不更改 VS2008 创建的模板 zip 文件,它就可以正常工作。但我需要能够更新 zip 文件。如果我这样做了,7zip/winzip 会修复 zip 文件结构,然后 VS2008 不再喜欢该模板。无法访问 zip 文件内文件夹中的文件。
我确实注意到标准模板似乎保留了平面文件结构。那是没有嵌套文件夹或任何东西。但是 vstemplate 文件具有重新创建原始文件夹结构的 targetfilename 属性。
例如,而不是...
<Folder Name="My Project" TargetFolderName="My Project">
<ProjectItem ReplaceParameters="true" TargetFileName="AssemblyInfo.vb">AssemblyInfo.vb</ProjectItem>
</Folder>
标准的 vstemplate 定义了以下...
<ProjectItem ReplaceParameters="true" TargetFileName="My Project\AssemblyInfo.vb">AssemblyInfo.vb</ProjectItem>
我刚刚对上述内容进行了一些思考。它们实际上是一样的吗?
是原始zip文件的创建有问题吗?
zip 文件中的文件夹结构是否会出错?
是否应该将所有文件作为平面文件夹结构添加到 zip 存档中?如果是这样,是否有针对 VS2008 的修复,以便我不必手动修复模板存档?
【问题讨论】: