Application configuration on deploy

Post questions, comments and feedback to our 3Dconnexion Windows Development Team.

Moderator: Moderators

Post Reply
dgbaur
Posts: 2
Joined: Mon Oct 15, 2018 6:42 am

Application configuration on deploy

Post by dgbaur » Mon Jul 15, 2019 9:51 am

I wish to deploy an application that uses the space mouse device. Currently each user is having to go through the 3D connection property page to assign button to functions.

What is the proper way for me to create initial default bindings when my application is installed? Do I just place config files in appropriate directories? Is there a system wide location so each
User gets the default?

I’d be happy to write a separate program to do so if necessary.

Thanks

jwick
Moderator
Moderator
Posts: 2539
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: Application configuration on deploy

Post by jwick » Mon Jul 15, 2019 2:20 pm

What application?
In general you can deploy a default cfg file in %PROGRAMDATA%\3Dconnexion\3DxWare\Cfg to override the defaults we ship (in ProgramFiles).
Some applications don't work very well with that mechanism.

dgbaur
Posts: 2
Joined: Mon Oct 15, 2018 6:42 am

Re: Application configuration on deploy

Post by dgbaur » Tue Jul 16, 2019 1:51 pm

Our application is called KAOSOpticalGUI.

Out application creates an ActionCache defining our function set and then we can use the 3DConnexion Property page to create an application XML file with the button to function binding in my user account AppData directory.

I have copied this generated file to the %PROGRAMDATA%\3Dconnexion\3DxWare\Cfg on a different system in hopes that it will pick up that configuration. That didn't work. The user had to go into the 3Dconnexion property page again and re bind the commands creating a new config file in the AppData/Roaming/3Dconnexion/3DxWare/Cfg directory..

Also, every time the application is run, the ActionCache is written to disk as a set of XML files in the AppData/Local/3Dconnexion/3DxWare/Cfg/Ext directory. I would guess that there was a place to put these files so that the driver could pick them up and define the ActionCache for the files.

jwick
Moderator
Moderator
Posts: 2539
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: Application configuration on deploy

Post by jwick » Thu Jul 18, 2019 5:53 am

That's nice that you are using the action interface for the commands and icons. It is very useful. Those files are expected to be recreated every time the app is run. But [in recent driver builds] default icon artwork is saved in the cfg file so the cfg file should be valid before the application re-downloads all those files. If different versions of the application with different actions are run, that should straighten itself out once the application has refreshed the cache.

You can copy your AppData file to a user's machine and you will both be at the same level.
There is an export function in the GUI to help you do this, but it is just a file copy.
But if the user hits Reset to Default, they lose everything. That's not ideal.

To adjust the defaults you need to create a default cfg file and put it in ProgramData. The user file (AppData) is not exactly a default file - it says default=false at the top. The differences are minor. I can help you to convert your user file to a proper default file. Maybe we should do that offline. Please sign up as a developer on our web page, then we can trade email (there's a support email address there).

Also I am changing the format of that file in the next release (10.6.1). It's a small change, but it means users files derived from the old version (10.6.0) ProgramData files won't work with ProgramData default files from the new version.

Post Reply