Kev*_*yth 5 .net com 64-bit wix
我有C#COM .dll.我想安装.dll一次,但是它已经注册了x86和x64.
这是我只注册x64的WiX:
<Component Id="NETDLL.dll" Directory="INSTALLDIR">
<File Id="NETDLL.dll" Name="NETDLL.dll" KeyPath="yes" Source="..\NETDLL.dll" />
<Class Id="{78BE...}" Context="InprocServer32" Description="NETDLL" ThreadingModel="both" ForeignServer="mscoree.dll">
<ProgId Id="NETDLL" Description="NETDLL" />
</Class>
<RegistryValue Root="HKCR" Key="CLSID\{78BE...}\Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID\{78BE...}\InprocServer32\1.0.1.0" Name="Class" Value="NETDLL" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID\{78BE...}\InprocServer32\1.0.1.0" Name="Assembly" Value="NETDLL, Version=1.0.1.0, Culture=neutral" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID\{78BE...}\InprocServer32\1.0.1.0" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID\{78BE...}\InprocServer32\1.0.1.0" Name="CodeBase" Value="file:///[#NETDLL.dll]" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID\{78BE...}\InprocServer32" Name="Class" Value="NETDLL" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID\{78BE...}\InprocServer32" Name="Assembly" Value="NETDLL, Version=1.0.1.0, Culture=neutral" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID\{78BE...}\InprocServer32" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="CLSID\{78BE...}\InprocServer32" Name="CodeBase" Value="file:///[#NETDLL.dll]" Type="string" Action="write" />
<RegistryValue Root="HKCR" Key="Component Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Name="0" Value=".NET Category" Type="string" Action="write" />
<RegistryKey Root='HKLM' Key='Software\NETDLL'>
<RegistryValue Name='Description' Type='string' Value='NETDLL'/>
</RegistryKey>
</Component>
Run Code Online (Sandbox Code Playgroud)
如何一次性写入HKCR\CLSID,HKCR\Wow6432Node\CLSID,HKLM\Software和HKLM\Software\Wow6432Node?
尝试regasm.exe开关 /x86 和 /x64。
您还有 32 位和 64 位版本的regasm.exe,一个在C:\windows\microsoft .net\<version>\Framework,另一个在Framework64,看看是否有帮助。
| 归档时间: |
|
| 查看次数: |
2010 次 |
| 最近记录: |