Has anyone tried implementing the Solid Edge APIs, particularly Jason's Nuget SE community packages, in a Windows 10 app? I was thinking of using the Revision Manager APIs in a UWP app.
They don't work currently as the target the .Net framework, but I was wondering if they could be recompiled or re-packaged some way to target UWP.
I saw this blog article recently that seems like a way that it might be possible, however my programming skill quickly runs out once you leave friendly C#/.Net!
There's also this article on MSDN which seems to do a similar kind of thing but it might need the Siemens guys to get involved...?
A few notes; if this was to work it would of course only target x86 (and not ARM) but UWP offers a potentially good way of distributing and updating apps even if not using the public store (i.e. use hidden apps in the store for distributing to your company, or even just side loading outside the store).
Everything that I've read so far doesn't look very promising in regards to using 3rd party COM components. For example, reading the MSDN article you noted, it says: "UWP Apps run in a protected environment, and as a result, many Win32, COM, and CRT API calls that might compromise the security of the platform are not allowed."
I also found this stackoverflow discussion. The responders seemed pretty adamant that the COM limitations would prevent him from porting his existing code to UWP. Again, I'm not an expert in this area as I have zero mobile development experience.
In addition, looking at your requirements of only targeting Revision Manager, I would say that it would make more sense to reference the COM type library directly from Visual Studio and let it generate you an Interop.RevisionManager.dll. I say this because if you compare the size of the Interop.RevisionManager.dll to my Interop.SolidEdge.dll, there is quite a big difference. A difference that I wouldn't think you'd want on a mobile device.
Interop.RevisionManager.dll 33 KB
Interop.SolidEdge.dll 3,411 KB
Those are my thoughts for now. I'm always open to new ideas and discussions.
I figured it wouldn't be trivial if was even possible at all! In that stackoverflow discussion they mention that the restrictions on sideloaded apps (i.e. installed directly on the machine, rather than distributed through the store) are looser, specifically for businesses to utilise existing code so there might be a way there.
Just as an aside, UWP is not 'mobile' as such, rather it's new(ish) common platform for targetting Windows 10 kernel based machines inc. Win 10 desktops and laptops, Windows Phone, XBox, Windows IOT etc. Developers can choose which architectures to target so it's perfectly reasonably to make and release an app that would never work on ARM based phones because they use x86/64 compiled dlls for example.
Anyway I was just curious if anyone had tried this before.