Thanks for the help, guys. I didn't mess with this at all over the long weekend, but I'm back in the office and attempting to compile it with the suggested corrections. ... Well, it just threw an error and aborted the install. Code: gcc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body -Wstrict-prototypes -Wtype-limits -Wwrite-strings -Wpointer-arith -Wlogical-op -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0 -o phone.o phone.c phone.c:231:51: error: expected declaration specifiers or ?...? before ?LPPHONEMESSAGE? phone.c: In function ?phoneGetMessage?: phone.c:233:1: error: ?lpMessage? undeclared (first use in this function) phone.c:233:1: note: each undeclared identifier is reported only once for each function it appears in make[1]: *** [phone.o] Error 1 make[1]: Leaving directory `/home/pspicer/temp/wine-1.3.27/dlls/tapi32' make: *** [dlls/tapi32] Error 2 Compilation failed, aborting install. Here's the modified patch.dff file I used: Code: diff --git a/dlls/tapi32/phone.c b/dlls/tapi32/phone.c index 994d787..662d8e8 100644 --- a/dlls/tapi32/phone.c +++ b/dlls/tapi32/phone.c @@ -205,6 +205,37 @@ DWORD WINAPI phoneInitialize(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONE } /*********************************************************************** + * phoneInitializeiExA (TAPI32.@) + */ +DWORD WINAPI phoneInitializeExA(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCSTR lpszAppName, LPDWORD lpdwNumDevs, LPDWORD lpdwAPIVersion, LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams) +{ + FIXME("(%p, %p, %p, %s, %p, %p, %p): stub.\n", lphPhoneApp, hInstance, lpfnCallback, lpszAppName, lpdwNumDevs, lpdwAPIVersion, lpPhoneInitializeExParams); + *lpdwNumDevs = 0; + return 0; +} + +/*********************************************************************** + * phoneInitializeiExW (TAPI32.@) + */ +DWORD WINAPI phoneInitializeExW(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCWSTR lpszAppName, LPDWORD lpdwNumDevs, LPDWORD lpdwAPIVersion, LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams) +{ + FIXME("(%p, %p, %p, %s, %p, %p, %p): stub.\n", lphPhoneApp, hInstance, lpfnCallback, debugstr_w(lpszAppName), lpdwNumDevs, lpdwAPIVersion, lpPhoneInitializeExParams); + *lpdwNumDevs = 0; + return 0; +} + + +/*********************************************************************** + * phoneGetMessage (TAPI32.@) + */ +DWORD WINAPI phoneGetMessage(HPHONEAPP hPhoneApp, LPPHONEMESSAGE lpMessage, DWORD dwTimeout) +{ + FIXME("(%p, %p, %08x): stub.\n", hPhoneApp, lpMessage, dwTimeout); + return 0; +} + + +/*********************************************************************** * phoneNegotiateAPIVersion (TAPI32.@) */ DWORD WINAPI phoneNegotiateAPIVersion(HPHONEAPP hPhoneApp, DWORD dwDeviceID, DWORD dwAPILowVersion, DWORD dwAPIHighVersion, LPDWORD lpdwAPIVersion, LPPHONEEXTENSIONID lpExtensionID) diff --git a/dlls/tapi32/tapi32.spec b/dlls/tapi32/tapi32.spec index ce7a04d..47f30ba 100644 --- a/dlls/tapi32/tapi32.spec +++ b/dlls/tapi32/tapi32.spec @@ -144,6 +144,9 @@ @ stdcall phoneGetStatusMessages(long ptr ptr ptr) @ stdcall phoneGetVolume(long long ptr) @ stdcall phoneInitialize(ptr long ptr str ptr) +@ stdcall phoneInitializeExA(ptr long ptr str ptr ptr ptr) +@ stdcall phoneInitializeExW(ptr long ptr str ptr ptr ptr) +@ stdcall phoneGetMessage(long ptr long) @ stdcall phoneNegotiateAPIVersion(long long long long ptr ptr) @ stdcall phoneNegotiateExtVersion(long long long long long ptr) @ stdcall phoneOpen(long long ptr long long long long) diff --git a/include/tapi.h b/include/tapi.h index ca2c4c8..73b699e 100644 --- a/include/tapi.h +++ b/include/tapi.h @@ -846,6 +846,18 @@ typedef struct phonestatus_tag { DWORD dwDevSpecificOffset; } PHONESTATUS, *LPPHONESTATUS; +typedef struct phoneinitializeexparams_tag { + DWORD dwTotalSize; + DWORD dwNeededSize; + DWORD dwUsedSize; + DWORD dwOptions; + union { + HANDLE hEvent; + HANDLE hCompletionPort; + } Handles; + DWORD dwCompletionKey; +} PHONEINITIALIZEEXPARAMS, *LPPHONEINITIALIZEEXPARAMS; + typedef void (CALLBACK *PHONECALLBACK)(HANDLE, DWORD, DWORD, DWORD, DWORD, DWORD); typedef struct varstring_tag {