Hello,

I want to virtualize our product msi, containing an executable that is installed as a service, and a shortcut pointing to that executable with "-config" parameter showing its config gui.

So, when I try this with AppV Seq 4.6 on win7 I get a Package with the Virtual Service and the Shortcut and the Program Files in right place...

But when I start this package in my Client (via AppVLauncher from InstallShield) I directly get the "-config" gui... and when I look in the Windows Service Manager (services.msc) my service is not there...

I want
my service to be installed and started in SCM,
the shortcut to be installed but not started automatically

Can somebody please explain, noob to AppV
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

1
You will need to run your sevices.msc from within the virtual environment to see the service - the easiest way to do this would be to run SFTTRAY /EXE CMD.EXE "<NAME OF APP>" and then run your services.msc from the resulting command prompt..
Answered 01/10/2011 by: DannyC
Orange Belt

Please log in to comment
1
So, will the service not be able to communicate outside the virtualization?

It's a client software that connects to a server
Answered 01/10/2011 by: rattata
Senior Yellow Belt

Please log in to comment
1
The service will operate as normal, it's just that you can't see it through the services applet (without running in the applet in the virtualised environment). You should be able to see the service exe running in taskmgr.

If you look on your sequencer you should see the service on the virtualised services tab - make sure it's set to automatic.
Answered 01/10/2011 by: DannyC
Orange Belt

Please log in to comment
1
And how do i stop the AppV package from automatically showing my config GUI from the shortcut?

I only want my service to be started by default, config ("- config") only on Shortcut click
Answered 01/11/2011 by: rattata
Senior Yellow Belt

Please log in to comment
1
Sorry; just to be clear, are you saying that you want the user to click on a shortcut, and that shortcut starts the service, but doesn't present anything to the user?
Answered 01/11/2011 by: DannyC
Orange Belt

Please log in to comment
1
From my (installer) POV:

I want to install my service (NetworkService Account)
have it automatically started ("Automatic" startup type)
and user be able to configurate this with UI by clicking the shortcut (which has "-config" parameter to the exe)

This is what my msi does, it installs the service, starts it and places the shortcut

How do I do this with AppV?
Answered 01/11/2011 by: rattata
Senior Yellow Belt

Please log in to comment
1
OK, in that case I suggest something along the lines of 2 OSD's (shortcuts):

one runs the service. This is placed in the startup folder and will ensure the service is started when the user logs in (but note, not when the machine starts)

and the other which launches the gui (and is placed wherever you want).

You will need to think about how you want them to terminate, but I'd guess if you want the service running them you may want it to just run until the user logs out..
Answered 01/11/2011 by: DannyC
Orange Belt

Please log in to comment
1
OK, I thought the same, 2 shortcuts. Really no built-in autostart functionality in AppV? sad... What about Run regkey?

Still noob to AppV, I must find out how to work with 2 osd's, let me do a little bit clicking around hehe :)

BTW can you please provide me a good documentation for the OSD (texteditor) editing, what can be done and what not

ORIGINAL: DannyC

OK, in that case I suggest something along the lines of 2 OSD's (shortcuts):

one runs the service. This is placed in the startup folder and will ensure the service is started when the user logs in (but note, not when the machine starts)

and the other which launches the gui (and is placed wherever you want).

You will need to think about how you want them to terminate, but I'd guess if you want the service running them you may want it to just run until the user logs out..

Answered 01/11/2011 by: rattata
Senior Yellow Belt

Please log in to comment
1
It's not showing the service

ORIGINAL: DannyC

You will need to run your sevices.msc from within the virtual environment to see the service - the easiest way to do this would be to run SFTTRAY /EXE CMD.EXE "<NAME OF APP>" and then run your services.msc from the resulting command prompt..
Answered 01/11/2011 by: rattata
Senior Yellow Belt

Please log in to comment
0
Does it appear in the sequencer?
Answered 01/11/2011 by: DannyC
Orange Belt

Please log in to comment
0
yes

ORIGINAL: DannyC

Does it appear in the sequencer?


My service needs NetworkService account,

I tried it with the default sequencer settings "LocalSystem", above error.
When I edited the User field in the App Sequencer Wizard to User: NT AUTHORITY\NetworkService
still above error

Error message box comes from my service

---------------------------
Thn32svc
---------------------------
Service start failed

The service process could not connect to the service controller.

---------------------------
OK
---------------------------


ERROR_FAILED_SERVICE_CONTROLLER_CONNECT
1063 (0x427)
Answered 01/12/2011 by: rattata
Senior Yellow Belt

Please log in to comment
0
The Network Service account is supported so that shouldn't be the problem - does the service start and run successfully on the sequencer?
Answered 01/13/2011 by: DannyC
Orange Belt

Please log in to comment
0
Here's some quote, which is really basic stuff actually:

Not all applications that run as a service can be virtualized, although these limitations may change in future product versions. The virtualized instances are created in the runtime sandbox which hosts the virtualized instance, representing the resources of the actual client system the application is being executed on. Thus the application is decoupled from the resources of the system the application is installed on. Each application, or multiple instances of the same application, is run in its own virtual sandbox, each with its own set of virtual resources. The SystemGuard runtime environments can include specific dependencies such as DLL files as well.


In other words: If the service does show up in the sequencer and it doesn't work on the client, something is missing or not functioning as it should.

So let's start with this:
1) What does the MSI install? Only the service or does it have shared files such as dll's/merge modules/etc...? Are there any other requirements for the service?
2) What does procmon tell you if you run it during startup of the sequence?
3) Does the services start when you have it installed locally as well?
4) Do you get any error messages that might give you a hint when you turn off the VFS or Virtual Registry of your sequence?
5) If any of the above hints to COM objects, have you tried to set Allow Local Interaction to True?
Answered 01/13/2011 by: Rheuvel
Brown Belt

Please log in to comment
Answer this question or Comment on this question for clarity