English 中文(简体)
x64 Word 2010 添加 使用 WiX 注册
原标题:x64 Word 2010 Add In registration using WiX

我在使用 WiX 时部署一个单词添加,涉及x84 目标平台(至少办公室的安装必须是x86, 使用OS平台的时间从不少于此), 一切都运作良好, 我的 COM Interop 注册了 Word Add in works, 并在自动启动时添加了字词, 我第一次安装了添加器 。

我在跟踪登记簿的登记材料(从热输出中切除)

我创建了一个中间文件, 帮助我使用这个热命令 进行COM Interop注册:

"C:Program FilesWindows Installer XML v3.5inheat.exe" file MyAddin.dll -ag -template fragment -out MyAddin.wxs 

Interesst 的输出看起来像 : (我知道使用 ReportValue 的方式已被折旧 )

<Class Id="{10BC65F1-32C0-3ED4-98A0-17661A8C4455}" Context="InprocServer32" Description="MyAddin.MyAddinClass" ThreadingModel="both" ForeignServer="mscoree.dll">
    <ProgId Id="MyAddin.MyAddinClass" Description="MyAddin.MyAddinClass" />
</Class>
<File Id="filCC4172BEC1312562EDEF49648E45AE0D" KeyPath="yes" Source="..MyAddininDebugMyAddin.dll" />
<RegistryValue Root="HKCR" Key="CLSID{10BC65F1-32C0-3ED4-98A0-17661A8C4455}Implemented Categories{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID{10BC65F1-32C0-3ED4-98A0-17661A8C4455}InprocServer321.0.0.0" Name="Class" Value="MyAddin.MyAddinClass" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID{10BC65F1-32C0-3ED4-98A0-17661A8C4455}InprocServer321.0.0.0" Name="Assembly" Value="MyAddin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID{10BC65F1-32C0-3ED4-98A0-17661A8C4455}InprocServer321.0.0.0" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID{10BC65F1-32C0-3ED4-98A0-17661A8C4455}InprocServer321.0.0.0" Name="CodeBase" Value="file:///[#filCC4172BEC1312562EDEF49648E45AE0D]" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID{10BC65F1-32C0-3ED4-98A0-17661A8C4455}InprocServer32" Name="Class" Value="MyAddin.MyAddinClass" Type="string"Action="write" />
<RegistryValue Root="HKCR" Key="CLSID{10BC65F1-32C0-3ED4-98A0-17661A8C4455}InprocServer32" Name="Assembly" Value="MyAddin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID{10BC65F1-32C0-3ED4-98A0-17661A8C4455}InprocServer32" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID{10BC65F1-32C0-3ED4-98A0-17661A8C4455}InprocServer32" Name="CodeBase" Value="file:///[#filCC4172BEC1312562EDEF49648E45AE0D]" Type="string" Action="write" />

包含此内容的组件有 Win64Flag 标签设置为是 。 因此我想事情会写到注册处的 x64 部分 。 在此之前, 我读到关于 < a href=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

例如,32位 InprocServer32 键与64位应用程序无关,因此,64位登记册的观点没有反映InprocServer32 键。

此外:

然而,64位应用程序可以使用32位本地服务器32 键,而本地服务器32 键得到反映。

但我已经尝试使用本地服务32, 而不是InprocServer32, 但这样做,

我是否必须拨打"http://msdn.microsoft.com/en/en/library/tzat5yw6%28v=vs.80%29.aspx" rel=“nofollow”>RegAsm工具 或我错过了x64平台的标签或 Interop注册选项?

问题回答

使用 wix 您需要做两件事来禁用登记册的反省 :

  1. Mark your component as 64 bit component (attribute Win64="yes") (as you did)
  2. Build your package as 64 bit package (Platform = x64)

此软件包将无法在 x86 系统中使用。 因此您需要两个软件包, 一个是 x86, 一个是 x64 。 您可以对两个软件包使用相同的源文件, 因为 X86 软件包忽略了 Win64 属性 。





相关问题
3rd party Wix libraries

I am just getting started with Wix. I see there there a several libraries included with the default Wix install. I also see that users can create their own libraries(wixlibs). Are there any 3rd ...

Psake, Powershell & Wix

I have the below function as a part of my psake build. When the build is executing Candle.exe throws this error: candle.exe : warning CNDL1098: ext .BuildPackagesWixWebinWixIIsExtension.dll ...

wix custom dialog for config edit

hi i m trying make a setup msi for my application with wix v3 I have a problem about this task; I need a user input that will be stored in my application s config file (for example i need a dialog for ...

Closing an application using WiX

In creating my WiX installer I have run into an issue when trying to close an application before installing the upgrade. Below is an example of how I am attempting to do this. <util:...

Conditional uninstall of previous version in Wix

I m doing an installer for an software used for debugging embedded ARM cores (OpenOCD) and this installer automatically removes the previous versions - that s simple. However, sometimes that would be ...

热门标签