Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.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
Xml 无法加载WixUIExtension.dll_Xml_Wix_Windows Installer_Wix3.11 - Fatal编程技术网

Xml 无法加载WixUIExtension.dll

Xml 无法加载WixUIExtension.dll,xml,wix,windows-installer,wix3.11,Xml,Wix,Windows Installer,Wix3.11,我正在尝试做一个wix安装程序。对于web应用程序 下面是我的wsx v3.11文件 <?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Product Id="Guid" Name="TestInstaller" Language="1033" Version="1.0.0.0" Manufacturer="CompanyN

我正在尝试做一个wix安装程序。对于web应用程序

下面是我的wsx v3.11文件

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Product Id="Guid" Name="TestInstaller" Language="1033" Version="1.0.0.0" Manufacturer="CompanyName" UpgradeCode="Guid1">
    <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" Platform="x64" />

    <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
    <MediaTemplate EmbedCab="yes" />
    <PropertyRef Id="WIX_IS_NETFRAMEWORK_462_OR_LATER_INSTALLED"/>
    <Condition Message='This setup requires the .NET Framework 4.7 client profile installed.'>
      <![CDATA[Installed OR WIX_IS_NETFRAMEWORK_462_OR_LATER_INSTALLED]]>
    </Condition>
    <Feature Id="Complete" Title="TestInstaller" Description="TestInstaller" Level="1" ConfigurableDirectory='INSTALLFOLDER'>
      <ComponentGroupRef Id="ProductComponents" />
      <ComponentGroupRef Id="ProductBinComponents" />

    </Feature>


    <UIRef Id="WixUI_Mondo" />
    <UIRef Id="WixUI_ErrorProgressText" />
  </Product>

  <Fragment>
    <Directory Id="TARGETDIR" Name="SourceDir">
     <Directory Id="INSTALLFOLDER" Name="Test Installer" >
        <Directory Id="INSTALLBINFOLDER" Name="bin">
        </Directory>
      </Directory>
    </Directory>
  </Fragment>

  <Fragment>
    <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
      <Component Id="ProductComponent" Win64="yes" Guid="*">
        <File Source="C:\Temp\Publish\Web.config" />
        <File Source="C:\Temp\Publish\NLog.config"/>
        <File Source="C:\Temp\Publish\Global.asax"/>
      </Component>
    </ComponentGroup>
    <ComponentGroup Id="ProductBinComponents" Directory="INSTALLBINFOLDER">
      <Component Id="ProductBinComponent" Win64="yes" Guid="*">
        <File Source="C:\Temp\Publish\bin\Antlr3.Runtime.dll"/>
        <File Source="C:\Temp\Publish\bin\Antlr3.Runtime.pdb"/>
      </Component>
    </ComponentGroup>
  </Fragment>
</Wix>

我这里的问题是,我不知道这个错误消息是什么意思,也不知道如何修复它

程序集中未定义“Microsoft.Tools.WindowsInstallerXml.AssemblyDefaultWixExtensionAttribute”,或者无法加载扩展名“…….\Program Files(x86)\WiX Toolset v3.11\bin\WixUIExtension.dll”中定义的类型

1。RTF许可文件:首先确保您已经创建了自己的RTF许可文件(使用写字板或类似工具),然后指定在WiX源中使用此RTF文件,如下所示:


有关更多上下文和详细信息,请参阅WiX标记中的内联注释


2。Wix.dll:除了
WixUIExtension
WixNtFxExtension
之外,您可能还包括了对
Wix.dll
的直接引用,这两种引用都需要保留

因此,换句话说:删除对
Wix.dll的项目引用
,然后尝试 重新编译

如果不起作用,请删除所有引用并仅重新添加
WixUIExtension
WixNtFxExtension


一些建议和链接

  • 类似问题:
  • 可能使用与临时目录不同的源路径
  • 可能会从安装中排除
    *.pdb
    文件,除非您需要它进行调试
  • 。这可以防止各种各样的问题
  • 在发布之前,请从WiX源中删除您的GUI,否则它们可能会被复制/粘贴。一点也不好

只是为了掩盖显而易见的问题:-机器上是否安装了WiX?(如果你换电脑,很快就会忘记。)如果您同时注释掉
UIRef
行,它是否会编译?-是否已将项目引用添加到WixUIExtension.dll?(如果您在Visual Studio中)。可能会看到我的(见WiX标记中的内联注释,见底部)。@SteinÅsmul感谢您的写作。如果我注释掉这两行UIRef,它就可以编译了。我已经为WixUIExtension添加了dll。是的,我在visual studio。是的,我已经安装了WiX。我将查看您的链接,除了WixUIExtension和WixNtFxExtension,我从未添加任何引用。我已经多次尝试删除并再次添加它们,看看这是否解决了问题。我会看看你的链接。以及其他建议。谢谢。你的评论中的链接使我的工作。这仅仅是缺乏许可证RTF文件的问题。哦,这是令人惊讶的。我最好更新这个答案,明确地说明这一点。不过,在添加
Wix.dll
时,我确实看到了相同的错误,因此我将把它保留在中。