MSI 파일을 생성하는 데 MSBuild를 사용하는 WiX 설치 프로그램 프로젝트가 있습니다.방화벽 확장을 사용하는 WiX 설치 프로그램을 현지화하십시오
xmlns:fire="http://schemas.microsoft.com/wix/FirewallExtension"
내가 MSBuild를 두 문화를 정의한 다음과 같은 정의와 파일 :
<PropertyGroup>
...
<Cultures>en-us;no-no</Cultures>
</PropertyGroup>
을 나는 또한 추가 한 번역 자원 :
WXS 파일은 윅스 방화벽 확장이 포함<ItemGroup>
<EmbeddedResource Include="lang\Firewall_no-no.wxl" />
<EmbeddedResource Include="lang\WixUI_no-no.wxl" />
</ItemGroup>
방화벽 확장 및 WixUI 확장에 대한 노르웨이어 번역을 나타냅니다. 내가 빌드를 실행하면 그것은 EN-US 부분 성공하지만, 더 노 제품은 또한 다음과 같은 오류 메시지와 함께 실패하지 않습니다 : 문제의
C:\delivery\Dev\wix30_public\src\ext\FirewallExtension\wixlib\FirewallExtension.wxs(19):
error LGHT0102: The localization variable !(loc.WixSchedFirewallExceptionsInstall)
is unknown. Please ensure the variable is defined.
....
커플이 다음 C:\delivery
디렉토리가 어디에서 오는지 모르겠어요. 나는 그런 디렉토리가 없다. 오류 메시지에서 언급 된 지역화 변수는 Firewall_no-no.wxl 파일에서 번역되었습니다.
내가 바로 오류 메시지 전에 다음과 같은 출력을 참조 자세한 정보와 함께 MSBuild를 실행하면 : 세부 쇼로
Task "Light"
Command:
C:\Program Files (x86)\Windows Installer XML v3\bin\Light.exe -cultures:no-no
-ext "C:\Program Files (x86)\Windows Installer XML v3\bin\WixUIExtension.dll"
-ext "C:\Program Files (x86)\Windows I nstaller XML v3\bin\WixUtilExtension.dll"
-ext "C:\Program Files (x86)\Windows Installer XML v3\bin\WixFirewallExtension.dll"
-loc lang\Firewall_no-no.wxl -loc lang\WixUI_no-no.wxl
-out F:\Projects\MyProd\MyProj\Installer\bin\Debug\no-no\MyInstaller.msi
-pdbout F:\Projects\MyProd\MyProj\Installer\bin\Debug\no-no\MyInstaller.wixpdb
obj\Debug\MyProj.wixobj
, 빛 실행 파일이 개 -loc
매개 변수를 가지고있는 MSBuild에서의 작업 결과. 그게이 문제의 원인인지 확실하지 않습니다. 이 문제를 해결하는 방법에 대한 아이디어가 있습니까?