The Kinetic Jump site navigation header requires JavaScript to be enabled and the latest version of the Macromedia Flash Player. If you are you using a browser with JavaScript disabled please enable it now. Otherwise, please update your version of the free Flash Player by downloading here.

Welcome Guest Search | Active Topics | Log In | Register

Could not start the update installer. Make sure the AppLife Update service is installed and running. Options
mobilwave
#1 Posted : Friday, August 12, 2011 6:09:09 AM
Rank: Member
Groups: Member

Joined: 12/31/2010
Posts: 9
Location: Lisboa
We have obtained the following error in some client stations:

Could not start the update installer. Make sure the AppLife Update service is installed and running.
in Kjs.AppLife.Update.Controller.UpdateController.a(IList`1 A_0, String A_1, ApplyUpdateOptions A_2, String A_3, Boolean A_4, String A_5, Version A_6)

in Kjs.AppLife.Update.Controller.UpdateController.a(UpdateController A_0, Guid A_1, ApplyUpdateOptions A_2, IList`1 A_3, Version A_4, UpdateElevationType A_5, Boolean A_6, String A_7, String A_8, Boolean A_9, IDictionary A_10)

in Kjs.AppLife.Update.Controller.UpdateController.ApplyUpdate(ApplyUpdateOptions options, IDictionary initialSharedProperties)

in Kjs.AppLife.Update.Controller.UpdateController.ApplyUpdate(ApplyUpdateOptions options)

in framework.ui.windows.forms.common.StdApplicationFormNavigation.verificaUpdateApp(UpdateType type, Boolean forceUpdate, Version maxVersion)



Although the service is installed and running.
Any clues?

Thank you
adamh
#2 Posted : Friday, August 12, 2011 9:49:59 AM
Rank: Administration
Groups: Member, Administration

Joined: 7/12/2007
Posts: 17
Location: Michigan
Hello,

Could you let us know what version of the controller you're using, please? Also, is there any way that you can obtain the value of the InnerException property for the exception you're seeing?
Adam Hill
Kinetic Jump Software
YvesR
#3 Posted : Thursday, August 18, 2011 2:44:00 AM
Rank: Member
Groups: Member

Joined: 4/27/2011
Posts: 14
Location: Hasselt, Belgium
Hi there,

I think we hit against the same issue since today.

This is our situation:
We have a main application which is responsible to install the AUP Windows Service. During the installation of this service the path of our main exe will be registered as a trusted path in the AUP service. In the registry on each PC we can see check this by looking under KineticJump/AppLifeUpdate/ServiceKeys. All future updates run without a problem.

The problem arrises when we try to install a second client. At our company we have a test environment and a deploy environemnt (an imitation of a production environment).
The first isntalled client on our test PC's gets it AUP packages from the test environment webserver. When we now try to install a second client next to the other one, the setup itself works like it should be... that's what we initially thought. When an update becomes available on the deploy environment, our main application sees that there is an update available but we get the error as posted in the initial post.

We examined this further and noticed that in the registry only the first client is registered as a trusted update location. The second client, which gets it AUP packages from the deploy environment, is not registered as a trusted update location. The AUP Windows service is trying to tell us that the location of our exe is not trusted.

We also have a clue why this is happening but aren't shure: in our MSI project we use the provided MSM file (version 3.2.0.0. i think) which accepts a "Path" and a "Public Key" key. Those 2 keys and values are stored in the registry. During the installation of our 2 clients we use the same MSI. To by installing the second client, the AUP already is in place and does nothing anymore. Result: only the first installed client is registeren.
If we run the msi in "repair" mode, we overwrite the settings of our first client in the registry. That way the second client can update itself but the first one now gets the error. Why overwrite, probably because the "UpgradeCode" key is used as name for the Service Key in the registy.

If reusing the "UpgradeCode" key is the problem, we don't have a decent solution, the only not decent solution are 2 different MSIs... .

In real life we will also have a situation like this. At our customers site there will be a test environment and a production environment. Our customers probably want for both environments the auto update mechanism so on each client 2 clients must be installed.

Any ideas how to solve this?

Thx!

YvesR
#4 Posted : Thursday, August 18, 2011 4:32:07 AM
Rank: Member
Groups: Member

Joined: 4/27/2011
Posts: 14
Location: Hasselt, Belgium
Just to make my previous post a bit shorter: is it possible to add more than 1 executable path to the list of registered update locations known by the AppLife Update service?
brianh
#5 Posted : Thursday, August 18, 2011 5:27:32 AM
Rank: Administration
Groups: Member, Administration

Joined: 5/24/2007
Posts: 362
Location: Minnesota

Hello,

Absolutely, mutliple exe paths can be registered with the service.  The service is a shared resource and multiple applications can utilize the service, providing they are properly registered.

 

I really dont understand your scenario.  You are using the same msi, installing side-by-side the same application in two different locations on the same pc?

 

The merge module properties adds the exe path and public key path that you provide under a key named after the msi upgrade code.  This is because the msi upgrade code never changes for the same application, and is available to the merge module.  That parent key name is arbitrary though.  The AppLife Update process will iterate all service keys looking for a match for the host executable path requesting to use the service.  You could add your registration keys through your main application msi, though this is rarely ever necessary, and I am not sure I understand why it would be necessary in your case.  If doing so might solve your issue, it is certainly a viable option.

Brian Haas
Kinetic Jump Software
YvesR
#6 Posted : Thursday, August 18, 2011 6:39:47 AM
Rank: Member
Groups: Member

Joined: 4/27/2011
Posts: 14
Location: Hasselt, Belgium
Hi Brian,

It is quite complicated so I understand the confusion. :-)

The MSI we build is only meant to install the AUP Windows Service. All the other actions are done via other actions in our AUP project (file copy, register dll's in the GAC, ... ). So the MSI probably will never change untill something important changes in the merge module from AUP. That's why we always use the same msi ;-)

The 2 clients each use a different configuration (e.g. other url's to do web service requests, ...). Our customers will have the same situation: most of the users only have a production client but application administrators will also have a client which uses a test environment. So 2 clients on the same machine.

After searching through the rest of the forum in found this post: http://www.kineticjump.c...vice-with-AppLife.aspx. Partly based on the installation path I manually add a Service Key and the necessary values (Path & Public Key) in the registry using 3 registry actions: 1 to check if the path is already registered. If not i create a new Key and add the 2 String value keys. After testing on a 32 bit XP and Win 7 this seems to do the trick :-)
brianh
#7 Posted : Thursday, August 18, 2011 6:47:25 AM
Rank: Administration
Groups: Member, Administration

Joined: 5/24/2007
Posts: 362
Location: Minnesota

I see.  You are using AppLife Update to actually "install" the main application. This gets you around the fact that an MSI will not let you install the same version of an application side-by-side.

 

The information in that forum post is what you need to add the necessary registry keys during an update.  Good to hear that you have found a solution.

Brian Haas
Kinetic Jump Software
mobilwave
#8 Posted : Tuesday, September 13, 2011 6:02:12 AM
Rank: Member
Groups: Member

Joined: 12/31/2010
Posts: 9
Location: Lisboa
Hi Adam,

 the controller version is 4.0.2.12.

The exception and inner exception:

Não foi possível iniciar o update installer. Verifique se o AppLife Update service está instalado e em execução.

   at Kjs.AppLife.Update.Controller.UpdateController.a(IList`1 A_0, String A_1, ApplyUpdateOptions A_2, String A_3, Boolean A_4, String A_5, Version A_6)

   at Kjs.AppLife.Update.Controller.UpdateController.a(UpdateController A_0, Guid A_1, ApplyUpdateOptions A_2, IList`1 A_3, Version A_4, UpdateElevationType A_5, Boolean A_6, String A_7, String A_8, Boolean A_9, IDictionary A_10)

   at Kjs.AppLife.Update.Controller.UpdateController.ApplyUpdate(ApplyUpdateOptions options, IDictionary initialSharedProperties)

   at Kjs.AppLife.Update.Controller.UpdateController.ApplyUpdate(ApplyUpdateOptions options)

   at TesteAppLife.Form1.verificaUpdateApp(Boolean DOCbaseR, String path, String Version)

 

 InnerException: Exception has been thrown by the target of an invocation.

   at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)

   at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)

   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)

   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)

   at System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams)

   at Kjs.AppLife.Update.Controller.UpdateController.a(IList`1 A_0, String A_1, ApplyUpdateOptions A_2, String A_3, Boolean A_4, String A_5, Version A_6)

Thanks.
Users browsing this topic
Guest
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.