Hans Leidekker : msi: Set some missing system folder properties.

Alexandre Julliard julliard at winehq.org
Fri Sep 24 11:43:47 CDT 2010


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

Author: Hans Leidekker <hans at codeweavers.com>
Date:   Fri Sep 24 17:09:38 2010 +0200

msi: Set some missing system folder properties.

---

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

diff --git a/dlls/msi/package.c b/dlls/msi/package.c
index 9ca344a..749018c 100644
--- a/dlls/msi/package.c
+++ b/dlls/msi/package.c
@@ -711,6 +711,9 @@ static VOID set_installer_properties(MSIPACKAGE *package)
     static const WCHAR szSystemLangID[] = {'S','y','s','t','e','m','L','a','n','g','u','a','g','e','I','D',0};
     static const WCHAR szProductState[] = {'P','r','o','d','u','c','t','S','t','a','t','e',0};
     static const WCHAR szLogonUser[] = {'L','o','g','o','n','U','s','e','r',0};
+    static const WCHAR szNetHoodFolder[] = {'N','e','t','H','o','o','d','F','o','l','d','e','r',0};
+    static const WCHAR szPrintHoodFolder[] = {'P','r','i','n','t','H','o','o','d','F','o','l','d','e','r',0};
+    static const WCHAR szRecentFolder[] = {'R','e','c','e','n','t','F','o','l','d','e','r',0};
 
     /*
      * Other things that probably should be set:
@@ -761,6 +764,7 @@ static VOID set_installer_properties(MSIPACKAGE *package)
     strcatW(pth, szBackSlash);
     msi_set_property(package->db, DF, pth);
 
+    /* FIXME: set to AllUsers profile path if ALLUSERS is set */
     SHGetFolderPathW(NULL,CSIDL_PROGRAMS,NULL,0,pth);
     strcatW(pth, szBackSlash);
     msi_set_property(package->db, PMF, pth);
@@ -794,6 +798,18 @@ static VOID set_installer_properties(MSIPACKAGE *package)
     strcatW(pth, szBackSlash);
     msi_set_property(package->db, WF, pth);
     
+    SHGetFolderPathW(NULL, CSIDL_PRINTHOOD, NULL, 0, pth);
+    strcatW(pth, szBackSlash);
+    msi_set_property(package->db, szPrintHoodFolder, pth);
+
+    SHGetFolderPathW(NULL, CSIDL_NETHOOD, NULL, 0, pth);
+    strcatW(pth, szBackSlash);
+    msi_set_property(package->db, szNetHoodFolder, pth);
+
+    SHGetFolderPathW(NULL, CSIDL_RECENT, NULL, 0, pth);
+    strcatW(pth, szBackSlash);
+    msi_set_property(package->db, szRecentFolder, pth);
+
     /* Physical Memory is specified in MB. Using total amount. */
     msex.dwLength = sizeof(msex);
     GlobalMemoryStatusEx( &msex );




More information about the wine-cvs mailing list