The UAC prompt shows a temporary random Program Name for msi, can the correct name be displayed? The UAC prompt shows a temporary random Program Name for msi, can the correct name be displayed? windows windows

The UAC prompt shows a temporary random Program Name for msi, can the correct name be displayed?


Use the /d command line argument with the required program name when executing signtool to sign the msi.

It appears that the windows installer creates a temporary copy of the msi file and assigns it a generated name before running it. If you don't use /d with signtool, you get to see the temporary filename which isn't very useful for your users.


this is an applied version of @Scott-langham's comment.

this was directly from the PostBuildEvent of a visual studio installer project - VDPROJ file

set signtool="C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\signtool.exe"set timestampurl=http://timestamp.digicert.comset certpath="$(ProjectDir)CodeSigningCert.pfx":: Setup in your user environment variables:: using something with low sort order to force off screen ZZCODECERTPASSWORDif []==[%ZZCODECERTPASSWORD%] (echo must set code signing certificate in ZZCODECERTPASSWORD environment variable. stopping build.exit /b 2):: need the filename with extension that is being generatedFOR /f %%i IN ("$(BuiltOuputPath)") DO (SET outputfilename=%%~nxi)%signtool% sign /t %timestampurl% /f %certpath% /p %CODECERTPW% /d %outputfilename% "$(BuiltOuputPath)"IF ERRORLEVEL 1 (echo failed to sign MSIexit /b 3)%signtool% sign /t %timestampurl% /f %certpath% /p %CODECERTPW% "$(ProjectDir)$(Configuration)\Setup.exe"IF ERRORLEVEL 1 (echo failed to sign boostrap setup EXEexit /b 4)