Add the string constants located in msi.h and make use of them in
files.c and source.c.
This commit is contained in:
parent
18116dec24
commit
c6f155a5fd
|
@ -55,8 +55,6 @@ extern const WCHAR szRemoveDuplicateFiles[];
|
|||
extern const WCHAR szRemoveFiles[];
|
||||
|
||||
static const WCHAR cszTempFolder[]= {'T','e','m','p','F','o','l','d','e','r',0};
|
||||
static const WCHAR INSTALLPROPERTY_LASTUSEDSOURCE[] = {'L','a','s','t','U','s','e','d','S','o','u','r','c','e',0};
|
||||
static const WCHAR INSTALLPROPERTY_PACKAGENAME[] = {'P','a','c','k','a','g','e','N','a','m','e',0};
|
||||
|
||||
inline static UINT create_component_directory ( MSIPACKAGE* package, INT component)
|
||||
{
|
||||
|
@ -508,12 +506,12 @@ static UINT ready_media_for_file(MSIPACKAGE *package, int fileindex,
|
|||
MsiSourceListSetInfoW(package->ProductCode, NULL,
|
||||
MSIINSTALLCONTEXT_USERMANAGED,
|
||||
MSICODE_PRODUCT|MSISOURCETYPE_MEDIA,
|
||||
INSTALLPROPERTY_LASTUSEDSOURCE, last_path);
|
||||
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
|
||||
else
|
||||
MsiSourceListSetInfoW(package->ProductCode, NULL,
|
||||
MSIINSTALLCONTEXT_USERMANAGED,
|
||||
MSICODE_PRODUCT|MSISOURCETYPE_NETWORK,
|
||||
INSTALLPROPERTY_LASTUSEDSOURCE, last_path);
|
||||
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
|
||||
msiobj_release(&row->hdr);
|
||||
return rc;
|
||||
}
|
||||
|
@ -541,7 +539,7 @@ static UINT ready_media_for_file(MSIPACKAGE *package, int fileindex,
|
|||
MsiSourceListSetInfoW(package->ProductCode, NULL,
|
||||
MSIINSTALLCONTEXT_USERMANAGED,
|
||||
MSICODE_PRODUCT|MSISOURCETYPE_NETWORK,
|
||||
INSTALLPROPERTY_LASTUSEDSOURCE, path);
|
||||
INSTALLPROPERTY_LASTUSEDSOURCEstringW, path);
|
||||
|
||||
HeapFree(GetProcessHeap(),0,path);
|
||||
}
|
||||
|
@ -565,12 +563,12 @@ static UINT ready_media_for_file(MSIPACKAGE *package, int fileindex,
|
|||
MsiSourceListSetInfoW(package->ProductCode, NULL,
|
||||
MSIINSTALLCONTEXT_USERMANAGED,
|
||||
MSICODE_PRODUCT|MSISOURCETYPE_MEDIA,
|
||||
INSTALLPROPERTY_LASTUSEDSOURCE, last_path);
|
||||
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
|
||||
else
|
||||
MsiSourceListSetInfoW(package->ProductCode, NULL,
|
||||
MSIINSTALLCONTEXT_USERMANAGED,
|
||||
MSICODE_PRODUCT|MSISOURCETYPE_NETWORK,
|
||||
INSTALLPROPERTY_LASTUSEDSOURCE, last_path);
|
||||
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
|
||||
|
||||
/* extract the cab file into a folder in the temp folder */
|
||||
sz = MAX_PATH;
|
||||
|
@ -596,12 +594,12 @@ static UINT ready_media_for_file(MSIPACKAGE *package, int fileindex,
|
|||
MsiSourceListSetInfoW(package->ProductCode, NULL,
|
||||
MSIINSTALLCONTEXT_USERMANAGED,
|
||||
MSICODE_PRODUCT|MSISOURCETYPE_MEDIA,
|
||||
INSTALLPROPERTY_LASTUSEDSOURCE, last_path);
|
||||
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
|
||||
else
|
||||
MsiSourceListSetInfoW(package->ProductCode, NULL,
|
||||
MSIINSTALLCONTEXT_USERMANAGED,
|
||||
MSICODE_PRODUCT|MSISOURCETYPE_NETWORK,
|
||||
INSTALLPROPERTY_LASTUSEDSOURCE, last_path);
|
||||
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
|
||||
}
|
||||
set_file_source(package, file, comp, last_path);
|
||||
|
||||
|
@ -666,7 +664,7 @@ UINT ACTION_InstallFiles(MSIPACKAGE *package)
|
|||
MsiSourceListSetInfoW(package->ProductCode, NULL,
|
||||
MSIINSTALLCONTEXT_USERMANAGED,
|
||||
MSICODE_PRODUCT,
|
||||
INSTALLPROPERTY_PACKAGENAME, ptr);
|
||||
INSTALLPROPERTY_PACKAGENAMEstringW, ptr);
|
||||
}
|
||||
FIXME("Write DiskPrompt\n");
|
||||
|
||||
|
|
|
@ -44,13 +44,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(msi);
|
|||
* These apis are defined in MSI 3.0
|
||||
*/
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_MEDIAPACKAGEPATH[] = {'M','e','d','i','a','P','a','c','k','a','g','e','P','a','t','h',0};
|
||||
static const WCHAR INSTALLPROPERTY_DISKPROMPT[] = {'D','i','s','k','P','r','o','m','p','t',0};
|
||||
static const WCHAR INSTALLPROPERTY_LASTUSEDSOURCE[] = {'L','a','s','t','U','s','e','d','S','o','u','r','c','e',0};
|
||||
static const WCHAR INSTALLPROPERTY_LASTUSEDTYPE[] = {'L','a','s','t','U','s','e','d','T','y','p','e',0};
|
||||
static const WCHAR INSTALLPROPERTY_PACKAGENAME[] = {'P','a','c','k','a','g','e','N','a','m','e',0};
|
||||
|
||||
|
||||
typedef struct tagMediaInfo
|
||||
{
|
||||
LPWSTR path;
|
||||
|
@ -194,43 +187,43 @@ UINT WINAPI MsiSourceListGetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
|
|||
if (rc != ERROR_SUCCESS)
|
||||
return ERROR_UNKNOWN_PRODUCT;
|
||||
|
||||
if (strcmpW(szProperty, INSTALLPROPERTY_MEDIAPACKAGEPATH) == 0)
|
||||
if (strcmpW(szProperty, INSTALLPROPERTY_MEDIAPACKAGEPATHstringW) == 0)
|
||||
{
|
||||
HKEY key;
|
||||
rc = OpenMediaSubkey(sourcekey, &key, FALSE);
|
||||
if (rc == ERROR_SUCCESS)
|
||||
rc = RegQueryValueExW(key, INSTALLPROPERTY_MEDIAPACKAGEPATH, 0, 0,
|
||||
rc = RegQueryValueExW(key, INSTALLPROPERTY_MEDIAPACKAGEPATHstringW,
|
||||
0, 0, (LPBYTE)szValue, pcchValue);
|
||||
if (rc != ERROR_SUCCESS && rc != ERROR_MORE_DATA)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
RegCloseKey(key);
|
||||
}
|
||||
else if (strcmpW(szProperty, INSTALLPROPERTY_DISKPROMPTstringW) ==0)
|
||||
{
|
||||
HKEY key;
|
||||
rc = OpenMediaSubkey(sourcekey, &key, FALSE);
|
||||
if (rc == ERROR_SUCCESS)
|
||||
rc = RegQueryValueExW(key, INSTALLPROPERTY_DISKPROMPTstringW, 0, 0,
|
||||
(LPBYTE)szValue, pcchValue);
|
||||
if (rc != ERROR_SUCCESS && rc != ERROR_MORE_DATA)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
RegCloseKey(key);
|
||||
}
|
||||
else if (strcmpW(szProperty, INSTALLPROPERTY_DISKPROMPT) ==0)
|
||||
{
|
||||
HKEY key;
|
||||
rc = OpenMediaSubkey(sourcekey, &key, FALSE);
|
||||
if (rc == ERROR_SUCCESS)
|
||||
rc = RegQueryValueExW(key, INSTALLPROPERTY_DISKPROMPT, 0, 0,
|
||||
(LPBYTE)szValue, pcchValue);
|
||||
if (rc != ERROR_SUCCESS && rc != ERROR_MORE_DATA)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
RegCloseKey(key);
|
||||
}
|
||||
else if (strcmpW(szProperty, INSTALLPROPERTY_LASTUSEDSOURCE)==0)
|
||||
else if (strcmpW(szProperty, INSTALLPROPERTY_LASTUSEDSOURCEstringW)==0)
|
||||
{
|
||||
LPWSTR buffer;
|
||||
DWORD size = 0;
|
||||
|
||||
RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCE, 0, 0, NULL,
|
||||
&size);
|
||||
RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEstringW, 0, 0,
|
||||
NULL, &size);
|
||||
if (size == 0)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
else
|
||||
{
|
||||
LPWSTR ptr;
|
||||
buffer = HeapAlloc(GetProcessHeap(),0,size);
|
||||
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCE, 0,
|
||||
0, (LPBYTE)buffer,&size);
|
||||
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEstringW,
|
||||
0, 0, (LPBYTE)buffer,&size);
|
||||
ptr = strchrW(buffer,';');
|
||||
ptr = strchrW(ptr,';');
|
||||
if (!ptr)
|
||||
|
@ -250,20 +243,20 @@ UINT WINAPI MsiSourceListGetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
|
|||
HeapFree(GetProcessHeap(),0,buffer);
|
||||
}
|
||||
}
|
||||
else if (strcmpW(INSTALLPROPERTY_LASTUSEDTYPE, szProperty)==0)
|
||||
else if (strcmpW(INSTALLPROPERTY_LASTUSEDTYPEstringW, szProperty)==0)
|
||||
{
|
||||
LPWSTR buffer;
|
||||
DWORD size = 0;
|
||||
|
||||
RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCE, 0, 0, NULL,
|
||||
&size);
|
||||
RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEstringW, 0, 0,
|
||||
NULL, &size);
|
||||
if (size == 0)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
else
|
||||
{
|
||||
buffer = HeapAlloc(GetProcessHeap(),0,size);
|
||||
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCE, 0,
|
||||
0, (LPBYTE)buffer,&size);
|
||||
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEstringW,
|
||||
0, 0, (LPBYTE)buffer,&size);
|
||||
if (*pcchValue < 1)
|
||||
{
|
||||
rc = ERROR_MORE_DATA;
|
||||
|
@ -277,9 +270,9 @@ UINT WINAPI MsiSourceListGetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
|
|||
HeapFree(GetProcessHeap(),0,buffer);
|
||||
}
|
||||
}
|
||||
else if (strcmpW(INSTALLPROPERTY_PACKAGENAME, szProperty)==0)
|
||||
else if (strcmpW(INSTALLPROPERTY_PACKAGENAMEstringW, szProperty)==0)
|
||||
{
|
||||
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_PACKAGENAME, 0, 0,
|
||||
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_PACKAGENAMEstringW, 0, 0,
|
||||
(LPBYTE)szValue, pcchValue);
|
||||
if (rc != ERROR_SUCCESS && rc != ERROR_MORE_DATA)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
|
@ -331,31 +324,31 @@ UINT WINAPI MsiSourceListSetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
|
|||
return ERROR_UNKNOWN_PRODUCT;
|
||||
|
||||
|
||||
if (strcmpW(szProperty, INSTALLPROPERTY_MEDIAPACKAGEPATH) == 0)
|
||||
if (strcmpW(szProperty, INSTALLPROPERTY_MEDIAPACKAGEPATHstringW) == 0)
|
||||
{
|
||||
HKEY key;
|
||||
DWORD size = lstrlenW(szValue)*sizeof(WCHAR);
|
||||
rc = OpenMediaSubkey(sourcekey, &key, FALSE);
|
||||
if (rc == ERROR_SUCCESS)
|
||||
rc = RegSetValueExW(key, INSTALLPROPERTY_MEDIAPACKAGEPATH, 0,
|
||||
rc = RegSetValueExW(key, INSTALLPROPERTY_MEDIAPACKAGEPATHstringW, 0,
|
||||
REG_SZ, (LPBYTE)szValue, size);
|
||||
if (rc != ERROR_SUCCESS)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
RegCloseKey(key);
|
||||
}
|
||||
else if (strcmpW(szProperty, INSTALLPROPERTY_DISKPROMPT) ==0)
|
||||
else if (strcmpW(szProperty, INSTALLPROPERTY_DISKPROMPTstringW) == 0)
|
||||
{
|
||||
HKEY key;
|
||||
DWORD size = lstrlenW(szValue)*sizeof(WCHAR);
|
||||
rc = OpenMediaSubkey(sourcekey, &key, FALSE);
|
||||
if (rc == ERROR_SUCCESS)
|
||||
rc = RegSetValueExW(key, INSTALLPROPERTY_DISKPROMPT, 0, REG_SZ,
|
||||
(LPBYTE)szValue, size);
|
||||
rc = RegSetValueExW(key, INSTALLPROPERTY_DISKPROMPTstringW, 0,
|
||||
REG_SZ, (LPBYTE)szValue, size);
|
||||
if (rc != ERROR_SUCCESS)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
RegCloseKey(key);
|
||||
}
|
||||
else if (strcmpW(szProperty, INSTALLPROPERTY_LASTUSEDSOURCE)==0)
|
||||
else if (strcmpW(szProperty, INSTALLPROPERTY_LASTUSEDSOURCEstringW)==0)
|
||||
{
|
||||
LPWSTR buffer = NULL;
|
||||
DWORD size;
|
||||
|
@ -378,17 +371,17 @@ UINT WINAPI MsiSourceListSetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
|
|||
size = (lstrlenW(szValue)+5)*sizeof(WCHAR);
|
||||
buffer = HeapAlloc(GetProcessHeap(),0,size);
|
||||
sprintfW(buffer, LastUsedSource_Fmt, typechar, 1, szValue);
|
||||
rc = RegSetValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCE, 0,
|
||||
rc = RegSetValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEstringW, 0,
|
||||
REG_EXPAND_SZ, (LPBYTE)buffer, size);
|
||||
if (rc != ERROR_SUCCESS)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
HeapFree( GetProcessHeap(), 0, buffer );
|
||||
}
|
||||
else if (strcmpW(INSTALLPROPERTY_PACKAGENAME, szProperty)==0)
|
||||
else if (strcmpW(INSTALLPROPERTY_PACKAGENAMEstringW, szProperty)==0)
|
||||
{
|
||||
DWORD size = lstrlenW(szValue)*sizeof(WCHAR);
|
||||
rc = RegSetValueExW(sourcekey, INSTALLPROPERTY_PACKAGENAME, 0, REG_SZ,
|
||||
(LPBYTE)szValue, size);
|
||||
rc = RegSetValueExW(sourcekey, INSTALLPROPERTY_PACKAGENAMEstringW, 0,
|
||||
REG_SZ, (LPBYTE)szValue, size);
|
||||
if (rc != ERROR_SUCCESS)
|
||||
rc = ERROR_UNKNOWN_PROPERTY;
|
||||
}
|
||||
|
|
201
include/msi.h
201
include/msi.h
|
@ -175,6 +175,202 @@ typedef enum tagMSICODE
|
|||
|
||||
#define MAX_FEATURE_CHARS 38
|
||||
|
||||
/* Strings defined in msi.h */
|
||||
/* Advertised Information */
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_PACKAGENAMEstringW[] = {'P','a','c','k','a','g','e','N','a','m','e',0};
|
||||
#define INSTALLPROPERTY_PACKAGENAMEA "PackageName"
|
||||
#define INSTALLPROPERTY_PACKAGENAMEW WINELIB_NAME_AW(INSTALLPROPERTY_PACKAGENAMEstring)
|
||||
#define INSTALLPROPERTY_PACKAGENAME WINELIB_NAME_AW(INSTALLPROPERTY_PACKAGENAME)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_TRANSFORMSstringW[] = {'T','r','a','n','s','f','o','r','m','s',0};
|
||||
#define INSTALLPROPERTY_TRANSFORMSA "Transforms"
|
||||
#define INSTALLPROPERTY_TRANSFORMSW WINELIB_NAME_AW(INSTALLPROPERTY_TRANSFORMSstring)
|
||||
#define INSTALLPROPERTY_TRANSFORMS WINELIB_NAME_AW(INSTALLPROPERTY_TRANSFORMS)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_LANGUAGEstringW[] = {'L','a','n','g','u','a','g','e',0};
|
||||
#define INSTALLPROPERTY_LANGUAGEA "Language"
|
||||
#define INSTALLPROPERTY_LANGUAGEW WINELIB_NAME_AW(INSTALLPROPERTY_LANGUAGEstring)
|
||||
#define INSTALLPROPERTY_LANGUAGE WINELIB_NAME_AW(INSTALLPROPERTY_LANGUAGE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_PRODUCTNAMEstringW[] = {'P','r','o','d','u','c','t','N','a','m','e',0};
|
||||
#define INSTALLPROPERTY_PRODUCTNAMEA "ProductName"
|
||||
#define INSTALLPROPERTY_PRODUCTNAMEW WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTNAMEstring)
|
||||
#define INSTALLPROPERTY_PRODUCTNAME WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTNAME)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_ASSIGNMENTTYPEstringW[] = {'A','s','s','i','g','n','m','e','n','t','T','y','p','e',0};
|
||||
#define INSTALLPROPERTY_ASSIGNMENTTYPEA "AssignmentType"
|
||||
#define INSTALLPROPERTY_ASSIGNMENTTYPEW WINELIB_NAME_AW(INSTALLPROPERTY_ASSIGNMENTTYPEstring)
|
||||
#define INSTALLPROPERTY_ASSIGNMENTTYPE WINELIB_NAME_AW(INSTALLPROPERTY_ASSIGNMENTTYPE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_PACKAGECODEstringW[] = {'P','a','c','k','a','g','e','C','o','d','e',0};
|
||||
#define INSTALLPROPERTY_PACKAGECODEA "PackageCode"
|
||||
#define INSTALLPROPERTY_PACKAGECODEW WINELIB_NAME_AW(INSTALLPROPERTY_PACKAGECODEstring)
|
||||
#define INSTALLPROPERTY_PACKAGECODE WINELIB_NAME_AW(INSTALLPROPERTY_PACKAGECODE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_VERSIONstringW[]= {'V','e','r','s','i','o','n',0};
|
||||
#define INSTALLPROPERTY_VERSIONA "Version"
|
||||
#define INSTALLPROPERTY_VERSIONW WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONstring)
|
||||
#define INSTALLPROPERTY_VERSION WINELIB_NAME_AW(INSTALLPROPERTY_VERSION)
|
||||
|
||||
/* MSI version 1.1 and above */
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_PRODUCTICONstringW[] = {'P','r','o','d','u','c','t','I','c','o','n',0};
|
||||
#define INSTALLPROPERTY_PRODUCTICONA "ProductIcon"
|
||||
#define INSTALLPROPERTY_PRODUCTICONW WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTICONstring)
|
||||
#define INSTALLPROPERTY_PRODUCTICON WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTICON)
|
||||
|
||||
/* MSI version 1.5 and above */
|
||||
static const WCHAR INSTALLPROPERTY_INSTANCETYPEstringW[] = {'I','n','s','t','a','n','c','e','T','y','p','e',0};
|
||||
#define INSTALLPROPERTY_INSTANCETYPEA "InstanceType"
|
||||
#define INSTALLPROPERTY_INSTANCETYPEW WINELIB_NAME_AW(INSTALLPROPERTY_INSTANCETYPEstring)
|
||||
#define INSTALLPROPERTY_INSTANCETYPE WINELIB_NAME_AW(INSTALLPROPERTY_INSTANCETYPE)
|
||||
|
||||
/* MSI version 3 and above */
|
||||
static const WCHAR INSTALLPROPERTY_AUTHORIZED_LUA_APPstringW[] = {'A','u','t','h','o','r','i','z','e','d','L','U','A','A','p','p',0};
|
||||
#define INSTALLPROPERTY_AUTHORIZED_LUA_APPA "AuthorizedLUAApp"
|
||||
#define INSTALLPROPERTY_AUTHORIZED_LUA_APPW WINELIB_NAME_AW(INSTALLPROPERTY_AUTHORIZED_LUA_APPstring)
|
||||
#define INSTALLPROPERTY_AUTHORIZED_LUA_APP WINELIB_NAME_AW(INSTALLPROPERTY_AUTHORIZED_LUA_APP)
|
||||
|
||||
|
||||
/* Installed Information */
|
||||
static const WCHAR INSTALLPROPERTY_INSTALLEDPRODUCTNAMEstringW[] = {'I','n','s','t','a','l','l','e','d','P','r','o','d','u','c','t','N','a','m','e',0};
|
||||
#define INSTALLPROPERTY_INSTALLEDPRODUCTNAMEA "InstalledProductName"
|
||||
#define INSTALLPROPERTY_INSTALLEDPRODUCTNAMEW WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLEDPRODUCTNAMEstring)
|
||||
#define INSTALLPROPERTY_INSTALLEDPRODUCTNAME WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLEDPRODUCTNAME)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_VERSIONSTRINGstringW[] = {'V','e','r','s','i','o','n','S','t','r','i','n','g',0};
|
||||
#define INSTALLPROPERTY_VERSIONSTRINGA "VersionString"
|
||||
#define INSTALLPROPERTY_VERSIONSTRINGW WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONSTRINGstring)
|
||||
#define INSTALLPROPERTY_VERSIONSTRING WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONSTRING)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_HELPLINKstringW[] = {'H','e','l','p','L','i','n','k',0};
|
||||
#define INSTALLPROPERTY_HELPLINKA "HelpLink"
|
||||
#define INSTALLPROPERTY_HELPLINKW WINELIB_NAME_AW(INSTALLPROPERTY_HELPLINKstring)
|
||||
#define INSTALLPROPERTY_HELPLINK WINELIB_NAME_AW(INSTALLPROPERTY_HELPLINK)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_HELPTELEPHONEstringW[] = {'H','e','l','p','T','e','l','e','p','h','o','n','e',0};
|
||||
#define INSTALLPROPERTY_HELPTELEPHONEA "HelpTelephone"
|
||||
#define INSTALLPROPERTY_HELPTELEPHONEW WINELIB_NAME_AW(INSTALLPROPERTY_HELPTELEPHONEstring)
|
||||
#define INSTALLPROPERTY_HELPTELEPHONE WINELIB_NAME_AW(INSTALLPROPERTY_HELPTELEPHONE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_INSTALLLOCATIONstringW[] = {'I','n','s','t','a','l','l','L','o','c','a','t','i','o','n',0};
|
||||
#define INSTALLPROPERTY_INSTALLLOCATIONA "InstallLocation"
|
||||
#define INSTALLPROPERTY_INSTALLLOCATIONW WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLLOCATIONstring)
|
||||
#define INSTALLPROPERTY_INSTALLLOCATION WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLLOCATION)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_INSTALLSOURCEstringW[] = {'I','n','s','t','a','l','l','S','o','u','r','c','e',0};
|
||||
#define INSTALLPROPERTY_INSTALLSOURCEA "InstallSource"
|
||||
#define INSTALLPROPERTY_INSTALLSOURCEW WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLSOURCEstring)
|
||||
#define INSTALLPROPERTY_INSTALLSOURCE WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLSOURCE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_INSTALLDATEstringW[] = {'I','n','s','t','a','l','l','D','a','t','e',0};
|
||||
#define INSTALLPROPERTY_INSTALLDATEA "InstallDate"
|
||||
#define INSTALLPROPERTY_INSTALLDATEW WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLDATEstring)
|
||||
#define INSTALLPROPERTY_INSTALLDATE WINELIB_NAME_AW(INSTALLPROPERTY_INSTALLDATE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_PUBLISHERstringW[] ={'P','u','b','l','i','s','h','e','r',0};
|
||||
#define INSTALLPROPERTY_PUBLISHERA "Publisher"
|
||||
#define INSTALLPROPERTY_PUBLISHERW WINELIB_NAME_AW(INSTALLPROPERTY_PUBLISHERstring)
|
||||
#define INSTALLPROPERTY_PUBLISHER WINELIB_NAME_AW(INSTALLPROPERTY_PUBLISHER)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_LOCALPACKAGEstringW[] = {'L','o','c','a','l','P','a','c','k','a','g','e',0};
|
||||
#define INSTALLPROPERTY_LOCALPACKAGEA "LocalPackage"
|
||||
#define INSTALLPROPERTY_LOCALPACKAGEW WINELIB_NAME_AW(INSTALLPROPERTY_LOCALPACKAGEstring)
|
||||
#define INSTALLPROPERTY_LOCALPACKAGE WINELIB_NAME_AW(INSTALLPROPERTY_LOCALPACKAGE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_URLINFOABOUTstringW[] = {'U','R','L','I','n','f','o','A','b','o','u','t',0};
|
||||
#define INSTALLPROPERTY_URLINFOABOUTA "URLInfoAbout"
|
||||
#define INSTALLPROPERTY_URLINFOABOUTW WINELIB_NAME_AW(INSTALLPROPERTY_URLINFOABOUTstring)
|
||||
#define INSTALLPROPERTY_URLINFOABOUT WINELIB_NAME_AW(INSTALLPROPERTY_URLINFOABOUT)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_URLUPDATEINFOstringW[] = {'U','R','L','U','p','d','a','t','e','I','n','f','o',0};
|
||||
#define INSTALLPROPERTY_URLUPDATEINFOA "URLUpdateInfo"
|
||||
#define INSTALLPROPERTY_URLUPDATEINFOW WINELIB_NAME_AW(INSTALLPROPERTY_URLUPDATEINFOstring)
|
||||
#define INSTALLPROPERTY_URLUPDATEINFO WINELIB_NAME_AW(INSTALLPROPERTY_URLUPDATEINFO)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_VERSIONMINORstringW[] = {'V','e','r','s','i','o','n','M','i','n','o','r',0};
|
||||
#define INSTALLPROPERTY_VERSIONMINORA "VersionMinor"
|
||||
#define INSTALLPROPERTY_VERSIONMINORW WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONMINORstring)
|
||||
#define INSTALLPROPERTY_VERSIONMINOR WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONMINOR)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_VERSIONMAJORstringW[] = {'V','e','r','s','i','o','n','M','a','j','o','r',0};
|
||||
#define INSTALLPROPERTY_VERSIONMAJORA "VersionMajor"
|
||||
#define INSTALLPROPERTY_VERSIONMAJORW WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONMAJORstring)
|
||||
#define INSTALLPROPERTY_VERSIONMAJOR WINELIB_NAME_AW(INSTALLPROPERTY_VERSIONMAJOR)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_PRODUCTIDstringW[] = {'P','r','o','d','u','c','t','I','D',0};
|
||||
#define INSTALLPROPERTY_PRODUCTIDA "ProductID"
|
||||
#define INSTALLPROPERTY_PRODUCTIDW WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTIDstring)
|
||||
#define INSTALLPROPERTY_PRODUCTID WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTID)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_REGCOMPANYstringW[] = {'R','e','g','C','o','m','p','a','n','y',0};
|
||||
#define INSTALLPROPERTY_REGCOMPANYA "RegCompany"
|
||||
#define INSTALLPROPERTY_REGCOMPANYW WINELIB_NAME_AW(INSTALLPROPERTY_REGCOMPANYstring)
|
||||
#define INSTALLPROPERTY_REGCOMPANY WINELIB_NAME_AW(INSTALLPROPERTY_REGCOMPANY)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_REGOWNERstringW[] = {'R','e','g','O','w','n','e','r',0};
|
||||
#define INSTALLPROPERTY_REGOWNERA "RegOwner"
|
||||
#define INSTALLPROPERTY_REGOWNERW WINELIB_NAME_AW(INSTALLPROPERTY_REGOWNERstring)
|
||||
#define INSTALLPROPERTY_REGOWNER WINELIB_NAME_AW(INSTALLPROPERTY_REGOWNER)
|
||||
|
||||
/* MSI Version 3.0 and greater */
|
||||
static const WCHAR INSTALLPROPERTY_UNINSTALLABLEstringW[] = {'U','n','i','n','s','t','a','l','l','a','b','l','e',0};
|
||||
#define INSTALLPROPERTY_UNINSTALLABLEA "Uninstallable"
|
||||
#define INSTALLPROPERTY_UNINSTALLABLEW WINELIB_NAME_AW(INSTALLPROPERTY_UNINSTALLABLEstring)
|
||||
#define INSTALLPROPERTY_UNINSTALLABLE WINELIB_NAME_AW(INSTALLPROPERTY_UNINSTALLABLE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_PRODUCTSTATEstringW[] = {'S','t','a','t','e',0};
|
||||
#define INSTALLPROPERTY_PRODUCTSTATEA "State"
|
||||
#define INSTALLPROPERTY_PRODUCTSTATEW WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTSTATEstring)
|
||||
#define INSTALLPROPERTY_PRODUCTSTATE WINELIB_NAME_AW(INSTALLPROPERTY_PRODUCTSTATE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_PATCHSTATEstringW[] ={'S','t','a','t','e',0};
|
||||
#define INSTALLPROPERTY_PATCHSTATEA "State"
|
||||
#define INSTALLPROPERTY_PATCHSTATEW WINELIB_NAME_AW(INSTALLPROPERTY_PATCHSTATEstring)
|
||||
#define INSTALLPROPERTY_PATCHSTATE WINELIB_NAME_AW(INSTALLPROPERTY_PATCHSTATE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_PATCHTYPEstringW[] = {'P','a','t','c','h','T','y','p','e',0};
|
||||
#define INSTALLPROPERTY_PATCHTYPEA "PatchType"
|
||||
#define INSTALLPROPERTY_PATCHTYPEW WINELIB_NAME_AW(INSTALLPROPERTY_PATCHTYPEstring)
|
||||
#define INSTALLPROPERTY_PATCHTYPE WINELIB_NAME_AW(INSTALLPROPERTY_PATCHTYPE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_LUAENABLEDstringW[] = {'L','U','A','E','n','a','b','l','e','d',0};
|
||||
#define INSTALLPROPERTY_LUAENABLEDA "LUAEnabled"
|
||||
#define INSTALLPROPERTY_LUAENABLEDW WINELIB_NAME_AW(INSTALLPROPERTY_LUAENABLEDstring)
|
||||
#define INSTALLPROPERTY_LUAENABLED WINELIB_NAME_AW(INSTALLPROPERTY_LUAENABLED)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_DISPLAYNAMEstringW[] = {'D','i','s','p','l','a','y','N','a','m','e',0};
|
||||
#define INSTALLPROPERTY_DISPLAYNAMEA "DisplayName"
|
||||
#define INSTALLPROPERTY_DISPLAYNAMEW WINELIB_NAME_AW(INSTALLPROPERTY_DISPLAYNAMEstring)
|
||||
#define INSTALLPROPERTY_DISPLAYNAME WINELIB_NAME_AW(INSTALLPROPERTY_DISPLAYNAME)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_MOREINFOURLstringW[] = {'M','o','r','e','I','n','f','o','U','R','L',0};
|
||||
#define INSTALLPROPERTY_MOREINFOURLA "MoreInfoURL"
|
||||
#define INSTALLPROPERTY_MOREINFOURLW WINELIB_NAME_AW(INSTALLPROPERTY_MOREINFOURLstring)
|
||||
#define INSTALLPROPERTY_MOREINFOURL WINELIB_NAME_AW(INSTALLPROPERTY_MOREINFOURL)
|
||||
|
||||
/* Source List Info */
|
||||
static const WCHAR INSTALLPROPERTY_LASTUSEDSOURCEstringW[] = {'L','a','s','t','U','s','e','d','S','o','u','r','c','e',0};
|
||||
#define INSTALLPROPERTY_LASTUSEDSOURCEA "LastUsedSource"
|
||||
#define INSTALLPROPERTY_LASTUSEDSOURCEW WINELIB_NAME_AW(INSTALLPROPERTY_LASTUSEDSOURCEstring)
|
||||
#define INSTALLPROPERTY_LASTUSEDSOURCE WINELIB_NAME_AW(INSTALLPROPERTY_LASTUSEDSOURCEW)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_LASTUSEDTYPEstringW[] = {'L','a','s','t','U','s','e','d','T','y','p','e',0};
|
||||
#define INSTALLPROPERTY_LASTUSEDTYPEA "LastUsedType"
|
||||
#define INSTALLPROPERTY_LASTUSEDTYPEW WINELIB_NAME_AW(INSTALLPROPERTY_LASTUSEDTYPEstringW)
|
||||
#define INSTALLPROPERTY_LASTUSEDTYPE WINELIB_NAME_AW(INSTALLPROPERTY_LASTUSEDTYPE)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_MEDIAPACKAGEPATHstringW[] = {'M','e','d','i','a','P','a','c','k','a','g','e','P','a','t','h',0};
|
||||
#define INSTALLPROPERTY_MEDIAPACKAGEPATHA "MediaPackagePath"
|
||||
#define INSTALLPROPERTY_MEDIAPACKAGEPATHW WINELIB_NAME_AW(INSTALLPROPERTY_MEDIAPACKAGEPATHstring)
|
||||
#define INSTALLPROPERTY_MEDIAPACKAGEPATH WINELIB_NAME_AW(INSTALLPROPERTY_MEDIAPACKAGEPATH)
|
||||
|
||||
static const WCHAR INSTALLPROPERTY_DISKPROMPTstringW[] = {'D','i','s','k','P','r','o','m','p','t',0};
|
||||
#define INSTALLPROPERTY_DISKPROMPTA "DiskPrompt"
|
||||
#define INSTALLPROPERTY_DISKPROMPTW WINELIB_NAME_AW(INSTALLPROPERTY_DISKPROMPTstringW)
|
||||
#define INSTALLPROPERTY_DISKPROMPT WINELIB_NAME_AW(INSTALLPROPERTY_DISKPROMPT)
|
||||
|
||||
typedef INT (CALLBACK *INSTALLUI_HANDLERA)(LPVOID, UINT, LPCSTR);
|
||||
typedef INT (CALLBACK *INSTALLUI_HANDLERW)(LPVOID, UINT, LPCWSTR);
|
||||
|
||||
|
@ -351,6 +547,11 @@ UINT WINAPI MsiCloseHandle(MSIHANDLE);
|
|||
UINT WINAPI MsiCloseAllHandles(void);
|
||||
INSTALLUILEVEL WINAPI MsiSetInternalUI(INSTALLUILEVEL, HWND*);
|
||||
|
||||
UINT WINAPI MsiSourceListGetInfoW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, LPCWSTR, LPWSTR, LPDWORD);
|
||||
UINT WINAPI MsiSourceListSetInfoW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, LPCWSTR, LPCWSTR);
|
||||
UINT WINAPI MsiSourceListAddSourceExW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, LPCWSTR, DWORD);
|
||||
UINT WINAPI MsiSourceListAddMediaDiskW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, DWORD, LPCWSTR, LPCWSTR);
|
||||
|
||||
UINT WINAPI MsiSourceListGetInfoA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, LPCSTR, LPSTR, LPDWORD);
|
||||
UINT WINAPI MsiSourceListGetInfoW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, LPCWSTR, LPWSTR, LPDWORD);
|
||||
#define MsiSourceListGetInfo WINELIB_NAME_AW(MsiSourceListGetInfo)
|
||||
|
|
Loading…
Reference in New Issue