http://bugs.winehq.org/show_bug.cgi?id=20354
--- Comment #7 from Damjan Jovanovic damjan.jov@gmail.com 2009-10-21 11:03:54 --- Hello again
Well on Saturday I finally found some free time and got hold of a Platform SDK and started writing up a wia.h for Wine, only to discover that IWiaDevMgr (1) needs numerous other interfaces, and (2) is hosted in an out of process COM server.
Now (1) would just be more work, but (2) makes the entire wia.h useless, since both wia.h and the inter-process marshaling code needs to be generated by widl (Wine's "midl") from a wia.idl, something I've never done before :-).
After starting on wia.idl, I noticed the interfaces just needed more and more other interfaces, and a few nights later I gave up on that approach too, because I realized that if IWiaDevMgr is just a stub, the other interfaces can be empty, since they'll never be used.
So now I'm busy compiling Wine with the second wia.idl and next I'll have to try make sti.dll play along as a proxy like it does on Windows and marshal to some WIA DLL that is hosted by svchost.exe on Windows (AFAIK only 1 other Wine DLL does that, eek!). Then, which is hopefully tomorrow or soon after, I can send you a patch for testing.