0

This question might seem to be duplicated with this and this that are similar. But it is not! First- I am getting this error from the setup file and not from the program that I am distributing Second -the version is different, the directories in Installshield 2009 an 10.5 differ. .

I'm trying to fix an error caused by Windows compatibility mode in my setup, which is built with Installshield 10.5. So far my research led me to a conclusion that i need to add [this][3] to my manifest file. I saw that Microsoft's tool mt.exe could extract a manifest file from a dll, however I did not see anywhere that it can extract it from an executable file. So my questions are the following:

Is there any way to view the manifest file of a Setup.exe built with Installshield?

Is there any way to configure this manifest file for the certain project in Installshield?

[3]Can one edit an InstallShield setup.exe's manifest file?

Community
  • 1
  • 1
Alexander Demerdzhiev
  • 1,034
  • 2
  • 14
  • 29
  • Possible duplicate of [Can one edit an InstallShield setup.exe's manifest file?](http://stackoverflow.com/questions/2931789/can-one-edit-an-installshield-setup-exes-manifest-file) – Michael Urman Dec 15 '15 at 13:14
  • @MichaelUrman the versions of the Installshield differ and the directories are not the same. – Alexander Demerdzhiev Dec 15 '15 at 13:53
  • In Visual Studio use File > Open > File. Open the RT_MANIFEST node. Not very readable, easiest to export it to a text file. Very unlikely you'll fix this with the manifest btw, the install log file should give a hint what went wrong. – Hans Passant Dec 15 '15 at 14:04
  • @AlexanderDemerdzhiev: Fair enough. The directories are very similar, but I was referring more to the links to ISReMan. It doesn't change the fact that you seem to be asking a derived question rather than its base, and aren't explaining what's actually going on. – Michael Urman Dec 16 '15 at 11:26

1 Answers1

1

As far as I know, mt.exe will work fine on EXE files; both EXE and DLL files are Portable Executable (PE) files, and PE files use the exact same structure for resources such as the manifest. Visual Studio, CFF explorer, and countless other tools (including raw resource APIs) will also work to view and possibly update manifests in general.

However for a built InstallShield setup.exe, there is a twist. InstallShield uses areas in the file to store information that are not described in the PE format. Tools that update the resources on an EXE can inadvertently destroy this data as they do not expect it to be there, nor do they know how to detect or adjust it.

InstallShield 12 or so and later allow you to specify a manifest, and it selects the manifest from files it ships that you can update before it adds them to the setup.exe. In addition, there is a tool called ISReMan that is aware of the extra information and can update the manifest correctly when that data is present.

By the way, it's generally helpful to mention the actual problem you're trying to solve, in case the method you've chosen (in this case updating the manifest) is not the correct solution. Note as well that InstallShield 10.5 is over 10 years old, and knows nothing about UAC, PCA, and other Vista and later technologies; adjusting the manifest may not help fix, say, an elevation-related problem.

Note as well that I am paid to work on InstallShield, so I may be biased when I recommend things like upgrading. :)

Community
  • 1
  • 1
Michael Urman
  • 15,737
  • 2
  • 28
  • 44
  • If it was up to me i would have upgraded immediately. However this decision is linked to the phase of our project and also the budget. On the case: I have found that i can make a record in the registry: `HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Persisted` and suppress the message. However `Perisisted` folder is not available in Windows 10. – Alexander Demerdzhiev Dec 15 '15 at 13:49
  • I have zero clue how Persisted ties into a manifest, much less whether it's for the setup or the app. What is your real question? (And no time in the current project to upgrade to 10 year-old technology is, while all too common, very unfortunate for a product that's apparently trying to support Windows 10.) – Michael Urman Dec 16 '15 at 11:28