tutmos
Contributor
Contributor

NotificationDLLs pointing to a DLL inside a virtual package

Although NotificationDLLs section in ThinApp 4.7.0 manual says that "The DLLs can reside on the physical file system or the virtual package", it is not clear where the custom DLL must be put when I want it to be a part of the virtual file system.

Putting it into %SystemSystem% folder doesn't work, I still get "Unable to load notification module..." when i start the application.

Can anyone suggest what needs to be done to make this scenario work?

Thanks

0 Kudos
3 Replies
Pankaj11
Hot Shot
Hot Shot

Hi,

It seems like there is a mistake in the manual. You need to have the DLL on the system (and not in the virtual package) either in current working directory or in one of the folders in the system path environment variables. I think we need to make this correction in the manual (Thanks for bringing this up!).

Thanks

tutmos
Contributor
Contributor

Understood.

Thanks for clarification.

I have a follow up question.

Imagine I captured an application and it uses a custom notification DLL (NotificationsDLLs=app.dll in the Package.ini).

It is configured so that as a the result I get a large "app.dat" file and one entry point "app.exe".

In other words, I need the following 3 files in the same folder to run my application:

1. app.dat

2. app.exe

3. app.dll

In order to simplify deployment I also uncommented MSI-related directives in Package.ini.

The problem is that the generated MSI file does not include "app.dll" and therefore my application does not start when I deploy this MSI on a new machine.

My question is, are there any Package.ini directives which would allow to include this custom notification DLL into the generated MSI.

If not, is there a way to modify "template.msi" or this generated MSI (possibly, using Orca or InstEd) so that it would deploy one more file into the target directory.

Thanks in advance

0 Kudos
sWORDs
VMware Employee
VMware Employee

Three ways to reach that goal:

1) Create a vbscript that uses the windows installer object to edit the msi and add the dll to the file table.

2) Use WiX, use dark.exe to generate a xml (.wxs) and use fragments, then use heat to harvest the bin the directory and create your file fragment.

3) Add a custom action in the template.msi with Orca that copies the dll aswell when it exists.

0 Kudos