VMware Horizon Community
WHAM201110141
Contributor
Contributor

How to force Thinapp 4.6.1 to download all files to sandbox

Hello,

Here is my situation in short: I work for a software developer and am not a Thinapp user myself. A customer of ours is trying to use our software via Thinapp, streaming the software to the workstations and running them there. With older versions of our software, this has worked without issue.

However, the new version of our software has a .Net Assembly / .dll -file, which is causing an issue. When a user tries to start our software using Thinapp, Thinapp should download the program to the workstation's sandbox and run it from there. The .dll file in question, however, cannot be copied for some reason, which causes to software to not run correctly. The program apparently tries to start, cannot find the .dll file, and then the program stops working.

A temporary fix for this has been do copy/paste the problematic file into the sandbox manually, but this sort of manual operation is exactly what the customer is trying to avoid when using Thinapp.

Another customer of ours has an identical issue with Citrix xenapp, when streaming the same software to their sandbox, and in Citrix the issue was resolved with a registry fix, which forces the Citrix Rade client to download each and every file on the first attempt to start the software, and only after EVERYTHING was downloaded into the sandbox, the software would be run.

QUESTION: Is there a way to force Thinapp to download every single file, without exeptions, before starting the program in the sandbox?

Thank you beforehand for any and all replies and responses! Unfortunately I have very limited information on the customer's environment, so I cannot give much more details than this. If more details are necessary, ask away and I will do my best to provide them is possible.

Reply
0 Kudos
5 Replies
pbjork
VMware Employee
VMware Employee

There is no such feature.. A file will not be placed into the sandbox until it has been modified some how. If the file is not modified will ThinApp runtime see no reason for coping it to the sandbox.

You can force the file to be copied to the sandbox with the help of a vbscript that you compile into the package. Simply touch the file, changing a attribute or something will force it into the Sandbox..

More info:

Scripting:

http://blogs.vmware.com/thinapp/scripts/

Isolation Modes and the sandbox:

http://blogs.vmware.com/thinapp/isolation/

shrivastavaa
Enthusiast
Enthusiast

>>. The .dll file in question, however, cannot be copied for some reason, which causes to software to not run correctly. The program apparently tries to start, cannot find the .dll file, and then the program stops working.

Not sure I followed correctly.

You have an application which relies on a .net dll file. Your customer has ThinApped your applicaton. Now in case you do not know; ThinApp takes snapshot of system files (& other things) before and after application install, it than keep al the files in a big containor file (PDC). Now assumming your application installer is copying the concerned .net dll at the time of installation; it should be in the PDC file.

You can ask your customer to check whether the said dll is inside package. If not than its something which should be checked at your installer.

Additionally check; is your app (ThinApped version) running fine on the system where your customer has captured it?

And as Peter said "There is no switch to force it"

Good luck

Reply
0 Kudos
WHAM201110141
Contributor
Contributor

Thanks for the quick replies.

To better explain: yes, the .dll file is in the PDC file. To this effect the situation is identical to the one we were able to document with Citrix, in which all files are correctly saved in the "profile", from which the software is then streamed to the workstation, but this one gets stuck in some way, leading to the issue. For an unknown reason the .dll never seems to reach the client sandbox, causing for the thinapped software to fail at startup.

As far as I know, the customer starts the software on the machine the installation is captured, and at that point it starts correctly.

I'll have to look into the scripts Peter linked to, and see if I can assist our customer with implementing a suitable script.

I'll keep this question open for a while yet, until we can implement a solution. Any further suggestions and ideas are still welcome, though!

Reply
0 Kudos
shrivastavaa
Enthusiast
Enthusiast

You can try running this application with log monitor(comes with ThinApp), this will tell you what API exactly failed. You should be able to tell what halted this file to get loaded. just search for this file name and keep an eye for failed APIs. (Createfile, readfile for instance)

Reply
0 Kudos
pbjork
VMware Employee
VMware Employee

Just to make it a little easier for you, here's the scripting part of our manual: http://pubs.vmware.com/thinapp4/help/wwhelp/wwhimpl/js/html/wwhelp.htm?href=scripts.html#995325