[FEATURE-1067] Vision Client Launcher Version Command

Is there a batch command I can run that will tell me the version of the Vision Client Launcher I have installed?

Not directly. It looks like if you explode the .exe (or whatever native file) you could read the Launcher.Version from the launchercommon.properties file, but that may be more trouble than it’s wroth.

I was thinking I could make a batch script that would check if the vision client launcher was installed and if not silently install it then launch. If we upgrade our server we would want to then upgrade the launcher, but if it sees the launcher already exists it will not install the new version. Any suggestions on how I could tell if the user needs a new version of the client installed?

I don think I want to install the vision client launcher every time they launch it, but maybe that is what you guys recommend.

8.0 and later client launchers should already handle this, assuming this is what you are talking about:
designer-update

This is showing the designer launcher, but the vision client launcher does the same thing.

When did you get that message? I installed Vision Client Launcher 8.0.11 and when I launched it did not say anything about a new version. Then I launched a project against a gateway that is running 8.0.16 and it did not say anything about a version difference.

Is it not good practice to be running the Vision Client Launcher at the same or higher version of the gateway? I am trying to think about how we can push out new versions of the Vision Client Launcher before we upgrade our gateway without having to tell people to go download it.

That version update check and dialog wasn’t introduced until 8.0.13.

I just installed Vision Client Launcher 1.0.15 and launched a project against a 8.0.16 gateway and I still do not see any prompts about upgrading the Vision Client Launcher.

Would it be a big ask to have a command line parameter to visionclientlauncher.exe that would give the version? That way I can just install it silently and users do not have to be bothered about upgrading something they no nothing about.

I don’t think this is an unreasonable request. Ill have to look into the implementation details for this but I think its doable without a lot of effort. Ill open a ticket for this feature. Im assuming for nix --version or -v works and for windows /VERSION?

Those parameters sound fine with me. Thanks.

Is there a projected time line for this feature? Thanks.

No, but I’ll add another note on the ticket and maybe that team will bump the priority.

After looking at this thread again. How does the designer know that there is a new version available? Could I just leverage that same way for my purpose?

designer-update

The launcher calls <gatewayAddress>/system/gwinfo and checks if the launcherApiVersion is different from its own version. I don’t think that would be helpful for what you’re trying to do.

How does it call <gatewayAddress>/system/gwinfo? is that a parameter to visionclientlauncher.exe? is that a command inside the vision client launcher. I was hoping there was something I could call from the windows command line that would tell me what version a gateway is on.

It’s an HTTP request.

I think this might actually work. In the response there is the version of gateway. Is there a certain way I can do the request so I can get an object that is easy to work with, possibly a json object? I did a rest method request and got back this string

ContextStatus=RUNNING;GatewayAddress=192.168.1.194:8088:8043;PlatformName=Ignition-10SwisherX64;Version=8.1.7;PlatformEdition=;Plugins=;AllowDesignerSSO=false;RedundancyStatus=Independent;RedundantState=Good;RedundantNodeActiveStatus=Active;RedundantBackupAddresses=;OS=Windows 10;RuntimeVersion=11.0.11;RequireSsl=false;launcherApiVersion=4;UseCondensedDialogFont=false;

No, the semicolon delimited format is what we’ve been using for a decade, so it’s safe to use a fairly naive parse-by-delimiting strategy.

I’m looking into a very similar project involving mass deployment of the launcher across the network. Silently updating the launcher whenever there is an update would be nice so users would not have to go to the gateway. I’m planning on putting a batch file to run on logon to accomplish this, but would like to only run the installer when an update is available. Two questions about accomplishing this:

  • I currently have the installer executable sitting on a network drive so every PC can access it and silently run it. However, every time the launcher has an update, would the installer need to get redownloaded off the gateway?

  • Where can I access the version of the local client launcher install? I’m aware of the launcherApiVersion on the gateway, but where is the version it’s comparing to?

It seems your making this out to be more complicated than it needed to be. The launcher only updates its version when you update the gateway. We use standard IT software deployment tools to push out the new version to all our client PCs after we update the GW.

1 Like

Ah that makes sense. We went through a series of upgrades to 8.1 recently. Our dev instance stepped through a few 8.1 versions which prompted a couple launcher updates. Due to being new to 8, I thought the launcher was being independently updated. In that case, we can just force a fresh install script when we update. Thanks.