ImmAssociateContextEx missing
Jesse Allen
uh_ja at gmx.net
Tue Mar 2 18:38:05 CST 2004
Hi,
I have noticed that when you load up Warcraft III, and then quit the game, that
it will pop up with a messagebox error message complaining about a memory
location, 0xdeadbeef. I have also noticed this message:
err:win32:PE_fixup_imports No implementation for
imm32.dll.2(ImmAssociateContextEx) imported from C:\war3\war3.exe, setting to
0xdeadbeef
I looked for ImmAssociateContextEx in imm32, and its not there, not even in the
imm32.spec file.
I implemented a stub for ImmAssociateContextEx, and then ran the game. It now
comes up with my stub message upon exiting the game:
fixme:imm:ImmAssociateContextEx (0x20021, (nil), 16): stub
So apparently war3.exe has a reference to ImmAssociateContextEx, and detects
the bad address, and immediately exits with an error. Applying the patch
allows the game to exit normally.
I have the patch attached. Any comments?
Jesse
--- wine/dlls/imm32/imm.c 2004-03-02 13:55:57.000000000 -0700
+++ wine-new/dlls/imm32/imm.c 2004-03-02 16:49:23.000000000 -0700
@@ -255,6 +255,15 @@
}
/***********************************************************************
+ * ImmAssociateContextEx (IMM32.@)
+ */
+BOOL WINAPI ImmAssociateContextEx(HWND hWnd, HIMC hIMC, DWORD dwFlags)
+{
+ FIXME("(%p, %p, %ld): stub\n", hWnd, hIMC, dwFlags);
+ return FALSE;
+}
+
+/***********************************************************************
* ImmConfigureIMEA (IMM32.@)
*/
BOOL WINAPI ImmConfigureIMEA(
--- wine/dlls/imm32/imm32.spec 2004-02-02 17:12:03.000000000 -0700
+++ wine-new/dlls/imm32/imm32.spec 2004-03-02 16:21:47.000000000 -0700
@@ -1,4 +1,5 @@
@ stdcall ImmAssociateContext(long long)
+@ stdcall ImmAssociateContextEx(long long long)
@ stdcall ImmConfigureIMEA(long long long ptr)
@ stdcall ImmConfigureIMEW(long long long ptr)
@ stdcall ImmCreateContext()
More information about the wine-devel
mailing list