Is it possible to pass custom parameters to light.exe from a .wixproj?

I've recently upgraded one of my projects to build with Visual Studio 2015. I build the installer for my project using Wix and I ship the Microsoft CRT merge modules with my project. There's a known issue where light.exe can issue warnings about some of the GUIDs used in the Merge Modules shipped by Microsoft:

light.exe : warning LGHT1076: ICE03: String overflow (greater than length permitted in column); Table: File, Column: File, Key(s): api_ms_win_crt_filesystem_l1_1_0.dll.71E1EC1A_562B_3AD1_94CD_84420ED4073F [v:\VS2015\DataNow\Installer\To olsInstaller\Toolbox.wixproj] 

I've read that this can be a known problem with these merge modules () and that the warning is benign. However, I'd like to suppress the warnings by passing:

-sw 1076 

to light.exe but I can't figure out how to pass custom parameters to light.exe using the .wixproj visual studio Wix files.

Does anyone know how this can be accomplished?

1 Answer

Ahaha,

I've finally found the solution. I don't need to pass parameters to light.exe because there's a section in the .wixproj that can be used to suppress these warnings:

 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' "> <SuppressAllWarnings>False</SuppressAllWarnings> <OutputPath>$(SolutionDir)Publish\$(Platform)\$(Configuration)\</OutputPath> <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath> <LinkerAdditionalOptions>"$(WixToolPath)difxapp_$(Platform).wixlib"</LinkerAdditionalOptions> <SuppressSpecificWarnings>1055;1056;1076</SuppressSpecificWarnings> <SuppressIces>ICE80;ICE82</SuppressIces> </PropertyGroup> 
1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

You Might Also Like