Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xslt Wix和msbuild在某些环境中不生成换行符_Xslt_Msbuild_Wix_Vdproj - Fatal编程技术网

Xslt Wix和msbuild在某些环境中不生成换行符

Xslt Wix和msbuild在某些环境中不生成换行符,xslt,msbuild,wix,vdproj,Xslt,Msbuild,Wix,Vdproj,我们有一个Windows应用程序的安装程序。这是由于XSLT问题而无法生成的 该安装程序最初是Visual Studio安装程序,但当Microsoft删除此功能时,我们使用VDProj-to-Wix转换器将其转换为Wix。这很有效 由VDProj到WIX转换器创建的项目文件是一个MSBuild项目文件,它将COM引用标识为XML文件,并使用XslTransformation(为了解VDProj到WIX转换器的人调用XslRegisterForCOM.xslt)输出带有COM引用文件名的纯文本文

我们有一个Windows应用程序的安装程序。这是由于XSLT问题而无法生成的

该安装程序最初是Visual Studio安装程序,但当Microsoft删除此功能时,我们使用VDProj-to-Wix转换器将其转换为Wix。这很有效

由VDProj到WIX转换器创建的项目文件是一个MSBuild项目文件,它将COM引用标识为XML文件,并使用XslTransformation(为了解VDProj到WIX转换器的人调用XslRegisterForCOM.xslt)输出带有COM引用文件名的纯文本文件(随后解析路径)

但是,在某些环境中,这不起作用,因为中间文本文件没有正确的换行符(XSLT使用 ;& ;),引用都在同一行上,无法解析。此时构建失败

我调查了换行符不正确的可能性,并尝试了以下问题的解决方案:

XSLT肯定在运行并插入一些东西(如果我用纯文本替换换行符,例如xxx,这将输出到文本文件中)

我尝试过不同版本的Wix(在我们的工作环境中是v3.8,但在其他环境中使用它并不能解决问题)。我还想知道文件编码是否有问题


是否有人遇到过此问题,或者曾经使用过VDProj-to-WIX Converter并认识到这是一个已知问题?

我通过升级到VDProj-to-WIX的最新版本,删除旧的WIX项目并再次运行VDProj-to-WIX来创建新的WIX项目,从而解决了此问题。