1
votes

I created a C# dll that is dependent on the DOTNETZIP "Ionic.Zip.dll". This custom assembly will be used as an InstallShield Custom Action and enter into the Binary table. When the Custom Action is executed, I get the following error information in the MSI log.

Action 11:59:25: LaunchCTSDBExtract2. MSI (s) (20:50) [11:59:25:513]: Executing op: CustomActionSchedule(Action=LaunchCTSDBExtract2,ActionType=1089,Source=BinaryData,Target=m1,) MSI (s) (20:08) [11:59:25:607]: Invoking remote custom action. DLL: C:\Windows\Installer\MSI5F58.tmp, Entrypoint: m1 InstallShield: Attempting to load through CLR 4 APIs... InstallShield: Getting meta host... InstallShield: Enumerating available runtimes... InstallShield: Highest available runtime: v4.0.30319 InstallShield: Trying to use highest runtime... InstallShield: Using highest version runtime... InstallShield: Deferred action requested property MsiHiddenProperties not provided by CustomActionData InstallShield: Loading assembly CTSDBExtract_Merged from resource 4097 InstallShield: Unable to load managed custom action assembly CTSDBExtract_Merged: Resource 4096.4097 was not found

Has anyone ever seen this, and/or know what it means and how to fix it? If I left anything out that you're not sure about, please let me know and I will be happy to clarify.

Thanks

1
Have you included ionic.zip.dll in the file that will be deployed with the custom action dll?Peter Ritchie
What is your specific question about ilmerge? Are you merging these two DLL's and you get this problem, or do you think using ilmerge will solve this problem?Peter Ritchie
I've merged the Ionic.zip.dll with my custom assembly and I'm getting the error shown above when it's executed in InstallShield. Unfortunately, I haven't been able to locate any information on how to resolve this. I wasn't sure if ILMerge was causing a problem in Installshield.Jim MacDiarmid
I'm unsure if ILMerge would cause this problem as well, if you add the ionic.zip.dll to the install so that it is placed in the same directory as your custom action and not use ILMerge, does the problem go away? Alternatively, copy ionic.zip.dll to windows\system32 and try the install without an ilmerged dll, does the problem still occur?Peter Ritchie

1 Answers

0
votes

Google DTF managed custom actions. It's an open source project from Microsoft that encapsulates managed custom actions as unmanaged and it works with InstallShield. It also has built in capabilities for compressing and self extracting assembly references and content files.