3dxware 10, Disable application support

Questions and answers about 3Dconnexion devices on Windows.

Moderator: Moderators

Post Reply
spainman
Posts: 53
Joined: Mon Jun 04, 2007 8:58 am

3dxware 10, Disable application support

Post by spainman » Sun Jun 01, 2014 11:52 am

While it might be great for certain users to use the 3d-mouse in e.g. Firefox or Excel it interferes with my workflows!
For example when working in CAD I often need to alter model parameters in excel and the 3d-mouse then stops working in the CAD application, where I actually need it. Similar stuff happens in presentations...

What is the easiest way to disable the 3d-moude for certain applications? Or even better: Disable it for all but the one or two I select?

UtaSH
Moderator
Moderator
Posts: 3289
Joined: Mon Nov 27, 2006 10:34 am
Location: Munich, Germany
Contact:

Re: 3dxware 10, Disable application support

Post by UtaSH » Tue Jun 03, 2014 7:16 am

Hello spainman,

try the following: delete the file Excel.xml in the folder C:\Program Files\3Dconnexion\3DxWare\3DxWinCore64\Cfg (for a 64bit platform). To prevent the 3D mouse actions in Firefox delete Firefox.xml.

Which CAD applications do you use?

spainman
Posts: 53
Joined: Mon Jun 04, 2007 8:58 am

Re: 3dxware 10, Disable application support

Post by spainman » Tue Jun 03, 2014 11:10 am

Thank you very much! Problem solved!
I removed the profiles of all application that might run concurrently with the relevant CAD package and now the device keeps controlling the desired app regardless of the current focus.
You guys should consider adding a regular option in the UI to disable certain apps from taking over the input - would be really usefull.

spainman
Posts: 53
Joined: Mon Jun 04, 2007 8:58 am

Re: 3dxware 10, Disable application support

Post by spainman » Thu Aug 27, 2015 12:40 pm

Updated to 10.2.8 and the solution of deleting undesired profiles/xmls does not work anymore.
I can't express how annoying it is to fight completely unnecessary functionality (who really _needs_ a 3D mouse in Windows Explorer ?!!?) to get back actually required functionality (retain control of the model regardless of having the keyboard/mouse focus in a different, non-3D application)! At least please spend a day into adding some options to the UI to allow the user to select desired application support instead of spending all time adding more and more superfluous xml's for applications that require 3d-mouse support as much as an Eskimo needs a freezer. Sorry for the rant... but I can't help it :roll:

Same problem as described in the initial post - I would be grateful for a simple solution.
I just need the 3D mouse in the CAD package and I really, really need to keep the input focus of the 3d mouse towards the model regardless of browsing files, entering data in excel, doing background stuff in a presentation etc.

Thanks in advance

spainman
Posts: 53
Joined: Mon Jun 04, 2007 8:58 am

Re: 3dxware 10, Disable application support

Post by spainman » Sat Sep 05, 2015 10:13 am

So should I expect any kind of support on this?

spainman
Posts: 53
Joined: Mon Jun 04, 2007 8:58 am

Re: 3dxware 10, Disable application support

Post by spainman » Wed Nov 04, 2015 11:27 am

Bump...

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

Re: 3dxware 10, Disable application support

Post by jwick » Fri Nov 06, 2015 2:39 am

If you only have one CAD app, you can add a Hard Grab to the Cfg for that app. When that app is running, the driver will only send events to that app, regardless of keyboard focus.

For example, for the jet demo, add:

Code: Select all

  <AppInfo>
  ...
  </AppInfo>
  <CfgProperties>
    <InheritsFrom>STR_JET</InheritsFrom>
    <Access/>
    <Grab>Hard</Grab>
  </CfgProperties>
  ...
to the user cfg (in %appdata%/3Dconnexion/3DxWare/Cfg).

I'm not sure what would happen if you tried to do this for more than one app at the same time.

wogo
Posts: 1
Joined: Wed Aug 10, 2016 1:37 am

Re: 3dxware 10, Disable application support

Post by wogo » Wed Aug 10, 2016 1:41 am

Hi jwick,

that did the trick - adding <Grab>Hard</Grab> to UGSNX.xml (Siemens NX) works perfectly for us.

Best regards
Wolfgang

yepmeagain
Posts: 1
Joined: Sat Dec 31, 2016 8:34 am

Re: 3dxware 10, Disable application support

Post by yepmeagain » Sat Dec 31, 2016 8:47 am

Hello,

I need the same "hard target lock" in Solidworks 2016 64bit.
I added

<CfgProperties>
<InheritsFrom>STR_SOLIDWORKS</InheritsFrom>
<Access/>
<Grab>Hard</Grab>
</CfgProperties>


but it doesnt work at all for my spacenavigator.
Driver package installed = 3DxWare64_v10-4-8_r2486

Keerah
Posts: 10
Joined: Thu Feb 11, 2016 8:04 am
Location: Moscow
Contact:

Re: 3dxware 10, Disable application support

Post by Keerah » Wed Jan 04, 2017 2:49 pm

Not sure about it, but you can try to disable 3DconnexionCreateProcess_3DxService.exe item in Task scheduler

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

Re: 3dxware 10, Disable application support

Post by jwick » Thu Jan 05, 2017 3:04 am

You added these lines to your user (AppData) cfg file?

spainman
Posts: 53
Joined: Mon Jun 04, 2007 8:58 am

Re: 3dxware 10, Disable application support

Post by spainman » Wed Jan 24, 2018 10:27 am

Okay, so with the current version <Grab> doesn't work anymore. This is so INCREDIBLY ANNOYING!!!

Now even the command line scrolls with the 3d mouse. Really? Who needs this? What is the idea?

There is 3d software that works in conjunction with other tools e.g. a command line, parameter table in excel, python...
Please let us opt in supported software in the ui or at least allow us to just dump every single xml but the one or two that we really need! Right now the 3dxservice.exe doesn't even start when e.g. desktop.xml is missing.

You are basically hindering serious users from just using the 3d mouse in 3d software without obstacles in favor of completely unnecessary BS!
I'm sure this is beating a dead horse... but anyway... help would be appreciated.

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

Re: 3dxware 10, Disable application support

Post by jwick » Thu Jan 25, 2018 1:28 am

The driver design is opt-in. I was requested to add a default for all other applications. I tried to do it in such a way that it can be reverted. It would be nice to have this in the GUI.... (not my call).

Another user had success removing 2D app support by deleting (from %PROGRAMFILES%/3Dconnexion/3DxWare/3DxWinCore64/Cfg):
AppDefCfg_KMJ.xml
Chrome.xml
Explorer.xml
Explorer_Background.xml
Explorer_Tray.xml
InternetExplorer.xml
SearchAndCortana.xml
WindowsShellExperience.xml
Winword.xml
And any derivative of these in %APPDATA%/3Dconnexion/3DxWare/Cfg.

You do need the desktop.xml file, but you can set it up to do nothing (disable all the axes).

I looked at the Grab, at least in the next release (17.5.5). It seems to work as designed. It might depend on what you are trying to do. E.g., if you set a Hard Grab in NX, that is only used when NX is running. If NX is not running the driver will continue to switch to your other applications. That doesn't mean it isn't broken in the current release though. What behavior are you seeing?

spainman
Posts: 53
Joined: Mon Jun 04, 2007 8:58 am

Re: 3dxware 10, Disable application support

Post by spainman » Thu Jan 25, 2018 8:45 am

My observation is that regardless of grab nx looses the input focus in terms of rotation/translation. Also the 3dx UI announces the name of the application that has the focus.

The thing is that even when grab worked it didn't allow to switch between legit 3d apps. E.g. using the mouse in Fusion360 and NX depending on which one has the focus wasn't possible if nx and fusion had grab enabled.

Also having to mess around manually with the xml files is annoying to the point where I never ever updated the drivers. I just had to now because of a new machine installation.

As mentioned in the other thread regarding arbitrary device orientations, I'm taking another route now that involves injecting my own code into 3dxservice.exe and hooking win32 functions that you guys use to perform the foreground app detection and to read raw translation/rotation data.

I implemented an app white list functionality last night by overwriting GetGUIThreadInfo() and feeding you only pgui->hwndFocus for white listed apps. That seems to solve the issue but it's barely tested right now. You seem to evaluate the hwnd unter the cursor too, not sure if I will have to touch that too. But it's good enough for now...

Now I'm working on the device orientation thing. Still sniffing usb and monitoring your 3dxservice.exe. But it seems that hooking the overlapped readfile you do and intercepting and translating the seven byte records for rotation/translation(02..., 01....) before hiddev.dll should work just fine.

Anyway... lot's of work for things that would take less than 2 hours if I had the source available like you do :roll:

Post Reply