I need Button Config drop-down list explanations

Questions and answers about 3Dconnexion devices on Windows.

Moderator: Moderators

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

Post by jwick »

When you save something in the GUI, it is saved in %appdata%\3dconnexion\3dxware\profiles.

You can start with that .scg file, but you will need to change the EXECUTABLES entry to point to your executable.
lhmncantoni
Posts: 18
Joined: Wed May 28, 2008 11:35 am

Post by lhmncantoni »

Thank you again,

I'm using TDxInput, and within that I see the Device and ISimpleDevice interfaces. I need to use a method within the ISimpledevice interface, however, now matter what I try I cannot seem to declare an instance of either of those. I'm "using TDxInput" at the top of my class, it just says it "cannot create an instance of...."

Thanks in advance,
"Know something about eveyrthing, and everything about something."
jwick
Moderator
Moderator
Posts: 3341
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

I've put a C# example on our ftp site:

ftp:/ *** ***
login: ***
password: ***




Moderator Edit: the sample code is no longer available from the FTP service. Please contact 3Dconnexion API Support if you need further assistance.
lhmncantoni
Posts: 18
Joined: Wed May 28, 2008 11:35 am

Post by lhmncantoni »

jwick wrote:When you save something in the GUI, it is saved in %appdata%\3dconnexion\3dxware\profiles.

You can start with that .scg file, but you will need to change the EXECUTABLES entry to point to your executable.
What are you refering to here? Is there some sort of path within the profiles folder that needs to point to my executable that will be using the .scg files?

Do I need my profiles to point to my project or do I need my project to point to my profiles?

Thanks,
~Nick~
"Know something about eveyrthing, and everything about something."
lhmncantoni
Posts: 18
Joined: Wed May 28, 2008 11:35 am

Post by lhmncantoni »

Sorry for the double post, but I'm also running into this error when I try to use LoadPreferences:

"Could not load file or assembly 'Interop.TDxInput, Version 1.0.0.0, Cluture = neutral, PublicKeyToken = null' or one of its dependencies. The system could not find the file specified."

Thanks for any help you can offer on this,
~Nick~
"Know something about eveyrthing, and everything about something."
jwick
Moderator
Moderator
Posts: 3341
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

Hi Nick,

You need to create a .scg file for your application:

Go to c:\Program files\3dconnexion\3dconnexion 3dxsoftware\3dxware\en_us\profiles\default.

Copy any.scg NicksAppName.scg

Edit NicksAppName.scg with notepad.

Change EXECUTABLES={*.*}
to
EXECUTABLES={"NICKSAPPNAME.EXE"}
(This is how the driver links up this config file to your running executable.)

Change the APPLICATION_NAME="Any Application"
to
APPLICATION_NAME="Nicks Cool Application"
(This is the string that gets displayed to identify your application config. I think this is also the name that you supply to LoadPreferences if you have more than one configuration with the same EXECUTABLES entry. Do not use LoadPreferences if you do not have more than one scg file with the same EXECUTABLES entry.)

Save the file.

Now that you now have a configuration customized for your application, you have to restart the driver so it picks up the new file. BUT, before you do that:

The driver keeps the association between a specific config file and your executable name saved in the registry. Since you never had a customized config file for your application before, the driver has probably saved a less useful config file for your application. Goto HKCU/software/3dconnexion/3dxware/applications and delete the entry for your executable. Also go to %appdata%/3dconnexion/3dxware/profiles and delete whatever file that registry entry was pointing to.

Now restart the driver and bring your executable to the foreground. The driver should choose your new configuration when your application connects to the driver.

If you make changes to this .scg file via the 3DxWare GUI, the driver will automatically save your changes in %appdata%/3dconnexion/3dxware/profiles.


Jim
3Dx Software Development
lhmncantoni
Posts: 18
Joined: Wed May 28, 2008 11:35 am

Post by lhmncantoni »

Again, thank you so much. I've gotten everything to work now except one thing. You said you think the Application name is the string you pass into LoadPreferences() correct? For some reason i can't get that to work, so I guess I'm asking if you're certain that is what is supposed to be passed in or if it is something else like the "userXX.scg" file name or something else?

Thank you so much, you've been an amazing help,
~Nick~
"Know something about eveyrthing, and everything about something."
jwick
Moderator
Moderator
Posts: 3341
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

Yes, of course. Markus' post is correct. It's a qualification on the executable entry.
Post Reply