Hans Leidekker : msi: Implement MsiReinstallProductA/W.

Alexandre Julliard julliard at winehq.org
Tue Mar 24 09:02:00 CDT 2009


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

Author: Hans Leidekker <hans at codeweavers.com>
Date:   Tue Mar 24 10:25:34 2009 +0100

msi: Implement MsiReinstallProductA/W.

---

 dlls/msi/msi.c |   20 ++++++++++++++++----
 1 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/dlls/msi/msi.c b/dlls/msi/msi.c
index 2f2938c..445d135 100644
--- a/dlls/msi/msi.c
+++ b/dlls/msi/msi.c
@@ -249,14 +249,26 @@ UINT WINAPI MsiInstallProductW(LPCWSTR szPackagePath, LPCWSTR szCommandLine)
 
 UINT WINAPI MsiReinstallProductA(LPCSTR szProduct, DWORD dwReinstallMode)
 {
-    FIXME("%s %08x\n", debugstr_a(szProduct), dwReinstallMode);
-    return ERROR_CALL_NOT_IMPLEMENTED;
+    LPWSTR wszProduct;
+    UINT rc;
+
+    TRACE("%s %08x\n", debugstr_a(szProduct), dwReinstallMode);
+
+    wszProduct = strdupAtoW(szProduct);
+
+    rc = MsiReinstallProductW(wszProduct, dwReinstallMode);
+
+    msi_free(wszProduct);
+    return rc;
 }
 
 UINT WINAPI MsiReinstallProductW(LPCWSTR szProduct, DWORD dwReinstallMode)
 {
-    FIXME("%s %08x\n", debugstr_w(szProduct), dwReinstallMode);
-    return ERROR_CALL_NOT_IMPLEMENTED;
+    static const WCHAR szAll[] = {'A','L','L',0};
+
+    TRACE("%s %08x\n", debugstr_w(szProduct), dwReinstallMode);
+
+    return MsiReinstallFeatureW(szProduct, szAll, dwReinstallMode);
 }
 
 UINT WINAPI MsiApplyPatchA(LPCSTR szPatchPackage, LPCSTR szInstallPackage,




More information about the wine-cvs mailing list