velja
Posts: 45
Joined: Tue May 14, 2013 12:01 pm

File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

With 16.0 signing was failing on our appx files. Except for the file name, the error was same as this one viewtopic.php?t=36104, so I updated to 16.1. Now its failing with the error I coped to attached .txt file.
File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" really doesn't exist.
Thank you.
Attachments
ai_problem.txt
(1.14 KiB) Downloaded 604 times
velja
Posts: 45
Joined: Tue May 14, 2013 12:01 pm

Re: File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

There is another problem with the last version. It doesn't remember path of sign tool. It always restores the one that doesn't work and that caused my initial problem that made me thing that upgrading to last version is a good idea.

I hope that this video explains it better:
https://drive.google.com/uc?id=1y7kCu0Q ... tSBfKDKHKA

Code: Select all

The digital signing of the AppX failed. Error message: 'Done Adding Additional Store

Number of errors: 1
SignTool Error: This file format cannot be signed because it is not recognized.
SignTool Error: An error occurred while attempting to sign: D:\.....\main-x64.appx
File "D:\...\main-x64.appx" can not be signed!'
 
Build finished because an error was encountered.
Daniel
Posts: 8238
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

Hello,

I have tested the external tool setting is not saved when using Advanced Installer 16.1 and replicated the behavior. This seems to be an issue replicating in Advanced Installer 16.1 version.Thank you for bringing this to our attention. We will try to add a fix in the future and will notify you when it will be available.

Until then, as a workaround could you please proceed like this:

1. install Advanced Installer 16.0 side by side with Advanced Installer 16.1
2. open AI 16.0, go to "File -> Settings -> External Tools" and set the SignTool path to

Code: Select all

C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\third-party\winsdk\x64\signtool.exe
3. click [OK] and close AI 16.0; since this settings is saved by Ai per machine it will also reflect for AI 16.1
4. open AI 16.1 and rebuild your setup project

Let us know if this helped.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
velja
Posts: 45
Joined: Tue May 14, 2013 12:01 pm

Re: File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

Suggested workaround doesn't help. New path is set but same error persists:

Code: Select all

The digital signing of the AppX failed. Error message: 'Done Adding Additional Store

Number of errors: 1
SignTool Error: This file format cannot be signed because it is not recognized.
SignTool Error: An error occurred while attempting to sign: D:\..\main-x64.appx
File "D:\...\main-x64.appx" can not be signed!'
 
Build finished because an error was encountered.
I will try few other versions of signtool.
Daniel
Posts: 8238
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

Hello,

Thank you for your follow up on this.

Can you please send us the .aip (project file) to support at advancedinstaller dot com so we can investigate its settings?

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
velja
Posts: 45
Joined: Tue May 14, 2013 12:01 pm

Re: File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

I am sorry for the delay. I've been busy and left this for later time.
I sent the project file.
Daniel
Posts: 8238
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

Hello Velja,

Thank you for your sent project file. After testing its projects settings I was able to replicate the signing error and to isolate the root cause.

The issue is caused by the fact that you have two child folders that will install their content into the parent folder (same parent). Then each of this child folder has another child folder using the same folder name and containing same files with same file names (even they target different build architectures of the same file). It seems this file configuration, when included in the same APPX build, creates an invalid APPX file content that cannot be successfully signed.

I have created a ticket into our work management system and we will try to further analyze this project file resources configuration and if possible add an improvement in the future. We will update this thread when a resolution is released.

Until then, I would recommend you building separate APPX packages for each of target system architectures (e.g. x86 and x64) and then in "Organization" page create 2 new features (e.g. FeatureX64 and FeatureX86) and move all of your x86 file components under the x86 feature and all of your x64 file components under x64 feature. Then the FeatureX64 and FeatureX86 features must be configured to be included only in the x86, respectively x64 version of your APPX.

Hope this helped.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Daniel
Posts: 8238
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

Also, as an additional solution, if you needs to include both flavors (32 and 64-bit) of a file into a single APPX/MSIX bundle build that can target multiple architectures, see the attached screenshot
Capture.JPG
Capture.JPG (184.19 KiB) Viewed 19899 times
then you should go to "Files and Folders" page, double click on your file and use the "Edit Source Path Per Build" hyperlink. Now in "Edit Source Path Per Build" dialog select in turn the "-> x86" and "->x64" flavors of your APPX/MSIX bundle build and configure their file source path.
screen2.jpg
screen2.jpg (401.68 KiB) Viewed 19899 times
Hope this helped too.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Daniel
Posts: 8238
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

You are always welcome.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Daniel
Posts: 8238
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: File "C:\Program Files (x86)\Caphyon\Advanced Installer 16.1\stubs\res\emptyresdll.dll" could not be read.

Hi,

Starting with Advanced Installer 16.1 version you can select a custom path (other than the default configured one by our tool) for SignTool.exe in our External Tools settings only if the custom selected SignTool.exe has a file version equal or greater than 10.1.0.

So, in order to change the default configured SIgnTool.exe tool in our External Tools settings just make sure you pick a SignTool.exe with a file version equal or greater than 10.1.0.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Common Problems”