Fix some problems found by winapi_check.

diff --git a/dlls/rpcrt4/rpc_server.c b/dlls/rpcrt4/rpc_server.c
index e91305c..158545c 100644
--- a/dlls/rpcrt4/rpc_server.c
+++ b/dlls/rpcrt4/rpc_server.c
@@ -690,7 +690,7 @@
 /***********************************************************************
  *             I_RpcWindowProc (RPCRT4.@)
  */
-LONG WINAPI I_RpcWindowProc( HWND hWnd, UINT Message, WPARAM wParam, LPARAM lParam )
+UINT WINAPI I_RpcWindowProc( void *hWnd, UINT Message, UINT wParam, ULONG lParam )
 {
   FIXME( "(%p,%08x,%08x,%08lx): stub\n", hWnd, Message, wParam, lParam );
 
diff --git a/dlls/rpcrt4/rpcrt4.spec b/dlls/rpcrt4/rpcrt4.spec
index 44d6d9e..8ca2e83 100644
--- a/dlls/rpcrt4/rpcrt4.spec
+++ b/dlls/rpcrt4/rpcrt4.spec
@@ -481,8 +481,8 @@
 @ stub I_RpcBindingInqWireIdForSnego
 @ stub I_RpcBindingIsClientLocal
 @ stub I_RpcBindingToStaticStringBindingW
-@ stdcall I_RpcBindingSetAsync(ptr ptr long) I_RpcBindingSetAsync # win9x
-# NT version of I_RpcBindingSetAsync has 2 arguments, not 3
+@ stdcall I_RpcBindingSetAsync(ptr ptr) I_RpcBindingSetAsync # winnt
+# 9x version of I_RpcBindingSetAsync has 3 arguments, not 2
 @ stub I_RpcClearMutex
 @ stub I_RpcConnectionInqSockBuffSize
 @ stub I_RpcConnectionInqSockBuffSize2
diff --git a/include/rpcdce.h b/include/rpcdce.h
index 6fe15c7..3b0c16d 100644
--- a/include/rpcdce.h
+++ b/include/rpcdce.h
@@ -37,14 +37,14 @@
 {
   unsigned long Count;
   RPC_BINDING_HANDLE BindingH[1];
-} RPC_BINDING_VECTOR;
+} RPC_BINDING_VECTOR, *PRPC_BINDING_VECTOR;
 #define rpc_binding_vector_t RPC_BINDING_VECTOR
 
 typedef struct _UUID_VECTOR
 {
   unsigned long Count;
   UUID *Uuid[1];
-} UUID_VECTOR;
+} UUID_VECTOR, *PUUID_VECTOR;
 #define uuid_vector_t UUID_VECTOR
 
 typedef struct _RPC_IF_ID
@@ -144,11 +144,11 @@
   RpcEpResolveBinding( RPC_BINDING_HANDLE Binding, RPC_IF_HANDLE IfSpec );
 
 RPCRTAPI RPC_STATUS RPC_ENTRY
-  RpcEpRegisterA( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector,
-                  UUID_VECTOR* UuidVector, LPSTR Annotation );
+  RpcEpRegisterA( RPC_IF_HANDLE IfSpec, PRPC_BINDING_VECTOR BindingVector,
+                  PUUID_VECTOR UuidVector, LPSTR Annotation );
 RPCRTAPI RPC_STATUS RPC_ENTRY
-  RpcEpRegisterW( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector,
-                  UUID_VECTOR* UuidVector, LPWSTR Annotation );
+  RpcEpRegisterW( RPC_IF_HANDLE IfSpec, PRPC_BINDING_VECTOR BindingVector,
+                  PUUID_VECTOR UuidVector, LPWSTR Annotation );
 #define RpcEpRegister WINELIB_NAME_AW(RpcEpRegister)
 
 RPCRTAPI RPC_STATUS RPC_ENTRY
diff --git a/include/rpcdcep.h b/include/rpcdcep.h
index 8a319f9..cbea950 100644
--- a/include/rpcdcep.h
+++ b/include/rpcdcep.h
@@ -133,8 +133,8 @@
 RPCRTAPI RPC_STATUS RPC_ENTRY
   I_RpcSetThreadParams( int fClientFree, void* Context, void* hWndClient );
 
-RPCRTAPI LONG RPC_ENTRY
-  I_RpcWindowProc( HWND hWnd, UINT Message, WPARAM wParam, LPARAM lParam );
+RPCRTAPI UINT RPC_ENTRY
+  I_RpcWindowProc( void* hWnd, UINT Message, UINT wParam, ULONG lParam );
 
 /* WINNT */
 RPCRTAPI RPC_STATUS RPC_ENTRY