• Home
  • Podcast
  • Contact
Ervik.as
Cloud, Cyber Security, EUC, DaaS and HCI
  • Cloud
    • Azure
    • Citrix Cloud
    • Cloud Management
    • Nutanix Clusters
  • Cyber Security
    • Arctic Wolf
    • Cyber Security News
  • EUC
    • Citrix
      • Citrix Analytics
      • Citrix NetScaler
      • Citrix Provisioning
      • Receiver
      • ShareFile
      • Citrix Virtual Apps (XenApp)
      • Citrix Virtual Desktops (XenDesktop)
      • Workspace
      • Workspace app
    • DaaS
      • Azure Virtual Desktop
      • Frame
    • Microsoft
      • HoloLens
      • Microsoft App-V
      • Remote Desktop Services
      • Windows 7
      • Windows 8
      • Windows 10
      • Windows Server 2008
      • Windows Server 2008 R2
      • Windows Server 2012
      • Windows Server 2012 R2
      • Windows Server 2016
    • Thin Clients
      • Igel
      • Wyse
    • VMware
      • Fusion
      • Horizon View
      • Vmware ThinApp
      • Vmware Workstation
    • Parallels
      • Remote Application Server
  • End User Experience
    • ControlUp
    • eG Innovations
    • Goliath Technologies
    • Liquidware
  • Datacenter
    • Backup & Disaster Recovery
      • Altaro
      • HYCU
      • Unitrends
      • Rubrik
      • Veeam Software
    • Containers
      • Docker
      • Red Hat OpenShift
    • Hybrid Multi Cloud
      • Nutanix
        • Nutanix Database Service
        • Files
        • Flow
        • Nutanix AHV
        • Nutanix Cloud Platform
    • Server Virtualization
      • Nutanix AHV
      • Microsoft Hyper-V
      • VMware vSphere
      • Citrix Hypervisor (XenServer)
    • Network & Security
      • Nutanix Flow
      • Palo Alto Networks
  • About
    • Cookie Policy (EU)
    • News
      • Citrix Community News

Vmware ThinApp

Multiple Instances of an Application with ThinApp

Alexander Ervik Johnsen Multiple Instances of an Application with ThinApp, ThinApp Scripts, VMware ThinApp 2010-01-03

Here is a little overview kinda q&a style of running multiple instances of an application with VMware ThinApp.

 

I can’t run more than one instance of my ThinApp?

Have you ever tried to ThinApp multiple instances of Adobe Reader or Firefox and then execute them at the same time on the same system? If you have, then you’ll know it doesn’t work!

Why is that??

This is because the application (in our examples here, Firefox and Adobe Reader) check to see if an instance of the application is already being executed. Now, most applications will not check to see if there is already an instance of the app’s primary process being executed and residing in memory. However, more and more applications are starting to do this.

Why doesn’t ThinApp resolve this?

First and foremost, ThinApp does not (and will not ever) virtualize the process list. While there are a number of reasons for this, the simplest explanation is, hiding the processes of an application is a bad thing! It’s what black hatters (a.k.a. bad hackers) do.

Secondly, this is not an issue with ThinApp but rather the application which you are attempting to package with ThinApp as the application is probably designed to re-use the parts of itself already in memory vs. executing additional copies of itself for whatever reasons (maybe the application requires a large amount of memory to execute one instance of itself or maybe it can only lock certain files or memory addresses once).

So how can I make multiple instances of my application work under ThinApp?

The solution is actually not directly a ThinApp solution, but an application solution, since it is an application issue. In our examples of Adobe Reader and Firefox above, these applications look for previous running instances of themselves to save on memory and screen real estate. This functionality for these two applications is solved very simply by a command line switch which disables the check for an existing instance of themselves. In the case of Adobe Reader, the command line switch is a “-k”. For Firefox it is a “–no-remote” command line switch.

How do I configure my ThinApp package to utilize a Command Line switch?

Very simply, make an entry point or modify an existing entry point and add the “CommandLine=” entry to the Entry Point. It’s value will be the “source” plus the command line switch or switches you wish to add.

Example: Here’s an example of Firefox with a CommandLine entry to disable the pre-existing instance checking (i.e. allow multiple instances of Firefox).

[Mozilla Firefox.exe]
ReadOnlyData=bin\Package.ro.tvr
Source=%ProgramFilesDir%\Mozilla Firefox\firefox.exe
WorkingDirectory=%ProgramFilesDir%\Mozilla Firefox
FileTypes=.htm.html.shtml.xht.xhtml
Protocols=ftp;http;https
Shortcuts=%Desktop%;%Programs%\Mozilla Firefox;%AppData%\Microsoft\Internet Explorer\Quick Launch
CommandLine=%ProgramFilesDir%\Mozilla Firefox\firefox.exe –no-remote

How do I find Command Line Switches or Arguments for my application?

Here’s where I can’t be a lot of assistance (since there are millions of Windows apps). I usually Google these myself. A good reference, though, is Rob Vanderwoude’s Command Line Switches page, which is worth reading.

Probably the best suggestion I can give you is to open your favorite browser, go to your favorite Search Engine, and search for your application’s command line options using one of the following set of keywords.

“<your app> Command Line Options”

“<your app> Command Line Switches”

“<your app> Command Line Arguments”

If none of these work, I would then suggest browsing your application manufacturer’s support section of their web site for these. If not found here, my only other suggestion is to contact your application’s manufacturer by phone or email for this information.

My application doesn’t have Command Line Option for allowing multiple instances? Is there anything else I can do?

If you’ve contacted your application’s manufacturer and they have specifically told you a command line option doesn’t exist to allow multiple instances to be executed…all is not entirely lost (I’d be surprised if this were the case since this means the app likely won’t run on a Terminal Server). My suggestion here is make an official request to the app manufacturer requesting this feature. Next, there are scripting options and potentially 3rd party options.

For scripting options, see the ThinApp Scripts section for support. It may be possible to use a validation option to see if the application is already running since virtually anything scripted can be ThinApp’ed. While there are numerous ways you might be able to make this work (I won’t speculate as the options are nearly infinite here) the worst case here is you just don’t let the 2nd instance execute until the 1st instance is shut down.

The same thing goes for 3rd party solutions – you may be able to make your own application “wrapper” or have one built which accomplishes a viable goal.

One other thing, check to see if you can rename the source EXE (in my Mozilla Firefox example that would be “firefox.exe”) to something different. This, combined with a script, could accomplish the goal to execute multiple instances of the app at the same time.

Read Full Article

Related Posts

vmware

Vmware ThinApp /

VMware ThinApp 5.0 is out

Vmware ThinApp /

What’s new in VMware ThinApp 4.7 Video

Vmware ThinApp /

VMware ThinApp 4.7 released

Vmware ThinApp /

Managing ThinApps with VMware Horizon

Vmware ThinApp /

VMware ThinApp 4.6.2 released

‹ How to Update Provisioning Server Target Device Software using a Network File Share with XenServer› RadeLauncher.exe Remains Active for Five Minutes when Session is Closed

Back to Top

Crafted in the land of the Vikings 🇳🇴 by Alexander Ervik Johnsen.
Copyright 2000-2025 - www.ervik.as - All Rights Reserved