Some stub implementations for msi.dll

Mike McCormack mike at codeweavers.com
Thu Oct 30 15:55:23 CST 2003


ChangeLog:
* Some stub implementations for msi.dll
-------------- next part --------------
Index: dlls/msi/msi.c
===================================================================
RCS file: /home/wine/wine/dlls/msi/msi.c,v
retrieving revision 1.5
diff -u -r1.5 msi.c
--- dlls/msi/msi.c	27 Sep 2003 02:24:32 -0000	1.5
+++ dlls/msi/msi.c	29 Oct 2003 08:19:24 -0000
@@ -222,8 +222,25 @@
 
 UINT WINAPI MsiOpenProductA(LPCSTR szProduct, MSIHANDLE *phProduct)
 {
-    FIXME("%s %p\n",debugstr_a(szProduct), phProduct);
-    return ERROR_CALL_NOT_IMPLEMENTED;
+    UINT len, ret;
+    LPWSTR szwProd = NULL;
+
+    TRACE("%s %p\n",debugstr_a(szProduct), phProduct);
+
+    if( szProduct )
+    {
+        len = MultiByteToWideChar( CP_ACP, 0, szProduct, -1, NULL, 0 );
+        szwProd = HeapAlloc( GetProcessHeap(), 0, len * sizeof (WCHAR) );
+        if( szwProd )
+            MultiByteToWideChar( CP_ACP, 0, szProduct, -1, szwProd, len );
+    }
+
+    ret = MsiOpenProductW( szwProd, phProduct );
+
+    if( szwProd )
+        HeapFree( GetProcessHeap(), 0, szwProd );
+
+    return ret;
 }
 
 UINT WINAPI MsiOpenProductW(LPCWSTR szProduct, MSIHANDLE *phProduct)
@@ -718,6 +735,20 @@
   LPCWSTR szSignedObjectPath, DWORD dwFlags, PCCERT_CONTEXT* ppcCertContext, BYTE* pbHashData, DWORD* pcbHashData)
 {
     FIXME("%s 0x%08lx %p %p %p\n", debugstr_w(szSignedObjectPath), dwFlags, ppcCertContext, pbHashData, pcbHashData);
+    return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+UINT WINAPI MsiGetProductPropertyA( MSIHANDLE hProduct, LPCSTR szProperty,
+                                    LPSTR szValue, DWORD *pccbValue )
+{
+    FIXME("%ld %s %p %p\n", hProduct, debugstr_a(szProperty), szValue, pccbValue);
+    return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+UINT WINAPI MsiGetProductPropertyW( MSIHANDLE hProduct, LPCWSTR szProperty,
+                                    LPWSTR szValue, DWORD *pccbValue )
+{
+    FIXME("%ld %s %p %p\n", hProduct, debugstr_w(szProperty), szValue, pccbValue);
     return ERROR_CALL_NOT_IMPLEMENTED;
 }
 
Index: dlls/msi/msi.spec
===================================================================
RCS file: /home/wine/wine/dlls/msi/msi.spec,v
retrieving revision 1.5
diff -u -r1.5 msi.spec
--- dlls/msi/msi.spec	14 Oct 2003 05:27:43 -0000	1.5
+++ dlls/msi/msi.spec	29 Oct 2003 08:19:24 -0000
@@ -47,15 +47,15 @@
 47 stub MsiEvaluateConditionW
 48 stub MsiGetLastErrorRecord
 49 stub MsiGetActiveDatabase
-50 stub MsiGetComponentStateA
-51 stub MsiGetComponentStateW
+50 stdcall MsiGetComponentStateA(long str ptr ptr)
+51 stdcall MsiGetComponentStateW(long wstr ptr ptr)
 52 stub MsiGetDatabaseState
 53 stub MsiGetFeatureCostA
 54 stub MsiGetFeatureCostW
 55 stub MsiGetFeatureInfoA
 56 stub MsiGetFeatureInfoW
-57 stub MsiGetFeatureStateA
-58 stub MsiGetFeatureStateW
+57 stdcall MsiGetFeatureStateA(long str ptr ptr)
+58 stdcall MsiGetFeatureStateW(long wstr ptr ptr)
 59 stub MsiGetFeatureUsageA
 60 stub MsiGetFeatureUsageW
 61 stub MsiGetFeatureValidStatesA
@@ -68,8 +68,8 @@
 68 stub MsiGetProductInfoFromScriptA
 69 stub MsiGetProductInfoFromScriptW
 70 stdcall MsiGetProductInfoW(wstr wstr wstr long)
-71 stub MsiGetProductPropertyA
-72 stub MsiGetProductPropertyW
+71 stdcall MsiGetProductPropertyA(long str ptr ptr)
+72 stdcall MsiGetProductPropertyW(long wstr ptr ptr)
 73 stub MsiGetPropertyA
 74 stub MsiGetPropertyW
 75 stub MsiGetSourcePathA
Index: dlls/msi/msiquery.c
===================================================================
RCS file: /home/wine/wine/dlls/msi/msiquery.c,v
retrieving revision 1.4
diff -u -r1.4 msiquery.c
--- dlls/msi/msiquery.c	27 Sep 2003 02:24:32 -0000	1.4
+++ dlls/msi/msiquery.c	29 Oct 2003 08:19:24 -0000
@@ -378,3 +378,32 @@
     FIXME("%ld %s %p\n", hdb, debugstr_w(table), rec);
     return ERROR_CALL_NOT_IMPLEMENTED;
 }
+
+UINT WINAPI MsiGetFeatureStateA(MSIHANDLE hInstall, LPSTR szFeature,
+                  INSTALLSTATE *piInstalled, INSTALLSTATE *piAction)
+{
+    FIXME("%ld %s %p %p\n", hInstall, debugstr_a(szFeature), piInstalled, piAction);
+    return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+UINT WINAPI MsiGetFeatureStateW(MSIHANDLE hInstall, LPWSTR szFeature,
+                  INSTALLSTATE *piInstalled, INSTALLSTATE *piAction)
+{
+    FIXME("%ld %s %p %p\n", hInstall, debugstr_w(szFeature), piInstalled, piAction);
+    return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+UINT WINAPI MsiGetComponentStateA(MSIHANDLE hInstall, LPSTR szFeature,
+                  INSTALLSTATE *piInstalled, INSTALLSTATE *piAction)
+{
+    FIXME("%ld %s %p %p\n", hInstall, debugstr_a(szFeature), piInstalled, piAction);
+    return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+UINT WINAPI MsiGetComponentStateW(MSIHANDLE hInstall, LPWSTR szFeature,
+                  INSTALLSTATE *piInstalled, INSTALLSTATE *piAction)
+{
+    FIXME("%ld %s %p %p\n", hInstall, debugstr_w(szFeature), piInstalled, piAction);
+    return ERROR_CALL_NOT_IMPLEMENTED;
+}
+


More information about the wine-patches mailing list