Forum Discussion
Trying to MSIX package LOB application that needs TWAIN access
So I think this isn't possible but I just wanted to ask.
I've a LOB application that needs to access TWAIN scanning devices.
How this works in a normal environment is that the TWAINDSM.dll (TWAIN Data source manager) is loaded from c:\windows\system32
This then scans the C:\Windows\twain_32 or C:\Windows\twain_64 depending on if the app is x86 or x64
The scanning manufacturers will have their TWAIN drivers installed to c:\windows\twain_32 (or 64) as subfolders and the TWAIN Data source manager scans these subfolders for available TWAIN devices that can be connected to.
All this breaks down in an MSIX environment because the container doesn't have access to C:\windows\twain_32\ManfactureDriverN folder
It can see the folders and when the TWAINDSM tries to initialize the driver it fails, most likely due to sandbox limitations.
Does anyone know of a solution to this, or apps like this will always need to stick to MSI packaging because of this limiation.
Thanks.
1 Reply
All this breaks down in an MSIX environment because the container doesn't have access to C:\windows\twain_32\ManfactureDriverN folder
Well, as written that isn't true. The app running in the MSIX container would have access to that folder, whether or not it is inside the package or on the native system.
More likely, you are attempting to install the twain driver as part of the package. The kernel cannot see your driver as MSIX does not support drivers of any kind being inside the package. If you treat the driver as an independent dependency, the driver may be installed natively and the application inside the MSIX container may then use it.
Make sense?