But, we want to be able to use the SDK, which would allow us to act on device events already processed/smoothed by the SDK/3dConnexion drivers and that also conform to the settings in the 3dConnextion Properties Dialog.
So, my first question is:
Will there ever be .NET SDK support, and if so, when?
As an attempt of a workaround, i have attempted to access the SDK from C++ code that I call from my managed WPF app.
But, the call i make to SiOpenWinInit() always crashes!
In my WPF code, I get the HWND equivalent of my WPF main window with the following code:
Code: Select all
Window myWin = Application.Current.MainWindow; // App main window
IntPtr hwnd = IntPtr.Zero; // IntPtr variable to hold window handle
hwnd = new WindowInteropHelper(myWin).Handle; // get HWND equivalent from app main window
_mouseSDK = frameAcc.init3dMouseSDK( hwnd ); // pass window handle to C++
the init3dMouseSDK() method instantiates a C++ Mouse3dInterface class and calls the init() method(below)
that attempts to access 3dConnexion SDK:
Code: Select all
bool Mouse3dInterface::init( HWND hWnd )
{
if( SiInitialize() == SPW_DLL_LOAD_ERROR ) return false;
SiOpenWinInit( &deviceData_, hWnd ); // THIS ALWAYS CRASHES !!! ???
In the use case I've shown, does anyone have any ideas on why the call to SiOpenWinInit() would be crashing?
Has anyone else had success accessing SDK from WPF/.NET (via c++) ?
Are there other ways that anyone has been able to access the SDK from WPF/.NET ?
Thanks for reading!
Dave