Aric Stewart : setupapi: Implement pSetupInstallCatalog.

Alexandre Julliard julliard at winehq.org
Thu Jan 29 09:14:45 CST 2009


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

Author: Aric Stewart <aric at codeweavers.com>
Date:   Wed Jan 28 09:21:46 2009 -0600

setupapi: Implement pSetupInstallCatalog.

---

 dlls/setupapi/misc.c |   23 +++++++++++++++++++++--
 1 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/dlls/setupapi/misc.c b/dlls/setupapi/misc.c
index 6c0f68a..63320e6 100644
--- a/dlls/setupapi/misc.c
+++ b/dlls/setupapi/misc.c
@@ -1127,8 +1127,27 @@ DWORD WINAPI InstallCatalog( LPCSTR catalog, LPCSTR basename, LPSTR fullname )
  */
 DWORD WINAPI pSetupInstallCatalog( LPCWSTR catalog, LPCWSTR basename, LPWSTR fullname )
 {
-    FIXME("%s, %s, %p\n", debugstr_w(catalog), debugstr_w(basename), fullname);
-    return 0;
+    HCATADMIN admin;
+    HCATINFO cat;
+
+    TRACE ("%s, %s, %p\n", debugstr_w(catalog), debugstr_w(basename), fullname);
+
+    if (!CryptCATAdminAcquireContext(&admin,NULL,0))
+        return GetLastError();
+
+    if (!(cat = CryptCATAdminAddCatalog( admin, (PWSTR)catalog, (PWSTR)basename, 0 )))
+    {
+        DWORD rc = GetLastError();
+        CryptCATAdminReleaseContext(admin, 0);
+        return rc;
+    }
+    CryptCATAdminReleaseCatalogContext(admin, cat, 0);
+    CryptCATAdminReleaseContext(admin,0);
+
+    if (fullname)
+        FIXME("not returning full installed catalog path\n");
+
+    return NO_ERROR;
 }
 
 static UINT detect_compression_type( LPCWSTR file )




More information about the wine-cvs mailing list