VC6 cannot handle class reference initialization in structs
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@7114 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
13fe58949c
commit
2bf0cf7025
4 changed files with 11 additions and 5 deletions
|
@ -151,14 +151,20 @@ ${V_SetVT} ${pV} ${VT_EMPTY}
|
||||||
System::Call 'OLEAUT32::#9(p${pV})'
|
System::Call 'OLEAUT32::#9(p${pV})'
|
||||||
!macroend
|
!macroend
|
||||||
!macro VariantCopy pDstV pSrcV sysretHR
|
!macro VariantCopy pDstV pSrcV sysretHR
|
||||||
System::Call 'OLEAUT32::#10(p${pDstV},p${pSrcV})i.${sysretHR}'
|
System::Call 'OLEAUT32::#10(p${pDstV},p${pSrcV})i.${sysretHR}' ; (Frees the destination variant before it copies the source)
|
||||||
!macroend
|
!macroend
|
||||||
!macro VariantChangeType pDstV pSrcV Flags VT sysretHR
|
!macro VariantChangeType pDstV pSrcV Flags VT sysretHR
|
||||||
System::Call 'OLEAUT32::#12(p${pDstV},p${pSrcV},i${Flags},i${VT})i.${sysretHR}'
|
System::Call 'OLEAUT32::#12(p${pDstV},p${pSrcV},i${Flags},i${VT})i.${sysretHR}'
|
||||||
!macroend
|
!macroend
|
||||||
|
|
||||||
|
|
||||||
!macro PropVariantClear pPV
|
!macro PropVariantClear pPV
|
||||||
System::Call 'OLE32::PropVariantClear(p${pV})' ; Win95+, WinNT4.SP2+
|
System::Call 'OLE32::PropVariantClear(p${pV})' ; WinNT4.SP0+, Win98+, IE4+
|
||||||
!macroend
|
!macroend
|
||||||
|
!macro PropVariantCopy pDstV pSrcV sysretHR
|
||||||
|
System::Call 'OLE32::PropVariantCopy(p${pDstV},p${pSrcV})i.${sysretHR}' ; WinNT4.SP0+, Win98+, IE4+ (PropVariantCopy does not free the destination before it copies the source)
|
||||||
|
!macroend
|
||||||
|
|
||||||
|
|
||||||
!macro IPropertyStorage_ReadPropById pPS ID pPV sysoutHR
|
!macro IPropertyStorage_ReadPropById pPS ID pPV sysoutHR
|
||||||
System::Call '*(p${PRSPEC_PROPID},p${ID})p.s'
|
System::Call '*(p${PRSPEC_PROPID},p${ID})p.s'
|
||||||
|
|
|
@ -2384,7 +2384,7 @@ int CEXEBuild::SetManifest()
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
init_res_editor();
|
init_res_editor();
|
||||||
manifest::SPECIFICATION spec = { (manifest::flags) manifest_flags, manifest_dpiaware, manifest_dpiawareness.c_str(), manifest_lpaware, manifest_sosl, manifest_maxversiontested.c_str() };
|
manifest::SPECIFICATION spec = { (manifest::flags) manifest_flags, manifest_dpiaware, manifest_dpiawareness.c_str(), manifest_lpaware, &manifest_sosl, manifest_maxversiontested.c_str() };
|
||||||
string manifest = manifest::generate(manifest_comctl, manifest_exec_level, spec);
|
string manifest = manifest::generate(manifest_comctl, manifest_exec_level, spec);
|
||||||
|
|
||||||
if (manifest == "")
|
if (manifest == "")
|
||||||
|
|
|
@ -97,7 +97,7 @@ string generate(comctl comctl_selection, exec_level exec_level_selection, const
|
||||||
dpiaware dpia = spec.DPIA;
|
dpiaware dpia = spec.DPIA;
|
||||||
const TCHAR *dpia2 = spec.DPIA2;
|
const TCHAR *dpia2 = spec.DPIA2;
|
||||||
longpathaware lpa = spec.lpaware;
|
longpathaware lpa = spec.lpaware;
|
||||||
SupportedOSList& sosl = spec.SOSL;
|
SupportedOSList& sosl = *spec.pSOSL;
|
||||||
const TCHAR *mvt = spec.MaxVersionTested;
|
const TCHAR *mvt = spec.MaxVersionTested;
|
||||||
|
|
||||||
bool default_or_empty_sosl = sosl.isdefaultlist() || !sosl.getcount();
|
bool default_or_empty_sosl = sosl.isdefaultlist() || !sosl.getcount();
|
||||||
|
|
|
@ -99,7 +99,7 @@ namespace manifest
|
||||||
dpiaware DPIA;
|
dpiaware DPIA;
|
||||||
const TCHAR *DPIA2; // Win10FU1607+
|
const TCHAR *DPIA2; // Win10FU1607+
|
||||||
longpathaware lpaware;
|
longpathaware lpaware;
|
||||||
SupportedOSList& SOSL;
|
SupportedOSList*pSOSL;
|
||||||
const TCHAR *MaxVersionTested; // Win10FU1903+ github.com/microsoft/AppConsult-WinAppsModernizationWorkshop/tree/master/Exercise2
|
const TCHAR *MaxVersionTested; // Win10FU1903+ github.com/microsoft/AppConsult-WinAppsModernizationWorkshop/tree/master/Exercise2
|
||||||
} SPECIFICATION;
|
} SPECIFICATION;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue