Alexandre Julliard : rpcrt4: Create the NumMethods key too when registering an interface.

Alexandre Julliard julliard at winehq.org
Mon Dec 1 07:34:01 CST 2008


Module: wine
Branch: master
Commit: 797ee403c1f35fd00ee50256abd483c2f8f7d5c1
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=797ee403c1f35fd00ee50256abd483c2f8f7d5c1

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Sat Nov 29 13:05:11 2008 +0100

rpcrt4: Create the NumMethods key too when registering an interface.

---

 dlls/rpcrt4/cpsf.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/dlls/rpcrt4/cpsf.c b/dlls/rpcrt4/cpsf.c
index e261422..bece899 100644
--- a/dlls/rpcrt4/cpsf.c
+++ b/dlls/rpcrt4/cpsf.c
@@ -223,6 +223,8 @@ HRESULT WINAPI NdrDllRegisterProxy(HMODULE hDll,
   static const WCHAR clsid32W[] = {'P','r','o','x','y','S','t','u','b','C','l','s','i','d','3','2',0};
   static const WCHAR interfaceW[] = {'I','n','t','e','r','f','a','c','e','\\',0};
   static const WCHAR psfactoryW[] = {'P','S','F','a','c','t','o','r','y','B','u','f','f','e','r',0};
+  static const WCHAR numformatW[] = {'%','u',0};
+  static const WCHAR nummethodsW[] = {'N','u','m','M','e','t','h','o','d','s',0};
   static const WCHAR inprocserverW[] = {'I','n','P','r','o','c','S','e','r','v','e','r','3','2',0};
   static const WCHAR threadingmodelW[] = {'T','h','r','e','a','d','i','n','g','M','o','d','e','l',0};
   WCHAR clsid[39], keyname[50], module[MAX_PATH];
@@ -245,9 +247,12 @@ HRESULT WINAPI NdrDllRegisterProxy(HMODULE hDll,
       strcpyW( keyname, interfaceW );
       format_clsid( keyname + strlenW(keyname), proxy->header.piid );
       if (RegCreateKeyW(HKEY_CLASSES_ROOT, keyname, &key) == ERROR_SUCCESS) {
+        WCHAR num[10];
         if (name)
           RegSetValueExA(key, NULL, 0, REG_SZ, (const BYTE *)name, strlen(name)+1);
         RegSetValueW( key, clsid32W, REG_SZ, clsid, 0 );
+        sprintfW(num, numformatW, proxy->header.DispatchTableCount);
+        RegSetValueW( key, nummethodsW, REG_SZ, num, 0 );
         RegCloseKey(key);
       }
     }




More information about the wine-cvs mailing list