SignTool Error: SignedCode::Sign returned error: 0x800700C1

Occasional Contributor
Hi All, Please let me know the reason behind the below errors while signing the msix package, it is only happening for the msix package having an executable named uninstall.exe. Msix signing has any restriction based on the executable file names, is there any other names other than uninstall.exe ?. ERROR: [AppxSipCustomLoggerCallback] File has malformed certificate: VFS\ProgramFilesX86\Test Maintenance Service\uninstall.exe ERROR: [AppxSipCustomLoggerCallback] Failure to process PE file for code integrity catalog: VFS\ProgramFilesX64\Zilla FTP Client\uninstall.exe
2 Replies
Hi Bannna,

THis looks like an error related to a bad PE header. This is a fairly common problem we observe in older applications as nothing validates the headers generally unless the file was being signed. As older applications were often not signed, its normal to see invalid ranges, sizes, start addresses, etc in the headers.

The MSIX packaging tool looks for and automatically corrects a good number of common errors. Couple questions:
1. What version of MsixPackagingTool are you using? If you have an older version, there may be some auto-correction that has been added in newer versions that will address this scenario.
2. What version of zilla ftp client are you packaging? We can look into updating our auto-correction to address this particular case if we have not already.

To unblock you right now, uninstallers are rarely useful in the packaged MSIX. MSIX has its own installation and uninstallation mechanism. You can likely safely exclude the uninstall.exe from the package and see no functional difference in your package.


Thanks @James Pike  for the response,

1- MsixPackaging Tool 1.2019.701.0 used to generate the msix package, even I am getting the same error If I manually sign the msix package with signtool.exe.

2- FileZilla_3.41.2_win64 setup used for generating the msix package. 


 I didn't added any  application shortcut corresponding to the uninstall.exe, simply placed uninstall.exe in the package as  I am trying to create an MSIX package with all the files present in the source msi package. 


 Actually I was not getting this error while signing MSIX package that contain non signed win32 exes, and even for .net WPF exe.  So I just confused, why this error is thrown only for non signed uninstall.exe, I got this same error for multiple msix packages that contain uninstall.exe.