Use the official names for the Unicode string constants.

oldstable
Alexandre Julliard 2005-07-13 12:07:41 +00:00
parent bda7ace2e9
commit 7258914ef6
6 changed files with 95 additions and 132 deletions

View File

@ -3041,16 +3041,16 @@ static UINT ACTION_PublishProduct(MSIPACKAGE *package)
goto end;
buffer = load_dynamic_property(package,INSTALLPROPERTY_PRODUCTNAMEstringW,NULL);
buffer = load_dynamic_property(package,INSTALLPROPERTY_PRODUCTNAMEW,NULL);
size = strlenW(buffer)*sizeof(WCHAR);
RegSetValueExW(hukey,INSTALLPROPERTY_PRODUCTNAMEstringW,0,REG_SZ,
RegSetValueExW(hukey,INSTALLPROPERTY_PRODUCTNAMEW,0,REG_SZ,
(LPBYTE)buffer,size);
HeapFree(GetProcessHeap(),0,buffer);
buffer = load_dynamic_property(package,szProductLanguage,NULL);
size = sizeof(DWORD);
langid = atoiW(buffer);
RegSetValueExW(hukey,INSTALLPROPERTY_LANGUAGEstringW,0,REG_DWORD,
RegSetValueExW(hukey,INSTALLPROPERTY_LANGUAGEW,0,REG_DWORD,
(LPBYTE)&langid,size);
HeapFree(GetProcessHeap(),0,buffer);
@ -3060,7 +3060,7 @@ static UINT ACTION_PublishProduct(MSIPACKAGE *package)
LPWSTR path;
build_icon_path(package,buffer,&path);
size = strlenW(path) * sizeof(WCHAR);
RegSetValueExW(hukey,INSTALLPROPERTY_PRODUCTICONstringW,0,REG_SZ,
RegSetValueExW(hukey,INSTALLPROPERTY_PRODUCTICONW,0,REG_SZ,
(LPBYTE)path,size);
}
HeapFree(GetProcessHeap(),0,buffer);
@ -3070,7 +3070,7 @@ static UINT ACTION_PublishProduct(MSIPACKAGE *package)
{
DWORD verdword = build_version_dword(buffer);
size = sizeof(DWORD);
RegSetValueExW(hukey,INSTALLPROPERTY_VERSIONstringW,0,REG_DWORD, (LPBYTE
RegSetValueExW(hukey,INSTALLPROPERTY_VERSIONW,0,REG_DWORD, (LPBYTE
)&verdword,size);
}
HeapFree(GetProcessHeap(),0,buffer);
@ -3094,7 +3094,7 @@ static UINT ACTION_PublishProduct(MSIPACKAGE *package)
if (ptr) *ptr = 0;
squash_guid(guidbuffer,squashed);
size = strlenW(squashed)*sizeof(WCHAR);
RegSetValueExW(hukey,INSTALLPROPERTY_PACKAGECODEstringW,0,REG_SZ,
RegSetValueExW(hukey,INSTALLPROPERTY_PACKAGECODEW,0,REG_SZ,
(LPBYTE)squashed, size);
}
else
@ -3530,7 +3530,7 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
debugstr_w(package->msiFilePath), debugstr_w(packagefile),
GetLastError());
size = strlenW(packagefile)*sizeof(WCHAR);
RegSetValueExW(hkey,INSTALLPROPERTY_LOCALPACKAGEstringW,0,REG_SZ,
RegSetValueExW(hkey,INSTALLPROPERTY_LOCALPACKAGEW,0,REG_SZ,
(LPBYTE)packagefile,size);
/* do ModifyPath and UninstallString */
@ -3548,13 +3548,13 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
buffer= HeapAlloc(GetProcessHeap(),0,size);
sprintfW(buffer,date_fmt,systime.wYear,systime.wMonth,systime.wDay);
size = strlenW(buffer)*sizeof(WCHAR);
RegSetValueExW(hkey,INSTALLPROPERTY_INSTALLDATEstringW,0,REG_SZ,
RegSetValueExW(hkey,INSTALLPROPERTY_INSTALLDATEW,0,REG_SZ,
(LPBYTE)buffer,size);
HeapFree(GetProcessHeap(),0,buffer);
buffer = load_dynamic_property(package,szProductLanguage,NULL);
size = atoiW(buffer);
RegSetValueExW(hkey,INSTALLPROPERTY_LANGUAGEstringW,0,REG_DWORD,
RegSetValueExW(hkey,INSTALLPROPERTY_LANGUAGEW,0,REG_DWORD,
(LPBYTE)&size,sizeof(DWORD));
HeapFree(GetProcessHeap(),1,buffer);
@ -3565,11 +3565,11 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
DWORD vermajor = verdword>>24;
DWORD verminor = (verdword>>16)&0x00FF;
size = sizeof(DWORD);
RegSetValueExW(hkey,INSTALLPROPERTY_VERSIONstringW,0,REG_DWORD,
RegSetValueExW(hkey,INSTALLPROPERTY_VERSIONW,0,REG_DWORD,
(LPBYTE)&verdword,size);
RegSetValueExW(hkey,INSTALLPROPERTY_VERSIONMAJORstringW,0,REG_DWORD,
RegSetValueExW(hkey,INSTALLPROPERTY_VERSIONMAJORW,0,REG_DWORD,
(LPBYTE)&vermajor,size);
RegSetValueExW(hkey,INSTALLPROPERTY_VERSIONMINORstringW,0,REG_DWORD,
RegSetValueExW(hkey,INSTALLPROPERTY_VERSIONMINORW,0,REG_DWORD,
(LPBYTE)&verminor,size);
}
HeapFree(GetProcessHeap(),0,buffer);
@ -3722,7 +3722,7 @@ static UINT ACTION_RegisterUser(MSIPACKAGE *package)
if (!package)
return ERROR_INVALID_HANDLE;
productid = load_dynamic_property(package,INSTALLPROPERTY_PRODUCTIDstringW,
productid = load_dynamic_property(package,INSTALLPROPERTY_PRODUCTIDW,
&rc);
if (!productid)
return ERROR_SUCCESS;

View File

@ -511,12 +511,12 @@ static UINT ready_media_for_file(MSIPACKAGE *package, int fileindex,
MsiSourceListSetInfoW(package->ProductCode, NULL,
MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT|MSISOURCETYPE_MEDIA,
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
INSTALLPROPERTY_LASTUSEDSOURCEW, last_path);
else
MsiSourceListSetInfoW(package->ProductCode, NULL,
MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT|MSISOURCETYPE_NETWORK,
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
INSTALLPROPERTY_LASTUSEDSOURCEW, last_path);
msiobj_release(&row->hdr);
return rc;
}
@ -544,7 +544,7 @@ static UINT ready_media_for_file(MSIPACKAGE *package, int fileindex,
MsiSourceListSetInfoW(package->ProductCode, NULL,
MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT|MSISOURCETYPE_NETWORK,
INSTALLPROPERTY_LASTUSEDSOURCEstringW, path);
INSTALLPROPERTY_LASTUSEDSOURCEW, path);
HeapFree(GetProcessHeap(),0,path);
}
@ -568,12 +568,12 @@ static UINT ready_media_for_file(MSIPACKAGE *package, int fileindex,
MsiSourceListSetInfoW(package->ProductCode, NULL,
MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT|MSISOURCETYPE_MEDIA,
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
INSTALLPROPERTY_LASTUSEDSOURCEW, last_path);
else
MsiSourceListSetInfoW(package->ProductCode, NULL,
MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT|MSISOURCETYPE_NETWORK,
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
INSTALLPROPERTY_LASTUSEDSOURCEW, last_path);
/* extract the cab file into a folder in the temp folder */
sz = MAX_PATH;
@ -599,12 +599,12 @@ static UINT ready_media_for_file(MSIPACKAGE *package, int fileindex,
MsiSourceListSetInfoW(package->ProductCode, NULL,
MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT|MSISOURCETYPE_MEDIA,
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
INSTALLPROPERTY_LASTUSEDSOURCEW, last_path);
else
MsiSourceListSetInfoW(package->ProductCode, NULL,
MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT|MSISOURCETYPE_NETWORK,
INSTALLPROPERTY_LASTUSEDSOURCEstringW, last_path);
INSTALLPROPERTY_LASTUSEDSOURCEW, last_path);
}
set_file_source(package, file, comp, last_path);
@ -669,7 +669,7 @@ UINT ACTION_InstallFiles(MSIPACKAGE *package)
MsiSourceListSetInfoW(package->ProductCode, NULL,
MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT,
INSTALLPROPERTY_PACKAGENAMEstringW, ptr);
INSTALLPROPERTY_PACKAGENAMEW, ptr);
}
FIXME("Write DiskPrompt\n");

View File

@ -99,7 +99,7 @@ UINT WINAPI MsiOpenProductW(LPCWSTR szProduct, MSIHANDLE *phProduct)
/* find the size of the path */
type = count = 0;
r = RegQueryValueExW( hKeyProduct, INSTALLPROPERTY_LOCALPACKAGEstringW,
r = RegQueryValueExW( hKeyProduct, INSTALLPROPERTY_LOCALPACKAGEW,
NULL, &type, NULL, &count );
if( r != ERROR_SUCCESS )
{
@ -112,7 +112,7 @@ UINT WINAPI MsiOpenProductW(LPCWSTR szProduct, MSIHANDLE *phProduct)
if( !path )
goto end;
r = RegQueryValueExW( hKeyProduct, INSTALLPROPERTY_LOCALPACKAGEstringW,
r = RegQueryValueExW( hKeyProduct, INSTALLPROPERTY_LOCALPACKAGEW,
NULL, &type, (LPBYTE) path, &count );
if( r != ERROR_SUCCESS )
{
@ -290,12 +290,12 @@ UINT WINAPI MsiConfigureProductExW(LPCWSTR szProduct, int iInstallLevel,
sz = sizeof(sourcepath);
MsiSourceListGetInfoW(szProduct, NULL, MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT, INSTALLPROPERTY_LASTUSEDSOURCEstringW, sourcepath,
MSICODE_PRODUCT, INSTALLPROPERTY_LASTUSEDSOURCEW, sourcepath,
&sz);
sz = sizeof(filename);
MsiSourceListGetInfoW(szProduct, NULL, MSIINSTALLCONTEXT_USERMANAGED,
MSICODE_PRODUCT, INSTALLPROPERTY_PACKAGENAMEstringW, filename, &sz);
MSICODE_PRODUCT, INSTALLPROPERTY_PACKAGENAMEW, filename, &sz);
strcatW(sourcepath,filename);
@ -530,7 +530,7 @@ UINT WINAPI MsiGetProductInfoW(LPCWSTR szProduct, LPCWSTR szAttribute,
return ERROR_INVALID_PARAMETER;
/* check for special properties */
if (strcmpW(szAttribute, INSTALLPROPERTY_PACKAGECODEstringW)==0)
if (strcmpW(szAttribute, INSTALLPROPERTY_PACKAGECODEW)==0)
{
HKEY hkey;
WCHAR squished[GUID_SIZE];
@ -541,7 +541,7 @@ UINT WINAPI MsiGetProductInfoW(LPCWSTR szProduct, LPCWSTR szAttribute,
if (r != ERROR_SUCCESS)
return ERROR_UNKNOWN_PRODUCT;
r = RegQueryValueExW(hkey, INSTALLPROPERTY_PACKAGECODEstringW, NULL, NULL,
r = RegQueryValueExW(hkey, INSTALLPROPERTY_PACKAGECODEW, NULL, NULL,
(LPBYTE)squished, &sz);
if (r != ERROR_SUCCESS)
{
@ -562,7 +562,7 @@ UINT WINAPI MsiGetProductInfoW(LPCWSTR szProduct, LPCWSTR szAttribute,
RegCloseKey(hkey);
r = ERROR_SUCCESS;
}
else if (strcmpW(szAttribute, INSTALLPROPERTY_VERSIONSTRINGstringW)==0)
else if (strcmpW(szAttribute, INSTALLPROPERTY_VERSIONSTRINGW)==0)
{
r = MsiOpenProductW(szProduct, &hProduct);
if (ERROR_SUCCESS != r)
@ -571,7 +571,7 @@ UINT WINAPI MsiGetProductInfoW(LPCWSTR szProduct, LPCWSTR szAttribute,
r = MsiGetPropertyW(hProduct, szProductVersion, szBuffer, pcchValueBuf);
MsiCloseHandle(hProduct);
}
else if (strcmpW(szAttribute, INSTALLPROPERTY_ASSIGNMENTTYPEstringW)==0)
else if (strcmpW(szAttribute, INSTALLPROPERTY_ASSIGNMENTTYPEW)==0)
{
FIXME("0 (zero) if advertised or per user , 1(one) if per machine.\n");
if (szBuffer)
@ -583,7 +583,7 @@ UINT WINAPI MsiGetProductInfoW(LPCWSTR szProduct, LPCWSTR szAttribute,
*pcchValueBuf = 1;
r = ERROR_SUCCESS;
}
else if (strcmpW(szAttribute, INSTALLPROPERTY_LANGUAGEstringW)==0)
else if (strcmpW(szAttribute, INSTALLPROPERTY_LANGUAGEW)==0)
{
r = MsiOpenProductW(szProduct, &hProduct);
if (ERROR_SUCCESS != r)
@ -1580,14 +1580,14 @@ USERINFOSTATE WINAPI MsiGetUserInfoW(LPCWSTR szProduct, LPWSTR lpUserNameBuf,
if (lpUserNameBuf)
{
sz = *lpUserNameBuf * sizeof(WCHAR);
rc = RegQueryValueExW( hkey, INSTALLPROPERTY_REGOWNERstringW, NULL,
rc = RegQueryValueExW( hkey, INSTALLPROPERTY_REGOWNERW, NULL,
NULL, (LPBYTE)lpUserNameBuf,
&sz);
}
if (!lpUserNameBuf && pcchUserNameBuf)
{
sz = 0;
rc = RegQueryValueExW( hkey, INSTALLPROPERTY_REGOWNERstringW, NULL,
rc = RegQueryValueExW( hkey, INSTALLPROPERTY_REGOWNERW, NULL,
NULL, NULL, &sz);
}
@ -1597,13 +1597,13 @@ USERINFOSTATE WINAPI MsiGetUserInfoW(LPCWSTR szProduct, LPWSTR lpUserNameBuf,
if (lpOrgNameBuf)
{
sz = *pcchOrgNameBuf * sizeof(WCHAR);
rc2 = RegQueryValueExW( hkey, INSTALLPROPERTY_REGCOMPANYstringW, NULL,
rc2 = RegQueryValueExW( hkey, INSTALLPROPERTY_REGCOMPANYW, NULL,
NULL, (LPBYTE)lpOrgNameBuf, &sz);
}
if (!lpOrgNameBuf && pcchOrgNameBuf)
{
sz = 0;
rc2 = RegQueryValueExW( hkey, INSTALLPROPERTY_REGCOMPANYstringW, NULL,
rc2 = RegQueryValueExW( hkey, INSTALLPROPERTY_REGCOMPANYW, NULL,
NULL, NULL, &sz);
}
@ -1620,13 +1620,13 @@ USERINFOSTATE WINAPI MsiGetUserInfoW(LPCWSTR szProduct, LPWSTR lpUserNameBuf,
if (lpSerialBuf)
{
sz = *pcchSerialBuf * sizeof(WCHAR);
RegQueryValueExW( hkey, INSTALLPROPERTY_PRODUCTIDstringW, NULL, NULL,
RegQueryValueExW( hkey, INSTALLPROPERTY_PRODUCTIDW, NULL, NULL,
(LPBYTE)lpSerialBuf, &sz);
}
if (!lpSerialBuf && pcchSerialBuf)
{
sz = 0;
rc = RegQueryValueExW( hkey, INSTALLPROPERTY_PRODUCTIDstringW, NULL,
rc = RegQueryValueExW( hkey, INSTALLPROPERTY_PRODUCTIDW, NULL,
NULL, NULL, &sz);
}
if (pcchSerialBuf)

View File

@ -187,34 +187,34 @@ UINT WINAPI MsiSourceListGetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
if (rc != ERROR_SUCCESS)
return ERROR_UNKNOWN_PRODUCT;
if (strcmpW(szProperty, INSTALLPROPERTY_MEDIAPACKAGEPATHstringW) == 0)
if (strcmpW(szProperty, INSTALLPROPERTY_MEDIAPACKAGEPATHW) == 0)
{
HKEY key;
rc = OpenMediaSubkey(sourcekey, &key, FALSE);
if (rc == ERROR_SUCCESS)
rc = RegQueryValueExW(key, INSTALLPROPERTY_MEDIAPACKAGEPATHstringW,
rc = RegQueryValueExW(key, INSTALLPROPERTY_MEDIAPACKAGEPATHW,
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)
else if (strcmpW(szProperty, INSTALLPROPERTY_DISKPROMPTW) ==0)
{
HKEY key;
rc = OpenMediaSubkey(sourcekey, &key, FALSE);
if (rc == ERROR_SUCCESS)
rc = RegQueryValueExW(key, INSTALLPROPERTY_DISKPROMPTstringW, 0, 0,
rc = RegQueryValueExW(key, INSTALLPROPERTY_DISKPROMPTW, 0, 0,
(LPBYTE)szValue, pcchValue);
if (rc != ERROR_SUCCESS && rc != ERROR_MORE_DATA)
rc = ERROR_UNKNOWN_PROPERTY;
RegCloseKey(key);
}
else if (strcmpW(szProperty, INSTALLPROPERTY_LASTUSEDSOURCEstringW)==0)
else if (strcmpW(szProperty, INSTALLPROPERTY_LASTUSEDSOURCEW)==0)
{
LPWSTR buffer;
DWORD size = 0;
RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEstringW, 0, 0,
RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEW, 0, 0,
NULL, &size);
if (size == 0)
rc = ERROR_UNKNOWN_PROPERTY;
@ -222,7 +222,7 @@ UINT WINAPI MsiSourceListGetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
{
LPWSTR ptr;
buffer = HeapAlloc(GetProcessHeap(),0,size);
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEstringW,
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEW,
0, 0, (LPBYTE)buffer,&size);
ptr = strchrW(buffer,';');
if (ptr) ptr = strchrW(ptr+1,';');
@ -243,19 +243,19 @@ UINT WINAPI MsiSourceListGetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
HeapFree(GetProcessHeap(),0,buffer);
}
}
else if (strcmpW(INSTALLPROPERTY_LASTUSEDTYPEstringW, szProperty)==0)
else if (strcmpW(INSTALLPROPERTY_LASTUSEDTYPEW, szProperty)==0)
{
LPWSTR buffer;
DWORD size = 0;
RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEstringW, 0, 0,
RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEW, 0, 0,
NULL, &size);
if (size == 0)
rc = ERROR_UNKNOWN_PROPERTY;
else
{
buffer = HeapAlloc(GetProcessHeap(),0,size);
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEstringW,
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEW,
0, 0, (LPBYTE)buffer,&size);
if (*pcchValue < 1)
{
@ -270,9 +270,9 @@ UINT WINAPI MsiSourceListGetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
HeapFree(GetProcessHeap(),0,buffer);
}
}
else if (strcmpW(INSTALLPROPERTY_PACKAGENAMEstringW, szProperty)==0)
else if (strcmpW(INSTALLPROPERTY_PACKAGENAMEW, szProperty)==0)
{
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_PACKAGENAMEstringW, 0, 0,
rc = RegQueryValueExW(sourcekey, INSTALLPROPERTY_PACKAGENAMEW, 0, 0,
(LPBYTE)szValue, pcchValue);
if (rc != ERROR_SUCCESS && rc != ERROR_MORE_DATA)
rc = ERROR_UNKNOWN_PROPERTY;
@ -324,31 +324,31 @@ UINT WINAPI MsiSourceListSetInfoW( LPCWSTR szProduct, LPCWSTR szUserSid,
return ERROR_UNKNOWN_PRODUCT;
if (strcmpW(szProperty, INSTALLPROPERTY_MEDIAPACKAGEPATHstringW) == 0)
if (strcmpW(szProperty, INSTALLPROPERTY_MEDIAPACKAGEPATHW) == 0)
{
HKEY key;
DWORD size = lstrlenW(szValue)*sizeof(WCHAR);
rc = OpenMediaSubkey(sourcekey, &key, FALSE);
if (rc == ERROR_SUCCESS)
rc = RegSetValueExW(key, INSTALLPROPERTY_MEDIAPACKAGEPATHstringW, 0,
rc = RegSetValueExW(key, INSTALLPROPERTY_MEDIAPACKAGEPATHW, 0,
REG_SZ, (LPBYTE)szValue, size);
if (rc != ERROR_SUCCESS)
rc = ERROR_UNKNOWN_PROPERTY;
RegCloseKey(key);
}
else if (strcmpW(szProperty, INSTALLPROPERTY_DISKPROMPTstringW) == 0)
else if (strcmpW(szProperty, INSTALLPROPERTY_DISKPROMPTW) == 0)
{
HKEY key;
DWORD size = lstrlenW(szValue)*sizeof(WCHAR);
rc = OpenMediaSubkey(sourcekey, &key, FALSE);
if (rc == ERROR_SUCCESS)
rc = RegSetValueExW(key, INSTALLPROPERTY_DISKPROMPTstringW, 0,
rc = RegSetValueExW(key, INSTALLPROPERTY_DISKPROMPTW, 0,
REG_SZ, (LPBYTE)szValue, size);
if (rc != ERROR_SUCCESS)
rc = ERROR_UNKNOWN_PROPERTY;
RegCloseKey(key);
}
else if (strcmpW(szProperty, INSTALLPROPERTY_LASTUSEDSOURCEstringW)==0)
else if (strcmpW(szProperty, INSTALLPROPERTY_LASTUSEDSOURCEW)==0)
{
LPWSTR buffer = NULL;
DWORD size;
@ -371,16 +371,16 @@ 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_LASTUSEDSOURCEstringW, 0,
rc = RegSetValueExW(sourcekey, INSTALLPROPERTY_LASTUSEDSOURCEW, 0,
REG_EXPAND_SZ, (LPBYTE)buffer, size);
if (rc != ERROR_SUCCESS)
rc = ERROR_UNKNOWN_PROPERTY;
HeapFree( GetProcessHeap(), 0, buffer );
}
else if (strcmpW(INSTALLPROPERTY_PACKAGENAMEstringW, szProperty)==0)
else if (strcmpW(INSTALLPROPERTY_PACKAGENAMEW, szProperty)==0)
{
DWORD size = lstrlenW(szValue)*sizeof(WCHAR);
rc = RegSetValueExW(sourcekey, INSTALLPROPERTY_PACKAGENAMEstringW, 0,
rc = RegSetValueExW(sourcekey, INSTALLPROPERTY_PACKAGENAMEW, 0,
REG_SZ, (LPBYTE)szValue, size);
if (rc != ERROR_SUCCESS)
rc = ERROR_UNKNOWN_PROPERTY;

View File

@ -147,7 +147,7 @@ static UINT ITERATE_FindRelatedProducts(MSIRECORD *rec, LPVOID param)
}
sz = sizeof(DWORD);
RegQueryValueExW(hukey, INSTALLPROPERTY_VERSIONstringW, NULL, NULL,
RegQueryValueExW(hukey, INSTALLPROPERTY_VERSIONW, NULL, NULL,
(LPBYTE)&check, &sz);
/* check min */
ver = MSI_RecordGetString(rec,2);
@ -175,7 +175,7 @@ static UINT ITERATE_FindRelatedProducts(MSIRECORD *rec, LPVOID param)
/* check language*/
sz = sizeof(DWORD);
RegQueryValueExW(hukey, INSTALLPROPERTY_LANGUAGEstringW, NULL, NULL,
RegQueryValueExW(hukey, INSTALLPROPERTY_LANGUAGEW, NULL, NULL,
(LPBYTE)&check, &sz);
RegCloseKey(hukey);
language = MSI_RecordGetString(rec,4);

View File

@ -178,197 +178,160 @@ typedef enum tagMSICODE
/* 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)
static const WCHAR INSTALLPROPERTY_PACKAGENAMEW[] = {'P','a','c','k','a','g','e','N','a','m','e',0};
#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)
static const WCHAR INSTALLPROPERTY_TRANSFORMSW[] = {'T','r','a','n','s','f','o','r','m','s',0};
#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)
static const WCHAR INSTALLPROPERTY_LANGUAGEW[] = {'L','a','n','g','u','a','g','e',0};
#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)
static const WCHAR INSTALLPROPERTY_PRODUCTNAMEW[] = {'P','r','o','d','u','c','t','N','a','m','e',0};
#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)
static const WCHAR INSTALLPROPERTY_ASSIGNMENTTYPEW[] = {'A','s','s','i','g','n','m','e','n','t','T','y','p','e',0};
#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)
static const WCHAR INSTALLPROPERTY_PACKAGECODEW[] = {'P','a','c','k','a','g','e','C','o','d','e',0};
#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)
static const WCHAR INSTALLPROPERTY_VERSIONW[]= {'V','e','r','s','i','o','n',0};
#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)
static const WCHAR INSTALLPROPERTY_PRODUCTICONW[] = {'P','r','o','d','u','c','t','I','c','o','n',0};
#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)
static const WCHAR INSTALLPROPERTY_INSTANCETYPEW[] = {'I','n','s','t','a','n','c','e','T','y','p','e',0};
#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)
static const WCHAR INSTALLPROPERTY_AUTHORIZED_LUA_APPW[] = {'A','u','t','h','o','r','i','z','e','d','L','U','A','A','p','p',0};
#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)
static const WCHAR INSTALLPROPERTY_INSTALLEDPRODUCTNAMEW[] = {'I','n','s','t','a','l','l','e','d','P','r','o','d','u','c','t','N','a','m','e',0};
#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)
static const WCHAR INSTALLPROPERTY_VERSIONSTRINGW[] = {'V','e','r','s','i','o','n','S','t','r','i','n','g',0};
#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)
static const WCHAR INSTALLPROPERTY_HELPLINKW[] = {'H','e','l','p','L','i','n','k',0};
#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)
static const WCHAR INSTALLPROPERTY_HELPTELEPHONEW[] = {'H','e','l','p','T','e','l','e','p','h','o','n','e',0};
#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)
static const WCHAR INSTALLPROPERTY_INSTALLLOCATIONW[] = {'I','n','s','t','a','l','l','L','o','c','a','t','i','o','n',0};
#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)
static const WCHAR INSTALLPROPERTY_INSTALLSOURCEW[] = {'I','n','s','t','a','l','l','S','o','u','r','c','e',0};
#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)
static const WCHAR INSTALLPROPERTY_INSTALLDATEW[] = {'I','n','s','t','a','l','l','D','a','t','e',0};
#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)
static const WCHAR INSTALLPROPERTY_PUBLISHERW[] ={'P','u','b','l','i','s','h','e','r',0};
#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)
static const WCHAR INSTALLPROPERTY_LOCALPACKAGEW[] = {'L','o','c','a','l','P','a','c','k','a','g','e',0};
#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)
static const WCHAR INSTALLPROPERTY_URLINFOABOUTW[] = {'U','R','L','I','n','f','o','A','b','o','u','t',0};
#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)
static const WCHAR INSTALLPROPERTY_URLUPDATEINFOW[] = {'U','R','L','U','p','d','a','t','e','I','n','f','o',0};
#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)
static const WCHAR INSTALLPROPERTY_VERSIONMINORW[] = {'V','e','r','s','i','o','n','M','i','n','o','r',0};
#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)
static const WCHAR INSTALLPROPERTY_VERSIONMAJORW[] = {'V','e','r','s','i','o','n','M','a','j','o','r',0};
#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)
static const WCHAR INSTALLPROPERTY_PRODUCTIDW[] = {'P','r','o','d','u','c','t','I','D',0};
#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)
static const WCHAR INSTALLPROPERTY_REGCOMPANYW[] = {'R','e','g','C','o','m','p','a','n','y',0};
#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)
static const WCHAR INSTALLPROPERTY_REGOWNERW[] = {'R','e','g','O','w','n','e','r',0};
#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)
static const WCHAR INSTALLPROPERTY_UNINSTALLABLEW[] = {'U','n','i','n','s','t','a','l','l','a','b','l','e',0};
#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)
static const WCHAR INSTALLPROPERTY_PRODUCTSTATEW[] = {'S','t','a','t','e',0};
#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)
static const WCHAR INSTALLPROPERTY_PATCHSTATEW[] ={'S','t','a','t','e',0};
#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)
static const WCHAR INSTALLPROPERTY_PATCHTYPEW[] = {'P','a','t','c','h','T','y','p','e',0};
#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)
static const WCHAR INSTALLPROPERTY_LUAENABLEDW[] = {'L','U','A','E','n','a','b','l','e','d',0};
#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)
static const WCHAR INSTALLPROPERTY_DISPLAYNAMEW[] = {'D','i','s','p','l','a','y','N','a','m','e',0};
#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)
static const WCHAR INSTALLPROPERTY_MOREINFOURLW[] = {'M','o','r','e','I','n','f','o','U','R','L',0};
#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)
static const WCHAR INSTALLPROPERTY_LASTUSEDSOURCEW[] = {'L','a','s','t','U','s','e','d','S','o','u','r','c','e',0};
#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)
static const WCHAR INSTALLPROPERTY_LASTUSEDTYPEW[] = {'L','a','s','t','U','s','e','d','T','y','p','e',0};
#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)
static const WCHAR INSTALLPROPERTY_MEDIAPACKAGEPATHW[] = {'M','e','d','i','a','P','a','c','k','a','g','e','P','a','t','h',0};
#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)
static const WCHAR INSTALLPROPERTY_DISKPROMPTW[] = {'D','i','s','k','P','r','o','m','p','t',0};
#define INSTALLPROPERTY_DISKPROMPT WINELIB_NAME_AW(INSTALLPROPERTY_DISKPROMPT)
typedef INT (CALLBACK *INSTALLUI_HANDLERA)(LPVOID, UINT, LPCSTR);