EaseReader gives
fixme:amstream:IAMMultiMediaStreamImpl_Initialize
Peter Åstrand
astrand at cendio.se
Wed Mar 1 03:50:14 CST 2006
On Thu, 26 Jan 2006, Peter Åstrand wrote:
> Hi. I'm trying to get the EaseReader application
> (http://www.dolphinaudiopublishing.com/products/EaseReader/) running in Wine.
> By using the native oleacc, oleaut32 and rpcrt4, it's now actually possible
> to start the application. The "self voicing" mode also works: The application
> "speaks", for example when hovering above menu choices. Listening to the
> actual DAISY book does not work, however. I get:
>
> fixme:imm:ImmGetContext (0x10136): stub
> fixme:imm:ImmGetContext (0x10136): stub
> fixme:amstream:IAMMultiMediaStreamImpl_QueryInterface (0x7a4fdc50/0x7a4fdc50)->({bebe595c-9a6f-11d0-8fde-00c04fd9189d},0x7fc6e968)
> fixme:amstream:IAMMultiMediaStreamImpl_Initialize (0x7a4fdc50/0x7a4fdc50)->(0,1,(nil)) partial stub!
> fixme:amstream:IAMMultiMediaStreamImpl_AddMediaStream (0x7a4fdc50/0x7a4fdc50)->((nil),0x4b0d3200,0,(nil)) partial stub!
> fixme:amstream:IAMMultiMediaStreamImpl_OpenFile (0x7a4fdc50/0x7a4fdc50)->(L"c:\\program files\\easereader demo\\help\\22_highlig.mp3",8) stub!
It seems like the main problem is the IAMMultiMediaStreamImpl_OpenFile
stub. I've tried a quick-n-dirty hack: Just calling ShellExecute from
IAMMultiMediaStreamImpl_OpenFile. See the patch below. After installing
Winamp, this actually works (but stop/seek etc doesn't work, of course).
So: Now I'm wondering: How difficult would it be to properly implement
IAMMultiMediaStreamImpl_OpenFile?
Best Regards,
Peter Åstrand
diff -u -r1.12 amstream.c
--- amstream.c 7 Nov 2005 16:38:48 -0000 1.12
+++ amstream.c 1 Mar 2006 09:45:06 -0000
@@ -28,6 +28,7 @@
#include "winbase.h"
#include "wingdi.h"
+#include "shellapi.h"
#include "amstream_private.h"
#include "amstream.h"
@@ -284,6 +285,12 @@
FIXME("(%p/%p)->(%s,%lx) stub!\n", This, iface, debugstr_w(pszFileName), dwFlags);
+ if (dwFlags & AMMSF_RUN) {
+ static const WCHAR verbW[] = {'o', 'p', 'e', 'n', 0};
+ ShellExecuteW(NULL, verbW, pszFileName, NULL, NULL, SW_SHOWNORMAL);
+ return S_OK;
+ }
+
return E_NOTIMPL;
}
--
Peter Åstrand ThinLinc Chief Developer
Cendio http://www.cendio.se
Teknikringen 3
583 30 Linköping Phone: +46-13-21 46 00
More information about the wine-devel
mailing list