Wix 中的符号 (candle.exe) 错误 LGHT0311,windows-1252

Symbole in Wix (candle.exe) error LGHT0311, windows-1252

我正在尝试用热、蜡烛和光来收割一些文件夹。 我正在收获的驱动程序之一有 32 位 dll,其描述中有一个“®”符号(以及它的产品名称)。

其中之一: 姓名:mfx_mft_h264vd_32.dll , 描述:用于英特尔® 高清显卡的 H.264 解码器 MFT

在 heat.exe 收获期间它能够处理它:

<Component Id="cmp9558AE64A7F57EA5334374D64EF8923F" Guid="9D4432DB-793C-4D1B-A264-C19DE7BDA0CA">
                    <File Id="filB8B8F8A50451F85AED239C3A3C4F0B92" KeyPath="yes" Source="$(var.SourceDirectory)\win32\mfx_mft_h264vd_32.dll">
                        <Class Id="{1A1703E9-3E7C-41C3-AD5A-795CBFB19552}" Context="InprocServer32" Description="H.264 Decoder MFT for Intel® HD Graphics" ThreadingModel="both" />
                    </File>
                    <RegistryValue Root="HKCR" Key="MediaFoundation\Transformsa1703e9-3e7c-41c3-ad5a-795cbfb19552" Value="H.264 Decoder MFT for Intel® HD Graphics" Type="string" Action="write" />
                    <RegistryValue Root="HKCR" Key="MediaFoundation\Transformsa1703e9-3e7c-41c3-ad5a-795cbfb19552" Name="InputTypes" Value="7669647300001000800000AA00389B714832363400001000800000AA00389B717669647300001000800000AA00389B714832363400001000900000AA00389B717669647300001000800000AA00389B714156433100001000800000AA00389B71" Type="binary" Action="write" />
                    <RegistryValue Root="HKCR" Key="MediaFoundation\Transformsa1703e9-3e7c-41c3-ad5a-795cbfb19552" Name="OutputTypes" Value="7669647300001000800000AA00389B714E5631326139AE42BA67FF47CCC13EED7669647300001000800000AA00389B714E56313200001000800000AA00389B71" Type="binary" Action="write" />
                    <RegistryValue Root="HKCR" Key="MediaFoundation\Transformsa1703e9-3e7c-41c3-ad5a-795cbfb19552" Name="Attributes" Value="41464D490100000015CBA788077B344A9128E64C6703C4D313000000000000000700000000000000" Type="binary" Action="write" />
                    <RegistryValue Root="HKCR" Key="MediaFoundation\Transformsa1703e9-3e7c-41c3-ad5a-795cbfb19552" Name="MFTFlags" Value="36" Type="integer" Action="write" />
                    <RegistryValue Root="HKCR" Key="MediaFoundation\Transforms\Categories\d6c02d4b-6833-45b4-971a-05a4b04bab91a1703e9-3e7c-41c3-ad5a-795cbfb19552" Value="" Type="string" Action="write" />
                </Component>

问题是当我尝试使用 candle.exe 时,它 return 错误消息:

C:\MultipackageInstaller\Developments\MultipackageInstaller\ComponentMsiOSConfig\WixTemplate\HarvestedFiles.wxs(846) : error LGHT0311 : A string was provided with characters that are not available in the specified 
database code page '1252'. Either change these characters to ones that exist in the database's code page, or update the database's code page by modifying one of the following attributes: Product/@Codepage, Module/@
Codepage, Patch/@Codepage, PatchCreation/@Codepage, or WixLocalization/@Codepage.
C:\MultipackageInstaller\Developments\MultipackageInstaller\ComponentMsiOSConfig\WixTemplate\HarvestedFiles.wxs(848) : error LGHT0311 : A string was provided with characters that are not available in the specified 
database code page '1252'. Either change these characters to ones that exist in the database's code page, or update the database's code page by modifying one of the following attributes: Product/@Codepage, Module/@
Codepage, Patch/@Codepage, PatchCreation/@Codepage, or WixLocalization/@Codepage.

所以我查看了代码页 1252,似乎“®”是由这种编码格式处理的。 (https://en.wikipedia.org/wiki/Windows-1252)

我试图强制代码格式为wix,但没有任何变化。

你知道为什么我有这些消息吗? 它确实是“®”符号的问题吗? 如果它在代码页 1252 中,为什么 wix 也不支持它? 最后,我有什么解决方案?

感谢你一直读到这里,我希望有人对此有想法

显然这是 visual studio 缓存的问题。

我真的无法解释,但是在清理了我的 "AppData\Roaming\Microsoft\VisualStudio" 文件夹并重建了所有内容之后,我就没有问题了。