Module: wine Branch: master Commit: 7392162ed1611e552fc6e40ab36cfd2d75c030c8 URL: http://source.winehq.org/git/wine.git/?a=commit;h=7392162ed1611e552fc6e40ab3...
Author: Aric Stewart aric@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 )