获取错误candle.exe: error CNDL0103:系统无法找到文件'字体'来源'

本文关键字:文件 来源 字体 exe candle 取错误 error CNDL0103 获取 系统 | 更新日期: 2023-09-27 18:17:54

我使用的是最新版本的wix v3.10.3,同时执行以下命令:

D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC>call "C:'Program Files (x86)'WiX Toolset v3.10'bin'candle.exe" -sw1076 -sw1072 -dDebug -d"ADX_PATH=C:'Program Files (x86)'Add-in Express'Add-in Express .NET for Internet Explorer''" -d"DevEnvDir=C:'Program Files (x86)'Microsoft Visual Studio 11.0'Common7'IDE''" -d"SolutionDir=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP''" -dSolutionExt=.sln -dSolutionFileName=PMP.sln -dSolutionName=PMP -d"SolutionPath=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP'PMP.sln" -dConfiguration=Release -dOutDir=bin'Release' -dPlatform=x86 -d"ProjectDir=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP'PMPSetup'1.0.0''" -dProjectExt=.wixproj -d"ProjectFileName=PMPSetup(1.0.0).wixproj" -d"ProjectName=PMPSetup(1.0.0)" -d"ProjectPath=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP'PMPSetup'1.0.0'PMPSetup(1.0.0).wixproj" -d"TargetDir=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP'PMPSetup'1.0.0'bin'Release''" -dTargetExt=.msi -d"TargetFileName=PMPSetup(1.0.0).msi" -d"TargetName=PMPSetup(1.0.0)" -d"TargetPath=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP'PMPSetup'1.0.0'bin'Release'PMPSetup(1.0.0).msi" -dPMP.Configuration=Release -d"PMP.FullConfiguration=Release|AnyCPU" -dPMP.Platform=AnyCPU -d"PMP.ProjectDir=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP''" -dPMP.ProjectExt=.csproj -dPMP.ProjectFileName=PMP.csproj -dPMP.ProjectName=PMP -d"PMP.ProjectPath=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP'PMP.csproj" -d"PMP.TargetDir=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP'bin'Release''" -dPMP.TargetExt=.dll -dPMP.TargetFileName=PMP.dll -dPMP.TargetName=PMP -d"PMP.TargetPath=D:'File_Transfer'11-Nov-16'internetexplorer'2000'INTERNET_EXPLORER_SRC'PMP'bin'Release'PMP.dll" -out obj''Release' -arch x86 -ext "C:'Program Files (x86)'WiX Toolset v3.10'bin''WixNetFxExtension.dll" Product.wxs StandardUI.wxs 

我得到以下错误:

candle.exe : error CNDL0103 : The system cannot find the file 'Product.wxs' with type 'Source'.

当我使用Visual Studio编译时,我没有得到任何错误,并且构建成功。而通过命令提示符,我得到了上面的错误。

谁能建议如何解决这个问题?

获取错误candle.exe: error CNDL0103:系统无法找到文件'字体'来源'

candle.exe似乎在解析以反斜杠结尾的引用命令行参数时遇到了麻烦。例如,修改如下:

-d"ADX_PATH=C:'Program Files (x86)'Add-in Express'Add-in Express .NET for Internet Explorer''"

:

-d"ADX_PATH=C:'Program Files (x86)'Add-in Express'Add-in Express .NET for Internet Explorer"

同样的问题在您提供的命令中的多个地方存在。

我正在使用这样的宏:

-d"BinariesDir=$(OutputPath)"

我必须把它改成:

-d"BinariesDir=$(OutputPath)."

,这样当它们展开时,它们不会以'结尾

从您的产品所在的文件夹中运行批处理文件。wxs和Product。Wixobj文件是。我们将批处理文件命名为installer.bat

编辑install .bat:

candle Product.wxs 
light Product.wixobj
@pause

将您的installer.bat文件复制到setupproject文件夹中。WXS文件为,其他bin和obj文件夹为。运行installer.bat文件。希望这对你有用。

谢谢

当我没有像这样传递两个扩展dll时,我发现了同样的错误:

-ext "C:'Program Files (x86)'WiX Toolset v3.11'bin''WixUtilExtension.dll" 
-ext "C:'Program Files (x86)'WiX Toolset v3.11'bin''WixUIExtension.dll"

这可能是您在引用产品中的某些片段。WXS为空。

等在product.wxs

!--<Feature Id="F_UpdateConnectionString" Title="Updating ConnectionString" Description="Update the Connection String" Level="1">
      <ComponentRef Id="SetConfigurationValues" />
    </Feature>-->
 and insidefragment 
<Fragment>
<DirectoryRef Id="INSTALLFOLDER">
      <Component Id="SetConfigurationValues" Guid="03D1E734-464F-4A2D-B385- 
  42DECB86C557">
  </Component>
    </DirectoryRef>
</Fragment>

在这里我们可以看到组件必须有一些东西来成功构建