[Main]
Title=Macro Library (ML)
Type=Plugin
Author=Pedro Le 15, Galapo, Lancelot
Description=(v43.93) Macro Library (ML) contains Macros(=Commands) which helps creating Plugins and Projects easier.
Credits=To all who supported Macro Library (ML) projects being developed at http://TheOven.org
Version=43
Revision=93
Download_Level=0
Level=1
Selected=None
Mandatory=False
NoWarning=False
Contact=http://TheOven.org/index.php?board=14
Date=2017.11.26
Depend=
Disable=
CertifiedBy=
Certification=
InterfaceList=Interface,Interface_Upload_Tee_Error,Interface_RevisionCheckPlugin
Web1=http://gena.cwcodes.net/Projects/Gena/Basic/Build/Macro_Library.script
WebRootSubSub=Build

[INIVariables]
Servers=win10se.cwcodes.net,win81se.cwcodes.net,w8pese.cwcodes.net,w7pese.cwcodes.net,gena.cwcodes.net,yomi-gena.cwcodes.net,yomi.cwcodes.net,uptodates.cwcodes.net

[Variables]
%CBClean_TYPE%=2
%CBClean0%=False
%CBClean1%=True
%CBClean2%=True
%CBClean3%=True
%CBClean4%=True
%CBClean5%=True
%CBClean6%=True
%CBClean7%=True
%CBClean8%=True
%CBClean9%=True
%CBClean10%=True

[Api_Def]
%APIVAR%=ApiVar
%APIDEF%=MacroLibrary
%APISUBDEF%=Add_Shortcut,Add_DesktopIni,Add_Url,*Add_Pin,Arch,Call,ChangeInterface,Others,Web,Registry,Require,RunFrom,Variable

[IniVariablesApi]
_ML_SHToRoot=
_ML_SubFoldersToRoot=Falsy
_ML_WarnWhenSetApi=False
_ML_CopyMui=Off
_ML_NowarnPreserveNodebugwarn=
_ML_NoShortcutSubfolders=

[ApiVar]
%Shc_Mode%=0
_Calculate=Run,%API%,Calculate
Add_Shortcut=Run,%API%,AddShortcut%_ML_Shortcut_TYPE%
Add_Pin=Run,%Api%,Add_Pin_Process%API_TYPE%
Add=Run,%API%,Add_
AddAutoRun=Run,%API%,Add_Auto_Run%API_TYPE%
AddPostConfig=Run,%API%,Add_Post_Config%API_TYPE%
Arch=Run,%API%,Arch_check
Call=Run,%API%,_CenterCa
RegAddBoot=Run,%API%,RegAdd_boot_%_ML_RegAddBootMethod%
Require_FileQ=Run,%API%,Expand_FileQ%API_TYPE%%SourceArch%%TargetWOW64%%PluginArch%
Require=Run,%API%,Expand_FileX%API_TYPE%
RunFrom=Run,%API%,RunFrom_%_ML_RF_TYPE%
ReadENV=Run,%API%,Read_ENV%API_TYPE%
ChangeInterface=Run,%API%,_ScriptInterface

[API]

[_Calculate]
Full Syntax="//_Calculate,AutoIT Command(expression),ReturnVar(without %)"
Note="//Allways use simple quote in expression ,use [#$c] in place of [,] and use  %ReturnVar% (with %) as result in your code . See AutoIT doc"
-=
MsgBox="_Calculate,MsgBox(2#$c'Test Calculate'#$c'Choice:'#$c5),Choice"
InputBox="_Calculate,InputBox('Question'#$c 'Where were you born?'#$c 'Planet Earth'#$c ''#$c -1#$c -1#$c -1#$c -1),Answer"

[Add_URL]
Default Value="Add,Url,Favorites,<filename>,<webaddress>"
Full Syntax="Add,Url,[Type],<filename>,<webaddress>,[UrlDll][None]<url icon address>,[None]<IconIndex>,[None]<HotKey>"
-=
Sample Favorites="Add,Url,,Google.url,http://www.google.com"
Sample Links="Add,Url,Links,Google.url,http://www.google.com"
-=
Sample Favorites SubF="Add,Url,Favorites,"My Folder\Google.url",http://www.google.com"
Sample StartMenu="Add,Url,StartMenu,Google.url,http://www.google.com"
Sample StartMenuRoot="Add,Url,StartMenuRoot,Google.url,http://www.google.com"
Sample Desktop="Add,Url,Desktop,Google.url,http://www.google.com"
Sample Path="Add,Url,Path,%Target_Win%\Google.url,http://www.google.com"
-=
Sample Icon Url.dll="Add,Url,,Google.url,http://www.google.com,UrlDLL"
Sample Icon Ico="Add,Url,,Google.url,http://www.google.com,#$psystemroot#$p\system32\blabla.ico"

[*Add_Pin]
Full Syntax="//Add_Pin,Type,Order(0,1,2,..,8,9),(path\)FileName,Title,Work Folder,Parameters,(path\)IconFile#$cIconIndex,StartMode=(1,2,3)#$cHotKey,ToolTipText"
Default Value="Add_Pin,StartMenu,,%PE_Programs%\%ProgramFolder%\%ProgramExe%,%ProgramTitle%"
-=
Sample File="Add_Pin,Taskbar,,#$pSystemRoot#$p\calc.exe"
Sample Lnk="Add_Pin,StartMenu,0,"$Desktop\My Computer.lnk""
Sample RecentPrograms="Add_Pin,RecentPrograms,,$Start_Menu\Programs\Accessories\Notepad.lnk"
-=
StartMenu="Add_Pin,StartMenu"
TaskBar="Add_Pin,Taskbar"
RecentPrograms="Add_Pin,RecentPrograms"

[Add_DesktopIni]
Full Syntax="Add,DesktopIni,[type],<Folder>,<Section>,[value],[data]"
-=
Sample Desktop="Add,DesktopIni,Desktop,,,Explorer.lnk,@shell32.dll#$c-22067"
Sample StartMenu="Add,DesktopIni,StartMenu,,,Explorer.lnk,@shell32.dll#$c-22067"
Sample StartMenuRoot="Add,DesktopIni,StartMenuRoot,,,Command Prompt.lnk,@shell32.dll#$c-22022"
Sample Accessories="Add,DesktopIni,Accessories,,,Notepad.lnk,@shell32.dll#$c-22051"
Sample QuickLaunch="Add,DesktopIni,QuickLaunch,,,Explorer.lnk,@shell32.dll#$c-22067"
Sample SendTo="Add,DesktopIni,SendTo,,,Notepad.lnk,@shell32.dll#$c-22051"
-=
Sample Path="Add,DesktopIni,Path,%Target_PE%\AFolder,.ShellClassInfo,LocalizedResourceName,@shell32.dll#$c-28996"

[Add_Shortcut]
Full Syntax="//Add_Shortcut,Type,StartMenuFolder,(path\)FileName,Title,Work Folder,Parameters,(path\)IconFile#$cIconIndex,StartMode=(1,2,3)#$cHotKey,ToolTipText"
Default Value="Add_Shortcut,StartMenu,,%PE_Programs%\%ProgramFolder%\%ProgramExe%,%ProgramTitle%,%PE_Programs%\%ProgramFolder%\%ProgramExe%,,%ProgramExe%,1"
-=
Desktop="Add_Shortcut,Desktop"
QuickLaunch="Add_Shortcut,QuickLaunch"
StartMenu="Add_Shortcut,StartMenu"
AutoRun="Add_Shortcut,AutoRun"
AutoRun Minimized="Add_Shortcut,AutoRun,,,,,,,2"
SendTo="Add_Shortcut,SendTo"
-=
EditWith="Add_Shortcut,EditWith,Edit with %ProgramTitle%"
-=
Accessories="Add_Shortcut,Accessories"
AdministrativeTools="Add_Shortcut,AdministrativeTools"
SystemTools="Add_Shortcut,SystemTools"

[AddAutoRun]
Default Value="AddAutoRun,%ProgramTitle%,%PE_Programs%\%ProgramFolder%\%ProgramExe%,,1"
Full Syntax="//AddAutoRun,Title,(path\)FileName,Parameters,StartMode=(1,2,3,4)"

[*AddPostConfig]
Default Value="AddPostConfig,%ProgramTitle%,%PE_Programs%\%ProgramFolder%\%ProgramExe%,,1"
Full Syntax="//AddPostConfig,Title,(path\)FileName,Parameters,StartMode=(1,2,3,4)"

[Arch]
Full Syntax="//Arch,x86|x64|IA64"
Default Value="Arch,x86"
-=
Compatible between x86 and x64="Arch,x86|x64"
Set architecture temporarily to %SourceArch%="Arch,Off"
Reset architecture to architecture of program="Arch,On"

[Call]
FileDelete="Call,FileDelete,<file>   (DO NOT USE WILDCARDS (? and *)"
DirDelete="Call,DirDelete,<Directory>   (DO NOT USE WILDCARDS (? and *))"
FileDeleteX="Call,FileDeleteX,<file>"
DirDeleteX="Call,DirDeleteX,<Directory>"
DirDeleteE="Call,DirDeleteE,<Directory>"
DirDeleteMake="Call,DirDeleteMake,<Directory>"
DirMake="Call,DirMake,<Directory>"
-=
Rename="Call,Rename,<CurrentFile/FolderName>,<NewFile/FolderName>"
-=
DirCopy="Call,DirCopy,<FromDir>,<ToDir>,[OverWrite]"
DirMove="Call,DirMove,<FromDir>,<ToDir>"
FileCopyMUI="Call,FileCopyMUI[-Host][-Source],<FromDir>\<File>,<ToDir>,[MuiLangs]"
-=
FileCreateBlank="Call,FileCreateBlank,<file>,[OverWrite|OverWriteBackup]"
-=
AddInterface="Call,AddInterface,<PluginFile>,[<Interface>],<prefix>"
Exec="Call,ExecCall,<PluginFile>,Section"
-=
FileCopyBiggerVersion="Call,FileCopyBiggerVersion,<File>,<ToFolder>,[File]"
CompareVersions="Call,CompareVersions,<ver1>,<ver2>,var //--> var results: Bigger , Smaller , Equal"
-=
HostOSArch="Call,HostOSArch"
HostOSVersion="Call,HostOSVersion,,[VersionNo|x]"
TargetVersion="Call,TargetVersion,,[VersionNo|x]"
Version="Call,Version,<File>,[Var],[VersionNo|x]"
-=
TargetFolders="Call,Target<Folder>,[var]  Folder: Desktop Appdata AUAppdata LocalSettingsAppdata OS-Folder(to write registry): AppdataOS AUAppdataOS"
TargetFolders-Example="Call,TargetDesktop"
-=
StarterCMD="Call,StarterCMD,[Shortcuts]"
-=
Echo="Call,Echo,<EchoMessage>,[Warn],[Repeat],[Message|MessageInformation|MessageError],[Seconds],[Halt|Exit]"
Echo-ExampleA="Call,Echo,"I Warn You",Warn"
Echo-ExampleB="Call,Echo,"I Warn You",Warn,,Message,,Exit"
FileNameNoExt="Call,FileNameNoExt,<FileName>|<File>,[Var]"
StringLength="Call,StringLength,<value>"
-=
CreatePlugin="Call,CreatePlugin,[PluginFile],<Level>,<AuthorName>,[Download.ico|<File>]"
CreateLink="Call,CreateLink,[PluginFile],<TargetFolder>,[TargetFileName],[Selected]"
LinkType="Call,LinkType,<Var>,<%File%>,<%ProjectDir%> --> PluginFile LinkFolder LinkFile FileMain FolderFile File"
CreateCodeBox="Call,CreateCodeBox,,Simple/Plugin/NoOverWrite"
CreateEmptyLink="Call,CreateEmptyLink,<File.Link>,<Link>,<Selected>"
CreateFolderPlugin="Call,CreateFolderPlugin,<Folder>,<Title>,<Description>"
CreateBulletinPlugin="Call,CreateBulletinPlugin,[PluginFile],<Level>,<AuthorName>,<Title>,<WebLink>,<PutLocation(BaseDirSubFolder)>"
-=
OpenDir="Call,OpenDir,<Path>"
Start="Call,Start[Wait],<Option (Open - Hide)>,<ExecutableName>,[Parameters],[StartInFolder]"
StartExample="Call,Start,,%ProgramEXE%,,%ProjectTemp%\TempExtractFolder\%ProgramFolder%\%ProgramFolder%"
StartDoc="Call,StartDoc,<File>"
StartDocNotePad="Call,StartDocNotePad,<File>"

[Call_CANCELLED]
Since Dot83Support (short path support) only required at builder folder ;) rest of syntax not official to keep easy understanding
Dot83Support="Call,Dot83Support,<TestFolder>,[<TestSubFolder>],[var] // 1 = Dot83 supported // 0 = Dot83 Not supported)"
-=
These are original (developed) HiveCreate macros BUT to keep things simple (and due to real life needs) Call,HiveCreateF,[HiveFile] is official sytax ;)
HiveCreateF="Call,HiveCreate,[Folder],[HiveFileName],[LoadHive],[HiveFileNameTemp] // Default: %ProjectTemp%/NewHive.hiv/TMP/[FileNameHive]_Temp"
HiveCreate="Call,HiveCreateF,[HiveFile],[LoadHive],[HiveFileNameTemp] // Default: %ProjectTemp%/NewHive.hiv/TMP/[FileNameHive]_Temp"
Example:HiveCreateF="Call,HiveCreate,%ProjectTemp%,Test.hiv"
Example:HiveCreate="Call,HiveCreateF,%ProjectTemp%\Test.hiv"
-=
Copy="Call,Copy,<source>,<target>,[Directory][File][All],[ExcludeList]"
Exist="Call,Exist,CheckFile|CheckDir,<file>|<Dir>,[VariableName]"

[ReadENV]
ReadENV="ReadENV"

[Registry]
Load Default="RegHiveLoad,Tmp_Default,%RegDefault%"
Load Software="RegHiveLoad,Tmp_Software,%RegSoftware%"
Load System="RegHiveLoad,Tmp_System,%RegSystem%"
-=
UnLoad Default="RegHiveUnLoad,Tmp_Default"
UnLoad Software="RegHiveUnLoad,Tmp_Software"
UnLoad System="RegHiveUnLoad,Tmp_System"
-=
RegAddBoot="RegAddBoot,RootKey,StringType,Section,Key,String"
-=
RegRead="RegRead,HKLM,SYSTEM\CurrentControlSet\Control,CurrentUser,%t%"
RegWrite="RegWrite,HKLM,0x1,Tmp_Default\TestKey,TestValue,TestData"
ExistRegSection="If,ExistRegSection,HKLM,Tmp_Software,"
ExistRegKey="If,ExistRegKey,HKLM,Tmp_Default\TestKey,Test_Value,"
-=
REGREDIRECT_Info="//To read none x86 hostos registry keys (hostos x64) - always read between 2 regredirect lines"
REGREDIRECT64="System,REGREDIRECT,64"
REGREDIRECTOFF="System,REGREDIRECT,OFF"
-=
HiveCreate="Call,HiveCreate,[HiveFile]"
-=
RegMultiSZ="Call,RegMultiSZ,<Append|Prepend|Replace>,<Key>,<Valuename>,<Value>"
RegMultiSZ Ex="Call,RegMultiSZ,Append,Tmp_System\ControlSet001\Control\Class\{4D36E967-E325-11CE-BFC1-08002BE10318},UpperFilters,PartMgr,fltsrv"
-=
RegWriteBinaryBit="Call,RegWriteBinaryBit,HexNo,BitNo,NewBit,HKLM,0x3,"Tmp_Default\Control Panel\Desktop",UserPreferencesMask"

[Require]
Require_FileQ Default Value="Require_FileQ,filename"
-=
PluginArch Default="Set,%PluginArch%,x86"
-=
Require Font="Require,Font,[Filename],<RegistryName>"
Require Drivers="Require,Drivers,[Filename]"
Require Inf="Require,Inf,[Filename]"
-=
Require Dependency="Require,File,DependencyName"
Require Dependency Net.exe="Require,File,Net.exe"
Require Dependency Xcopy.exe="Require,File,Xcopy.exe"
Require DepCMD_Cmh="Require,File,Cmd.exe Attrib.exe Cacls.exe Chcp.com Chkdsk.exe Chkdsk.exe Chkdsk.exe,[NoFN] Chkntfs.exe"
Require DepCMD_Cio="Require,File,Cipher.exe Comp.exe Compact.exe Convert.exe"
Require DepCMD_DF="Require,File,DiskComp.com DiskCopy.com Doskey.exe Expand.exe Fc.exe Find.exe Findstr.exe Format.com Format.com,[NoFN] FsUtil.exe"
Require DepCMD_HM="Require,File,Help.exe Ipconfig.exe Label.exe Makecab.exe Mode.com More.com MountVol.exe"
Require DepCMD_NR="Require,File,Net.exe  Net.exe,Netmsg.dll,Net.hlp Netsh.exe,[NoHelperDLL] Ntsd.exe Recover.exe Reg.exe Regini.exe Regsvr32.exe Replace.exe"
Require DepCMD_SX="Require,File,Sc.exe Sort.exe Subst.exe Tree.com Xcopy.exe"
Require DepCMD_VV="Require,File,hid.dll"
Require DepCMD_ZY="Require,File,HideRun.exe sleep.exe nircmd.exe nircmdc.exe AU3381.exe whoami.exe RoboCopy.exe"
Require DepCMD_ZZ="Require,File,EchoFile.exe_BlueLife,<Folder> ssr.exe_Ross_MacGregor,<Folder>"
-=
Require DepGui="Require,File,Notepad.exe Regedit.exe Taskmgr.exe"
-=
Require DepSpecial (fltmgr.sys xpsp2res.dll)="Require,File,BrowseForFolder WinLogonDep RunOnceDep Rundll32.exe lsass.exe Services.exe imagehlp.dll NTDLL.DLL xpsp2res.dll ws03res.dll xpob2res.dll w03a2409.dll fltmgr.sys storport.sys diskdump.sys"
-=
Require DepWinSxS1 (GdiPlus.dll)="Require,File,GdiPlus.dll Comctl32.dll VisualCPlusPlus WinSxS"
Require DepWinSxS2="Require,File,GdiPlus.dll,10 GdiPlus.dll,1000 GdiPlus.dll,101000 WinSxS,OnlySourceArch WinSxS,x86"
-=
Require Registry="Require,Registry,[Name]"
Require Registry Example="Require,Registry,BrowseForFolder msxml3.dll fltmgr.sys"
-=
Require HighVersion Full Syntax="//Require,HighVersion,filename,TargetWin|TargetWin\System32|TargetWin\System32\Drivers|ProgramFiles|CommonFiles"
Require HighVersion Default Value="Require,Highversion,filename,TargetWin\System32"
-=
Exclude Folder from UnUPXing="Require,NoUnUPX,Folder,folder_path_to_exclude"

[RunFrom]
RamX="RunFrom,Ram-X"
Ram="RunFrom,Ram"
CD="RunFrom,CD"
Default="RunFrom,Default"

[ChangeInterface]
Read=ChangeInterface,Read,[Element],<file>,<section>,<name>,var
Write=ChangeInterface,Write,[Element],<file>,<section>,<name>,<data>
-=
Write Value=ChangeInterface,Write,Value,<file>,<section>,<name>,<data>
Write State=ChangeInterface,Write,State,<file>,<section>,<name>,<data>
Write Position=ChangeInterface,Write,Position,<file>,<section>,<name>,<data>,<posleft>
-=
Read Value=ChangeInterface,Read,Value,<file>,<section>,<name>,var
Read State=ChangeInterface,Read,State,<file>,<section>,<name>,var
Read Position=ChangeInterface,Read,Position,<file>,<section>,<name>,var,<posleft>

[ChangeInterface_Cancelled]
Read Value=ChangeInterface,Read,%VarResult%,Filename,ComponentName[,Position][,Interface]
Write Value=ChangeInterface,Write,NewValue,Filename,ComponentName[,Position][,Interface]
Set Component State=ChangeInterface,State,ComponentName[,State (1=show 0=hide)][,Filename][,RefreshInterface (=True/False)][,Interface]

[Web]
Download="Call,Download,[Folder\|DownloadFile],[Web]"
-=
DownloadX="Call,DownloadX[Q],<Folder\|File>|<Default>,[Web]"
-=
BEYOND_ONLY_ADMINS="Commands beyond are only for admins - Will Change in time"
-=
UploadX="Call,UploadX[Q],<File>,[Web]"
UploadXMulti="Call,UploadXMulti[Q],<File>,<WebReadFile>|<Section>|WebRoot|<WebRootSubSub>,<WebReadFile>|<Section>|Web2|Web3|Web4|Web5"
-=
FileCreateBINI="Call,FileCreateBINI,<File>"
-=
DownloadUpdates="Call,DownloadUpdates,<projectdir>,<changelogfile>,<changelogWEB>,<startfrom-OR-checkoldversions>    Return value %DownloadUpdatesRefresh% True False"
DownloadUpdates_Ex1="Call,DownloadUpdates"
DownloadUpdates_Ex_Ref="Echo,%DownloadUpdatesRefresh%"
DownloadUpdates_Ex2="Call,DownloadUpdates,%BaseDir%\Projects\Win10PESE"
DownloadUpdates_Ex3="Call,DownloadUpdates,%BaseDir%\Projects\Win10PESE,,,-20"
-=
BackupProject="Call,BackupProject,<ProjectFolder>,<BackupFolder>,<OverWrite|Force>"
-=
AddDUBUttons="Call,AddDUBUtton=s"
AddButtonCompareEdit="Call,AddButtonCompareEdi=t"
AddWebPluginLinks="Call,AddWebPluginLink=s"
AddButtonContainer="Call,AddButtonContaine=r"
AddButtonProvideFile_opendir.bmp="Call,AddButtonProvideFil=e"
AddButtonDelete_trash.bmp="Call,AddButtonDelet=e"
AddButtonEdit="Call,AddButtonEdi=t"
AddOptimumBevel="Call,AddOptimumBeve=l"
-=
CompareEdit="Call,CompareEdit,<File1>,<File2>"
CompareEditDirect="Call,CompareEditDirect,<Target1>,<Target2>"
CompareMD5FileSize="Call,CompareMD5FileSize,,File1,File2,[MD5 or FileSize]"
CompareINI="Call,CompareINI,[Var],<Section>,<Value>,File1,File2,[Value to Compare with File1]"

[Web_Development_NOTUSED]
To do:
check downloadq in detail to develop further
---
--> [FileCopy_To_Backup]
---
download updates via Utils\ChangeLog....
---
AddDUBUttons2="Call,AddDUBUtton=s,<File>,Container,WebRoot  TEMPORARY MACRO WILL BE REMOVED"
-=
DownloadX="Call,DownloadX[Q],<Folder\|File>|<Default>,[Web],<NORESCAN>"
<NORESCAN> ->> hidden feature ;) maybe we should NORescan as default ;)
-=
UploadXMulti="Call,UploadXMulti,<File>,<WebReadFile>|<Section>|WebRoot|<WebRootSubSub>"
UploadXMulti-Ex="Call,UploadXMulti,,%ProjectDir%\Utils\UploadX_WebRoots_SE.Script||WebRoot"
UploadXMulti-Ex2="Call,UploadXMulti,"%BaseDir%\Gena\Utils\Plugin_Creator_10_Packed.script","%ProjectDir%\Utils\WebRoots_SE_Gena.Script||WebRoot|Utils""
-=
Download="Call,Download,[Folder\|DownloadFile],[Web],<NoExit>,<Hide>"
-=
DownloadX="Call,DownloadX,<Folder\|File>|<Default>,[Web],<NORESCAN>,<LinkFolder><NoLink>"
DownloadXM="Call,DownloadXM,<ProjectName>"
-=
CheckServer="Call,CheckServer,,WebFile"
CheckServerAll="Call,CheckServerAll,,[ProjectName],OpenWebLog"
-=
_UploadX="Call,UploadX[Q],<File>,[Web],<NOUpdatesINI>"
_UploadXMulti="Call,UploadXMulti,<File>,<WebReadFile>|<Section>|WebRoot<,<NOUpdatesINI>"
_UploadXMulti-Ex="Call,UploadXMulti,,%ProjectDir%\Utils\WebRoots_SE.Script||WebRoot"

[Others]
ML_CodeBox="If,ExistFile,%api%,AddVariables,%api%,ApiVar,GLOBAL"
SelectCase="Call,SelectCase,%Var%,ListVar1,[ListVar2],[1]"
-=
HostIsAdmin="Call,HostIsAdmin"
HostUAC-Enabled="Call,HostUAC,,Enabled // 0 = NoUAC or Not Exists / 1 = YesUAC"
HostUAC="Call,HostUAC // -1 = NoUAC / 0 = UAC Not enabled / 1 = UAC Enabled / And Other Values of UAC"
HostLang="Call,HostMuiLang (Return: HostMuiLang + HostMuiLangAll) HostOSLang HostOSLangDefault"
Dot83Support="Call,Dot83Support // 1 = Dot83 supported / 0 = Dot83 Not supported"
-=
VariableToMacro="Call,VariableToMacro,<macrovariable>,<parameter1>,<parameter2>,<parameter3>,<parameter4>"
ConvertToAnsi="Call,ConvertToAnsi,<file>,[<tofile>]"
-=
HostMisc="Call,HostUserName - Call,HostWOW64 - Call,Host<misc> -> "
HostMisc2="Call,Host<Misc> - COMPUTERNAME ComSpec USERDOMAIN USERDOMAIN_ROAMINGPROFILE PROMPT PROCESSOR_ARCHITECTURE PROCESSOR_ARCHITEW6432 PROCESSOR_ARCHITECTURE,,WOW64 PROCESSOR_ARCHITEW6432,,WOW64"
HostMisc3="Call,Host<Misc> - PROCESSOR_IDENTIFIER PROCESSOR_LEVEL PROCESSOR_REVISION LOGONSERVER NUMBER_OF_PROCESSORS EnvOS EnvPath EnvPATHEXT FP_NO_HOST_CHECK WinDir SessionName __COMPAT_LAYER RANDOM"
HostFolders="Call,Host<Folder>,[var]  Folder: DesktopDir AppDataCommonDir AppDataDir CommonFilesDir CommonFilesDirX86 ProgramFilesDir ProgramFilesDirX86 SystemDir SystemDirX86 TempDir UserProfileDir WindowsDir"
HostFolders-Example="Call,HostWindowsDir"
-=
HostTimes="Call,Host<Time>,[var]  Time: Year Month MonthDay WeekDay Hour Minute Second MSecond"
HostTimes-Example="Call,HostMinute"
-=
DriveGetFileSystem="Call,DriveGetFileSystem,<Path>,[var] // NoDrive - Unknown - FAT - FAT32 - NTFS - NWFS - CDFS - UDF"
DriveGetType="Call,DriveGetType,<Path>,[var] //NoDrive - Unknown - Removable - Fixed - Network - CDROM - RAMDisk"
Priority,PP(Parent Process)="Call,Priority,PP,<value> // value: Idle - BelowNormal - Normal - AboveNormal - High - RealTime"
FileArch="Call,FileArch,,<File>"
-=
RetrieveFolderUniqueID="Call,RetrieveFolderUniqueID,<Folder>,Var"
SaveLog="Call,SaveLog,%BaseDir%\log.html,[TimeStamp] - %SaveLogFile% %SaveLogFileName%"
-=
TxtReplace="Call,TxtReplace,<TextFile>,OldString,NewString"
FileByteCheck="Call,FileByteCheck,<BinaryFile>,<OutFile>,<ByteSignature>,[<BytesLength>]
-=
Math="Call,Math,HexAdd,var,HexValue1,HexValue2"
MathChangeBit="Call,MathChangeBit,Binary|Hex,BitNO,NewBitValue,var,Value"
MathConvert="Call,MathConvert,HexToDecimal|DecimalToHex|BinaryToHex|HexToBinary,var,Value"
-=
CABCompress="Call,CABCompress,<File>,[TargetFile],[NOUpperCASE],[NODelete],[CustomParameter]"
CABCompressEx="Call,CABCompress,%Target_Sys%\Drivers\acpiec.sys"

[Variable]
%ProgramEXE%="%ProgramEXE%"
%ProgramFolder%="%ProgramFolder%"
%Target_Prog%="%Target_Prog%"
%PE_Programs%="%PE_Programs%"
%ScriptFile%="%ScriptFile%"
-=
%Source_Sys%="%Source_Sys%"
%Source_Win%="%Source_Win%"
%Target_Sys%="%Target_Sys%"
%Target_Sys%\Drivers="%Target_Sys%\Drivers"
%Target_Win%="%Target_Win%"
%Target_Win%\SysWOW64="%Target_Win%\SysWOW64"
-=
%ProjectTemp%="%ProjectTemp%"
%ProjectDir%="%ProjectDir%"
%ExitCode%="%ExitCode%"
%SysType%="%SysType%"
%OS%="IniRead,%ProjectDir%\script.project,IniVariables,OS,%OS%  Win10 Win8.1 Win8 Win7 WinVista Waik W2003 XP"
%OSFamily%="%OSFamily% NT5 NT6"
-=
%SourceArch%="%SourceArch%"
%TargetWOW64%="If,%TargetWOW64%,Equal,x86,"
%PluginArch%="Set,%PluginArch%,x86"
-=
%NoWarnFOW%_Read="IniRead,%ProjectDir%\script.project,IniVariables,NoWarnFileOverWrite,%NoWarnFOW%"
%NoWarnFOW%="If,%NoWarnFOW%,Equal,True,System,ERROROFF"
-=
%NoWarnROW%_Read="IniRead,%ProjectDir%\script.project,IniVariables,NoWarnRegOverWrite,%NoWarnROW%"
%NoWarnROW%="If,%NoWarnROW%,Equal,True,System,ERROROFF"
-=
ExtractFileEx="ExtractFile,%ScriptFile%,Folder,%SetupFile%,%ProjectTemp%\TempExtractFolder\%ProgramFolder%"
7zEx="ShellExecute,Hide,%Tools%\7z.exe,"x #$q%ProjectTemp%\TempExtractFolder\%ProgramFolder%\%SetupFile%#$q -y -o#$q%ProjectTemp%\TempExtractFolder\%ProgramFolder%\%ProgramFolder%#$q""
7zEx_aou="ShellExecute,Hide,%Tools%\7z.exe,"x #$q%ProjectTemp%\TempExtractFolder\%ProgramFolder%\%SetupFile%#$q -y -aou -o#$q%ProjectTemp%\TempExtractFolder\%ProgramFolder%\%ProgramFolder%#$q""
-=

[Load_Help]
If,Not,ExistVar,%SysType%,Set,%SysType%,""
If,%pCheckBox1%,Equal,True,Begin
If,ExistFile,%BaseDir%\winbuilder.chm,Begin
Set,%var%,0
Retrieve,FILESIZE,%BaseDir%\winbuilder.chm,%var%
If,%var%,Equal,0,Message,"Winbuilder.chm active (opened)",Error
If,%var%,Equal,0,Exit,"Winbuilder.chm active (opened)"
End
WebGet,http://www.paraglidernc.com/winbuilder/winbuilder.7z,%BaseDir%\winbuilder.7z
If,ExistFile,%BaseDir%\winbuilder.7z,Begin
If,ExistFile,%Tools%\%SysType%\7z.exe,ShellExecute,Hide,%Tools%\%SysType%\7z.exe,"x -y #$q%BaseDir%\winbuilder.7z#$q -o#$q%BaseDir%#$q"
Else,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q%BaseDir%\winbuilder.7z#$q -o#$q%BaseDir%#$q"
FileDelete,%BaseDir%\winbuilder.7z
End
Else,Message,"Fail to download file#$x#$xOpen old file",Error,10
End
Else,Begin
If,Not,ExistFile,%BaseDir%\winbuilder.chm,Begin
If,QUESTION,"The help file winbuilder.chm made by Paraglider is not present in #$pBaseDir#$p#$x#$x#$s#$s#$sDo you want to download it now ?",10,True,Begin
WebGet,http://www.paraglidernc.com/winbuilder/winbuilder.7z,%BaseDir%\winbuilder.7z
If,ExistFile,%BaseDir%\winbuilder.7z,Begin
If,ExistFile,%Tools%\%SysType%\7z.exe,ShellExecute,Hide,%Tools%\%SysType%\7z.exe,"x -y #$q%BaseDir%\winbuilder.7z#$q -o#$q%BaseDir%#$q"
Else,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q%BaseDir%\winbuilder.7z#$q -o#$q%BaseDir%#$q"
FileDelete,%BaseDir%\winbuilder.7z
End
Else,Message,"Fail to download file",Error,10
End
End
Else,Begin
Set,%var%,0
Retrieve,FILESIZE,%BaseDir%\winbuilder.chm,%var%
If,%var%,Equal,0,Message,"Winbuilder.chm active (opened)"
If,%var%,Equal,0,Exit,"Winbuilder.chm active (opened)"
If,%var%,Smaller,333396,Begin
If,QUESTION,"A new help file winbuilder.chm made by Paraglider is available#$x#$x#$s#$s#$sDo you want to download it now ?",10,True,Begin
WebGet,http://www.paraglidernc.com/winbuilder/winbuilder.7z,%BaseDir%\winbuilder.7z
If,ExistFile,%BaseDir%\winbuilder.7z,Begin
If,ExistFile,%Tools%\%SysType%\7z.exe,ShellExecute,Hide,%Tools%\%SysType%\7z.exe,"x -y #$q%BaseDir%\winbuilder.7z#$q -o#$q%BaseDir%#$q"
Else,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q%BaseDir%\winbuilder.7z#$q -o#$q%BaseDir%#$q"
FileDelete,%BaseDir%\winbuilder.7z
End
Else,Message,"Fail to download file#$x#$xOpen old file",Error,10
End
End
End
End
System,FILEREDIRECT,OFF
If,ExistFile,%BaseDir%\winbuilder.chm,ShellExecuteex,Hide,cmd.exe,"/C #$q%BaseDir%\winbuilder.chm#$q",%BaseDir%
System,FILEREDIRECT,ON

[Save_OnbuildExit_Options]
Iniwrite,%ScriptFile%,Variables,#$pCBClean1#$p,%pCheckBox14%
Iniwrite,%ScriptFile%,Variables,#$pCBClean2#$p,True
Iniwrite,%ScriptFile%,Variables,#$pCBClean3#$p,%pCheckBox15%
Iniwrite,%ScriptFile%,Variables,#$pCBClean4#$p,,True
Iniwrite,%ScriptFile%,Variables,#$pCBClean5#$p,%pCheckBox16%
Iniwrite,%ScriptFile%,Variables,#$pCBClean6#$p,,True
Iniwrite,%ScriptFile%,Variables,#$pCBClean7#$p,%pCheckBox17%
Iniwrite,%ScriptFile%,Variables,#$pCBClean8#$p,,True
Iniwrite,%ScriptFile%,Variables,#$pCBClean9#$p,%pCheckBox18%
Iniwrite,%ScriptFile%,Variables,#$pCBClean10#$p,,True
IniDelete,%ScriptFile%,Main,Interface
System,REFRESHINTERFACE

[Save_ApiConfig]
If,%Api%,Equal,%ScriptFile%,Begin
//StrFormat,FILENAME,%Target_Win%,%var%
//StrFormat,POS,"I386|Windows|AMD64|IA64",%var%,%var1%
//StrFormat,LEFT,"I386|Windows|AMD64|IA64",%var1%,%var2%
//StrFormat,SPLIT,%var2%,|,0,%Case%
//If,%Case%,Equal,0,Message,"Unknown #$pTarget_Win#$p=#$pTargetDir#$p\%var% !!#$x Can not initalize #$pApi_Type#$p !!",ERROR
//Else,Begi-n
//StrFormat,SPLIT,"1|2|1|1",|,%Case%,%API_TYPE%
If,%pCheckBox1%,Equal,True,IniWrite,%ScriptFile%,IniVariablesApi,_ML_SHToRoot,"..\"
Else,IniWrite,%ScriptFile%,IniVariablesApi,_ML_SHToRoot,""
If,%pCheckBox_ML_NoShortcutSubfolders%,Equal,True,IniWrite,%ScriptFile%,IniVariablesApi,_ML_NoShortcutSubfolders,nosubfolders
Else,IniWrite,%ScriptFile%,IniVariablesApi,_ML_NoShortcutSubfolders,""
If,%pCheckBox_ML_SubFoldersToRoot%,Equal,True,IniWrite,%ScriptFile%,IniVariablesApi,_ML_SubFoldersToRoot,Truely
Else,IniWrite,%ScriptFile%,IniVariablesApi,_ML_SubFoldersToRoot,Falsy
If,%pCheckBox_reqfile_NowarnPreserveNodebugwarn%,Equal,True,IniWrite,%ScriptFile%,IniVariablesApi,_ML_NowarnPreserveNodebugwarn,Yes
Else,IniWrite,%ScriptFile%,IniVariablesApi,_ML_NowarnPreserveNodebugwarn,""
IniWrite,%ScriptFile%,IniVariablesApi,_ML_WarnWhenSetApi,%pCheckBox10%
If,%pCheckBox4%,Equal,True,Begin
//AddVariables,%ScriptFile%,Api_Def,PERMANENT <== Removed in WB077RC3
If,%Version%,Smaller,81,IniRead,%ScriptFile%,Api_Def,##$pAPIVAR##$p,%APIVAR%
Else,IniRead,%ScriptFile%,Api_Def,#$pAPIVAR#$p,%APIVAR%
IniWrite,%ProjectDir%\Script.project,Variables,#$pAPIVAR#$p,%APIVAR%
If,%Version%,Smaller,81,IniRead,%ScriptFile%,Api_Def,##$pAPIDEF##$p,%APIDEF%
Else,IniRead,%ScriptFile%,Api_Def,#$pAPIDEF#$p,%APIDEF%
IniWrite,%ProjectDir%\Script.project,Variables,#$pAPIDEF#$p,%APIDEF%
If,%Version%,Smaller,81,IniRead,%ScriptFile%,Api_Def,##$pAPISUBDEF##$p,%APISUBDEF%
Else,IniRead,%ScriptFile%,Api_Def,#$pAPISUBDEF#$p,%APISUBDEF%
StrFormat,Replace,%APISUBDEF%,#$c,##$c,%APISUBDEF%
IniWrite,%ProjectDir%\Script.project,Variables,#$pAPISUBDEF#$p,"-"
TXTReplace,%ProjectDir%\Script.project,"#$pAPISUBDEF#$p=-","#$pAPISUBDEF#$p=%APISUBDEF%"
End
Else,Begin
IniWrite,%ProjectDir%\Script.project,Variables,#$pAPIDEF#$p,""
IniWrite,%ProjectDir%\Script.project,Variables,#$pAPISUBDEF#$p,""
End
Iniwrite,%ScriptFile%,Variables,#$pCBClean0#$p,""
Iniwrite,%ScriptFile%,Variables,#$pCBClean1#$p,%pCheckBox14%
Iniwrite,%ScriptFile%,Variables,#$pCBClean2#$p,True
Iniwrite,%ScriptFile%,Variables,#$pCBClean3#$p,%pCheckBox15%
Iniwrite,%ScriptFile%,Variables,#$pCBClean4#$p,True
Iniwrite,%ScriptFile%,Variables,#$pCBClean5#$p,%pCheckBox16%
Iniwrite,%ScriptFile%,Variables,#$pCBClean6#$p,True
Iniwrite,%ScriptFile%,Variables,#$pCBClean7#$p,%pCheckBox17%
Iniwrite,%ScriptFile%,Variables,#$pCBClean8#$p,True
Iniwrite,%ScriptFile%,Variables,#$pCBClean9#$p,%pCheckBox18%
Iniwrite,%ScriptFile%,Variables,#$pCBClean10#$p,True
If,%API_TYPE%,Equal,1,Begin
If,%pCheckBox19%,Equal,True,IniWrite,%ScriptFile%,ApiVar,#$pShc_Mode#$p,1
Else,IniWrite,%ScriptFile%,ApiVar,#$pShc_Mode#$p,0
Iniwrite,%ScriptFile%,Variables,#$pCBClean0#$p,%pCheckBox7%
If,%pCheckBox2%,Equal,True,Begin
IniWrite,%ScriptFile%,IniVariablesApi,_ML_CopyMui,On
StrFormat,LEFT,%pScrollBox1%,1,%VarResult%
IniWrite,%ScriptFile%,ApiVar,#$pCopyMui_Mode#$p,%VarResult%
If,Not,%pFileBox1%,Equal,"",Begin
StrFormat,CTRIM,%pFileBox1%,\,%VarMui%
IniWrite,%ScriptFile%,ApiVar,#$pSource_Mui#$p,%VarMui%
End
End
Else,Begin
IniWrite,%ScriptFile%,IniVariablesApi,_ML_CopyMui,Off
IniDelete,%ScriptFile%,ApiVar,#$pCopyMui_Mode#$p
IniDelete,%ScriptFile%,ApiVar,#$pSource_Mui#$p
End
End
Else,Begin
If,%pRadioGroup1%,Equal,0,IniWrite,%ScriptFile%,Variables,#$pCBClean_TYPE#$p,1
If,%pRadioGroup1%,Equal,1,IniWrite,%ScriptFile%,Variables,#$pCBClean_TYPE#$p,2
If,%pRadioGroup1%,Equal,2,IniWrite,%ScriptFile%,Variables,#$pCBClean_TYPE#$p,3
End
//End
End
Else,Message,"This Api is not set in Script.project#$xReturn without writing change",Information
IniDelete,%ScriptFile%,Main,Interface
System,REFRESHINTERFACE
//System,RESCANSCRIPTS

[Set_InterfaceDefault]
IniDelete,%ScriptFile%,Main,Interface
System,REFRESHINTERFACE

[Set_InterfaceClean]
If,%API_TYPE%,Equal,1,IniWrite,%ScriptFile%,Main,Interface,Interface_Clean1
Else,IniWrite,%ScriptFile%,Main,Interface,Interface_Clean2
System,REFRESHINTERFACE

[Set_InterfaceOptions]
If,%OSFamily%,Equal,NT5,Begin
If,%Version%,Smaller,077.102,Begin
Message,"Macro Library require minimum Winbuilder 077RC2 Please update your version",ERROR,10
Halt,"Wrong WB vesion"
End
End
Else,Begin
If,%Version%,Smaller,080,Begin
Message,"Macro Library require Winbuilder 080 Please update your version",ERROR,10
Halt,"Wrong WB vesion"
End
End
IniWrite,%ScriptFile%,Main,Interface,Interface_%API_TYPE%
System,REFRESHINTERFACE

[Set_Api_Type]
IniRead,%API%,IniVariablesApi,_ML_WarnWhenSetApi,%_ML_WarnWhenSetApi%
If,%API_TYPE%,Equal,2,If,Not,ExistVar,%OsType%,Set,%OsType%,Project,GLOBAL
If,%_ML_WarnWhenSetApi%,Equal,True,Echo,"Set API_Type=%API_Type%  (1=Gena - 2=Vista/Win7 - 98=Live98)",WARN
If,Not,ExistVar,%_ML_Shortcut_TYPE%,Set,%_ML_Shortcut_TYPE%,%API_Type%
If,%OSFamily%,Equal,NT5,Begin
If,%Version%,Smaller,077.102,Begin
Message,"Macro Library require minimum Winbuilder 077RC2 Please update your version",ERROR,10
Halt,"Wrong WB vesion"
End
End
Else,Begin
If,%Version%,Smaller,080,Begin
Message,"Macro Library require Winbuilder 080 Please update your version",ERROR,10
Halt,"Wrong WB vesion"
End
End

[Arch_check]
If,#1,Equal,,Echo,"Using Arch YOU MUST DEFINE Architecture supported by script. Parameter missing",WARN
If,#1,Equal,,Exit,"Using Arch YOU MUST DEFINE Architecture supported by script. Parameter missing"
Set,%arch_onoff%,0
If,#1,Equal,Off,Run,%API%,Arch_Off
If,#1,Equal,On,Run,%API%,Arch_On
If,%arch_onoff%,Equal,0,Run,%API%,Arch_Set,#1

[Arch_Set]
Set,%_ML_ArchApi%,#1
StrFormat,POS,%_ML_ArchApi%,|,%multiarch%
If,%multiarch%,Equal,0,Run,%API%,Arch_SingleArch
Else,Run,%API%,Arch_MultiArch

[Arch_Off]
If,Not,ExistVar,%_ML_ArchApi%,Echo,"Error: 'Arch#$cOff' called before 'Arch#$csupported_architecture'",WARN
Set,%_ML_ArchApi%,%SourceArch%
Set,%orig_arch%,%_ML_ArchApi%
Set,%arch_onoff%,1

[Arch_On]
If,Not,ExistVar,%orig_arch%,Begin
Echo,"Error: 'Arch#$cOn' called before 'Arch#$cOff'",WARN
Set,%orig_arch%,%_ML_ArchApi%
End
Set,%_ML_ArchApi%,%orig_arch%
Set,%arch_onoff%,1

[Arch_SingleArch]
If,%_ML_ArchApi%,Equal,x86,If,Not,%TargetWOW64%,Equal,x86,Exit,"%ProgramTitle% requires WOW64 for PE %SourceArch%"
If,%_ML_ArchApi%,Equal,x64,If,Not,%SourceArch%,Equal,x64,Exit,"%ProgramTitle% can only run on PE x64"
If,%_ML_ArchApi%,Equal,IA64,If,Not,%SourceArch%,Equal,IA64,Exit,"%ProgramTitle% can only run on PE IA64"

[Arch_MultiArch]
Set,%arch_supported%,False
StrFormat,POS,%_ML_ArchApi%,%SourceArch%,%multiarch_test%
If,%multiarch_test%,Bigger,0,Set,%arch_supported%,True
StrFormat,POS,%_ML_ArchApi%,%TargetWOW64%,%multiarch_test%
If,%multiarch_test%,Bigger,0,Set,%arch_supported%,True
If,%arch_supported%,Equal,False,Exit,"%ProgramTitle% requires different source architecture than the current %SourceArch% and/or WOW64 to be enabled."

[AddDesktopini_Info]
//Add,DesktopIni,[type],[Folder],<Section>,<value>,<data>
//
//[type] :
//StartMenu
//StartMenuRoot
//Accessories
//QuickLaunch
//Path
//examples:
//Add,DesktopIni,StartMenu,,,WordPad.lnk,shell32.dll#$c-22069
//Add,DesktopIni,Path,%Target_PE%\AFolder,.ShellClassInfo,LocalizedResourceName,@shell32.dll#$c-28996
//Add,DesktopIni,Path,%Target_PE%\AFolder,.ShellClassInfo,IconFile,#$pSystemRoot#$p\system32\SHELL32.dll
//Add,DesktopIni,Path,%Target_PE%\AFolder,.ShellClassInfo,IconIndex,25
//this gives the ideal simplicity

[Add_Desktopini1]
If,#1,Equal,Path,Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%Api%,AddDesktopini_#1%API_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Add_Desktopini2]
If,#1,Equal,Path,Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%Api%,AddDesktopini_#1%API_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Add_Desktopini98]
If,#1,Equal,Path,Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%Api%,AddDesktopini_#1%API_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_Desktop98]

[AddDesktopini_Desktop1]
IniRead,%projectinfo%,BasePath,Desktop,#1
Set,#2,%TargetProfilesBaseDir%\#1\#2
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_Desktop2]
Set,#2,%TargetProfilesUserDir%\Desktop\#2
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_StartMenu98]

[AddDesktopini_StartMenu1]
IniRead,%projectinfo%,BasePath,StartMenu,#1
Set,#2,%TargetProfilesBaseDir%\#1\#2
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_StartMenu2]
Set,#2,"%TargetProfilesUserDir%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\#2"
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_StartMenuRoot98]

[AddDesktopini_StartMenuRoot1]
IniRead,%projectinfo%,BasePath,StartMenuRoot,#1
Set,#2,%TargetProfilesBaseDir%\#1\#2
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_StartMenuRoot2]
Set,#2,"%TargetProfilesUserDir%\AppData\Roaming\Microsoft\Windows\Start Menu\#2"
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_Accessories98]

[AddDesktopini_Accessories1]
IniRead,%projectinfo%,BasePath,Accessories,#1
Set,#2,%TargetProfilesBaseDir%\#1\#2
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_Accessories2]
Set,#2,"%TargetProfilesUserDir%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\#2"
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_QuickLaunch98]

[AddDesktopini_QuickLaunch1]
IniRead,%projectinfo%,BasePath,QuickLaunch,#1
Set,#2,%TargetProfilesBaseDir%\#1\#2
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_QuickLaunch2]
Set,#2,"%TargetProfilesUserDir%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\#2"
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_SendTo98]

[AddDesktopini_SendTo1]
IniRead,%projectinfo%,BasePath,SendTo,#1
Set,#2,%TargetProfilesBaseDir%\#1\#2
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_SendTo2]
Set,#2,"%TargetProfilesUserDir%\AppData\Roaming\Microsoft\Windows\SendTo\#2"
Run,%Api%,AddDesktopini_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_P]
If,Not,ExistDir,#2,DirMake,#2
If,-#3,Equal,-,Set,#3,LocalizedFileNames
If,Not,ExistFile,#2\desktop.ini,Run,%Api%,AddDesktopini_PNew,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%Api%,AddDesktopini_PWrite,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddDesktopini_PNew]
IniWrite,#2\desktop.ini,#3,#4,#5
ShellExecute,Hide,attrib.exe,"+S +H #$q#2\desktop.ini#$q"
StrFormat,CTRIM,#2,\,#2
ShellExecute,Hide,attrib.exe,"+S +R #$q#2#$q"

[AddDesktopini_PWrite]
ShellExecute,Hide,attrib.exe,"-S -H -R #$q#2\desktop.ini#$q"
IniWrite,#2\desktop.ini,#3,#4,#5
ShellExecute,Hide,attrib.exe,"+S +H #$q#2\desktop.ini#$q"
ShellExecute,Hide,attrib.exe,"+S +R #$q#2#$q"

[Add_]
Run,%API%,Add_#1%API_TYPE%,#2,#3,#4,#5,#6,#7,#8,#9

[Add_URL_Examples]
//Full Syntax="Add,Url,[Type],<filename>,<webaddress>,[UrlDll][None]<url icon address>,[None]<IconIndex>,[None]<HotKey>"
//[Type]               : default Favorites
//<filename>           : do not forget adding extension (.url) ;) also you can add subfolder here
//<url icon address>   : default value None // additionally UrlDll available (ps: UrlDLL=#$psystemroot#$p\system32\url.dll )
//<IconIndex>,<HotKey> : default value 0 // additionally "None" option available
//
//
//
//--For Tests
Add,Url,,GoogleX01.url,http://www.google.com
Add,Url,,GoogleX02.url,http://www.google.com,UrlDll
Add,Url,Favorites,"My Folder\GoogleX03.url",http://www.google.com
Add,Url,Favorites,GoogleX04.url,http://www.google.com,UrlDll
Add,Url,Favorites,GoogleX05.url,http://www.google.com,#$psystemroot#$p\bla.ico,2,asdf
Add,Url,Favorites,Test\GoogleX06.url,http://www.google.com,#$psystemroot#$p\bla.ico,2,asdf
Add,Url,Links,GoogleX07.url,http://www.google.com
Add,Url,StartMenu,GoogleX08.url,http://www.google.com
Add,Url,StartMenu,SMsubFolder\GoogleX09.url,http://www.google.com
Add,Url,StartMenuRoot,GoogleX10.url,http://www.google.com
Add,Url,Desktop,GoogleX11.url,http://www.google.com
Add,Url,Desktop,"dt folder\GoogleX12.url",http://www.google.com
Add,Url,Path,%Target_Win%\GoogleX50.url,http://www.google.com
Add,Url,Path,%Target_prog%\AFolder\GoogleX50.url,http://www.google.com

[Add_URL2_Info]
Possible Locations:
%Target_Win%\System32\Config\SystemProfile\Favorites
%TargetDir%\Users\Default\Favorites
//--
SituationA=(VistaPE-Capi - Leopard)
%TargetProfilesBaseDir%=%TargetDir%
%TargetProfilesUserDir%=%Target_Win%\System32\Config\SystemProfile
SituationB=(Multi7PE - Win7PE SE)
%TargetProfilesBaseDir%=%TargetDir%
%TargetProfilesUserDir%=%TargetProfilesBaseDir%\Users\Default

[Add_URL1]
If,Not,--#1--,Equal,--Path--,Begin
IniRead,%ProjectInfo%,BasePath,Favorites,%_ML_Favorites%
IniRead,%ProjectInfo%,BasePath,Links,%_ML_Favorites_Links%
IniRead,%ProjectInfo%,BasePath,Desktop,%_ML_Desktop%
IniRead,%ProjectInfo%,BasePath,StartMenuRoot,%_ML_StartMenuRoot%
IniRead,%ProjectInfo%,BasePath,StartMenu,%_ML_StartMenu%
If,--#1--,Equal,----,Set,#9,%TargetProfilesBaseDir%\%_ML_Favorites%
If,--#1--,Equal,--Favorites--,Set,#9,%TargetProfilesBaseDir%\%_ML_Favorites%
If,--#1--,Equal,--Links--,Set,#9,%TargetProfilesBaseDir%\%_ML_Favorites_Links%
If,--#1--,Equal,--Desktop--,Set,#9,%TargetProfilesBaseDir%\%_ML_Desktop%
If,--#1--,Equal,--StartMenuRoot--,Set,#9,%TargetProfilesBaseDir%\%_ML_StartMenuRoot%
If,--#1--,Equal,--StartMenu--,Set,#9,%TargetProfilesBaseDir%\%_ML_StartMenu%
End
Run,%API%,Add_URL_All,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Add_URL2]
If,Not,--#1--,Equal,--Path--,Begin
If,--#1--,Equal,----,Set,#9,%TargetProfilesUserDir%\Favorites
If,--#1--,Equal,--Favorites--,Set,#9,%TargetProfilesUserDir%\Favorites
If,--#1--,Equal,--Links--,Set,#9,%TargetProfilesUserDir%\Favorites\Links
If,--#1--,Equal,--Desktop--,Set,#9,%TargetProfilesUserDir%\Desktop
If,--#1--,Equal,--StartMenuRoot--,Set,#9,"%TargetProfilesBaseDir%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs"
If,--#1--,Equal,--StartMenu--,Set,#9,"%TargetProfilesBaseDir%\AppData\Roaming\Microsoft\Windows\Start Menu"
End
Run,%API%,Add_URL_All,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Add_URL_All]
If,--#1--,Equal,--Path--,Begin
StrFormat,Path,#2,#9
StrFormat,CTrim,#9,\,#9
StrFormat,FileName,#2,#2
End
StrFormat,Path,#9\#2,#1
StrFormat,CTrim,#1,\,#1
StrFormat,FileName,#9\#2,#2
If,Not,ExistDir,#1,DirMake,#1
If,--#4--,Equal,--UrlDll--,Set,#4,#$psystemroot#$p\system32\url.dll
If,--#4--,Equal,----,Set,#4,None
If,--#5--,Equal,----,Set,#5,0
If,--#6--,Equal,----,Set,#6,0
IniRead,%ProjectDir%\script.project,IniVariables,NoWarnFileOverWrite,%NoWarnFOW%
If,%NoWarnFOW%,Equal,True,System,ERROROFF
FileCreateBlank,#1\#2
IniWrite,#1\#2,InternetShortcut,URL,#3
If,Not,--#4--,Equal,--None--,IniWrite,#1\#2,InternetShortcut,IconFile,#4
If,Not,--#4--,Equal,--None--,IniWrite,#1\#2,InternetShortcut,IconIndex,#5
If,Not,--#6--,Equal,--None--,IniWrite,#1\#2,InternetShortcut,HotKey,#6

[Add_URL98]
//===>  Add_URL,[Type],[Folder],[URL Title],[webaddress],[IconFile( .ico .exe)],[IconIndex(0)]
echo,"Create URL  #5  "
Set,%favorites%,%Target_Win%\Favorites
Set,%Links%,%favorites%\Links
set,%startmenudefault%,\Programs
set,%TheOven%,"http@@@TheOven.org"
If,#4,Equal,,StrFormat,filename,%TheOven%,#4
If,#3,Equal,,StrFormat,filename,Go to TheOven,#3
If,#7,Equal,,StrFormat,filename,****,#7
If,#8,Equal,,StrFormat,filename,****,#8
run,%API%,Add_URL98_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9  +
TXTReplace,"%ProjectTemp%\INNO.ISS","\\","\"
TXTReplace,%ProjectTemp%\INNO.ISS,"@@@","://"
TXTReplace,%ProjectTemp%\INNO.ISS,"%IconIdex%#$q****#$q"," "
TXTReplace,%ProjectTemp%\INNO.ISS,"%IconFilename%#$q****#$q"," "

[Add_URL98_]
run,%API%,AddURL_Favorites,#1,#2,#3,#4,#5,#6,#7,#8,#9  +

[Add_URL98_Favorites]
If,Not,--#8--,Equal,--,set,#8,"%IconIdex%#$q#8#$q"
If,Not,--#7--,Equal,--,set,#7,"%IconFilename%#$q#7#$q"
//If,Not,--#4--,Equal,--,set,#4,#4
If,Not,--#2--,Equal,--,set,#2,\#2\
IniWriteTextLine,%ProjectTemp%\INNO.ISS,Icons,"Name: #$q%Favorites%#2#3#$q; Filename: #$q#4#$q; #7#8"

[Add_URL98_Links]
If,Not,--#8--,Equal,--,set,#8,"%IconIdex%#$q#8#$q"
If,Not,--#7--,Equal,--,set,#7,"%IconFilename%#$q#7#$q"
//If,Not,--#4--,Equal,--,set,#4,#4
If,Not,--#2--,Equal,--,set,#2,\#2\
IniWriteTextLine,%ProjectTemp%\INNO.ISS,Icons,"Name: #$q%Links%#2#3#$q; Filename: #$q#4#$q; #7#8"

[Add_URL98_StartMenu]
If,Not,--#8--,Equal,--,set,#8,"%IconIdex%#$q#8#$q"
If,Not,--#7--,Equal,--,set,#7,"%IconFilename%#$q#7#$q"
//If,Not,--#4--,Equal,--,set,#4,#4
If,Not,--#2--,Equal,--,set,#2,\#2\
IniWriteTextLine,%ProjectTemp%\INNO.ISS,Icons,"Name: #$q%startmenu_dir%%startmenudefault%#2#3#$q; Filename: #$q#4#$q; #7#8"

[CallC_StartPoint]
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [CallC_StartPoint] @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[_CenterCa]
Run,%API%,CallC_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_]
Echo,"Parameter 2 missing",Warn

[CallC_SelectCase]
Run,%API%,CaseSelect_#5,#2,#3,#4

[CallC_Start]
If,#6-,Equal,-,Run,%api%,CallC_Start_Basic,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%api%,CallC_Start_Extended,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_Start_Extended]
If,#2-,Equal,-,Set,#2,Open
If,Not,#5-,Equal,-,Begin
StrFormat,LEFT,#3,2,#9
StrFormat,LTRIM,#9,1,#9
If,Not,#9,Equal,:,Begin
//StrFormat,CTRIM,%#3,\,#3
Set,#9,--
StrFormat,LEFT,#3,1,#9
If,#9,Equal,\,StrFormat,LTRIM,#3,1,#3
StrFormat,Right,#3,1,#9
If,#9,Equal,\,StrFormat,RTRIM,#3,1,#3
//-
Set,#9,--
//StrFormat,CTRIM,%#5,\,#5
StrFormat,LEFT,#5,1,#9
If,#9,Equal,\,StrFormat,LTRIM,#5,1,#5
StrFormat,Right,#5,1,#9
If,#9,Equal,\,StrFormat,RTRIM,#5,1,#5
//-
If,ExistFile,#5\#3,Set,#3,#5\#3
End
End
If,Not,ExistDir,%BaseDir%\Temp\Macro_Library,DirMake,%BaseDir%\Temp\Macro_Library
Call,FileCreateBlank,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,OverWrite
Call,FileCreateBlank,%BaseDir%\Temp\Macro_Library\Start_Extended.cmd,OverWrite
Call,FileCreateBlank,%BaseDir%\Temp\Macro_Library\Start_Extended_ErrorLevel.ini,OverWrite
//-
TxtAddLine,%BaseDir%\Temp\Macro_Library\Start_Extended_ErrorLevel.ini,"[Error]",Append
//-
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",1_Info,"Start or StartWait"
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",1,#1
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",2_Info,"Open or Hide"
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",2,#2
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",3_Info,"Executable Name"
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",3,#3
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",4_Info,"Parameters"
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",4,#4
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",5_Info,"Start In Folder"
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",5,#5
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",6_Info,"/Min - /Max OR /RealTime /High /AboveNormal /Normal /Low /BelowNormal Ex: /Min /Low"
IniWrite,%BaseDir%\Temp\Macro_Library\Start_Extended.ini,"Info",6,#6
//Call,StartDoc,%BaseDir%\Temp\Macro_Library\Start_Extended.ini
If,#5-,Equal,-,Begin
StrFormat,Path,#3,#5
StrFormat,CTRIM,#5,\,#5
End
If,Not,#6-,Equal,-,Set,#6," #6"
//StartWait
//Start
If,#4-,Equal,-,Begin
If,#1,Equal,StartWait,TxtAddLine,%BaseDir%\Temp\Macro_Library\Start_Extended.cmd,"Start #$q#$q /D #$q#5#$q#6 /Wait #$q#3#$q",Append
If,#1,Equal,Start,TxtAddLine,%BaseDir%\Temp\Macro_Library\Start_Extended.cmd,"Start #$q#$q /D #$q#5#$q#6 #$q#3#$q",Append
End
Else,Begin
If,#1,Equal,StartWait,TxtAddLine,%BaseDir%\Temp\Macro_Library\Start_Extended.cmd,"Start #$q#$q /D #$q#5#$q#6 /Wait #$q#3#$q #4",Append
If,#1,Equal,Start,TxtAddLine,%BaseDir%\Temp\Macro_Library\Start_Extended.cmd,"Start #$q#$q /D #$q#5#$q#6 #$q#3#$q #4",Append
End
//-
TxtAddLine,%BaseDir%\Temp\Macro_Library\Start_Extended.cmd,"Echo ErrorLevel=#$pErrorLevel#$p",Append
TxtAddLine,%BaseDir%\Temp\Macro_Library\Start_Extended.cmd,"Echo 'ErrorLevel=#$pErrorLevel#$p'>>#$q%BaseDir%\Temp\Macro_Library\Start_Extended_ErrorLevel.ini#$q",Append
TxtAddLine,%BaseDir%\Temp\Macro_Library\Start_Extended.cmd,"Exit",Append
//Call,StartDocNotePad,%BaseDir%\Temp\Macro_Library\Start_Extended.cmd
//Terminate batch job (Y/N)? -> when you close cmd application (ex: 7z.exe) during process than there becomes hidden Terminate batch job (Y/N)?
//To solve this problem start .cmd with < Nul
System,FILEREDIRECT,OFF
//ShellExecute,Hide,cmd.exe,"/C Start #$q#$q /Wait /Min cmd.exe /C #$q%BaseDir%\Temp\Macro_Library\Start_Extended.cmd#$q",%BaseDir%\Temp\Macro_Library
ShellExecute,Hide,cmd.exe,"/C #$q%BaseDir%\Temp\Macro_Library\Start_Extended.cmd#$q < Nul",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
TxtReplace,%BaseDir%\Temp\Macro_Library\Start_Extended_ErrorLevel.ini,',""
IniRead,%BaseDir%\Temp\Macro_Library\Start_Extended_ErrorLevel.ini,Error,ErrorLevel,%ExitCode%
//Call,StartDoc,%BaseDir%\Temp\Macro_Library\Start_Extended_ErrorLevel.ini

[CallC_Start_Basic]
If,#2-,Equal,-,Set,#2,Open
If,Not,#5-,Equal,-,Begin
StrFormat,LEFT,#3,2,#9
StrFormat,LTRIM,#9,1,#9
If,Not,#9,Equal,:,Begin
//StrFormat,CTRIM,%#3,\,#3
Set,#9,--
StrFormat,LEFT,#3,1,#9
If,#9,Equal,\,StrFormat,LTRIM,#3,1,#3
StrFormat,Right,#3,1,#9
If,#9,Equal,\,StrFormat,RTRIM,#3,1,#3
//-
Set,#9,--
//StrFormat,CTRIM,%#5,\,#5
StrFormat,LEFT,#5,1,#9
If,#9,Equal,\,StrFormat,LTRIM,#5,1,#5
StrFormat,Right,#5,1,#9
If,#9,Equal,\,StrFormat,RTRIM,#5,1,#5
//-
If,ExistFile,#5\#3,Set,#3,#5\#3
End
End
System,FILEREDIRECT,OFF
ShellExecuteex,#2,#3,#4,#5
System,FILEREDIRECT,ON

[CallC_StartWait]
If,#6-,Equal,-,Run,%api%,CallC_StartWait_Basic,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%api%,CallC_Start_Extended,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_StartWait_Basic]
If,#2-,Equal,-,Set,#2,Open
If,Not,#5-,Equal,-,Begin
StrFormat,LEFT,#3,2,#9
StrFormat,LTRIM,#9,1,#9
If,Not,#9,Equal,:,Begin
//StrFormat,CTRIM,%#3,\,#3
Set,#9,--
StrFormat,LEFT,#3,1,#9
If,#9,Equal,\,StrFormat,LTRIM,#3,1,#3
StrFormat,Right,#3,1,#9
If,#9,Equal,\,StrFormat,RTRIM,#3,1,#3
//-
Set,#9,--
//StrFormat,CTRIM,%#5,\,#5
StrFormat,LEFT,#5,1,#9
If,#9,Equal,\,StrFormat,LTRIM,#5,1,#5
StrFormat,Right,#5,1,#9
If,#9,Equal,\,StrFormat,RTRIM,#5,1,#5
//-
If,ExistFile,#5\#3,Set,#3,#5\#3
End
End
System,FILEREDIRECT,OFF
ShellExecute,#2,#3,#4,#5
System,FILEREDIRECT,ON

[CallC_StartDocNotePad]
If,ExistFile,#2,Begin
StrFormat,PATH,#2,#9
StrFormat,CTRIM,#9,\,#9
StrFormat,FileName,#2,#8
System,FILEREDIRECT,OFF
//ShellExecuteex,Open,notepad.exe,"/C #$q#8#$q",#9
ShellExecuteex,Open,notepad.exe,"#$q#8#$q",#9
System,FILEREDIRECT,ON
End

[CallC_StartDoc]
If,ExistFile,#2,Begin
StrFormat,PATH,#2,#9
StrFormat,CTRIM,#9,\,#9
StrFormat,FileName,#2,#8
System,FILEREDIRECT,OFF
ShellExecuteex,Hide,cmd.exe,"/C #$q#8#$q",#9
System,FILEREDIRECT,ON
End

[CallC_OpenDir]
If,#2-,Equal,-,Set,#2,%ProjectTemp%
If,Not,ExistFile,#2,Begin
Call,HostWindowsDir,_ML_HostWindowsDir
System,FILEREDIRECT,OFF
If,Not,ExistDir,#2,ShellExecute,Hide,cmd.exe,"/C md #$q#2#$q"
If,ExistDir,#2,ShellExecuteex,Open,%_ML_HostWindowsDir%\explorer.exe,/e#$c#$q#2#$q,#2
System,FILEREDIRECT,ON
End

[CallC_DirMake]
If,Not,ExistDir,#2,DirMake,#2

[CallC_DirMove]
If,#2-,Equal,-,Call,Echo,"Error (DirMove) : Parameter 2 Missing - Nothing Moved - #2",Warn
If,Not,#2-,Equal,-,Run,%api%,CallC_DirMove_A,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_A]
If,#3-,Equal,-,Call,Echo,"Error (DirMove) : Parameter 3 Missing - Nothing Moved - #3",Warn
If,Not,#3-,Equal,-,Run,%api%,CallC_DirMove_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_B]
If,Not,ExistDir,#2,Call,Echo,"Error (DirMove) : DirMove SourceFolder NOT exists - Nothing Moved - #2",Warn
If,ExistDir,#2,Run,%api%,CallC_DirMove_C,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_C]
//--For cmd.exe move - Start
//If,Not,ExistDir,#3,Call,DirMake,#3
//If,Not,ExistDir,#3,Call,Echo,"Error (DirMove) : TargetFolder Not Exists - #3",Warn
//If,ExistDir,#3,Run,%api%,CallC_DirMove_D,#1,#2,#3,#4,#5,#6,#7,#8,#9
//--For cmd.exe move - Finish
//with SHDirMove.exe this logic MUST improve since SHDirMove.exe can use different target folder
Run,%api%,CallC_DirMove_D,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_D]
StrFormat,CTRIM,#2,\,#2
StrFormat,CTRIM,#3,\,#3
StrFormat,FILENAME,#2,#8
//-
Set,#9,0
If,ExistDir,#3\#8,Set,#9,1
If,#9,Equal,0,Run,%api%,CallC_DirMove_Good,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,#9,Equal,1,Run,%api%,CallC_DirMove_Sub,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_Good]
//Good move is where target folder not exists ;) - we move D:\1\A to D:\2 - No D:\2\A exists :)
//-----
//--System,FILEREDIRECT,OFF
//--//To TEST Failure: ShellExecute,Hide,cmd.exe,"/C Move /Y #$q#2\#$q #$q#3\#$q"
//--//ShellExecute,Hide,cmd.exe,"/C Move /Y #$q#2\#$q #$q#3\#$q"
//--ShellExecute,Hide,cmd.exe,"/C Move /Y #$q#2#$q #$q#3#$q"
//--Set,%_ML_DirMove_Good%,%ExitCode%
//--System,FILEREDIRECT,ON
//-----
If,Not,ExistDir,%BaseDir%\Temp\Macro_Library,DirMake,%BaseDir%\Temp\Macro_Library
If,Not,ExistFile,%BaseDir%\Temp\Macro_Library\SHDirMove.exe,ExtractFile,%api%,Folder,SHDirMove.exe,%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,OFF
ShellExecute,Hide,SHDirMove.exe,"#$q#2#$q #$q#3#$q",%BaseDir%\Temp\Macro_Library
Set,%_ML_DirMove_Good%,%ExitCode%
System,FILEREDIRECT,ON
//-----
//If,Not,%_ML_DirMove_Good%,Equal,0,Echo,"Error (DirMove) G : ErrorLevel=%_ML_DirMove_Good% - Probably a Folder or File open in another program.",Warn
//If,ExistDir,#2,Echo,"Error (DirMove) G : ErrorLevel=%_ML_DirMove_Good% - SourceFolder Still Exists !!!",Warn
If,Not,%_ML_DirMove_Good%,Equal,0,Echo,"Error (DirMove) G : ErrorLevel=%_ML_DirMove_Good% - Probably a Folder or File open in another program."
If,ExistDir,#2,Echo,"Error (DirMove) G : ErrorLevel=%_ML_DirMove_Good% - SourceFolder Still Exists !!!"
If,ExistDir,#2,Begin
If,%_ML_DirMove_Good%,Equal,0,Call,DirDelete,#2
End
If,ExistDir,#2,Run,%api%,CallC_DirMove_Good_Fail,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_Good_Fail]
//Echo,"Error (DirMove) G : ErrorLevel=%_ML_DirMove_Good% - Build Halt",Warn
//-
If,Not,ExistDir,#3\#8,Run,%api%,CallC_DirMove_FallBack_Copy_A,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,ExistDir,#2,Run,%api%,CallC_DirMove_Good_Fail_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_Good_Fail_B]
If,Not,%_ML_DirMove_Good%,Equal,0,Echo,"Error (DirMove) G : ErrorLevel=%_ML_DirMove_Good% - Probably a Folder or File open in another program.",Warn
If,ExistDir,#2,Echo,"Error (DirMove) G : ErrorLevel=%_ML_DirMove_Good% - SourceFolder Still Exists !!!",Warn
//-
//Whatever Reason Failure - Try to put info to support log:
//-
Echo,"Error (DirMove) G : SourceFolder: #2",Warn
Echo,"Error (DirMove) G : TargetFolder: #3",Warn
//-
Run,%api%,CallC_DirMove_Fail_Echo_FolderType,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
//----------- Check Source Folder -------------Start
Set,%_ML_CallDirMove_Size%,1
Retrieve,FOLDERSIZE,#2,%_ML_CallDirMove_Size%
Echo,"Error (DirMove) G : Source FolderSize:%_ML_CallDirMove_Size% bytes - '#2'",Warn
//-
//CheckDirMoveSource.ini
Call,FileDelete,%BaseDir%\Temp\Macro_Library\CheckDirMoveSource.ini
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir /b /s #$q#2#$q>CheckDirMoveSource.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
Retrieve,Filesize,%BaseDir%\Temp\Macro_Library\CheckDirMoveSource.ini,%_ML_CallDirMove_Size%
If,%_ML_CallDirMove_Size%,Equal,0,Echo,"Error (DirMove) G : Source Folder EMPTY %_ML_CallDirMove_Size% Bytes- '#2'",Warn
Else,Call,EchoFile,%BaseDir%\Temp\Macro_Library\CheckDirMoveSource.ini,Warn
//-
If,%_ML_CallDirMove_Size%,Equal,0,Call,DirDelete,#2
//----------- Check Source Folder -------------Finish
//-
//----------- Check Target Folder -------------Start
If,ExistDir,#3\#8,Begin
Set,%_ML_CallDirMove_Size%,1
Retrieve,FOLDERSIZE,#3\#8,%_ML_CallDirMove_Size%
Echo,"Error (DirMove) G : Target FolderSize:%_ML_CallDirMove_Size% bytes - '#3\#8'",Warn
//-
//CheckDirMoveTarget.ini
Call,FileDelete,%BaseDir%\Temp\Macro_Library\CheckDirMoveTarget.ini
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir /b /s #$q#3\#8#$q>CheckDirMoveTarget.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
Retrieve,Filesize,%BaseDir%\Temp\Macro_Library\CheckDirMoveTarget.ini,%_ML_CallDirMove_Size%
If,%_ML_CallDirMove_Size%,Equal,0,Echo,"Error (DirMove) G : Target Folder EMPTY %_ML_CallDirMove_Size% Bytes- '#3\#8'",Warn
Else,Call,EchoFile,%BaseDir%\Temp\Macro_Library\CheckDirMoveTarget.ini,Warn
End
//----------- Check Target Folder -------------Finish
//-
//Since DirMove is VERY critical operation (Failure unacceptable) - Halt Build
If,ExistDir,#2,Halt,"Error (DirMove) G : Report to http://TheOven.org - Build Halt --#2-- TO --#3--"

[CallC_DirMove_FallBack_Copy_A]
//DirMove failed without doing anything (Good News by cmd-move precheck) - FallBack_Copy_A (known reasons: 1) Looooong Path 2) Different Drive --> We can FallBack this situation for Case 2) which should also cover Case 1)
//----------- Check Source Folder -------------Start
Set,%_ML_CallDirMove_Size%,1
Retrieve,FOLDERSIZE,#2,%_ML_CallDirMove_Size%
Echo,"Error (DirMove) G : Source FolderSize:%_ML_CallDirMove_Size% bytes - '#2'"
//-
Echo,"Error (DirMove) G : SourceFolder: #2"
Echo,"Error (DirMove) G : TargetFolder: #3"
//-
Run,%api%,CallC_DirMove_Fail_Echo_FolderType,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
Echo,"Error (DirMove) G : FallBack Copy Files - Wait Patiently (Copy >1 GB)",Warn
DirMake,#3\#8
//FileCopy * have unicode bug - workaround with DirCopy * bug
DirCopy,#2\*,#3\#8
Call,DirDelete,#2
//-
If,ExistDir,#2,Begin
//----------- Check Source Folder ------------- FallBack_Copy_A --- Start
Call,FileDelete,%BaseDir%\Temp\Macro_Library\CheckDirMoveSource.ini
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir /b /s #$q#2#$q>CheckDirMoveSource.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
Retrieve,Filesize,%BaseDir%\Temp\Macro_Library\CheckDirMoveSource.ini,%_ML_CallDirMove_Size%
If,%_ML_CallDirMove_Size%,Equal,0,Echo,"Error (DirMove) G : Source Folder EMPTY %_ML_CallDirMove_Size% Bytes- '#2'",Warn
Else,Call,EchoFile,%BaseDir%\Temp\Macro_Library\CheckDirMoveSource.ini,Warn
//-
//----------- Check Source Folder ------------- FallBack_Copy_A --- Finish
End
If,ExistDir,#2,Halt,"Error (DirMove) G : (FallBack_Copy_A) Report to http://TheOven.org - Build Halt --#2-- TO --#3--"

[CallC_DirMove_Fail_Echo_FolderType]
//No warn here ---- [CallC_DirMove_FallBack_Copy_A] do not use Warn
Echo,"Error (DirMove) G : Folder Type -DIR-"
//Check log to see if folder type is -DIR- or other
//----  Check Source Folder Type -- Start
StrFormat,Split,#2,\,0,%_ML_t_CallC_DirMove_Good_Fail_B%
StrFormat,Split,#2,\,%_ML_t_CallC_DirMove_Good_Fail_B%,%_ML_t_CallC_DirMove_Good_Fail_B_SourceFolderName%
Call,StringLength,%_ML_t_CallC_DirMove_Good_Fail_B_SourceFolderName%,_ML_t_CallC_DirMove_Good_Fail_B_SourceFolderName_Length
StrFormat,RTrim,#2,%_ML_t_CallC_DirMove_Good_Fail_B_SourceFolderName_Length%,%_ML_t_CallC_DirMove_Good_Fail_B_UPDir%
Call,FileDelete,%BaseDir%\Temp\Macro_Library\SourceFolderUPDir.ini
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir #$q%_ML_t_CallC_DirMove_Good_Fail_B_UPDir%\%_ML_t_CallC_DirMove_Good_Fail_B_SourceFolderName%*#$q>SourceFolderUPDir.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
//Call,EchoFile,%BaseDir%\Temp\Macro_Library\SourceFolderUPDir.ini,Warn
Call,EchoFile,%BaseDir%\Temp\Macro_Library\SourceFolderUPDir.ini
//----  Check Source Folder Type -- Finish
//-
//----  Check Target Folder Type -- Start
StrFormat,Split,#3,\,0,%_ML_t_CallC_DirMove_Good_Fail_B%
StrFormat,Split,#3,\,%_ML_t_CallC_DirMove_Good_Fail_B%,%_ML_t_CallC_DirMove_Good_Fail_B_TargetFolderName%
Call,StringLength,%_ML_t_CallC_DirMove_Good_Fail_B_TargetFolderName%,_ML_t_CallC_DirMove_Good_Fail_B_TargetFolderName_Length
StrFormat,RTrim,#3,%_ML_t_CallC_DirMove_Good_Fail_B_TargetFolderName_Length%,%_ML_t_CallC_DirMove_Good_Fail_B_UPDir%
Call,FileDelete,%BaseDir%\Temp\Macro_Library\TargetFolderUPDir.ini
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir #$q%_ML_t_CallC_DirMove_Good_Fail_B_UPDir%\%_ML_t_CallC_DirMove_Good_Fail_B_TargetFolderName%*#$q>TargetFolderUPDir.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
//Call,EchoFile,%BaseDir%\Temp\Macro_Library\TargetFolderUPDir.ini,Warn
Call,EchoFile,%BaseDir%\Temp\Macro_Library\TargetFolderUPDir.ini
//----  Check Target Folder Type -- Finish
//-
//----  Check Target Folder Type Sub-- Start
If,ExistDir,#3\#8,Begin
Call,FileDelete,%BaseDir%\Temp\Macro_Library\TargetFolderSubDir.ini
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir #$q#3\#8*#$q>TargetFolderSubDir.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
//Call,EchoFile,%BaseDir%\Temp\Macro_Library\TargetFolderSubDir.ini,Warn
Call,EchoFile,%BaseDir%\Temp\Macro_Library\TargetFolderSubDir.ini
End
//----  Check Target Folder Type Sub -- Finish

[CallC_DirMove_Sub]
//If Target Folder exists than things becomes tricky -  we move D:\1\A to D:\2 - YES D:\2\A exists :(
//-
//Hopefully if TargetFolder is an empty folder life is easier:
Set,%_ML_CallDirMove_Size%,1
Retrieve,FOLDERSIZE,#3\#8,%_ML_CallDirMove_Size%
If,%_ML_CallDirMove_Size%,Equal,0,Begin
//check empty files folders
Call,FileDelete,%BaseDir%\Temp\Macro_Library\CheckEmpty.ini
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir /b /s #$q#3\#8#$q>CheckEmpty.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
Retrieve,Filesize,%BaseDir%\Temp\Macro_Library\CheckEmpty.ini,%_ML_CallDirMove_Size%
If,%_ML_CallDirMove_Size%,Equal,0,Call,DirDelete,#3\#8
End
//-
If,Not,ExistDir,#3\#8,Run,%api%,CallC_DirMove_Good,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,ExistDir,#3\#8,Run,%api%,CallC_DirMove_Sub_NotEmpty,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_Sub_NotEmpty]
//If Target Folder exists than things becomes tricky -  we move D:\1\A to D:\2 - YES D:\2\A exists and NOT Empty :(
//-
//This only move files - NOT folders (at least move operation fast)
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C Move /Y #$q#2\*#$q #$q#3\#8#$q"
//If,Not,%ExitCode%,Equal,0,Echo,"ErrorLevel=%ExitCode% - DirMove",Warn
System,FILEREDIRECT,ON
//-
//This moves folders only if there is no such target sub folder  (not hidden not system) (at least move operation fast)
If,Not,ExistDir,%BaseDir%\Temp\Macro_Library,DirMake,%BaseDir%\Temp\Macro_Library
Call,FileCreateBlank,%BaseDir%\Temp\Macro_Library\Move_Folders.cmd,OverWrite
Call,FileCreateBlank,%BaseDir%\Temp\Macro_Library\Move_Folders.ini,OverWrite
TxtAddLine,%BaseDir%\Temp\Macro_Library\Move_Folders.ini,"[Process]",Append
TxtAddLine,%BaseDir%\Temp\Macro_Library\Move_Folders.cmd,"for /d #$p#$pA in (#$q#2\*#$q) do echo #$q#$q#$p#$p~fA#$q#$q >>#$q%BaseDir%\Temp\Macro_Library\Move_Folders.ini#$q",Append
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C #$q%BaseDir%\Temp\Macro_Library\Move_Folders.cmd#$q",#2
System,FILEREDIRECT,ON
Call,TxtReplace,%BaseDir%\Temp\Macro_Library\Move_Folders.ini,#$q#$q#2,"Run,#$papi#$p,CallC_DirMove_External,#$q#2"
Call,TxtReplace,%BaseDir%\Temp\Macro_Library\Move_Folders.ini,#$q#$q,"#$q,#$q#3\#8#$q"
IniWrite,%BaseDir%\Temp\Macro_Library\Move_Folders.ini,Dummy,Dummy,Dummy
Run,%BaseDir%\Temp\Macro_Library\Move_Folders.ini,Process
//-
//Check to see if move finished:
Set,%_ML_CallDirMove_Size%,1
Retrieve,FOLDERSIZE,#2,%_ML_CallDirMove_Size%
If,%_ML_CallDirMove_Size%,Equal,0,Begin
//check empty files folders
Call,FileDelete,%BaseDir%\Temp\Macro_Library\CheckEmpty.ini
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir /b /s #$q#2#$q>CheckEmpty.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
Retrieve,Filesize,%BaseDir%\Temp\Macro_Library\CheckEmpty.ini,%_ML_CallDirMove_Size%
If,%_ML_CallDirMove_Size%,Equal,0,Call,DirDelete,#2
End
//-
If,ExistDir,#2,Run,%api%,CallC_DirMove_Sub_NotEmpty_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_External]
//This Section run by an external plugin ex: %BaseDir%\Temp\Macro_Library\Move_Folders.ini
//ex: - Run,%api%,CallC_DirMove_External,"D:\1 1\2 2\New folder","D:\1 1\2\3 3\2 2"
//#1 SourceFolderDir
//#2 TargetFolderDir
StrFormat,FILENAME,#1,#8
If,Not,ExistDir,#2\#8,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C Move /Y #$q#1#$q #$q#2#$q"
If,Not,%ExitCode%,Equal,0,Echo,"ErrorLevel=%ExitCode% - DirMove",Warn
System,FILEREDIRECT,ON
End

[CallC_DirMove_Sub_NotEmpty_B]
//If Target Folder exists than things becomes tricky -  we move D:\1\A to D:\2 - YES D:\2\A exists and NOT Empty and There left files
// Left files: one reason: sub folder exists on target D:\1\A\SubF D:\2\A\Sub
//-
System,FILEREDIRECT,OFF
//Maybe better to use another tool than xcopy.exe for junctions maybe not ?!? Not tested
ShellExecute,hide,xcopy.exe,"#$q#2\*#$q #$q#3\#$q /i /s /e /r /v /k /f /c /h /y"
If,Not,%ExitCode%,Equal,0,Echo,"DirMove-Error-Xcopy-%ExitCode%",Warn
Set,%_ML_XcopyErrorLevel_DirMoveSub%,%ExitCode%
System,FILEREDIRECT,ON
//-
If,Not,%_ML_XcopyErrorLevel_DirMoveSub%,Equal,0,Call,Echo,"Error (DirMove) : Xcopy.exe ErrorLevel=%_ML_XcopyErrorLevel_DirMoveSub%"
If,%_ML_XcopyErrorLevel_DirMoveSub%,Equal,0,Call,DirDelete,#2
//-
If,ExistDir,#2,Run,%ScriptFile%,CallC_DirMove_Error,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirMove_Error]
//Whatever Reason Failure - Try to put info to support log:
//-
Set,%_ML_CallDirMove_Size%,1
Retrieve,FOLDERSIZE,#2,%_ML_CallDirMove_Size%
Echo,"DirMove Failed - FolderSize:%_ML_CallDirMove_Size% bytes - '#2'",Warn
//-
//check empty files folders
Call,FileDelete,%BaseDir%\Temp\Macro_Library\CheckEmpty.ini
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir /b /s #$q#2#$q>CheckEmpty.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
Retrieve,Filesize,%BaseDir%\Temp\Macro_Library\CheckEmpty.ini,%_ML_CallDirMove_Size%
If,%_ML_CallDirMove_Size%,Equal,0,Echo,"Error (DirMove) : Folder EMPTY %_ML_CallDirMove_Size% Bytes - '#2'",Warn
Else,Call,EchoFile,"%BaseDir%\Temp\Macro_Library\CheckEmpty.ini",Warn
//-
//Since DirMove is VERY critical operation (Failure unacceptable) - Halt Build
Halt,"DirMove Failed - Report to http://TheOven.org - Build Halt --#2-- TO --#3--"

[CallC_EchoFile]
//#2 source file (Ascii)
If,Not,ExistFile,#2,Echo,"NOT FOUND - '#2'",Warn
Else,Run,%api%,CallC_EchoFile_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_EchoFile_B]
//EchoFile.7z start with Utils_Tools_001--Version=003
Set,#9,3
//-
If,ExistFile,#2,Begin
Require,File,EchoFile.exe_BlueLife,%BaseDir%\Temp\Macro_Library\EchoFile
If,ExistFile,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile.exe,Begin
Call,FileCreateBlank,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,OverWrite
Shellexecute,Hide,%BaseDir%\Temp\Macro_Library\EchoFile\echofile.exe,"#$q#2#$q #$q%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini#$q /wa"
If,ExistFile,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,Begin
//Winbuilder Log.html bug - can not display 'Greater' or 'Less Than' letters correctly (US Keyboard - key at right of 'Left Shift')
Call,TxtReplace,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,<,"-"
Call,TxtReplace,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,>,"-"
If,Not,#3#4-,Equal,-,Begin
Call,TxtReplace,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,#$q,"#$q#$q"
Call,TxtReplace,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,"Echo,#$q#$q","Echo,#$q-"
If,#3,Equal,Warn,Begin
Call,TxtReplace,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,#$q#$q,"#$q,Warn"
End
Else,Begin
Call,TxtReplace,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,#$q#$q,"#$q"
End
Call,TxtReplace,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,"Echo,#$q-","Echo,#$q#4"
End
Run,%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini,Process
End
Else,Begin
Call,Echo,"CAN NOT Find %BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini - EchoFile Failure",Warn
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\EchoFile
Call,Echo,"CAN NOT Find %BaseDir%\Temp\Macro_Library\EchoFile\EchoFile.exe - EchoFile Failure",Warn
End
End
Else,Begin
Call,Echo,"CAN NOT Find #2 - Nothing to Echo - EchoFile Failure",Warn
End

[CallC_TxtReplace]
If,Not,ExistFile,#2,Echo,"NOT FOUND - '#2'",Warn
Else,Run,%api%,CallC_TxtReplace_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_TxtReplace_B]
If,Not,#3#4-,Equal,-,Begin
//Winbuilder TxtReplace bug - can not TxtReplace big files Keep safe at 2.5 MB (1048576+1048576+524288=2621440 bytes) (known: big x.html 2.7 MB failure)
Retrieve,FileSize,#2,%_ML_T_TxtReplace_Size%
If,%_ML_T_TxtReplace_Size%,Smaller,2621440,Begin
TxtReplace,#2,#3,#4
End
Else,Begin
Require,File,ssr.exe_Ross_MacGregor,%BaseDir%\Temp\Macro_Library\CallTxtReplace
If,ExistFile,%BaseDir%\Temp\Macro_Library\CallTxtReplace\ssr.exe,Begin
Call,FileDelete,%BaseDir%\Temp\Macro_Library\CallTxtReplace\TxtReplace_Result.ini
//ssr.exe
//  Use '' to represent " in search and replace text.
//  Use /SSR_QUOTE/ to represent ' in search and replace text.
//  Use /SSR_NL/ to represent a new line in search and replace text.
//  Use /SSR_TAB/ to represent a tab in search and replace text.
StrFormat,REPLACE,#3,',/SSR_QUOTE/,#3
StrFormat,REPLACE,#3,#$q,'',#3
StrFormat,REPLACE,#4,',/SSR_QUOTE/,#4
StrFormat,REPLACE,#4,#$q,'',#4
//-
System,FILEREDIRECT,OFF
Shellexecute,Hide,%BaseDir%\Temp\Macro_Library\CallTxtReplace\ssr.exe,"0 #$q#3#$q #$q#4#$q #$q#2#$q #$q%BaseDir%\Temp\Macro_Library\CallTxtReplace\TxtReplace_Result.ini#$q"
System,FILEREDIRECT,ON
If,ExistFile,%BaseDir%\Temp\Macro_Library\CallTxtReplace\TxtReplace_Result.ini,Begin
If,Not,ExistDir,%ProjectTemp%,Dirmake,%ProjectTemp%
StrFormat,DATE,%_ML_TxtReplace_MyDate%,yyyymmdd_hh-nn-ss
StrFormat,FILENAME,#2,#9
FileCopy,#2,%ProjectTemp%\#9_TxtReplace_%_ML_TxtReplace_MyDate%.ini
IniRead,%ProjectDir%\script.project,IniVariables,NoWarnFileOverWrite,#8
If,#8,Equal,True,System,ERROROFF
FileCopy,%BaseDir%\Temp\Macro_Library\CallTxtReplace\TxtReplace_Result.ini,#2
End
Else,Begin
Call,Echo,"CAN NOT Find %BaseDir%\Temp\Macro_Library\CallTxtReplace\TxtReplace_Result.ini - TxtReplace Failure",Warn
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\CallTxtReplace
Call,Echo,"CAN NOT Find %BaseDir%\Temp\Macro_Library\CallTxtReplace\ssr.exe - TxtReplace Failure",Warn
End
End
End
Else,Echo,"Call TxtReplace par3 and par4 missing - nothing to TxtReplace",Warn

[CallC_FileByteCheck]
If,Not,ExistFile,#2,Echo,"NOT FOUND - '#2'",Warn
Set,%_ML_FileByteCheck_Au3%,%ProjectTemp%\Macro_Library\FileByteCheck.au3
If,Not,ExistFile,%_ML_FileDirDeleteX_Au3%,Run,%API%,Extract_FileByteCheck_AU3
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Run,%API%,Download_AutoIT_AU3381
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_FileByteCheck_Au3%#$q #$q#2#$q #$q#3#$q #$q#4#$q #$q#5#$q"

[Extract_FileByteCheck_AU3]
If,Not,ExistDir,%ProjectTemp%\Macro_Library,DirMake,%ProjectTemp%\Macro_Library
ExtractFile,%API%,Folder,FileByteCheck.au3,%ProjectTemp%\Macro_Library

[CallC_FileCreateBlank]
StrFormat,Path,#2,#9
StrFormat,CTrim,#9,\,#9
Call,DirMake,#9
If,Not,ExistFile,#2,FileCreateBlank,#2
Else,Begin
If,#3,Equal,OverWrite,Begin
Retrieve,Md5,#2,%_ML_T%
If,Not,%_ML_T%,Equal,d41d8cd98f00b204e9800998ecf8427e,Begin
Call,FileDelete,#2
FileCreateBlank,#2
End
End
If,#3,Equal,OverWriteBackup,Begin
Retrieve,MD5,#2,%_ML_T%
If,Not,%_ML_T%,Equal,d41d8cd98f00b204e9800998ecf8427e,Begin
StrFormat,DATE,#8,yyyymmddhhnnss
Call,FileNameNoExt,#2,_ML_T_
StrFormat,Ext,#2,#7
FileCopy,#2,%_ML_T_%_#8#7
Call,FileDelete,#2
FileCreateBlank,#2
End
End
End

[CallC_FileDelete]
If,ExistFile,#2,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2#$q"
If,ExistFile,#2,Run,%API%,File_Delete_Fast_CMD,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirDelete]
If,ExistDir,#2,ShellExecute,Hide,cmd.exe,"/C rd /s /q #$q#2#$q"
If,ExistDir,#2,Run,%API%,Dir_Delete_Fast_CMD,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirDeleteMake]
If,ExistDir,#2,ShellExecute,Hide,cmd.exe,"/C rd /s /q #$q#2#$q"
If,ExistDir,#2,Run,%API%,Dir_Delete_Fast_CMD,#1,#2,#3,#4,#5,#6,#7,#8,#9
DirMake,#2

[CallC_Rename]
Run,%API%,CMD_Rename,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_ConvertToAnsi]
Run,%API%,Convert_To_Ansi_CMD,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_VariableToMacro]
If,%Version%,Bigger,080,Run,%api%,ConvertVariableToMacro_Post80,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%api%,ConvertVariableToMacro_Prior80,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_AddInterface]
If,%Version%,Bigger,080,AddInterface,#2,#3,"#4"
Else,Run,%Api%,Call_AddInterface,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_FileDeleteX]
Run,%API%,Call_FileDirDeleteX,#1,#2,#3,#4,#5,#6,#7,#8,1

[CallC_ExistFile]
If,#2-,Equal,-,Echo,"Call ExistFile - Parameter 2 missing"
If,Not,#2-,Equal,-,Run,%api%,CallC_ExistFile_A,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_ExistFile_A]
If,#3-,Equal,-,Set,#3,ExistFile
Set,%#3%,0
StrFormat,CTRIM,#2,\,#2
StrFormat,Replace,#2,*,-,#9
StrFormat,Replace,#9,?,-,#9
If,#2,Equal,#9,Begin
If,ExistFile,#2,Set,%#3%,1
End
If,Not,#2,Equal,#9,Run,%api%,CallC_ExistFile_WildCard,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_ExistFile_WildCard]
StrFormat,Path,#2,#8
StrFormat,CTRIM,#8,\,#8
If,ExistDir,#8,Run,%api%,CallC_ExistFile_WildCard_A,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_ExistFile_WildCard_A]
If,Not,ExistDir,%BaseDir%\Temp\Macro_Library,DirMake,%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir /b /A:-D #$q#2#$q>Call_ExistFile.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
Retrieve,Filesize,%BaseDir%\Temp\Macro_Library\Call_ExistFile.ini,#7
If,Not,#7,Equal,0,Set,%#3%,1

[CallC_UpFolder]
If,#2-,Equal,-,Echo,"Call UpFolder - Parameter 2 missing"
If,Not,#2-,Equal,-,Run,%api%,CallC_UpFolder_A,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_UpFolder_A]
If,#3-,Equal,-,Set,#3,UpFolder
Set,%#3%,""
StrFormat,CTRIM,#2,\,#2
StrFormat,Split,#2,\,0,#9
If,Not,#9,Smaller,2,StrFormat,dec,#9,1
Loop,%API%,CallC_UpFolder_Loop,1,#9,#1,#2,#3
StrFormat,LTRIM,%#3%,1,%#3%

[CallC_UpFolder_Loop]
StrFormat,Split,#2,\,#c,#9
Set,%#3%,%#3%\#9

[CallC_DirDeleteX]
Run,%API%,Call_FileDirDeleteX,#1,#2,#3,#4,#5,#6,#7,#8,2

[CallC_FileArch]
Run,%API%,Call_FileArch,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DirCopy]
Run,%API%,Call_DirCopy,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_FileCopy]
//inside log search: Run - Processing section: [Process] From file: [%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini]
//-
If,#2-,Equal,-,Echo,"Call FileCopy - Parameter 2 missing"
If,Not,#2-,Equal,-,Run,%api%,CallC_FileCopy_A,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_FileCopy_A]
If,#3-,Equal,-,Echo,"Call FileCopy - Parameter 3 missing"
If,Not,#3-,Equal,-,Run,%api%,CallC_FileCopy_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_FileCopy_B]
StrFormat,CTRIM,#2,\,#2
StrFormat,CTRIM,#3,\,#3
StrFormat,Replace,#2,*,-,#9
StrFormat,Replace,#9,?,-,#9
StrFormat,FileName,#2,#8
If,#2,Equal,#9,Run,%api%,CallC_FileCopy_Simple_#4,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,#2,Equal,#9,Run,%api%,CallC_FileCopy_WildCard,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_FileCopy_Simple]
If,Not,ExistFile,#3\#8,FileCopy,#2,#3

[CallC_FileCopy_Simple_OverWrite]
If,ExistFile,#3\#8,Call,FileDelete,#3\#8
FileCopy,#2,#3

[CallC_FileCopy_WildCard]
If,Not,ExistDir,%BaseDir%\Temp\Macro_Library,DirMake,%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c Dir /b /A:-D #$q#2#$q>Call_FileCopy_WildCard.ini",%BaseDir%\Temp\Macro_Library
System,FILEREDIRECT,ON
Retrieve,Filesize,%BaseDir%\Temp\Macro_Library\Call_FileCopy_WildCard.ini,#7
If,Not,#7,Equal,0,Run,%api%,CallC_FileCopy_WildCard_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_FileCopy_WildCard_B]
//inside log search: Run - Processing section: [Process] From file: [%BaseDir%\Temp\Macro_Library\EchoFile\EchoFile_Result.ini]
Call,EchoFile,%BaseDir%\Temp\Macro_Library\Call_FileCopy_WildCard.ini
If,Not,ExistDir,#3,DirMake,#3
Call,DirDeleteMake,%BaseDir%\Temp\Macro_Library\FileCopy_WildCard
System,FILEREDIRECT,OFF
//Shellexecute,Hide,xcopy.exe,"#$q#2#$q #$q%BaseDir%\Temp\Macro_Library\FileCopy_WildCard#$q /i /s /e /r /v /k /f /h /y"
Shellexecute,Hide,xcopy.exe,"#$q#2#$q #$q%BaseDir%\Temp\Macro_Library\FileCopy_WildCard#$q /i /r /v /k /f /h /y"
System,FILEREDIRECT,ON
If,Not,%ExitCode%,Equal,0,Call,Echo,"Call FileCopy Error B : XCopy ErrorLevel:%ExitCode% From: #2 To: #3",Warn
If,Not,%ExitCode%,Equal,0,Halt,"Call FileCopy Error B : XCopy ErrorLevel:%ExitCode% From: #2 To: #3"
If,%ExitCode%,Equal,0,Run,%api%,CallC_FileCopy_WildCard_C_#4,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_FileCopy_WildCard_C_OverWrite]
//FileCopy * have unicode bug - workaround with DirCopy * bug
DirCopy,%BaseDir%\Temp\Macro_Library\FileCopy_WildCard\*,#3

[CallC_FileCopy_WildCard_C_]
System,FILEREDIRECT,OFF
Shellexecute,Hide,xcopy.exe,"#$q%BaseDir%\Temp\Macro_Library\FileCopy_WildCard\*#$q #$q#3#$q /i /r /v /k /f /h /y"
System,FILEREDIRECT,ON
If,Not,%ExitCode%,Equal,0,Call,Echo,"Call FileCopy Error C: XCopy ErrorLevel:%ExitCode% From: #2 To: #3",Warn
If,Not,%ExitCode%,Equal,0,Halt,"Call FileCopy Error C: XCopy ErrorLevel:%ExitCode% From: #2 To: #3",Warn

[CallC_RegMultiSZ]
Run,%API%,Call_RegMultiSZ,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_RegWriteBinaryBit]
Run,%API%,Call_RegWriteBinaryBit_#6,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Call_RegWriteBinaryBit_0x3]
Set,%_ML_T1_RegWriteBinaryBit%,""
If,ExistRegKey,#5,#7,#8,Begin
RegRead,HKLM,#7,#8,%_ML_T1_RegWriteBinaryBit%
StrFormat,Replace,%_ML_T1_RegWriteBinaryBit%,",",|,%_ML_T1_RegWriteBinaryBit%
//---
StrFormat,SPLIT,%_ML_T1_RegWriteBinaryBit%,|,#2,%_ML_T2_RegWriteBinaryBit%
If,%_ML_T2_RegWriteBinaryBit%-,Equal,-,Set,%_ML_T2_RegWriteBinaryBit%,00
Call,MathChangeBit,Hex,#3,#4,_ML_T3_RegWriteBinaryBit,%_ML_T2_RegWriteBinaryBit%
StrFormat,SPLIT,%_ML_T1_RegWriteBinaryBit%,|,0,%_ML_T4_RegWriteBinaryBit%
//-
StrFormat,mult,%_ML_T4_RegWriteBinaryBit%,3
StrFormat,dec,%_ML_T4_RegWriteBinaryBit%,1
//-
Set,%_ML_T5_RegWriteBinaryBit%,#2
StrFormat,mult,%_ML_T5_RegWriteBinaryBit%,3
StrFormat,dec,%_ML_T5_RegWriteBinaryBit%,1
StrFormat,LTrim,%_ML_T1_RegWriteBinaryBit%,%_ML_T5_RegWriteBinaryBit%,%_ML_T6_RegWriteBinaryBit%
//-
StrFormat,dec,%_ML_T5_RegWriteBinaryBit%,2
StrFormat,Left,%_ML_T1_RegWriteBinaryBit%,%_ML_T5_RegWriteBinaryBit%,%_ML_T7_RegWriteBinaryBit%
//-
StrFormat,Replace,%_ML_T7_RegWriteBinaryBit%%_ML_T3_RegWriteBinaryBit%%_ML_T6_RegWriteBinaryBit%,|,",",%_ML_T8_RegWriteBinaryBit%
//-
If,ExistVar,%NoWarnROW%,If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,#5,#6,#7,#8,%_ML_T8_RegWriteBinaryBit%
End

[CallC_Math]
Run,%API%,Call_Math_#2,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_MathConvert]
Run,%API%,Call_Math_Convert_#2,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_MathChangeBit]
Run,%API%,Call_Math_ChangeBit_#2,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Call_Math_HexAdd]
If,#3-,Equal,-,Set,#3,MathHexAdd
Call,MathConvert,HexToDecimal,_ML_T1,#4
Call,MathConvert,HexToDecimal,_ML_T2,#5
StrFormat,Inc,%_ML_T1%,%_ML_T2%
Call,MathConvert,DecimalToHex,_ML_T2,%_ML_T1%
Set,%#3%,%_ML_T2%

[Call_Math_Convert_HexToDecimal]
If,#3-,Equal,-,Set,#3,MathConvertHexToDecimal
//--
StrFormat,LTrim,#4,1,#9
If,#9-,Equal,-,Set,#4,0#4
//--
StrFormat,Left,#4,1,#8
StrFormat,Right,#4,1,#9
//--
If,#9,Bigger,9,Begin
If,#9,Equal,A,Set,#9,10
If,#9,Equal,B,Set,#9,11
If,#9,Equal,C,Set,#9,12
If,#9,Equal,D,Set,#9,13
If,#9,Equal,E,Set,#9,14
If,#9,Equal,F,Set,#9,15
End
//--
If,#8,Bigger,9,Begin
If,#8,Equal,A,Set,#8,10
If,#8,Equal,B,Set,#8,11
If,#8,Equal,C,Set,#8,12
If,#8,Equal,D,Set,#8,13
If,#8,Equal,E,Set,#8,14
If,#8,Equal,F,Set,#8,15
End
//--
StrFormat,Mult,#8,16
StrFormat,inc,#8,#9
//--
Set,%#3%,#8

[Call_Math_Convert_DecimalToHex]
If,#3-,Equal,-,Set,#3,MathConvertDecimalToHex
//--
Set,#8,#4
Set,#9,#4
//--
StrFormat,div,#8,16
Set,#7,#8
If,#8,Bigger,9,Begin
If,#8,Equal,10,Set,#8,a
If,#8,Equal,11,Set,#8,b
If,#8,Equal,12,Set,#8,c
If,#8,Equal,13,Set,#8,d
If,#8,Equal,14,Set,#8,e
If,#8,Equal,15,Set,#8,f
End
//-
StrFormat,mult,#7,16
StrFormat,dec,#9,#7
If,#9,Bigger,9,Begin
If,#9,Equal,10,Set,#9,a
If,#9,Equal,11,Set,#9,b
If,#9,Equal,12,Set,#9,c
If,#9,Equal,13,Set,#9,d
If,#9,Equal,14,Set,#9,e
If,#9,Equal,15,Set,#9,f
End
//-
Set,%#3%,#8#9

[Call_Math_Convert_HexToBinary]
If,#3-,Equal,-,Set,#3,MathConvertHexToBinary
//-
StrFormat,LTrim,#4,1,#9
If,#9-,Equal,-,Set,#4,0#4
//--
StrFormat,Left,#4,1,#8
StrFormat,Right,#4,1,#9
//--
If,#9,Equal,0,Set,#9,0000
If,#9,Equal,1,Set,#9,0001
If,#9,Equal,2,Set,#9,0010
If,#9,Equal,3,Set,#9,0011
If,#9,Equal,4,Set,#9,0100
If,#9,Equal,5,Set,#9,0101
If,#9,Equal,6,Set,#9,0110
If,#9,Equal,7,Set,#9,0111
If,#9,Equal,8,Set,#9,1000
If,#9,Equal,9,Set,#9,1001
If,#9,Equal,a,Set,#9,1010
If,#9,Equal,b,Set,#9,1011
If,#9,Equal,c,Set,#9,1100
If,#9,Equal,d,Set,#9,1101
If,#9,Equal,e,Set,#9,1110
If,#9,Equal,f,Set,#9,1111
//-
If,#8,Equal,0,Set,#8,0000
If,#8,Equal,1,Set,#8,0001
If,#8,Equal,2,Set,#8,0010
If,#8,Equal,3,Set,#8,0011
If,#8,Equal,4,Set,#8,0100
If,#8,Equal,5,Set,#8,0101
If,#8,Equal,6,Set,#8,0110
If,#8,Equal,7,Set,#8,0111
If,#8,Equal,8,Set,#8,1000
If,#8,Equal,9,Set,#8,1001
If,#8,Equal,a,Set,#8,1010
If,#8,Equal,b,Set,#8,1011
If,#8,Equal,c,Set,#8,1100
If,#8,Equal,d,Set,#8,1101
If,#8,Equal,e,Set,#8,1110
If,#8,Equal,f,Set,#8,1111
//-
Set,%#3%,#8#9

[Call_Math_Convert_BinaryToHex]
If,#3-,Equal,-,Set,#3,MathConvertBinaryToHex
//-
StrFormat,LTRIM,#4,4,#9
StrFormat,RTrim,#4,4,#8
//--
If,#9,Equal,0000,Set,#9,0
If,#9,Equal,0001,Set,#9,1
If,#9,Equal,0010,Set,#9,2
If,#9,Equal,0011,Set,#9,3
If,#9,Equal,0100,Set,#9,4
If,#9,Equal,0101,Set,#9,5
If,#9,Equal,0110,Set,#9,6
If,#9,Equal,0111,Set,#9,7
If,#9,Equal,1000,Set,#9,8
If,#9,Equal,1001,Set,#9,9
If,#9,Equal,1010,Set,#9,a
If,#9,Equal,1011,Set,#9,b
If,#9,Equal,1100,Set,#9,c
If,#9,Equal,1101,Set,#9,d
If,#9,Equal,1110,Set,#9,e
If,#9,Equal,1111,Set,#9,f
//--
If,#8,Equal,0000,Set,#8,0
If,#8,Equal,0001,Set,#8,1
If,#8,Equal,0010,Set,#8,2
If,#8,Equal,0011,Set,#8,3
If,#8,Equal,0100,Set,#8,4
If,#8,Equal,0101,Set,#8,5
If,#8,Equal,0110,Set,#8,6
If,#8,Equal,0111,Set,#8,7
If,#8,Equal,1000,Set,#8,8
If,#8,Equal,1001,Set,#8,9
If,#8,Equal,1010,Set,#8,a
If,#8,Equal,1011,Set,#8,b
If,#8,Equal,1100,Set,#8,c
If,#8,Equal,1101,Set,#8,d
If,#8,Equal,1110,Set,#8,e
If,#8,Equal,1111,Set,#8,f
//-
Set,%#3%,#8#9

[Call_Math_ChangeBit_Binary]
If,#5-,Equal,-,Set,#5,MathChangeBitBinary
//--
Set,#1,#3
Strformat,inc,#1,1
StrFormat,RTrim,#6,#1,#8
//-
Strformat,dec,#1,9
Strformat,mult,#1,-1
//Strformat,inc,#1,1
StrFormat,LTrim,#6,#1,#9
//-
Set,%#5%,#8#4#9

[Call_Math_ChangeBit_Hex]
If,#5-,Equal,-,Set,#5,MathChangeBitHex
//--
Call,MathConvert,HexToBinary,_ML_T1_MathChangeBitBinary,#6
Call,MathChangeBit,Binary,#3,#4,#5,%_ML_T1_MathChangeBitBinary%
Call,MathConvert,BinaryToHex,#5,%#5%

[CallC_DirDeleteE]
StrFormat,CTRIM,#2,\,#2
If,#2-,Equal,-,Echo,"Call DirDeleteE - Parameter 2 Missing",Warn
Else,Begin
//-
//Set DirDeleteE Work Folder - Start
Set,#8,%BaseDir%\Temp\Macro_Library
If,#2,Equal,%BaseDir%\Temp\Macro_Library,Set,#8,%ProjectTemp%
//-
If,ExistDir,#8,Begin
StrFormat,DATE,#9,yyyymmddhhnnsszzz
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C Echo Test>DummyFileForPreJuncCheck_#9.txt",#8
System,FILEREDIRECT,ON
If,Not,ExistFile,#8\DummyFileForPreJuncCheck_#9.txt,Begin
//It is Highly probably forgotten Junction that links to nowhere (junction target deleted)
Call,DirDelete,#8
DirMake,#8
End
Else,Call,FileDelete,#8\DummyFileForPreJuncCheck_#9.txt
End
Else,DirMake,#8
//Set DirDeleteE Work Folder - Finish
//-
If,ExistDir,#2,Begin
StrFormat,DATE,#9,yyyymmddhhnnsszzz
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C Echo Test>DummyFileForPreJuncCheck_#9.txt",#2
System,FILEREDIRECT,ON
If,Not,ExistFile,#2\DummyFileForPreJuncCheck_#9.txt,Begin
//It is Highly probably forgotten Junction that links to nowhere (junction target deleted)
Call,DirDelete,#2
DirMake,#2
End
Else,Begin
//-
Call,FileDelete,#2\DummyFileForPreJuncCheck_#9.txt
//-
If,Not,ExistDir,#8,DirMake,#8
If,ExistFile,#8\DirDeleteE_Folders.ini,Call,FileDelete,#8\DirDeleteE_Folders.ini
If,ExistFile,#8\DirDeleteE_Folders.cmd,Call,FileDelete,#8\DirDeleteE_Folders.cmd
If,ExistFile,#8\DirDeleteE_Folders_SH.ini,Call,FileDelete,#8\DirDeleteE_Folders_SH.ini
If,ExistFile,#8\DirDeleteE_Folders_Check.ini,Call,FileDelete,#8\DirDeleteE_Folders_Check.ini
//-
//First Delete Files at ..\Folder\*
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C del /q /f *&del /q /f /A:R /A:H /A:S /A:A *",#2
ShellExecute,Hide,cmd.exe,"/C del /q /f *&del /q /f /A:R /A:H /A:S /A:A *",#2
ShellExecute,Hide,cmd.exe,"/C del /q /f *&del /q /f /A:R /A:H /A:S /A:A *",#2
ShellExecute,Hide,cmd.exe,"/C del /q /f *&del /q /f /A:R /A:H /A:S /A:A *",#2
ShellExecute,Hide,cmd.exe,"/C del /q /f *&del /q /f /A:R /A:H /A:S /A:A *",#2
System,FILEREDIRECT,ON
//-
//Second Delete Folders
//1) This Delete Folders (not hidden not system)
//for %%A in ("c:\demo\*") do echo %%~fA - Thanks to bluesxman ss64.org
FileCreateBlank,#8\DirDeleteE_Folders.cmd
FileCreateBlank,#8\DirDeleteE_Folders.ini
TxtAddLine,#8\DirDeleteE_Folders.ini,"[Process]",Append
TxtAddLine,#8\DirDeleteE_Folders.ini,"Echo,DirDeleteE",Append
TxtAddLine,#8\DirDeleteE_Folders.cmd,"for /d #$p#$pA in (#$q#2\*#$q) do echo #$p#$p~fA >>#$q#8\DirDeleteE_Folders.ini#$q",Append
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C #$q#8\DirDeleteE_Folders.cmd#$q",#2
System,FILEREDIRECT,ON
TxtReplace,#8\DirDeleteE_Folders.ini,#2,"Call,DirDelete,#2"
Run,#8\DirDeleteE_Folders.ini,Process
Run,#8\DirDeleteE_Folders.ini,Process
Run,#8\DirDeleteE_Folders.ini,Process
//--
//2) This Delete Folders hidden system
FileCreateBlank,#8\DirDeleteE_Folders_SH.ini
TxtAddLine,#8\DirDeleteE_Folders_SH.ini,"[Process]",Append
TxtAddLine,#8\DirDeleteE_Folders_SH.ini,"Echo,DirDeleteE_SH",Append
//Trick: Here Dir first list Folders at ..\Folder\* than goes down to sub folders
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C dir /b /S /A >>#$q#8\DirDeleteE_Folders_SH.ini#$q",#2
System,FILEREDIRECT,ON
TxtReplace,#8\DirDeleteE_Folders_SH.ini,#2,"Call,DirDelete,#2"
Run,#8\DirDeleteE_Folders_SH.ini,Process
Run,#8\DirDeleteE_Folders_SH.ini,Process
Run,#8\DirDeleteE_Folders_SH.ini,Process
//--
//Third Check
//1) This does not check empty files/folders
Retrieve,FolderSize,#2,#9
If,Not,#9,Equal,0,Call,Echo,"All Files/Folders NOT Deleted - FolderSize #9",Warn
//-
//2) This also checks empty files folders ;)
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C dir /b /S /A >#$q#8\DirDeleteE_Folders_Check.ini#$q",#2
System,FILEREDIRECT,ON
Retrieve,FileSize,#8\DirDeleteE_Folders_Check.ini,#9
If,Not,#9,Equal,0,Call,Echo,"All Files/Folders NOT Deleted - Check  ProjectTemp\DirDeleteE_Folders_Check.ini",Warn
//---
//Call,StartDoc,#8\DirDeleteE_Folders.ini
//Call,StartDoc,#8\DirDeleteE_Folders_SH.ini
//Call,StartDoc,#8\DirDeleteE_Folders_Check.ini
End
End
End

[CallC_CONTINUE]
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[File_Delete_Fast_CMD]
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2#$q"
If,ExistFile,#2,Run,%Api%,File_Delete_Fast_CMD_Again,#1,#2,#3,#4,#5,#6,#7,#8,#9

[File_Delete_Fast_CMD_Again]
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2#$q"
If,ExistFile,#2,Run,%Api%,File_Delete_CMD,#1,#2,#3,#4,#5,#6,#7,#8,#9

[File_Delete_Fast_CMD_B]
//CANCELLED - NOT USED BY CURRENT SCRIPT
// If,ExistFile,#2,Run,%Api%,File_Delete_Fast_CMD_B,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,ExistFile,#2,Echo,"#2 File NOT exists NOT deleted",WARN
Else,Begin
StrFormat,FILENAME,#2,%_ML_CmdFileDelFastFileName%
StrFormat,PATH,#2,%_ML_CmdFileDelFastFolderPath%
StrFormat,CTRIM,%_ML_CmdFileDelFastFolderPath%,\,%_ML_CmdFileDelFastFolderPath%
If,ExistDir,%_ML_CmdFileDelFastFolderPath%,Begin
If,ExistFile,%_ML_CmdFileDelFastFolderPath%\Cmd.exe,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2#$q"
System,FILEREDIRECT,ON
End
Else,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q%_ML_CmdFileDelFastFileName%#$q&del /q /f /A:R /A:H /A:S /A:A #$q%_ML_CmdFileDelFastFileName%#$q",%_ML_CmdFileDelFastFolderPath%
System,FILEREDIRECT,ON
End
End
If,ExistFile,#2,Run,%Api%,File_Delete_CMD,#1,#2,#3,#4,#5,#6,#7,#8,#9
End

[File_Delete_CMD]
Loop,%API%,File_Delete_CMD-Try-Delete,1,10,#2
If,EXISTFILE,#2,Begin
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
If,ExistDir,#2,"#2 Is Directory NOT File",WARN
If,#3,Equal,Halt,Halt,"#2 File NOT DELETED - Build Halt Now. Exiting"
End

[File_Delete_CMD-Try-Delete]
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#1#$q&del /q /f /A:R /A:H /A:S /A:A #$q#1#$q"
If,Not,EXISTFILE,#1,Loop,BREAK
Else,Wait,1

[Dir_Delete_Fast_CMD]
ShellExecute,Hide,cmd.exe,"/C rd /s /q #$q#2#$q"
If,ExistDir,#2,Run,%Api%,Dir_Delete_Fast_CMD_Again,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Dir_Delete_Fast_CMD_Again]
ShellExecute,Hide,cmd.exe,"/C rd /s /q #$q#2#$q"
If,ExistDir,#2,Run,%Api%,Dir_Delete_CMD,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Dir_Delete_Fast_CMD_B]
//CANCELLED - NOT USED BY CURRENT SCRIPT
// If,ExistDir,#2,Run,%Api%,Dir_Delete_Fast_CMD_B,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,ExistDir,#2,Echo,"#2 Directory NOT exists NOT deleted",WARN
Else,Begin
StrFormat,FILENAME,#2,%_ML_CmdDirDelFastFolderName%
StrFormat,PATH,#2,%_ML_CmdDirDelFastFolderPath%
StrFormat,CTRIM,%_ML_CmdDirDelFastFolderPath%,\,%_ML_CmdDirDelFastFolderPath%
If,ExistDir,%_ML_CmdDirDelFastFolderPath%,Begin
If,ExistFile,%_ML_CmdDirDelFastFolderPath%\Cmd.exe,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C rd /s /q #$q#2#$q"
System,FILEREDIRECT,ON
End
Else,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C rd /s /q #$q%_ML_CmdDirDelFastFolderName%#$q",%_ML_CmdDirDelFastFolderPath%
System,FILEREDIRECT,ON
End
If,ExistDir,#2,Run,%Api%,Dir_Delete_CMD,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
End

[Dir_Delete_CMD]
Loop,%Api%,Dir_Delete_CMD-Try-Delete,1,10,#2
If,ExistDir,#2,Begin
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
Echo,"Something wrong with deleting #2",WARN
If,ExistFile,#2,Echo,"#2 Is File NOT Directory",WARN
//If,ExistDir,#2,Echo,"#2 Is File NOT Directory",WARN
If,#3,Equal,Halt,Halt,"#2 Directory NOT DELETED - Build Halt Now. Exiting"
End

[Dir_Delete_CMD-Try-Delete]
StrFormat,FILENAME,#1,%_ML_CmdDirDelFolderName%
StrFormat,PATH,#1,%_ML_CmdDirDelFolderPath%
StrFormat,CTRIM,%_ML_CmdDirDelFolderPath%,\,%_ML_CmdDirDelFolderPath%
If,ExistDir,%_ML_CmdDirDelFolderPath%,Begin
If,ExistFile,%_ML_CmdDirDelFolderPath%\Cmd.exe,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C rd /s /q #$q#1#$q"
System,FILEREDIRECT,ON
End
Else,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C rd /s /q #$q%_ML_CmdDirDelFolderName%#$q",%_ML_CmdDirDelFolderPath%
System,FILEREDIRECT,ON
End
End
If,Not,ExistDir,#1,Loop,BREAK
Else,Wait,1

[Call_FileArch]
If,Not,ExistFile,%ProjectTemp%\Macro_Library\GetExeArch_001.exe,Begin
If,Not,ExistDir,%ProjectTemp%\Macro_Library,DirMake,%ProjectTemp%\Macro_Library
ExtractFile,%API%,Folder,GetExeArch_001.exe,%ProjectTemp%\Macro_Library
End
If,#2-,Equal,-,Set,#2,FileArch
Set,%#2%,NotFound
If,ExistFile,#3,Begin
System,FILEREDIRECT,OFF
ShellExecute,Open,%ProjectTemp%\Macro_Library\GetExeArch_001.exe,"#$q#3#$q"
System,FILEREDIRECT,ON
If,%ExitCode%,Equal,0,Set,%#2%,Unknown
If,%ExitCode%,Equal,1,Set,%#2%,I386
If,%ExitCode%,Equal,2,Set,%#2%,IA64
If,%ExitCode%,Equal,3,Set,%#2%,AMD64
End

[Call_FileDirDeleteX]
Set,%_ML_FileDirDeleteX_Au3%,%ProjectTemp%\Macro_Library\FileDirDeleteX_001.au3
If,Not,ExistFile,%_ML_FileDirDeleteX_Au3%,Run,%API%,Extract_FileDirDeleteX_AU3
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Run,%API%,Download_AutoIT_AU3381
Run,%API%,Call_FileDirDeleteX_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Call_FileDirDeleteX_P]
StrFormat,FILENAME,#2,%name%
StrFormat,PATH,#2,%path%
StrFormat,CTRIM,%path%,\,%path%
If,ExistFile,%ProjectTemp%\Macro_Library\FileDirDeleteX.ini,Call,FileDelete,%ProjectTemp%\Macro_Library\FileDirDeleteX.ini,Halt
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_FileDirDeleteX_Au3%#$q #$q%path%#$q #$q%name%#$q #9 #$q%ProjectTemp%\Macro_Library\FileDirDeleteX.ini#$q #3"
If,ExistFile,%ProjectTemp%\Macro_Library\FileDirDeleteX.ini,Run,%ProjectTemp%\Macro_Library\FileDirDeleteX.ini,Process

[Extract_FileDirDeleteX_AU3]
If,Not,ExistDir,%ProjectTemp%\Macro_Library,DirMake,%ProjectTemp%\Macro_Library
ExtractFile,%API%,Folder,FileDirDeleteX_001.au3,%ProjectTemp%\Macro_Library

[Call_DirCopy]
Set,%_ML_DirCopy_Au3%,%ProjectTemp%\Macro_Library\DirCopy_002.au3
If,Not,ExistFile,%_ML_DirCopy_Au3%,Run,%API%,Extract_DirCopy_AU3
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Run,%API%,Download_AutoIT_AU3381
Run,%API%,Call_DirCopy_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Call_DirCopy_P]
If,ExistFile,%ProjectTemp%\Macro_Library\DirCopy.ini,Call,FileDelete,%ProjectTemp%\Macro_Library\DirCopy.ini,Halt
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_DirCopy_Au3%#$q #$q#2#$q #$q#3#$q #$q#4#$q #$q%ProjectTemp%\Macro_Library\DirCopy.ini#$q"
If,%ExitCode%#4,Equal,0OverWrite,Echo,"DirCopy unsuccessful (possible file/folder lock) #2",WARN
Else,Run,%API%,Call_DirCopy_P_Error
If,%ExitCode%,Equal,1,Echo,"DirCopy successful #2"
If,%ExitCode%,Equal,2,Echo,"DirCopy unsuccessful due to something wrong with supplied search #2",WARN
If,%ExitCode%,Equal,3,Echo,"DirCopy unsuccessful due to return list problem #2",WARN
If,%ExitCode%,Equal,4,Echo,"DirCopy unsuccessful due to no matching directory found #2",WARN

[Call_DirCopy_P_Error]
If,ExistFile,%ProjectTemp%\Macro_Library\DirCopy.ini,Run,%ProjectTemp%\Macro_Library\DirCopy.ini,Process

[Extract_DirCopy_AU3]
If,Not,ExistDir,%ProjectTemp%\Macro_Library,DirMake,%ProjectTemp%\Macro_Library
ExtractFile,%API%,Folder,DirCopy_002.au3,%ProjectTemp%\Macro_Library

[CallC_FileCopyMUI-Host]
Call,HostMuiLang,_ML_FileCopyMUI_HostMuiLang
Run,%api%,CallC_FileCopyMUI,#1,#2,#3,%_ML_FileCopyMUI_HostMuiLangAll%,#5,#6,#7,#8,#9

[CallC_FileCopyMUI-Source]
If,ExistSection,%ProjectDir%\Script.Project,MuiLang,AddVariables,%ProjectDir%\Script.Project,MuiLang
Run,%api%,CallC_FileCopyMUI,#1,#2,#3,%MuiLangAll%,#5,#6,#7,#8,#9

[CallC_FileCopyMUI]
StrFormat,FileName,#2,#9
StrFormat,Path,#2,#2
StrFormat,CTRIM,#2,\,#2
StrFormat,CTRIM,#3,\,#3
If,ExistFile,#2\#9,If,Not,ExistDir,#3,DirMake,#3
System,FILEREDIRECT,OFF
If,Not,ExistFile,#3\#9,If,ExistFile,#2\#9,FileCopy,#2\#9,#3
System,FILEREDIRECT,ON
If,ExistFile,#3\#9,If,Not,#4-,Equal,-,Run,%api%,CallC_FileCopyMUI_MUI,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_FileCopyMUI_MUI]
StrFormat,Split,#4,|,0,#8
Loop,%api%,CallC_FileCopyMUI_MUI_Loop,1,#8,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_FileCopyMUI_MUI_Loop]
StrFormat,Split,#4,|,#c,#7
If,ExistFile,#2\#7\#9.mui,Begin
If,Not,ExistDir,#3\#7,DirMake,#3\#7
If,Not,ExistFile,#3\#7\#9.mui,FileCopy,#2\#7\#9.mui,#3\#7
End
If,ExistFile,#3\#7\#9.mui,Loop,BREAK

[Call_RegMultiSZ]
Set,%_ML_RegMultiSZ_Au3%,%ProjectTemp%\Macro_Library\RegMultiSZ_001.au3
If,Not,ExistFile,%_ML_FileDirDeleteX_Au3%,Run,%API%,Extract_RegMultiSZ_AU3
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Run,%API%,Download_AutoIT_AU3381
Run,%API%,Call_RegMultiSZ_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Extract_RegMultiSZ_AU3]
If,Not,ExistDir,%ProjectTemp%\Macro_Library,DirMake,%ProjectTemp%\Macro_Library
ExtractFile,%API%,Folder,RegMultiSZ_001.au3,%ProjectTemp%\Macro_Library

[Call_RegMultiSZ_P]
If,ExistFile,%ProjectTemp%\Macro_Library\RegMultiSZ_Log.Script,Call,FileDelete,%ProjectTemp%\Macro_Library\RegMultiSZ_Log.Script,Halt
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_RegMultiSZ_Au3%#$q #$q#2#$q #$q#3#$q #$q#4#$q #$q#5#$q #$q%ProjectTemp%\Macro_Library\RegMultiSZ_Log.Script#$q"
Run,%ProjectTemp%\Macro_Library\RegMultiSZ_Log.Script,Process

[CMD_Rename]
StrFormat,FILENAME,#3,#4
ShellExecute,Hide,cmd.exe,"/C ren #$q#2#$q #$q#4#$q"
If,Not,%ExitCode%,Equal,0,Run,%API%,CMD_Rename_Again,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CMD_Rename_Again]
ShellExecute,Hide,cmd.exe,"/C ren #$q#2#$q #$q#4#$q"
If,Not,%ExitCode%,Equal,0,Run,%API%,CMD_Rename_Loop,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CMD_Rename_Loop]
Loop,%API%,CMD_Rename_Loop-Try,1,10,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,%ExitCode%,Equal,0,Begin
Set,#9,0
If,Not,ExistFile,#2,If,Not,ExistDir,#2,Echo,"Ren Error: File/Folder #2 NOT Found",WARN
If,Not,ExistFile,#2,If,Not,ExistDir,#2,Echo,"Ren Error: File/Folder #2 NOT Found",WARN
If,Not,ExistFile,#2,If,Not,ExistDir,#2,Echo,"Ren Error: File/Folder #2 NOT Found",WARN
If,Not,ExistFile,#2,If,Not,ExistDir,#2,Echo,"Ren Error: File/Folder #2 NOT Found",WARN
If,Not,ExistFile,#2,If,Not,ExistDir,#2,Echo,"Ren Error: File/Folder #2 NOT Found",WARN
If,Not,ExistFile,#2,If,Not,ExistDir,#2,Set,#9,1
If,ExistFile,#3,Echo,"Ren Error: There is already #3 File",WARN
If,ExistFile,#3,Echo,"Ren Error: There is already #3 File",WARN
If,ExistFile,#3,Echo,"Ren Error: There is already #3 File",WARN
If,ExistFile,#3,Echo,"Ren Error: There is already #3 File",WARN
If,ExistFile,#3,Echo,"Ren Error: There is already #3 File",WARN
If,ExistFile,#3,Set,#9,1
If,ExistDir,#3,Echo,"Ren Error: There is already #3 Folder",WARN
If,ExistDir,#3,Echo,"Ren Error: There is already #3 Folder",WARN
If,ExistDir,#3,Echo,"Ren Error: There is already #3 Folder",WARN
If,ExistDir,#3,Echo,"Ren Error: There is already #3 Folder",WARN
If,ExistDir,#3,Echo,"Ren Error: There is already #3 Folder",WARN
If,ExistDir,#3,Set,#9,1
If,Not,#9,Equal,1,Begin
Echo,"Ren Error: The process cannot access the file because it is being used by another process.",WARN
Echo,"Ren Error: The process cannot access the file because it is being used by another process.",WARN
Echo,"Ren Error: The process cannot access the file because it is being used by another process.",WARN
Echo,"Ren Error: The process cannot access the file because it is being used by another process.",WARN
Echo,"Ren Error: The process cannot access the file because it is being used by another process.",WARN
End
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
Echo,"Ren Error: Rename #2 to #3 unsuccessfull",WARN
End

[Convert_To_Ansi_CMD]
If,Not,ExistFile,#2,ECHO,"#2 not exist",WARN
Else,Begin
If,ExistDir,%ProjectTemp%\Call_Command_Temp,Shellexecute,hide,cmd.exe,"/C rd /s /q #$q%ProjectTemp%\Call_Command_Temp#$q"
If,ExistDir,%ProjectTemp%\Call_Command_Temp,Echo,"%ProjectTemp%\Call_Command_Temp NOT Deleted",WARN
If,ExistFile,%ProjectTemp%\Call_Command_Temp\CMD_To_Ansi_Source.txt,FileDelete,%ProjectTemp%\Call_Command_Temp\CMD_To_Ansi_Source.txt
If,ExistFile,%ProjectTemp%\Call_Command_Temp\CMD_To_Ansi_Target.txt,FileDelete,%ProjectTemp%\Call_Command_Temp\CMD_To_Ansi_Target.txt
DirMake,%ProjectTemp%\Call_Command_Temp
ShellExecute,Hide,attrib,"-R #$q#2#$q"
CopyOrExpand,#2,%ProjectTemp%\Call_Command_Temp\CMD_To_Ansi_Source.txt
ShellExecute,Hide,cmd.exe,"/c type #$qCMD_To_Ansi_Source.txt#$q > #$qCMD_To_Ansi_Target.txt#$q",%ProjectTemp%\Call_Command_Temp
If,#3-,Equal,-,Set,#3,#2
If,#2,Equal,#3,If,ExistFile,#3,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#3#$q&del /q /f /A:R /A:H /A:S /A:A #$q#3#$q"
CopyOrExpand,%ProjectTemp%\Call_Command_Temp\CMD_To_Ansi_Target.txt,#3
End

[ConvertVariableToMacro_Prior80]
If,-#2-,Equal,--,Exit,"VariableToMacro - Parameter missing"
Set,%_ML_VariableToMacro%,#2
%_ML_VariableToMacro%,#3,#4,#5,#6,#7,#8,#9

[ConvertVariableToMacro_Post80]
If,-#2-,Equal,--,Exit,"VariableToMacro - Parameter missing"
Else,Begin
If,ExistDir,%ProjectTemp%\Call_Command_Temp,Shellexecute,hide,cmd.exe,"/C rd /s /q #$q%ProjectTemp%\Call_Command_Temp#$q"
If,ExistDir,%ProjectTemp%\Call_Command_Temp,Echo,"%ProjectTemp%\Call_Command_Temp NOT Deleted",WARN
If,ExistFile,%ProjectTemp%\Call_Command_Temp\CallCommand.txt,FileDelete,%ProjectTemp%\Call_Command_Temp\CallCommand.txt
DirMake,%ProjectTemp%\Call_Command_Temp
FileCreateBlank,%ProjectTemp%\Call_Command_Temp\CallCommand.txt
TxtAddline,%ProjectTemp%\Call_Command_Temp\CallCommand.txt,[VariableToMacro],Prepend
TxtAddline,%ProjectTemp%\Call_Command_Temp\CallCommand.txt,"Echo#$c#$qDe-Improved (sarcasm) ex-builderX can not do this - Can you believe that :) - Yet Another Stupidly Sabotaging case#$q",Append
TxtAddline,%ProjectTemp%\Call_Command_Temp\CallCommand.txt,"#2#$c#3#$c#4#$c#5#$c#6#$c#7#$c#8#$c#9",Append
End
Run,%ProjectTemp%\Call_Command_Temp\CallCommand.txt,VariableToMacro

[ConvertVariableToMacro_Post80_ForTests]
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C start #$q#$q CallCommand.txt",%ProjectTemp%\Call_Command_Temp
System,FILEREDIRECT,ON

[Call_AddInterface]
Set,%_ML_INTAu3%,%ProjectTemp%\Macro_Library\Change_INI_Value003.au3
If,Not,ExistFile,%_ML_INTAu3%,Run,%API%,Extract_Change_INI_Value_AU3
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Run,%API%,Download_AutoIT_AU3381
Run,%API%,Call_AddInterface_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Call_AddInterface_P]
//AddInterface="Call,AddInterface,<ScriptFile>,[<Interface>],<prefix>"
If,#2-,Equal,-,Set,#2,%ScriptFile%
If,#3-,Equal,-,Set,#3,Interface
If,#4-,Equal,-,ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_INTAu3%#$q /SaveIniP #$q#2#$q #$q#3#$q #$q%ProjectTemp%\Macro_Library\InterfaceVar.ini#$q"
Else,ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_INTAu3%#$q /SaveIniP #$q#2#$q #$q#3#$q #$q%ProjectTemp%\Macro_Library\InterfaceVar.ini#$q #$q/prefix=#4_#$q"
AddVariables,%ProjectTemp%\Macro_Library\InterfaceVar.ini,#3

[CallC_TargetAppdata]
If,#2-,Equal,-,Set,#2,TargetAppdata
If,%OSFamily%,Equal,NT5,Begin
IniRead,%ProjectInfo%,BasePath,Appdata,%_ML_T%
Set,%#2%,%TargetProfilesBaseDir%\%_ML_T%
End
If,%OSFamily%,Equal,NT6,Set,%#2%,%TargetProfilesUserDir%\AppData\Roaming

[CallC_TargetAppdataOS]
If,#2-,Equal,-,Set,#2,TargetAppdataOS
IniRead,%ProjectDir%\Script.Project,Settings,SettingsDrive,%_ML_T0%
If,%OSFamily%,Equal,NT5,Begin
IniRead,%ProjectInfo%,BasePath,Appdata,%_ML_T%
Set,%#2%,%_ML_T0%\%_ML_T%
End
If,%OSFamily%,Equal,NT6,Begin
Set,%_ML_T%,""
IniRead,%ProjectDir%\Script.Project,IniVariables,BuildType,%_ML_T%
If,%_ML_T%-,Equal,-,Set,%_ML_T%,PE
If,%_ML_T%,Equal,PE,Set,%#2%,%_ML_T0%\Users\Default\AppData\Roaming
If,%_ML_T%,Equal,OS,Set,%#2%,%_ML_T0%\Users\Administrator\AppData\Roaming
End

[CallC_TargetAUAppdata]
If,#2-,Equal,-,Set,#2,TargetAUAppdata
If,%OSFamily%,Equal,NT5,Begin
IniRead,%ProjectInfo%,BasePath,AUAppData,%_ML_T%
Set,%#2%,%TargetProfilesBaseDir%\%_ML_T%
End
If,%OSFamily%,Equal,NT6,Set,%#2%,%TargetProfilesBaseDir%\ProgramData

[CallC_TargetAUAppdataOS]
If,#2-,Equal,-,Set,#2,TargetAUAppdataOS
IniRead,%ProjectDir%\Script.Project,Settings,SettingsDrive,%_ML_T0%
If,%OSFamily%,Equal,NT5,Begin
IniRead,%ProjectInfo%,BasePath,AUAppData,%_ML_T%
Set,%#2%,%_ML_T0%\%_ML_T%
End
If,%OSFamily%,Equal,NT6,Set,%#2%,%_ML_T0%\ProgramData

[CallC_TargetDesktop]
If,#2-,Equal,-,Set,#2,TargetDesktop
If,%OSFamily%,Equal,NT5,Begin
IniRead,%ProjectInfo%,BasePath,Desktop,%_ML_T%
Set,%#2%,%TargetProfilesBaseDir%\%_ML_T%
End
If,%OSFamily%,Equal,NT6,Set,%#2%,%TargetProfilesUserDir%\Desktop

[CallC_TargetLocalSettingsAppdata]
If,#2-,Equal,-,Set,#2,TargetLocalSettingsAppdata
If,%OSFamily%,Equal,NT5,Begin
IniRead,%ProjectInfo%,BasePath,LocalSettingsAppdata,%_ML_T%
Set,%#2%,%TargetProfilesBaseDir%\%_ML_T%
End
If,%OSFamily%,Equal,NT6,Set,%#2%,%TargetProfilesUserDir%\AppData\Local

[CallC_HostOSVersion]
If,#2-,Equal,-,Set,#2,HostOSVersion
Call,HostSystemDir
Call,Version,%HostSystemDir%\ntdll.dll,#2,#3

[CallC_TargetVersion]
Set,#9,ntdll
If,#2-,Equal,-,Set,#2,TargetVersion
Set,%#2%,0
If,Not,ExistDir,%ProjectTemp%\Macro_Library\TargetVersion,DirMake,%ProjectTemp%\Macro_Library\TargetVersion
Set,#7,0
If,ExistFile,%ProjectTemp%\Macro_Library\TargetVersion\#9.dll,If,#3,Equal,,Set,#7,1
If,#7,Equal,1,Begin
Retrieve,FILEVERSION,%ProjectTemp%\Macro_Library\TargetVersion\#9.dll,%_ML_T%
Set,%#2%,%_ML_T%
End
Else,Run,%Api%,CallC_TargetVersion_P,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
If,%#2%,Equal,0,If,Not,#3,Equal,,Run,%Api%,CallC_TargetVersion_Zero,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_TargetVersion_P]
If,ExistFile,%ProjectTemp%\Macro_Library\TargetVersion\#9.dll,Call,Version,%ProjectTemp%\Macro_Library\TargetVersion\#9.dll,#2,#3
Else,Run,%Api%,CallC_TargetVersion_Find,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_TargetVersion_Find]
If,ExistFile,%Source_Sys%\#9.dl?,CopyOrExpand,%Source_Sys%\#9.dl?,%ProjectTemp%\Macro_Library\TargetVersion
Set,#8,%ProjectTemp%\Macro_Library\TargetVersion
//-
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%Source_Win%\System32\#9.dl?,CopyOrExpand,%Source_Win%\System32\#9.dll,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\I386\#9.dl?,CopyOrExpand,%SourceDir%\I386\#9.dll,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\AMD64\#9.dl?,CopyOrExpand,%SourceDir%\AMD64\#9.dll,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\IA64\#9.dl?,CopyOrExpand,%SourceDir%\IA64\#9.dll,#8
//-
//to Get version info from Extracted NT6x source
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\install_wim\N\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\install_wim\N\Windows\System32\#9.dlL,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\install_wim\5\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\install_wim\5\Windows\System32\#9.dlL,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\install_wim\4\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\install_wim\4\Windows\System32\#9.dlL,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\install_wim\3\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\install_wim\3\Windows\System32\#9.dlL,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\install_wim\2\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\install_wim\2\Windows\System32\#9.dlL,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\install_wim\1\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\install_wim\1\Windows\System32\#9.dlL,#8
//-
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\winre_wim\N\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\winre_wim\N\Windows\System32\#9.dlL,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\winre_wim\2\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\winre_wim\2\Windows\System32\#9.dlL,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\winre_wim\1\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\winre_wim\1\Windows\System32\#9.dlL,#8
//-
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\boot_wim\N\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\boot_wim\N\Windows\System32\#9.dlL,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\boot_wim\2\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\boot_wim\2\Windows\System32\#9.dlL,#8
If,Not,ExistFile,#8\#9.dll,If,ExistFile,%SourceDir%\sources\boot_wim\1\Windows\System32\#9.dlL,CopyOrExpand,%SourceDir%\sources\boot_wim\1\Windows\System32\#9.dlL,#8
//-
If,Not,ExistFile,#8\#9.dll,Begin
//to Get version info from unmounted NT6x source - current dismapi.dll used
Set,#9,dismapi
If,ExistFile,%SourceDir%\sources\#9.dll,FileCopy,%SourceDir%\sources\#9.dll,#8
End
If,ExistFile,#8\#9.dll,Call,Version,#8\#9.dll,#2,#3

[CallC_TargetVersion_Zero]
StrFormat,Right,#3,1,%_ML_TX%
If,%_ML_TX%,Equal,x,Begin
StrFormat,RTRIM,#3,1,#3
If,Not,#3,Equal,"",Set,%_ML_TVVerX%,#3
Loop,%Api%,CallC_TargetVersion_Loop_Zero,1,%_ML_TVVerX%,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
Else,Set,%#2#3%,0

[CallC_TargetVersion_Loop_Zero]
Set,#9,#2%_ML_TVVerX%
Set,%#9%,0
StrFormat,DEC,%_ML_TVVerX%,1

[CallC_TargetVersionDebug]
Run,%Api%,CallC_TargetVersion,#1,#2,#3,#4,#5,#6,#7,ntdllNOTExistDebug,#9

[CallC_Version]
If,#2-,Equal,-,Exit,"Parameter 2 ( File ) - Missing"
//-
StrFormat,FILENAME,#2,#9
StrFormat,REPLACE,#2,\,,#8
//-
Call,HostWindowsDir
//-
If,#2,Equal,#8,Begin
//Call,HostWindowsDir
//Set,#8,%HostWindowsDir%\System32
Call,HostSystemDir
Set,#8,%HostSystemDir%
Set,#2,#8\#9
System,FILEREDIRECT,OFF
If,Not,ExistFile,#2,Begin
Set,#8,%HostWindowsDir%
Set,#2,#8\#9
End
System,FILEREDIRECT,ON
End
Else,Begin
StrFormat,PATH,#2,#8
StrFormat,CTRIM,#8,\,#8
End
//-
//2 file 8 path 9 filename
System,FILEREDIRECT,OFF
If,Not,ExistFile,#2,Echo,"File Not Found - #2",Warn
System,FILEREDIRECT,ON
//-
StrFormat,Right,#4,1,%_ML_T%
If,%_ML_T%,Equal,x,Begin
StrFormat,RTRIM,#4,1,#4
If,Not,#4,Equal,"",Set,%_ML_VerX%,#4
End
//-
Set,#6,#3
If,#3-,Equal,-,If,Not,#4-,Equal,-,Set,#3,#9Version#4
If,#3-,Equal,-,If,#4-,Equal,-,Set,#3,#9Version
If,#6-,Equal,-,Set,#6,#9Version
If,Not,#3-,Equal,-,If,Not,#4-,Equal,-,Set,#3,#6#4
//-
Set,#7,-
StrFormat,Replace,#8,%HostWindowsDir%,,%_ML_T%
If,Not,#8,Equal,%_ML_T%,Set,#7,CopyTemp
//-
Set,%_ML_TempV%,""
If,#7,Equal,CopyTemp,Begin
If,Not,ExistDir,%ProjectTemp%,DirMake,%ProjectTemp%
If,ExistFile,%ProjectTemp%\#9,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q%ProjectTemp%\#9#$q&del /q /f /A:R /A:H /A:S /A:A #$q%ProjectTemp%\#9#$q"
If,ExistFile,%ProjectTemp%\#9,Call,FileDelete,%ProjectTemp%\#9
System,FILEREDIRECT,OFF
If,ExistFile,#2,FileCopy,#2,%ProjectTemp%
System,FILEREDIRECT,ON
If,ExistFile,%ProjectTemp%\#9,Retrieve,FILEVERSION,%ProjectTemp%\#9,%_ML_TempV%
End
//-
If,#7,Equal,-,If,ExistFile,#2,Retrieve,FILEVERSION,#2,%_ML_TempV%
//-
Set,%#3%,%_ML_TempV%
Set,%#6%,%_ML_TempV%
If,Not,#4-,Equal,-,StrFormat,Split,%_ML_TempV%,.,#4,%#3%
//-
If,ExistVar,%_ML_VerX%,Begin
If,Not,#4,Equal,1,Begin
If,%_ML_TempV%,Equal,"",Loop,%Api%,CallC_Version_Loop_Empty,2,%_ML_VerX%,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Loop,%Api%,CallC_Version_Loop,2,%_ML_VerX%,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
End

[CallC_Version_Loop]
StrFormat,DEC,%_ML_VerX%,1
Set,#9,#6%_ML_VerX%
StrFormat,Split,%_ML_TempV%,.,%_ML_VerX%,%#9%

[CallC_Version_Loop_Empty]
StrFormat,DEC,%_ML_VerX%,1
Set,#9,#6%_ML_VerX%
Set,%#9%,""

[CallC_Version_Debug]
//Temporary Section To test Call Version Commands and see all works ok - EmptyDebug values should not exists :)
//Run,%Api%,CallC_Version_Debug
Echo,"Call,HostOSVersion",Warn
Call,HostOSVersion
Echo,HostOSVersion=%HostOSVersion%,Warn
Echo,----,Warn
Echo,"Call,HostOSVersion,,2",Warn
Call,HostOSVersion,,2
Echo,HostOSVersion=%HostOSVersion%,Warn
Echo,HostOSVersion1_DebugNO=%HostOSVersion1%,Warn
Echo,HostOSVersion2=%HostOSVersion2%,Warn
Echo,HostOSVersion3_DebugNO=%HostOSVersion3%,Warn
Echo,----,Warn
Echo,"Call,TargetVersion,,3",Warn
Call,TargetVersion,,3
Echo,TargetVersion=%TargetVersion%,Warn
Echo,TargetVersion1_DebugNO=%TargetVersion1%,Warn
Echo,TargetVersion2_DebugNO=%TargetVersion2%,Warn
Echo,TargetVersion3=%TargetVersion3%,Warn
Echo,TargetVersion4_DebugNO=%TargetVersion4%,Warn
Echo,----,Warn
Echo,"Call,HostOSVersion,,2x",Warn
Call,HostOSVersion,,2x
Echo,HostOSVersion=%HostOSVersion%,Warn
Echo,HostOSVersion1=%HostOSVersion1%,Warn
Echo,HostOSVersion2=%HostOSVersion2%,Warn
Echo,HostOSVersion3_DebugNO=%HostOSVersion3%,Warn
Echo,----,Warn
Echo,"Call,TargetVersion,,3x",Warn
Call,TargetVersion,,3x
Echo,TargetVersion=%TargetVersion%,Warn
Echo,TargetVersion1=%TargetVersion1%,Warn
Echo,TargetVersion2=%TargetVersion2%,Warn
Echo,TargetVersion3=%TargetVersion3%,Warn
Echo,TargetVersion4_DebugNO=%TargetVersion4%,Warn
Echo,----,Warn
Call,Version,explorer.exe
Echo,explorer.exeVersion=%explorer.exeVersion%,Warn
Echo,----,Warn
Call,Version,explorerblablaaa1.exe
Echo,_DebugEmpty=%explorerblablaaa1.exeVersion%,Warn
Echo,----,Warn
Call,Version,explorerblablaaa3.exe,,3
Echo,_DebugEmpty=%explorerblablaaa3.exeVersion%,Warn
Echo,1_DebugNO=%explorerblablaaa3.exeVersion1%,Warn
Echo,2_DebugNO=%explorerblablaaa3.exeVersion2%,Warn
Echo,3_DebugEmpty=%explorerblablaaa3.exeVersion3%,Warn
Echo,----,Warn
Call,Version,explorerblablaaa4x.exe,,4x
Echo,_DebugEmpty=%explorerblablaaa4x.exeVersion%,Warn
Echo,_DebugEmpty1=%explorerblablaaa4x.exeVersion1%,Warn
Echo,_DebugEmpty2=%explorerblablaaa4x.exeVersion2%,Warn
Echo,_DebugEmpty3=%explorerblablaaa4x.exeVersion3%,Warn
Echo,_DebugEmpty4=%explorerblablaaa4x.exeVersion4%,Warn
Echo,----,Warn
Echo,"Call,TargetVersionDebug",Warn
Call,TargetVersionDebug
Echo,_Debug0=%TargetVersion%,Warn
Echo,"Call,TargetVersionDebug,,2",Warn
Echo,_Debug0=%TargetVersion%,Warn
Echo,_DebugEmpty=%TargetVersionDebug1%,Warn
Echo,_Debug0=%TargetVersionDebug2%,Warn
Echo,_DebugEmpty=%TargetVersionDebug3%,Warn
Echo,----------,Warn
Echo,----------,Warn
Echo,----------,Warn
Echo,"--Test When Var Value Given--------",Warn
Echo,----------,Warn
Echo,----------,Warn
Echo,----------,Warn
Echo,"Call,HostOSVersion,XHostOSVersion",Warn
Call,HostOSVersion,XHostOSVersion
Echo,XHostOSVersion=%XHostOSVersion%,Warn
Echo,----,Warn
Echo,"Call,HostOSVersion,XHostOSVersion,2",Warn
Call,HostOSVersion,XHostOSVersion2,2
Echo,XHostOSVersion=%XHostOSVersion2%,Warn
Echo,XHostOSVersion1_DebugNO=%XHostOSVersion21%,Warn
Echo,XHostOSVersion2=%XHostOSVersion22%,Warn
Echo,XHostOSVersion3_DebugNO=%XHostOSVersion23%,Warn
Echo,----,Warn
Echo,"Call,TargetVersion,XTargetVersion,3",Warn
Call,TargetVersion,XTargetVersion3,3
Echo,XTargetVersion=%XTargetVersion3%,Warn
Echo,XTargetVersion1_DebugNO=%XTargetVersion31%,Warn
Echo,XTargetVersion2_DebugNO=%XTargetVersion32%,Warn
Echo,XTargetVersion3=%XTargetVersion33%,Warn
Echo,XTargetVersion4_DebugNO=%XTargetVersion34%,Warn
Echo,----,Warn
Echo,"Call,HostOSVersion,XHostOSVersion,2x",Warn
Call,HostOSVersion,XHostOSVersion2x,2x
Echo,XHostOSVersion=%XHostOSVersion2x%,Warn
Echo,XHostOSVersion1=%XHostOSVersion2x1%,Warn
Echo,XHostOSVersion2=%XHostOSVersion2x2%,Warn
Echo,XHostOSVersion3_DebugNO=%XHostOSVersion2x3%,Warn
Echo,----,Warn
Echo,"Call,TargetVersion,XTargetVersion,3x",Warn
Call,TargetVersion,XTargetVersion3x,3x
Echo,XTargetVersion=%XTargetVersion3x%,Warn
Echo,XTargetVersion1=%XTargetVersion3x1%,Warn
Echo,XTargetVersion2=%XTargetVersion3x2%,Warn
Echo,XTargetVersion3=%XTargetVersion3x3%,Warn
Echo,XTargetVersion4_DebugNO=%XTargetVersion3x4%,Warn
Echo,----,Warn
Call,Version,explorer.exe,explorer.exeVAR
Echo,explorer.exeVersion=%explorer.exeVAR%,Warn
Echo,----,Warn
Echo,"Call,Version,.....",Warn
Call,Version,explorerblablaaa1.exe,explorerblablaaaVAR1
Echo,_DebugEmpty=%explorerblablaaaVAR1%,Warn
Echo,"Call,Version,....3",Warn
Call,Version,explorerblablaaa3.exe,explorerblablaaaVAR3,3
Echo,_DebugEmpty=%explorerblablaaaVAR3%,Warn
Echo,1_DebugNO=%explorerblablaaaVAR31%,Warn
Echo,2_DebugNO=%explorerblablaaaVAR32%,Warn
Echo,3_DebugEmpty=%explorerblablaaaVAR33%,Warn
Echo,"Call,Version,....4x",Warn
Call,Version,explorerblablaaa4x.exe,explorerblablaaaVAR4x,4x
Echo,_DebugEmpty=%explorerblablaaaVAR4x%,Warn
Echo,_DebugEmpty1=%explorerblablaaaVAR4x1%,Warn
Echo,_DebugEmpty2=%explorerblablaaaVAR4x2%,Warn
Echo,_DebugEmpty3=%explorerblablaaaVAR4x3%,Warn
Echo,_DebugEmpty4=%explorerblablaaaVAR4x4%,Warn
Echo,----,Warn
Echo,"Call,TargetVersionDebug,TVD,2",Warn
Call,TargetVersionDebug,TVD,2
Echo,_Debug0=%TVD%,Warn
Echo,_DebugEmpty=%TVD1%,Warn
Echo,_Debug0=%TVD2%,Warn
Echo,_DebugEmpty=%TVD3%,Warn
Echo,_DebugEmpty=%TVD4%,Warn
Echo,"Call,TargetVersionDebug,TVDB,3x",Warn
Call,TargetVersionDebug,TVDB,3x
Echo,_Debug0=%TVDB%,Warn
Echo,_Debug0=%TVDB1%,Warn
Echo,_Debug0=%TVDB2%,Warn
Echo,_Debug0=%TVDB3%,Warn
Echo,_DebugEmpty=%TVDB4%,Warn

[CallC_HostOSArch]
If,#2-,Equal,-,Set,#2,HostOSArch
If,Not,ExistFile,%ProjectTemp%\Call_Command\HostOSArch0001.au3,Run,%Api%,CallC_HostOSArch_Create
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q%ProjectTemp%\Call_Command\HostOSArch0001.au3#$q"
Run,%Api%,CallC_HostOSArch_%ExitCode%,#1,#2

[CallC_HostOSArch_0]
Set,%#2%,UNKNOWN

[CallC_HostOSArch_1]
Set,%#2%,x86

[CallC_HostOSArch_2]
Set,%#2%,x64

[CallC_HostOSArch_3]
Set,%#2%,IA64

[CallC_HostOSArch_Create]
If,Not,ExistDir,%ProjectTemp%\Call_Command,DirMake,%ProjectTemp%\Call_Command
FileCreateBlank,%ProjectTemp%\Call_Command\HostOSArch0001.au3
Run,%Api%,CallC_HostOSArch_AU3,%ProjectTemp%\Call_Command\HostOSArch0001.au3

[CallC_HostOSArch_AU3]
TxtAddLine,#1,"#NoTrayIcon",Append
TxtAddLine,#1,"",Append
TxtAddLine,#1,"$OSArch=@OSArch",Append
TxtAddLine,#1,"Switch $OSArch",Append
TxtAddLine,#1,"Case #$qX86#$q",Append
TxtAddLine,#1,"$ExitCode=1",Append
TxtAddLine,#1,"Case #$qX64#$q",Append
TxtAddLine,#1,"$ExitCode=2",Append
TxtAddLine,#1,"Case #$qIA64#$q",Append
TxtAddLine,#1,"$ExitCode=3",Append
TxtAddLine,#1,"Case Else",Append
TxtAddLine,#1,"$ExitCode=0",Append
TxtAddLine,#1,"EndSwitch",Append
TxtAddLine,#1,"Exit $ExitCode",Append

[CallC_HostIsAdmin]
If,#2-,Equal,-,Set,#2,HostIsAdmin
Set,%_ML_HostIsAdmin_Temp%,#2
If,%Version%,Smaller,076,Run,%Api%,CallC_HostIsAdmin_Prior76,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,System,ISADMIN,%_ML_HostIsAdmin_Temp%
Set,%#2%,%_ML_HostIsAdmin_Temp%

[CallC_HostIsAdmin_Prior76]
If,Not,ExistFile,%ProjectTemp%\Call_Command\HostIsAdmin0001.au3,Run,%Api%,CallC_HostIsAdmin_Create
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q%ProjectTemp%\Call_Command\HostIsAdmin0001.au3#$q"
Run,%Api%,CallC_HostIsAdmin_%ExitCode%,#1,#2

[CallC_HostIsAdmin_0]
Set,%#2%,False

[CallC_HostIsAdmin_1]
Set,%#2%,True

[CallC_HostIsAdmin_Create]
If,Not,ExistDir,%ProjectTemp%\Call_Command,DirMake,%ProjectTemp%\Call_Command
FileCreateBlank,%ProjectTemp%\Call_Command\HostIsAdmin0001.au3
TxtAddLine,%ProjectTemp%\Call_Command\HostIsAdmin0001.au3,"#NoTrayIcon",Append
TxtAddLine,%ProjectTemp%\Call_Command\HostIsAdmin0001.au3,"Exit IsAdmin()",Append

[CallC_HostUAC]
If,#2#3-,Equal,Enabled-,Set,#2,HostUACEnabled
Else,Begin
If,#2-,Equal,-,Set,#2,HostUAC
End
Set,#7,-1
If,#3,Equal,Enabled,Set,#7,0
//Call,HostWindowsDir
//If,ExistFile,%HostWindowsDir%\system32\ntdll.dll,Retrieve,FILEVERSION,%HostWindowsDir%\system32\ntdll.dll,#9
Call,HostSystemDir
If,ExistFile,%HostSystemDir%\ntdll.dll,Retrieve,FILEVERSION,%HostSystemDir%\ntdll.dll,#9
Else,Set,#9,1
If,#9,Bigger,5,Begin
Set,#7,0
RegRead,HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System,EnableLUA,#7
If,#3,Equal,Enabled,Begin
Set,#6,no
If,#7,Equal,0,Set,#6,ok
If,#7,Equal,1,Set,#6,ok
If,Not,#6,Equal,ok,Set,#7,1
End
End
Set,%#2%,#7

[CallC_HostMuiLang]
//Value exists on nt6x -- on nt5x value is elsewhere with numeric and will be added later (current temporarly 0)
If,#2-,Equal,-,Set,#2,HostMuiLang
Set,%#2%,0
Set,%#2All%,0
//LocaleName not good - does not match with installed mui (ex: installed en-us with tr localized settings)
//If,ExistRegKey,HKCU,"Control Panel\International",LocaleName,RegRead,HKCU,"Control Panel\International",LocaleName,%#2%
//For now workaround: first value of PreferredUILanguages
If,ExistRegKey,HKCU,"Control Panel\Desktop",PreferredUILanguages,RegRead,HKCU,"Control Panel\Desktop",PreferredUILanguages,%#2%
If,Not,%#2%,Equal,0,Begin
If,%Version%,Smaller,079,Begin
StrFormat,Replace,%#2%,#$c,|,%#2%
StrFormat,Replace,%#2%,#$q,,%#2%
End
Else,Begin
StrFormat,Replace,%#2%,#$z,|,%#2%
End
StrFormat,Split,%#2%,|,1,%#2%
Set,%#2All%,%#2%
If,ExistRegKey,HKLM,SYSTEM\CurrentControlSet\Control\MUI\UILanguages\%#2%,DefaultFallback,Begin
RegRead,HKLM,SYSTEM\CurrentControlSet\Control\MUI\UILanguages\%#2%,DefaultFallback,#9
If,Not,%#2%,Equal,#9,Set,%#2All%,%#2%|#9
If,ExistRegKey,HKLM,SYSTEM\CurrentControlSet\Control\MUI\UILanguages\%#2%,#9,Begin
RegRead,HKLM,SYSTEM\CurrentControlSet\Control\MUI\UILanguages\%#2%,#9,#9
If,%Version%,Smaller,079,Begin
StrFormat,Replace,#9,#$c,|,#9
StrFormat,Replace,#9,#$q,,#9
End
Else,Begin
StrFormat,Replace,#9,#$z,|,#9
End
Set,%#2All%,%#2All%|#9
End
End
End
If,%#2%,Equal,0,Run,%Api%,CallC_HostMuiLang_NT5x,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostMuiLang_CANCEL]
//Value exists on nt6x -- on nt5x value is elsewhere with numeric and will be added later (current temporarly 0)
If,#2-,Equal,-,Set,#2,HostMuiLang
Set,%#2%,0
Set,%#2All%,0
Set,%#2_DefaultFallback%,0
Set,%#2_DefaultFallbackAll%,0
//LocaleName not good - does not match with installed mui (ex: installed en-us with tr localized settings)
//If,ExistRegKey,HKCU,"Control Panel\International",LocaleName,RegRead,HKCU,"Control Panel\International",LocaleName,%#2%
//For now workaround: first value of PreferredUILanguages
If,ExistRegKey,HKCU,"Control Panel\Desktop",PreferredUILanguages,RegRead,HKCU,"Control Panel\Desktop",PreferredUILanguages,%#2%
If,Not,%#2%,Equal,0,Begin
//-
If,%Version%,Smaller,079,Begin
StrFormat,Replace,%#2%,#$c,|,%#2%
StrFormat,Replace,%#2%,#$q,,%#2%
End
Else,Begin
StrFormat,Replace,%#2%,#$z,|,%#2%
End
//-
StrFormat,Split,%#2%,|,1,%#2%
Set,%#2All%,%#2%
//-
If,ExistRegKey,HKLM,SYSTEM\CurrentControlSet\Control\MUI\UILanguages\%#2%,DefaultFallback,Begin
RegRead,HKLM,SYSTEM\CurrentControlSet\Control\MUI\UILanguages\%#2%,DefaultFallback,%#2_DefaultFallback%
Set,%#2_DefaultFallbackALL%,%#2_DefaultFallback%
Set,%#2All%,%#2%|%#2_DefaultFallback%
If,ExistRegKey,HKLM,SYSTEM\CurrentControlSet\Control\MUI\UILanguages\%#2%,%#2_DefaultFallback%,Begin
RegRead,HKLM,SYSTEM\CurrentControlSet\Control\MUI\UILanguages\%#2%,%#2_DefaultFallback%,#9
If,%Version%,Smaller,079,Begin
StrFormat,Replace,#9,#$c,|,#9
StrFormat,Replace,#9,#$q,,#9
End
Else,Begin
StrFormat,Replace,#9,#$z,|,#9
End
Set,%#2_DefaultFallbackAll%,%#2_DefaultFallback%%|#9
End
End
End
If,%#2%,Equal,0,Run,%Api%,CallC_HostMuiLang_NT5x,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostMuiLang_NT5x]
If,ExistRegKey,HKCU,"Control Panel\Desktop",MultiUILanguageId,RegRead,HKCU,"Control Panel\Desktop",MultiUILanguageId,%#2%

[CallC_HostOSLang]
If,#2-,Equal,-,Set,#2,HostOSLang
RegRead,HKLM,SYSTEM\CurrentControlSet\Control\Nls\Language,InstallLanguage,%#2%

[CallC_HostOSLangDefault]
If,#2-,Equal,-,Set,#2,HostOSLangDefault
RegRead,HKLM,SYSTEM\CurrentControlSet\Control\Nls\Language,Default,%_ML_t_D%

[CallC_HostOSLang_CANCELLED_RESERVED]
//CANCELLED_RESERVED
If,#2-,Equal,-,Set,#2,HostOSLang
Run,%Api%,CallC_GeneralMRead,OSLang,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostOSLang_CANCELLED1]
//CANCELLED
If,#2-,Equal,-,Set,#2,HostOSLang
//Cancelled Because:
//fr_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-73982.iso (MD5: 642ce8f1a31bdd118d617ff2fe037c26)
//gives 0409 not 040c
RegRead,HKLM,SYSTEM\CurrentControlSet\Control\Nls\Locale,(Default),%#2%
StrFormat,LTRIM,%#2%,4,%#2%

[CallC_HostOSLang_CANCELLED2]
//Cancelled Because:
//OSLang also have none numeric values that will not work with ErrorLevel (ExitCode)
If,#2-,Equal,-,Set,#2,HostOSLang
If,Not,ExistFile,%ProjectTemp%\Call_Command\HostOSLang0001.au3,Run,%Api%,CallC_HostOSLang_Create
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q%ProjectTemp%\Call_Command\HostOSLang0001.au3#$q"
Set,%#2%,%ExitCode%
StrFormat,LTRIM,%#2%,1,%#2%

[CallC_HostOSLang_Create]
//CANCELLED
If,Not,ExistDir,%ProjectTemp%\Call_Command,DirMake,%ProjectTemp%\Call_Command
FileCreateBlank,%ProjectTemp%\Call_Command\HostOSLang0001.au3
Run,%Api%,CallC_HostOSLang_AU3,%ProjectTemp%\Call_Command\HostOSLang0001.au3

[CallC_HostOSLang_AU3]
//CANCELLED
TxtAddLine,#1,"#NoTrayIcon",Append
TxtAddLine,#1,"$ExitCode=(#$q9#$q & @OSLang)",Append
TxtAddLine,#1,"Exit $ExitCode",Append

[CallC_HiveCreate]
If,Not,ExistFile,#2,Run,%Api%,CallC_HiveCreate_RegFile,#1,#2,#9,#3,#4,#5,#6,#7,#8

[CallC_HiveCreate_RegFile]
Strformat,FileName,#2,#9
Strformat,Path,#2,#2
StrFormat,CTRIM,#2,\,#2
Run,%Api%,CallC_HiveCreate_Reg,#1,#2,#9,#3,#4,#5,#6,#7,#8

[CallC_HiveCreateF]
Run,%Api%,CallC_HiveCreate_Reg,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HiveCreate_Reg]
If,#2-,Equal,-,Set,#2,%ProjectTemp%
If,#3-,Equal,-,Set,#3,NewHive.hiv
If,Not,ExistFile,#2\#3,Run,%Api%,CallC_HiveCreate_RegB,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HiveCreate_RegB]
If,#4-,Equal,-,Set,#4,TMP
If,#5-,Equal,-,Set,#5,#3_TEMP
If,Not,ExistDir,#2,DirMake,#2
Set,#9,0
If,ExistFile,#2\#3,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#3#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#3#$q"
If,ExistFile,#2\#3,Echo,"#1: #2\#3 File NOT Deleted - HiveCreate not finished. Exiting....",Warn
If,ExistFile,#2\#3,Set,#9,1
If,ExistFile,#2\#5,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#5#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#5#$q"
If,ExistFile,#2\#5,Echo,"#1: #2\#5 File NOT Deleted - HiveCreate not finished. Exiting....",Warn
If,ExistFile,#2\#5,Set,#9,1
If,ExistFile,#2\#3.LOG,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#3.LOG#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#3.LOG#$q"
If,ExistFile,#2\#3.LOG,Echo,"#1: #2\#3.LOG File NOT Deleted - HiveCreate not finished. Exiting....",Warn
If,ExistFile,#2\#3.LOG,Set,#9,1
If,ExistFile,#2\#5.LOG,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#5.LOG#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#5.LOG#$q"
If,ExistFile,#2\#5.LOG,Echo,"#1: #2\#5.LOG File NOT Deleted - HiveCreate not finished. Exiting....",Warn
If,ExistFile,#2\#5.LOG,Set,#9,1
If,#9,Equal,0,Begin
//first load - unload cause big hive size (on hostx64) regsave required....
Shellexecute,Hide,Reg.exe,"load #$qHKLM\#4#$q #$q#2\#5#$q"
Shellexecute,Hide,Reg.exe,"unload #$qHKLM\#4#$q"
RegHiveLoad,#4,#2\#5
Shellexecute,Hide,Reg.exe,"save #$qHKLM\#4#$q #$q#2\#3#$q /y"
RegHiveUnLoad,#4
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#5#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#5#$q"
If,ExistFile,#2\#5,Echo,"#1: #2\#5 File NOT Deleted - HiveCreate not finished.",Warn
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#3.LOG#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#3.LOG#$q"
If,ExistFile,#2\#3.LOG,Echo,"#1: #2\#3.LOG File NOT Deleted - HiveCreate not finished.",Warn
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#5.LOG#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#5.LOG#$q"
If,ExistFile,#2\#5.LOG,Echo,"#1: #2\#5.LOG File NOT Deleted - HiveCreate not finished.",Warn
//-
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#5.LOG1#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#5.LOG1#$q"
If,ExistFile,#2\#5.LOG1,Echo,"#1: #2\#5.LOG1 File NOT Deleted - HiveCreate not finished.",Warn
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#5.LOG2#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#5.LOG2#$q"
If,ExistFile,#2\#5.LOG2,Echo,"#1: #2\#5.LOG2 File NOT Deleted - HiveCreate not finished.",Warn
//-
//Deleting rest of temporary files
//ex:
//SETUPREG.HIV_TEMP{1337e5bb-8cd0-11e6-bf1c-6c71d9576734}.TM.blf
//SETUPREG.HIV_TEMP{1337e5bb-8cd0-11e6-bf1c-6c71d9576734}.TMContainer00000000000000000001.regtrans-ms
//SETUPREG.HIV_TEMP{1337e5bb-8cd0-11e6-bf1c-6c71d9576734}.TMContainer00000000000000000002.regtrans-ms
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#5*.blf#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#5*.blf#$q"
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2\#5*.regtrans-ms#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2\#5*.regtrans-ms#$q"
End

[CallC_FileCopyBiggerVersion]
Set,#5,#4
Set,#4,#3
Strformat,FileName,#2,#3
Strformat,Path,#2,#2
StrFormat,CTRIM,#2,\,#2
If,#5-,Equal,-,Set,#5,#3
//------------------------------------------------------------CAB Compressed File At Target S
Call,FileNameNoExt,#5,_ML_T_1_CallC_FileCopyBiggerVersion
StrFormat,EXT,#5,#8
StrFormat,SPLIT,#8,.,2,#8
//-
StrFormat,RTRIM,#8,1,#7
If,Not,#7_,Equal,#8,Set,#8,#7
//-
If,ExistFile,#4\%_ML_T_1_CallC_FileCopyBiggerVersion%.#8_,Begin
Set,%_ML_T_2_CallC_FileCopyBiggerVersion%,0
Run,%api%,CallC_FileCopyBiggerVersion_CAB,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
Else,Begin
//------------------------------------------------------------CAB Compressed File At Target F
If,Not,ExistFile,#4\#5,FileCopy,#2\#3,#4\#5
Else,Run,%api%,CallC_FileCopyBiggerVersion_C,#1,#2,#3,#4,#5,#6,#7,#8,#9
End

[CallC_FileCopyBiggerVersion_CAB]
//source: storport.sys but target there is storport.sy_ (if there is both Target storport.sy_ and storport.sys -> biggest version of 3 ends with Target storport.sy_ )
Call,DirDeleteMake,%ProjectTemp%\CallC_FileCopyBiggerVersion_Target
ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#4\%_ML_T_1_CallC_FileCopyBiggerVersion%.#8_#$q -o#$q%ProjectTemp%\CallC_FileCopyBiggerVersion_Target#$q"
If,ExistFile,%ProjectTemp%\CallC_FileCopyBiggerVersion_Target\#3,Begin
Retrieve,FileVersion,#2\#3,%_ML_CallC_FileCopyBiggerV_TempS%
Retrieve,FileVersion,%ProjectTemp%\CallC_FileCopyBiggerVersion_Target\#3,%_ML_CallC_FileCopyBiggerV_TempT%
If,%_ML_CallC_FileCopyBiggerV_TempS%,Equal,%_ML_CallC_FileCopyBiggerV_TempT%,Set,%_ML_CallC_FileCopyBiggerV_Temp%,Equal
Else,Call,CompareVersions,%_ML_CallC_FileCopyBiggerV_TempS%,%_ML_CallC_FileCopyBiggerV_TempT%,_ML_CallC_FileCopyBiggerV_Temp
If,%_ML_CallC_FileCopyBiggerV_Temp%,Equal,Bigger,Begin
Call,FileDelete,#4\%_ML_T_1_CallC_FileCopyBiggerVersion%.#8_
If,Not,ExistFile,#4\#5,FileCopy,#2\#3,#4\#5
Else,Run,%api%,CallC_FileCopyBiggerVersion_C,#1,#2,#3,#4,#5,#6,#7,#8,#9
Call,CABCompress,#4\#5
End
End
Else,Begin
Call,Echo,"Extraction Failed - FallBack - Ignore Target Compressed File #4\%_ML_T_1_CallC_FileCopyBiggerVersion%.#8_ ",Warn
If,Not,ExistFile,#4\#5,FileCopy,#2\#3,#4\#5
Else,Run,%api%,CallC_FileCopyBiggerVersion_C,#1,#2,#3,#4,#5,#6,#7,#8,#9
End

[CallC_FileCopyBiggerVersion_C]
Retrieve,FileVersion,#2\#3,%_ML_CallC_FileCopyBiggerV_TempS%
Retrieve,FileVersion,#4\#5,%_ML_CallC_FileCopyBiggerV_TempT%
If,%_ML_CallC_FileCopyBiggerV_TempS%,Equal,%_ML_CallC_FileCopyBiggerV_TempT%,Set,%_ML_CallC_FileCopyBiggerV_Temp%,Equal
Else,Call,CompareVersions,%_ML_CallC_FileCopyBiggerV_TempS%,%_ML_CallC_FileCopyBiggerV_TempT%,_ML_CallC_FileCopyBiggerV_Temp
If,%_ML_CallC_FileCopyBiggerV_Temp%,Equal,Bigger,Begin
ShellExecute,Hide,attrib.exe,"-R -S -A -H #$q#4\#3#$q"
If,Not,ExistVar,%NoWarnFOW%,IniRead,%ProjectDir%\script.project,IniVariables,NoWarnFileOverWrite,%NoWarnFOW%
Echo,"Version Copy #2\#3 (Source) > #4\#3 (Target)"
If,%NoWarnFOW%,Equal,True,System,ERROROFF
FileCopy,#2\#3,#4\#5
End

[CallC_CompareVersions_TEST]
Call,CompareVersions,3.12.0.600,3.3.0.380,CalculateResult1
If,3.12.0.600,Bigger,3.3.0.380,Set,%CalculateResult2%,Bigger
If,3.12.0.600,Smaller,3.3.0.380,Set,%CalculateResult2%,Smaller
Echo,%CalculateResult1%
Echo,%CalculateResult2%

[CallC_CompareVersions]
If,#4-,Equal,-,Set,#4,CompareVersions
StrFormat,Split,#2,.,0,#9
StrFormat,Split,#3,.,0,#8
If,Not,#9,Equal,#8,If,#9,Smaller,#8,Set,#9,#8
Loop,%Api%,CallC_CompareVersions_Loop,1,#9,#2,1
Loop,%Api%,CallC_CompareVersions_Loop,1,#9,#3,2
//--
Loop,%Api%,CallC_CompareVersions_Loop_V,1,#9
//--
Set,%#4%,%_ML_Temp%

[CallC_CompareVersions_Loop]
Set,%_ML_Temp#2#c%,0
StrFormat,Split,#1,.,#c,%_ML_Temp#2#c%

[CallC_CompareVersions_Loop_V]
If,%_ML_Temp1#c%,Bigger,%_ML_Temp2#c%,Set,%_ML_Temp%,Bigger
If,%_ML_Temp1#c%,Smaller,%_ML_Temp2#c%,Set,%_ML_Temp%,Smaller
If,%_ML_Temp1#c%,Equal,%_ML_Temp2#c%,Set,%_ML_Temp%,Equal
If,Not,%_ML_Temp%,Equal,Equal,Loop,BREAK

[CallC_Echo]
If,#4-,Equal,-,Set,#4,10
If,#4,Equal,10,Run,%Api%,CallC_Echo10,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Begin
If,#3-,Equal,-,Loop,%Api%,CallC_Echo_LoopA,1,#4,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Loop,%Api%,CallC_Echo_LoopB,1,#4,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
If,Not,#5-,Equal,-,Run,%Api%,CallC_EchoAdd,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,#7,Equal,Exit,Exit,#2
If,#7,Equal,Halt,Halt,#2

[CallC_EchoAdd]
If,#5,Equal,Message,Begin
If,#6-,Equal,-,Message,#2,Warning
Else,Message,#2,Warning,#6
End
If,#5,Equal,MessageInformation,Begin
If,#6-,Equal,-,Message,#2,Information
Else,Message,#2,Information,#6
End
If,#5,Equal,MessageError,Begin
If,#6-,Equal,-,Message,#2,Error
Else,Message,#2,Error,#6
End

[CallC_Echo10]
If,#3,Equal,Warn,Run,%Api%,CallC_Echo10Warn,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,#3-,Equal,-,Run,%Api%,CallC_Echo10Normal,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_Echo10Normal]
Echo,#2
Echo,#2
Echo,#2
Echo,#2
Echo,#2
Echo,#2
Echo,#2
Echo,#2
Echo,#2
Echo,#2

[CallC_Echo10Warn]
Echo,#2,Warn
Echo,#2,Warn
Echo,#2,Warn
Echo,#2,Warn
Echo,#2,Warn
Echo,#2,Warn
Echo,#2,Warn
Echo,#2,Warn
Echo,#2,Warn
Echo,#2,Warn

[CallC_Echo_LoopA]
Echo,#2

[CallC_Echo_LoopB]
Echo,#2,#3

[CallC_StringLength]
If,#3-,Equal,-,Set,#3,StringLength
If,%Version%,bigger,079,StrFormat,LEN,#2,%#3%
Else,Run,%Api%,CallC_StringLength_Prior80,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_StringLength_Prior80]
If,Not,ExistDir,%ProjectTemp%\Call_Command_Temp,DirMake,%ProjectTemp%\Call_Command_Temp
If,ExistFile,%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt,Shellexecute,Hide,cmd.exe,"/C del /q /f #$q%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt#$q&del /q /f /A:R /A:H /A:S /A:A #$q%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt#$q"
If,ExistFile,%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt,Message,"%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt not deleted",Error,10
If,ExistFile,%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt,Echo,"%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt not deleted",Warn
FileCreateBlank,%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt
TxtAddLine,%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt,"#2",Append
Retrieve,FileSize,%ProjectTemp%\Call_Command_Temp\Calculate_StringLength.txt,%_ML_CallC_Calculate_StringLength%
StrFormat,dec,%_ML_CallC_Calculate_StringLength%,2
Set,%#3%,%_ML_CallC_Calculate_StringLength%

[CallC_FileNameNoExt]
If,#2-,Equal,-,Set,#2,%ScriptFile%
If,#3-,Equal,-,Set,#3,FileNameNoExt
StrFormat,Replace,#2,\,,#9
If,Not,#2,Equal,#9,Begin
StrFormat,Path,#2,#6
StrFormat,Filename,#2,#2
End
//--
StrFormat,Split,#2,.,1,%_ML_FileNameNoExt_Temp%
StrFormat,Split,#2,.,0,#8
StrFormat,Dec,#8,1
If,Not,#8,Equal,0,Loop,%Api%,CallC_FileNameNoExt_Loop,2,#8,#1,#2,#3,#4,#5,#6,#7,#8,#9
//--
Set,%#3%,#6%_ML_FileNameNoExt_Temp%

[CallC_FileNameNoExt_Loop]
StrFormat,Split,#2,.,#c,#7
Set,%_ML_FileNameNoExt_Temp%,%_ML_FileNameNoExt_Temp%.#7

[CallC_CreateEmptyLink]
//Builder only reads Link=and Selected=
If,#2-,Equal,-,Set,#2,"%BaseDir%\Projects\MyPlugins_Direct\AppsMy\2Prepare\New Link.Link"
If,#3-,Equal,-,Set,#3,Projects\Test\Test.Script
If,#4-,Equal,-,Set,#4,False
//--
Set,%_ML_CreateLink_User%,"Macro Library Link Creator"
Set,%_ML_t%,""
If,ExistFile,%GlobalTemplates%\Download_1Upload\9_Info.ini,IniRead,%GlobalTemplates%\Download_1Upload\9_Info.ini,Info,Author,%_ML_t%
If,Not,%_ML_t%,Equal,"",Set,%_ML_CreateLink_User%,%_ML_t%
If,%_ML_t%,Equal,"",Begin
Call,HostUserName
Set,%_ML_t%,1
If,%HostUserName%,Equal,Administrator,Set,%_ML_t%,0
If,%HostUserName%,Equal,Guest,Set,%_ML_t%,0
If,%HostUserName%,Equal,System,Set,%_ML_t%,0
If,%_ML_t%,Equal,1,Set,%_ML_CreatePlugin_User%,%HostUserName%
End
//-
FileCreateBlank,#2
IniWrite,#2,Main,Link,#3
IniWrite,#2,Main,Selected,#4
IniWrite,#2,Main,Author,%_ML_CreateLink_User%
IniWrite,#2,Main,Contact,http://TheOven.org
IniWrite,#2,Main,Web1,""
IniWrite,#2,Main,HistoryNotes51,"Macro Library Link Creator"
IniWrite,#2,Main,HistoryNotes52,"Call,CreateLink http://TheOven.org/index.php?topic=45"
IniWrite,#2,Main,HistoryNotes53,"Call,CreatePlugin http://TheOven.org/index.php?topic=45"
IniWrite,#2,Main,HistoryNotes54,"Plugin Create Associate http://TheOven.org/index.php?topic=200"
//IniWrite,#2,Main,HistoryNotes55,"Share Plugin (BlueLink.exe) http://TheOven.org/index.php?topic=192"

[CallC_CreateLink]
If,#2-,Equal,-,Set,#2,%ScriptFile%
//If,#3-,Equal,-,Exit,"Parameter 3 missing"
If,#3-,Equal,-,Set,#3,%ProjectDir%\AppsMy\1Prepare
If,#3,Equal,PluginFolder,StrFormat,PATH,#2,#3
StrFormat,CTRIM,#3,\,#3
If,Not,ExistDir,#3,DirMake,#3
If,#4,Equal,"",Begin
StrFormat,FILENAME,#2,#4
Call,FileNameNoExt,#4,_ML_CreateLink_Temp
Set,#4,%_ML_CreateLink_Temp%.Link
End
If,#5,Equal,"",Begin
If,ExistFile,#2,IniRead,#2,Main,Selected,#5
If,#5,Equal,"",Set,#5,False
End
//To get link portable - not perfect coding but will work with most conditions :)
Strformat,Replace,#2,%BaseDir%\Projects,,#9
If,Not,#2,Equal,#9,Set,#7,1
Echo,#3\#4
Strformat,Replace,#3\#4,%BaseDir%\Projects,,#8
If,Not,#3\#4,Equal,#8,Set,#8,1
If,#7#8,Equal,11,Set,#2,Projects#9
FileCreateBlank,#3\#4
IniWrite,#3\#4,Main,Link,#2
IniWrite,#3\#4,Main,Selected,#5
//--
Set,%_ML_CreateLink_User%,"Macro Library Link Creator"
Set,%_ML_t%,""
If,ExistFile,%GlobalTemplates%\Download_1Upload\9_Info.ini,IniRead,%GlobalTemplates%\Download_1Upload\9_Info.ini,Info,Author,%_ML_t%
If,Not,%_ML_t%,Equal,"",Set,%_ML_CreateLink_User%,%_ML_t%
If,%_ML_t%,Equal,"",Begin
Call,HostUserName
Set,%_ML_t%,1
If,%HostUserName%,Equal,Administrator,Set,%_ML_t%,0
If,%HostUserName%,Equal,Guest,Set,%_ML_t%,0
If,%HostUserName%,Equal,System,Set,%_ML_t%,0
If,%_ML_t%,Equal,1,Set,%_ML_CreatePlugin_User%,%HostUserName%
End
//-
IniWrite,#3\#4,Main,Author,%_ML_CreateLink_User%
IniWrite,#3\#4,Main,Contact,"http://TheOven.org"
//-
If,ExistFile,#2,Begin
//To get visible (CodeBox)
IniRead,#2,Main,Level,#9
If,#9-,Equal,-,IniWrite,#2,Main,Level,5
//--
//Get Web1 if exists
Set,%_ML_T%,""
IniRead,#2,Main,Web1,%_ML_T%
IniWrite,#3\#4,Main,Web1,%_ML_T%
End
//--
IniWrite,#3\#4,Main,HistoryNotes51,"Macro Library Link Creator"
IniWrite,#3\#4,Main,HistoryNotes52,"Call,CreateLink http://TheOven.org/index.php?topic=45"
IniWrite,#3\#4,Main,HistoryNotes53,"Call,CreatePlugin http://TheOven.org/index.php?topic=45"
IniWrite,#3\#4,Main,HistoryNotes54,"Plugin Create Associate http://TheOven.org/index.php?topic=200"
//IniWrite,#3\#4,Main,HistoryNotes55,"Share Plugin (BlueLink.exe) http://TheOven.org/index.php?topic=192"
//-
Echo,"#3\#4"

[CallC_CreatePlugin]
If,#2-,Equal,-,Set,#2,"%BaseDir%\Projects\MyPlugins\AppsMy\1Prepare\New Plugin.Script"
StrFormat,FILENAME,#2,#8
Call,FileNameNoExt,#8,_ML_CreatePlugin_Temp
StrFormat,PATH,#2,#9
StrFormat,CTRIM,#9,\,#9
If,#3-,Equal,-,Set,#3,5
If,Not,ExistDir,#9,DirMake,#9
//-
StrFormat,DATE,%_ML_CreatePlugin_MyDate%,yyyy.mm.dd
//-
Set,%_ML_CreatePlugin_User%,"Macro Library_Call_CreatePlugin"
If,#4-,Equal,-,Begin
Set,%_ML_t%,""
If,ExistFile,%GlobalTemplates%\Download_1Upload\9_Info.ini,IniRead,%GlobalTemplates%\Download_1Upload\9_Info.ini,Info,Author,%_ML_t%
If,Not,%_ML_t%,Equal,"",Set,%_ML_CreatePlugin_User%,%_ML_t%
If,%_ML_t%,Equal,"",Begin
Call,HostUserName
Set,%_ML_t%,1
If,%HostUserName%,Equal,Administrator,Set,%_ML_t%,0
If,%HostUserName%,Equal,Guest,Set,%_ML_t%,0
If,%HostUserName%,Equal,System,Set,%_ML_t%,0
If,%_ML_t%,Equal,1,Set,%_ML_CreatePlugin_User%,%HostUserName%
End
End
Else,Set,%_ML_CreatePlugin_User%,#4
//--
FileCreateBlank,#2
//-
IniWrite,#2,Main,Title,%_ML_CreatePlugin_Temp%
IniWrite,#2,Main,Type,Plugin
IniWrite,#2,Main,Author,%_ML_CreatePlugin_User%
IniWrite,#2,Main,Description,"() %_ML_CreatePlugin_Temp%"
IniWrite,#2,Main,Credits,http://TheOven.org
IniWrite,#2,Main,Version,001
IniWrite,#2,Main,Download_Level,2
IniWrite,#2,Main,Level,#3
IniWrite,#2,Main,Selected,False
IniWrite,#2,Main,Mandatory,False
IniWrite,#2,Main,NoWarning,False
IniWrite,#2,Main,Contact,http://TheOven.org
IniWrite,#2,Main,Date,%_ML_CreatePlugin_MyDate%
IniWrite,#2,Main,Depend,""
IniWrite,#2,Main,Disable,""
//IniWrite,#2,Main,Web1,""
//IniWrite,#2,Main,Web1C,""
IniWrite,#2,Main,CertifiedBy,""
IniWrite,#2,Main,Certification,""
IniWrite,#2,Main,HistoryNotes01,""
IniWrite,#2,Main,HistoryNotes51,"'Plugin Creator' http://TheOven.org/index.php?topic=178"
IniWrite,#2,Main,History001,"%_ML_CreatePlugin_User% %_ML_CreatePlugin_MyDate% Plugin created"
//-
TXTAddLine,#2,"[InterFace]",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[Variables]",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[Process]",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[AuthorEncoded]",Append
TXTAddLine,#2,"",Append
If,#5,Equal,Download.ico,Begin
IniWrite,#2,AuthorEncoded,Downloads_0_048048.ico,"4547,6063"
IniWrite,#2,AuthorEncoded,Logo,Downloads_0_048048.ico
TXTAddLine,#2,"[EncodedFile-AuthorEncoded-Downloads_0_048048.ico]",Append
TXTAddLine,#2,"lines=1",Append
TXTAddLine,#2,"0=eJzFWQlUlFeWpnv6pKdnpk9mzslMzmSWpOecdHowyUk62ppO1BhNooiKQAkFyCqLCAKC7Pu+iAuL7LvsOwUUUBRLleyLbIKIiKKIC24sLjG5d+77izKFVEU7kz79ez7v9+7/7n3fe+/+7/9L1dR+QX8++kiN/n5HreBdNbV/U1NT+wOBXGqmajI/u/zfVXvV65ebN6v9iqeu/pqVleY/nDoV8q9+fn6vvXL03/Byd7ZcF+TlWHoi3HssJ+XkTI+k/tH4UA9eGOx6OtLXNj3YJWnrbxcX9JwVRXW1CA+3Nwr2NtcUr81LSXmTx+P93d9Su5OT8X9kpcTOV5YVQGl+xqOhHsn3c7dmYHHhIYf5B/fgwb07cPf2LNyevQaz1y7DtalxmLo4AhPn+2F0oHNpuFc6MdDR3NTX1pDVLRUGdzZVW58VCzRE5Wc+SEoKf/2vqd/f3U6vRlCCovpqqCkvWJy6OIyPFhfg2bNn+B2B2W+/fQrPvv0Wnz59AgR88vgxPlpaBOqHi/MP8OG9Obh/9zbO3bqBN2euwo3pSZy+fAEnLwzCxZFepD18ONjdOtLfIRb2SOuTu1prfDqaK00lDeVba8qyfp8dFfWPP1U/1c0hUZ0Am8UNUF9dPH/10ihpWwDSjHIw3Yp2FX9CnOYlm9sjIODjR4u4uDAPbH60h3h/7jbcvTOLtIc4e30K2R5emTiPl0bPIe3hd0M90tvnOpv6aA8ruiXC2PYmgWtrXYleZV7Kmz+mP9jf+WhDnQCaGuugrqpo4eqlMVii9V/W8f/C40dL8FjO5W0C2zs2BqvPhYf34eH9u2z/fqjR61fg+pUJYPvXe7Z+QVJbvFWV/vBAl6DG+moUi2pp/Yvmpy+PI8v7+BFbQxkeLS2Bon05X8LJq5cwrSwdPE/7oKRPwtWbspwyvsjFMCyxulxaRJofPqRn79rURaT9aFWlPzLE4xTVPtW/AETVJQu0r7gw/4ByLKAcS4vzoGhfxq/NXMXIvGh832YtbA7cjgHCMJy+flVpzh/jrP5u3ZhGdv6p0h8V7J7cUFcF9cJKENVw68+dOWwOPwU3b85AYnkS/Mn+c/ijy2fgKQwAn4YQyGjKhnmqlb8kF+t/49oUDPU016rSHx3mXUT1j8LqchALS5bYfj2geqRYlIPto6JVxefu3MK8+nzY5roD1xxei0erfMBXFIYc6kOgd6RnVc4f40zHdarDcx0teSr1h3tV09pjTVUxNAnLFpj+e3fvAMWiHPfpfFS0yvjdudtYI6lGXiAf1B0/QYdSV/QXhUFAYzgyMB5dH4O3bt5QGq+M36Nn+urkBexvEyeo0n8i0relrrYCq8oLoKWu7DF7fu/euQUUi3LcnZO15fZFPnf7JrR2N6NFtDX+0fvPYFPgiIHiCKYbmFXkVe1VeG9Oda4X814eH8bes6IwVfpPRvn31wrKoKIkF6SiyoUrkxfgzq0bhNlXxA3oPtcBDrFHYJ3fJjDNtoHAxgiVCKmPgrHx4VfKfXv2OoyP9EOvtM5dlf6YY4ETtYJSLC3IBGmjYInt1y2Ku31zBuWQtxX9cj4yOoA+Kb6wwfcL1E3Zj0HiSAhpOoYMwcs8tDmatYFZhjRxJs7OXFuV60U+S+/yscFu7JLUHVSlP+540E1BZREUnkmF9qaa+amJUXp/XIXZmemX4CqMj49AZE4kbPTZBjtitCFYHMX0rsIxSQxES+MgsvUUZ6NbY0HS0/LSMWamL8Nwbxt0Ngv5KuT/IiEm/KmgoghzMxOfdUvqHpF+nJmeonPrCsohbyv6JyfGILEkAbf5aODmqO0Q1BiB4S3HMaw5GphV5AldaZjYlQYx7YmY1J3OIU6cCJQDX8yryKenJmCguxU7Wmo1lInn8dRfS46L+p6+PfFMevwC7RNMjo/gtSuX6NyaRDnkbQWLleIy0AnTx88itmFgQzitayxGSU5hRMsJiGg9iQzhxCPJpvVmY0bvGUjqzsDcgUJCEZ48exqKm4so1+SK8RT5FH3L9LWLsU1c/Wdl+vX1d72ZcjoayotzgenvbBHCxNgQXJkcfylGRvvhbE8z1LfVgLC9GhIFiXAgzhZ4x/dDtCQWIltOEU5S7cRCWk8OJHdlQGxbEiR0pkEi4YQ0HqLEp6Cnr13lGJcujEBXax1IxZVrlOm3NtnzTlriCSwrOoN5mQkLtE84MTqIl+kZoLmjHPK2ol+RT148D+lVKbjRZSu+b7eOaUaGqNYYiO9IwcZLLSiaaIbi4QqsH2hASW8TSvtboGukHUfHB3CKalFZ3vHzA9DRXIO1tTn/qUy/jbnOxxnJp7CkIAvzs0g/9R0/fw4vXRjm6kgOeVvRr8gv0p6dLo3D9Q4bcZ3LJjgujUeGaEkcpPeewY7pHmy/2g1Vo7XYNda5Kl4VHx3qZWf69xWpqb9Vpt/RxnAj6YfC3HQozEl8TLUGF+i8HR8d+IswRjHR+cfgY7sN8HXAbq425MgfKIZzM0MchBdE0DvW/Wp5ae2H+zuhtaHsiarfqE62RtszU2Kw4EwqFp1JXOzvaGbzx/HRQTYPlGNsuA8U7Yt8eKAbws6E4kcO61EvxgQcBG7cO/cEPaNpvTlYNVaLwnERlJ8XYMfw2VXxqvhAjxSahSVzyo9ONbUjtob8zJRYzMtOxqLsxCf9HU04MTaI7Bm+SM8B7R+ODvbgCOlTtC/yc3RGB2T64sdun6J9ngvsytZDBu0cIzAvPYQuQm8MaT7GnZ/lbSWr4pXx84S+jmYQ1xROqtRvv9+c1U9O+mkoyUla6G1bWT8Xzp8Dlm+ov+NH0d3ZAh7J7vCR16fgWu4DOzN5SrEnmw8JtfEvzcehrwO6pCJorMrvV6Xfxd7EkT2/2WlxWEz100tnLe3fij1kYHMY7Guj/TwLg71tyKDI26QNcCThCH7gvR4dStxge4Y2ckjXXsXjBTGr4pVxstjeTL8JK3ObVOl3dTTxYfozCcU5ifM9bY3cvhGAq51lcG3yD1Cd9HdJsL+rFftozZllaBZXw6GYQ7jGex0aZFnA1+layCFNaxVPqIpdFa+KS0VVICzLKVel/6i9aQSd/5CaQO+wvJQFtl9D9MwPn1ONQXrfsDF6qNbkqKsrA8toSyD98E3CXtiWulslEitiV8SqQvfZRmimvLWlmRmq9Ls5mSWkJR7HlPgoLM9Pme+WNuBQXzvtYzurP5RD3lb0n+uWQm97E9KcsVKQByZRJqjuvRY3x+2ALamayCFFcxVPrYjnYjolDay+VXNJAzZWF0F1ccZJVfo9nCzyUk9HY2JMOFYWpi52SerZmUXaJMCsHPK2ol/O2T6XVuYAP8IA1X3W4qb47fBFigZySNJYxTMqEuh7rI5qWwjMquJksa4iFwRF6QGq9Hs6H6hMjouE+ONBUFOctdRO3z99HS1cfbwyqH9RZTbwwvXhf70/gU2nt8OmpB0qkVmWQN8zNS9Fq0gANSVZUFWY5qRav5UkKTYSY48FIPVdZHPupXdAT3sT9NK7TA55W9GvyIsqs0Avko+kH79K3gMambrIyzNGowJL4Oebo2bWPtySrAkbk7bjmbJkJG3Y0lDFNKrkLfX0m7YwDSoKU81V6fd2se5htXMy3BuEFTlP25pqsFvaSLUnYs8PyiFvK/oVeVtLHTSIyrFaWISVNflQWZuP1fXFKGqqAnELfX+JSjG/ir5RBBkoEpZgM2lrEpYDs6q4uLYUy3OToDI/RVuVfncny8unT4biiTCPpw0VuU/Oiquxs7WB6rAemJVD3lb0/xTO6vosrVGrqIrTyTQyNNaUrOIiQRGWZMdDeX6i0n87fOONN/59y5ebHuvoaIGBntYzLzcnCPDzgqAAXwgK9IXgQL9lyHhIEIO/gpXx0GUeuuKe34p+YSEBEE6Q2UCOy9uhwWwMHwjy94ZAGj/QzxMCfD3Az8sV3JwOgoOV2Xpl+t966533Nm3ZAlu378Ct32wHXb4R8E0t0cDMGg3MrcHQ3EbGZQADWVvmJ5CFFffJ8pdjGV+OB/4LfRTycrkY+KZWXD+Oc2NRLtLCMzCCTz755ANl+n/3u9+v27jlC/hqx078WmMn7DM0pvxWaH",Append
TXTAddLine,#2,"1=TgIAPsl1k0smCwAbnfSO5Xxi1scL+lrSyW+It9DGW+FWMw3/4Dspj9Cn6mRc/IGNTV1f9bmf731qz5Ysu2rfDNTk3Q2L0HDEzMwITGNrE6BKbWdhwYN7Gye+6TtZc512b97J/75X1NFPrK+tgt31Poby3jP4y1nHM51pjmYWBs+v3bb7/9z8r0v/uH93du++Yr2LFrN+7W1gYjMwswtqQ1oPWwsHUAi0OOaH7QAQ1oH/kmFkA+1mZ5yR5GNiaz5uRn47H7y/fAkNbO0NwKzagPy8kzMuX81A/lMUyfmY097ZM1mtnYcfGsrWtgQn475kMjM/NHpP/vlelf8+HHet9o7ABNLS3U0dMDU0tr+HrnbtQzNscdu/fSmhzC3bp6qMPfjzxDE9DWM0RLOyfY9OVXNL/DuEtnH+ga7GfzQK19BmBOvs+++JLTIs+zb78ZaGjpUC0fwO27tID5DMws0dLeCakPsNza+oZcvI6+EVc/tF5cvMVBezQwMWG/XX6lTP/7H35svnP3LmBrz+PzwdLWDjT36oKtkytYH3aG3Tp6oLFHh2sfdDoKO7V02LpwfYzMLen+Pti7jw9sjfVI504tXWDzNrexB56BMdgecYWd1NfGwYWLZxpZ/Fc7NLkcLIbWBCztHLkxNCmexZhZH2L6wYr8+gaGl0nqL5Xp/2jd+sO792qBlq4uGhgbg81hR9hD6334qCeynGxdWNvexYN8HkwfWyvS44y7tHmob2zO9CO3TzQXQ7MDqMXjc+tvQOttf9SD6nIfsHwMbD1snY5y600cDx1xoznx0e6IG+vL1gdZHO0p0D085OSCPD3+oBr7r2wl19oNGzz36uqAjt4+NLGwALsjLvC1xi7SZUY69IHp5hnSNwDTRevM9lNTmwdO7j64bYcm2rm4054b0vNixeYDju7eyM3HypZqzxZZ2/ygPTuX6fkxZ7mojw+dicZMI1IeTj+7R3no2aCziMYyNLWgPbRDe2dX1ObtkyrTzq4Nn38eTtphH18fLKytwNHVHVy8/eCot/8KOLh6grOnL93zfw7md/Fa2c9FhT3i4QOObl5w1Gc53ovG8AlYzuH3vC/jruRn47EYJzcP0ObxqlXp/9On62P0DPmgb2iAB+3twdnDCzwCgtEjIATd/YLA3T8Y3XyDkFl5+7ld5qvuq+jj5h+00s/lDlwZH6AYH4Qunl64V1dX5f+70L00WydnOOjohA7OzuDq7QuegaHoGRSKXoGh4BUchhyCwtAzMASY9QoK5Szrw3zewexe6PL9UK6v1w990TNAxlkflpPLzcWG/pCTctC6PefMz9bRxdMTTQ8cOKZK/8m4OKewmGQ4kZILviHh4ObjA96cPhl8yEf6wIfA/PJ7HA8O5fycVjaPIAJZz4Agagdz4DjB058hUIYABe4fAB5+MrC2V0Dgcv9AyhUEx07FPkhISFBXpX9kZOSfRJLOyuyq5u+SC6oh/GQczSMM/UPD0S8kDPzDIjAgPAoDIqIwMOIYBEUdx+CoExB6PAbDTsRi+Kl4iIhJwKi4JAKtQ2La9ycT05/FpWU9iUnNWjqdmXs/KTt/NiEz93JiTuF4am7xUFpecVd6Xok0s6hcnFNaVZNRWF6aU1KdX1AhzMyrqEksqKw9VSSoj6qoFx8tr6v7L1Xa5df09PRv5ubm1M+PT26rFkv4OYImh5yKBofc6ibbwlqxea6gUb+oXqJbUi/dVVwr2VosbNlY2SDdUNko+bCoQvheWm7J/6TmVbx1Ojf3XyIiUn8bHR39Gz8/P6Xn9c95PXkb6VJTe6D2OmevqDHCWbVfL1u115ftr38+2/JT7Ot/Pev/c9i3X9Fu5sbl1vv/ABqh2Sh4nBNzyS/Py8lPTCmON4g3MLEAIr3M5HyGUTAywD5VCJ0viF3+zf1JngxMAKkvC1zstizBAQAAAAIAAAAwAAAAbxEAAAAAAAABAAAAAAAAAAAAAAA",Append
End
IniRead,#2,AuthorEncoded,Logo,#9
If,#9-,Equal,-,Begin
If,ExistFile,#5,Begin
Encode,#2,AuthorEncoded,#5
StrFormat,FILENAME,#5,#9
IniWrite,#2,AuthorEncoded,Logo,#9
End
End
IniRead,#2,AuthorEncoded,Logo,#9
If,#9-,Equal,-,Begin
IniWrite,#2,AuthorEncoded,IcojamBlueBitsDocumentblue0048048.ico,"4312,5750"
IniWrite,#2,AuthorEncoded,Logo,IcojamBlueBitsDocumentblue0048048.ico
TXTAddLine,#2,"[EncodedFile-AuthorEncoded-IcojamBlueBitsDocumentblue0048048.ico]",Append
TXTAddLine,#2,"lines=1",Append
TXTAddLine,#2,"0=eJztl2dU1eeWxsmaD/fjfJhcjUrvvVixIeUAh3pdN7l3rjNmknFcYMQalaIoKnZFRFRAEBvgkSpwaAoKogKKFXtsgAWxt5jM3Ow9z37PMXHly9zFyXyYNfeftfMnh8D6Pft59n5fzMw+wT/e3mb4t7WZzsHMbJCZmZkzCh+ZfW1m+Fye5Q5mf3/+Dz3z/mI7MjPOZWXWXDdVOfN/qZ0LpDx+rrxFhspf5LUyP8FQe6SSfH6ufUs+1IiV+5aiUoz14fOlPisL8HlBiqH24P9Lme5hPlD+VdM9Z9w94M93df58TxfAPQcDuLsY75JAvo96UBak6hGqr0LDfYeCuf9QCD+pDuGn+lB+ptfy89owfoF6WRfOr+oj+HVDBL85HMlvG6P4XWM0f9/0B3wWzm9Qbw9H8LsjEfx9YyS/b4riH49F86oZw30Hyr/mG88ZtwsnkWi4U+RPogFF9w4GUHdxIN036CBooEflGn5UoaG+QyHUXxnC/VWh9KRaS6LhWU0YPa8NJ9Hwsi6SXtVH0pvDUfz2SBS9a4oGPz6rC6M3DWGig6CDDBqiKW2+afy3CibRnaJJfKfQX+m4eyCAlAZUb0mA4r9fGkQPy+FDeTD1VQTTY+GvBD80PBV+vYH/RV0Eo37mf304WvG/wftlrZZe14cxikSD+PCuMZLSZpvAHwP+Qj+GB6w0FAm/ZMkfWUKBv1dyVBrED6X/KPCzgR85qtKykZ+f14SDHf1Hhl41RII9SrjhQTS/Q4bAD2+0yJgWfoQhS+HCz6by39w/kUTDdwV+dBsaJE/QQnfR/26Zh4OB8CFIMsT3yzTwAf2vCGHJ0WN48BQanlSFwQf0vxYaaiPgQyQJ/+uGKHoD/jdH/oDvaVGhLG/ooNcqSxEm9X8V+G/sm0jfFUxU/EYvSGbhzgF/6tYZ+LuLgyRD8EFDD8o19Age9FWA/5BkSPi19LQaGYIHz438yBB8MPIjPy8kXzUh8ClUaVE+1If/BvwTGB6waLhVAH7J0YEPOVL83FMcyL0GfuyjYH4o/NhD4Jc5xj4KY/BjjsFfEyEe8MsGxa8yJBokW8/BLxrEB8mTzINJ/Nif1/ZMINGgfFA5mgQfDB5gltU8iwc9xUGYBw18UBniB+Uh8EF2kRbzoKV+ZOiZPhzzEEHPapQHyHsUvWqI5lfov8z3U+zdZ/oQkvqQJdP43cE/nm/sBT88uIn+i4ZfPAj4yIMgzLJGZgA+wIPyEH6E/osHj5GhfuVBuPLgWa14AP76KOXBa2hArvD9YDZqMHgBDabyX80fT9fBjyKlYb8ffBAP1AxARwB8UDMAHUHwAR4gQ/dLQzDToSQa+iq0mOUwEg391eHobwT6HQnmSBINL+ujMd9hmJVgflIZjLfygJ/rQ03u/5XdEwgZ4mt7JpLMwY19fngb+G9jn94G/x1dIM60QL4H/m7w96L/veC/XyYZCsU8aHGuqQwp/ifVyBD6/awG/HUG/n7MeH+lBns3mKSUD9UhlGbC+Sv5v4L+XzXyYwbUHAi/zIHw3yoCvzrTgvjuB/6SYO4pDaZe8D8sN/A/FP7KMGQpnB4Lvz5S8T8H/4vaaDnzsK80yJtG8YsXT+HDOhP4Vxj4WfV/70RkCPz7/SRDmGNhR/+LApChQLAHIj8a3I80ws7iAfqPOVb8uFtouU/4K8PFA36iV/1HhsBfF819OL/7DgUJP4sPBv5gNo3ffUZX/gRChvjK7ol0ba8ftPjR9X2TMAvigT/mOYCUBzpo0AXR3YMa6sYc95Sg/yXIEPhlDh6WazELYZjpMPQ6gvrB318diV0UxU/gw4PSQNyhcAepwF0KZdARjP57DJh/yb/axl7Y6UuXf+afyFfBf20v+KHhJvhRmAXJUCBmIRDnskYyBB+CqadEzQBDA8418FcIfzj1VYYj78IfQU/hQR803Qf/w7JARokOMnpBa+J8xg6UPwn8belufDHXV/iFncUD9B85UuzSfwa/sCNHagb4noFf5eh+WSgrD5Cfh4b+I0fhmAPVf+QoktV5URoAnxQ/7lGB2FnCH8Qm8U+xjj2Z5krtW9z4XPZourIHGnb70VX0/5r0f38AZiEAPkiG0P+iQPigMoRdFAwfQqinNASzEAoftPQA/UeR8gD8fZIjaOgp9sfeDaAH6j4bYMyS6AiiNTGm8Z/Y5EKn4EFbujud3TGcu/InYh+Bf68/iQc3FH8gMhQIHwKxk4IkQyw5Eg3IEHwIxU7VSoYU/0OVIfBXRaj91K3DXQoa5D7eCx0GDQHwQvjdTeNPc+GTm11ZctSe4cGnM71UnjADfN3Aj10UiByBvygIHgSx4j8YLB6wgV88ALuBHzkKVxnqq4pUf8916yYZ7+P+4PcXD4x5CmBT+OPBf3yjCyFD0OBGbVvcuX2LB3VkeNGZ7cOpa9c46Aig6+JBoWgIou+KNHT7gAazoIEPIXSvOASMofBBZQjzEAYfVIa4F3tJ/V1xQP7Gm4R7lD92sNxr8bXOj+8d8KNV0we+f4S/ZYMznQD/iTQ35MgdPnhQe4YndWz1ps5t3twJHRdzx+KMxrlQAP5C4Q/GPGswC8HgD8U8h2CnaiVDYNaSaBAPbss93Hgnv13kBy0TcMcdT7dRdwrH881942nFNNP637LRmVs3KX4+tRn84kGGJ5/e6sVnFL8Py1yczx7JF3JG8eVdY9VZd1Odb0F8RxeMLIXwvRItcqRlowZ8HoR74VhD7RmD9xjw+vJ3+8fyLdT1PWO5a5cvL/3SeeD8f7aOPbbemZAhPr7RlU5sdkOOPOCDB7UhQ6czvTEP8AEenM0aweeyRtKF7FF0KXc0X8rFuZE3lq7uHsdyB7yG+99Nw9mNeZ9El3NHclfuSLq6axSj6Fr+aBINN/bg53aNoQv4HWeyRlPilIHzLxT+dc7UssGFW4QfHpxIc6eT6Z50aosXMuTFHZk+dHrbcLWbzu4YSeeyRtGFnWP44s4x1JXnS1fyxzGKru2eYLg/gf9SLjTmDOdLO0dA40i+kjeKjBpYvncWPejYPpJbM0bQwil2JvI7cfMGZ+E35AgZOpnugRx5crvi90aOhnOn8IsH2aNUjsDPl/J8VZ6uQsO13ePlDs6X88bwhSxvvpjtw6Kha+cIFi+uQMdFfN25YwS3ZQ7nlnQfbkrz4bl/Mo2/cY0jIUPcvN6FjoP/+CY3Uh5s9pQMcVuGN4kH2Ed8ZvtIEg/OQ8P5nDF0EXePLvB35Y2jy8jQZeS5c5sXnd3uReeh4XyWD12EBhR8Gw4fffjEFh86usmbjmzw4po1XhQ32RR+i9jG1Y50dK0TH5UcwQPJUesmd2qVOYAHbchROzQgQ/BhBHVKhsAv5/WFHF+6lDcWPozDjvKlM9s8+UymJ4mGczu8+NwOb7qQ5QPd3tSGfdaa7sVNGzypfq0n6Vd7cPlyd4oxmd+Bmwz84oHK0XE1Bx7IkSdjDrCPZI59DDlCbs9mof/Zo5GjMeqsO58zmju2umNnuYPfAx548tntnnxuu5c6D6UPzfh9jevduW6NO1elunHpMlfWLXHlaZEm8H9hEXt4lQMhQ9y0xomOrXPhY8hRywY3ZMkd+8gD82CY5fatPpgHyYDyADkeBR/GkOT51GZX7CxXnHtu3JHhTqe3esALmSEP+OiOnrtT/Ro39NyNK5a70sFkFypKcuY98c70dbjluIHyz1f89vyxB8c+eLDJjVs/8gBzILuIwS9zwJ1ZI9U5cSLNmU/iDgJ+8LriMzflhZyFLfgdjetduX61C1enunD5MmfWLXbiggQn3r3QkbPnOfDUkIHzL/jcYkb9Cjs6ssqBD2MOREPTWmfMsys1w4PWNHfRAB+86BT42zJ8SDxo3+rNx3Fut6x3pNaNTty6EWe43AM3uygvsAfoGHZyw2oXqkl15kMpzlSc7ISeO/LeeEfK/daBdsy2440xtvR5wMD554G/DvwN8KAh1RE5cuJG8B9d56I0tGxyhw/IQJrKEJ9I94IufG+dPR9ba0/N6xzo+AZHaHEi0XASXmAXk/yO+lVOXLXciSqWOfLBxY5UkOBAexbY8855dpQ5y5bWT7fmpVMtKWrCkPGm8d",Append
TXTAddLine,#2,"1=ty/Up7xhzwkdWO3LjGGTmSOXAFixv4kYONbvgM31ttizmx46NrDSU6WtY7sFEDfsaJj2CWalMduHK5A5clO7Au0Z73L7Lj/G/tOGeOLWfOtOG106x4yb9Y8Nw/DuMwXxP4J1vM0KfYEjzgupUO8MERGpzoCGZZ8iSzUbfChuqWW1PDShtG0eFUW2pcbQctdgQtBi/WyQ5woHpwV6fYU/lSeypZbMeF8ba0d4Et586zpazZNpQxw5pXf21JSX8xp9mTh/A07WDyHzFw/lmRn8VWJA6lQ0nDuHKxOVUtNueqJepN1cnmVLPUgmuWWVJtihXVr7BmlOjAvNjykVV2ooPEhwZ8XbPcjqqW2nLpElvSJdpSwSIbzp9vQ7lzrXl7nBVtjrWi1V9ZcOI/D6NZ0UPo65BB/Gf/QaQZ7zhhoPwzwwfFli4azGXxn3F5wmd8KGEIVyYO5SroqV48jPVLzFk01C6z5LrlVsIPD6z5cKoNiwbJU32qLeuX2XDFEhsuSbLhA/HWvG+BNe+aZ805s6048xsLTptuzqlfDuP4Pw3huKjB/G+a3/PnEz/lRXFTHo4Y4fjpwPn/KbZ4wSASDaXxg0k0lCcMIaMn8GGY8qM62YLgA9ekwIvlViQa6uFDTYo1VSVbc2mSFekSrKhwoRXvnm9JuXMsKSvOkjNmWFBbdTr3dV+h3lsX6O71M3z5XCsdb9LTkYaaHyZPjgwbKLs8seA/+O3vqWTBIC5ZOJjK4uFFwmf0QUNl0lDkCjqgQZ9swfqlliQaxIvqpVZUvtiSShItuWiRJe371pLy51pw9iwL2vaNOW2JMef104bR+eYi/umnn0jqhx9+4J6eHjp16tT7mJiYqaawf+DXzf+UoYFFQ+nCQSwaypGnCmTpUCLyBA3iQzWyJBokT1VLLLgs0ZwPLrLgwgXmvHeeOefNHsbZceacGTuM06cP5fX/PpSXThnCp5uKmIhY2Ht7e7n1eOub6dOnf2Equzxzv3CKLYbvpYnWXJZkQxWLJce2dCjZjiqxQ6qX2WOfOJA+xZFqVzhxzQonqsLXFcmy0x2oMN6B9mGn5823p+w5drQtzpbTY7Hb/8Oalk215AVfmFNbo47fv39P0vcavb7nq6++GvDfu79+tmxcMfOv//Uj/fTX/+SP3x/qV//N3797Sy+eP6fHj/u4u/se3bx5gy5f7uLOzk46efIkHT16jPX6Gios0tGOrJ28Zu0GOn26U2VmV25uY0zMl5a/Fbs827dumcl/w2Pw/0d+9eo19/c/QQ7u861bt/nKlat89tx5PtXWzseaW7i2roEP6Eo4KyeP165P46QlyxlZf5uQkJA4e/bs3/2W7PIkJyf9sbm5uf1/qqampvb6+vr2Kr2+o6yiokOnK+7Yt7+gY1f+7o7snJyOzMztHZs2p3esTF3dsSghqWNm3JyOmBkzO2bNmpMzdepU+9+a+1fPJ/+L9f/+MST4lzfJhyl/f/9Nb2O/PjG+/8H4/p3x/Y/Gt5XxncLqRz75uN//DdIVJVh4nFP1TM7PSsx1yilNdcosKXbJTy7NTc0rSQLyDQxMLIBILzM5n2EUDFOwTxVClwlgl4+uXq3OwAQA3ecQXvc1/IQBAAAAAgAAAD4AAAB2EAAAAAAAAAEAAAAAAAAAAAAAAA",Append
End
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[InterfaceEncoded]",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[EncodedFolders]",Append
TXTAddLine,#2,"Folder",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[Folder]",Append
TXTAddLine,#2,"",Append

[CallC_CreateCodeBox]
If,#2-,Equal,-,Set,#2,%ProjectDir%\CodeBox.txt
If,#3-,Equal,-,Set,#3,Simple
//-
If,ExistFile,#2,Begin
Retrieve,Md5,#2,%_ML_T%
//Empty
If,%_ML_T%,Equal,d41d8cd98f00b204e9800998ecf8427e,Call,FileDelete,#2
//Old
If,%_ML_T%,Equal,9623ff9f9415dedcace48203a35a9b4a,Call,FileDelete,#2
//new project new CodeBox - do not overwrite old codebox
If,Not,#3,Equal,NoOverWrite,Begin
If,ExistFile,#2,Begin
StrFormat,DATE,#9,yyyymmddhhnnss
If,Not,ExistDir,%ProjectTemp%,DirMake,%ProjectTemp%
FileCopy,#2,%ProjectTemp%\CodeBox_Backup_#9.txt
Call,FileDelete,#2
End
End
End
//--
If,Not,ExistFile,#2,Begin
If,#3,Equal,NoOverWrite,Set,#3,Simple
//--
If,#3,Equal,Plugin,Begin
Call,CreatePlugin,#2
IniWriteTextLine,#2,Process,"//--"
IniWriteTextLine,#2,Process,"If,ExistFile,#$papi#$p,AddVariables,#$papi#$p,ApiVar,GLOBAL"
End
//--
If,#3,Equal,Simple,Begin
FileCreateBlank,#2
IniWrite,#2,Main,Title,"CodeBox TheOven.org"
IniAddSection,#2,Variables
IniWriteTextLine,#2,Process,"//--"
IniWriteTextLine,#2,Process,"If,ExistFile,#$papi#$p,AddVariables,#$papi#$p,ApiVar,GLOBAL"
IniWrite,#2,Main,Description,"Test Commands Starting at last line of [Process]"
End
//--
End

[CallC_CreateFolderPlugin]
//To Avoid codebox test that would overwrite projectdir folder.project #2 default scriptdir not used ;)
//If,#2-,Equal,-,Set,#2,%ScriptDir%
If,#2-,Equal,-,Set,#2,%ProjectDir%\AppsMy\1Prepare
StrFormat,CTRIM,#2,\,#2
//-
If,#3-,Equal,-,Begin
StrFormat,FileName,#2,#9
Set,#3,"#9 Folder"
End
//-
If,#4-,Equal,-,Begin
StrFormat,FileName,#2,#9
Set,#4,"#9 Folder Plugins"
End
//-
If,ExistFile,#2\Folder.Project,Begin
StrFormat,DATE,#8,yyyymmddhhnnss
FileCopy,#2\Folder.Project,#2\Folder_Backup_#8.Project
Call,FileDelete,#2\Folder.Project
End
//-
Set,%_ML_CreatePlugin_User%,"Macro Library_Call_CreateFolderPlugin"
Set,%_ML_t%,""
If,ExistFile,%GlobalTemplates%\Download_1Upload\9_Info.ini,IniRead,%GlobalTemplates%\Download_1Upload\9_Info.ini,Info,Author,%_ML_t%
If,Not,%_ML_t%,Equal,"",Set,%_ML_CreatePlugin_User%,%_ML_t%
If,%_ML_t%,Equal,"",Begin
Call,HostUserName
Set,%_ML_t%,1
If,%HostUserName%,Equal,Administrator,Set,%_ML_t%,0
If,%HostUserName%,Equal,Guest,Set,%_ML_t%,0
If,%HostUserName%,Equal,System,Set,%_ML_t%,0
If,%_ML_t%,Equal,1,Set,%_ML_CreatePlugin_User%,%HostUserName%
End
//-
StrFormat,DATE,%_ML_CreatePlugin_MyDate%,yyyy.mm.dd
//-
If,Not,ExistDir,#2,DirMake,#2
Set,#9,#2\Folder.Project
FileCreateBlank,#9
//-
TXTAddLine,#9,"[EncodedFile-AuthorEncoded-Folder.gif]",Append
TXTAddLine,#9,"lines=0",Append
TXTAddLine,#9,"0=R0lGODlhQABAAPcAAD5VYcGxD+TWEJZ1BOTalLSqfox3DJSMZPjwiPzwEuCsBGxWBKSQDMzCkOTGCPTx0uTaTGR2edTW1PrvWHxnDcaZBNzQTLzCxPTjD5SAO2BoTNTCDKytrOzv7uzkxaqcaZ2QVIRpBvTFBPnvqbqQBHB2SPW5BdTNt5mdn/DkSLSqVJqECPz7UeTaNIyMZPz2MePk5vzQBFRaTOK2Bvz+58S5fLm4sYRyKvz7ifz+ycDG0FZocIyMPPzYCeTQhNzb3XBwRHReBaSad4lwBbicBPzlda6EBEtfaKGPLOziJPz9qIl4Pvz7dNCuBPzljPz2FMvEp+TdzXpoIZiHRaiijNS5XIGLjmFxc7yydNzQEPrZSHx+ZPrvdvzSUcjESOzqzJR+KIF2JNCkBPT29fzKJNTR0Pz6MfzSLOS2JMS+pPzeDHxiBoVvGIp/OYmUmUxYUN2xKvz2ytze0OTIWMzIwPzKBPzkSMS3TOzq7Pz+/Ly+vJl8BLyuf5SSlPz2lKyWBHSGjLSmRFRiZriuMNTKaNTEOPzYKJyKLODYtKGVX2RfL7SmZK+kd9TOVMS6JMS8mvzcY+zSDMSuYPzopNTLfLibItTLHOyxCHR+hOzKTFxqZLyypKSCBOy4B8zLzfzjKdTKrHyChN/RXOTitHxuLKySJMS6FOTacIx2JYyAUPz2V/z2tNC2CKymkdy+PMSyLJSCVLyzj9ymBMS2ZKR+BOzOLPzqRPzeLOzeDOnKCWx+hPzqDLKyrHx2TNXSvZSirJyKDOTq7My+hMTO2LKKBszKrPz2bLCrlPzvmOjl1/nxufDmWPzSF7W5vYSOVNzSnKShoV9xfpyUcERaYmRuRKSWTPy+BOS+BKSWJHxuJPzeRIx+FOSyBHJaBMmeBLiWBLeqbPzqbPzqioSGZPzeGPn22ey+BPzqHMy2HKimpNTGJPz6Yfz2P/z7l/z92Pz+uPz2IPz7QfzmWPzaOuzYHJyOdKyPCOzEDPzyyGx5f9zYyeTSPMTEwPzkDPTx8vzEBCwAAAAAQABAAAAI/wDzCBxIsKDBgwgTKlzIsKHDhxAjShQ4ZqLFiwRB+cPIMSIURr70gYKS5kTHkwOjgCowhU23IEHWLGF0oiJKi8mgfGhDIchLChko1NPzY+PNiGMQFQi6pttLVNWEeaCBZUmwoxDHnPiACqZTClP4ICpHI0/ZLyFiIfRnE6vWD2y8doPa4AuNu3jxgpOir6C/R6jSRGSrMEqBrj7XoFLx7EHex3i/sEnUFlSbNWtaOUz2CARQCQbHgJqyJjEYFQSUuVvtDvLjPOCC0MlzYgpMCmsSGV3b2SeFIWsoPBqIh08Yr9sCnWqn5J3zdzlyrHaN1wObNiB8hhDL5sDuglEYxf9dsycAhAmOejLSx6hntxDYLHDBgaOdfSVKVkGPPh1yHg+oOBVCAV8IBAYseBjkS3ZBUGCPBX64IxATAgyxQFNB7PFKCusw4aEx9NnHXH77SddaZIuEcKE9HhA0RS8JDoRIdpjZc4qEBa1TYRDAqPMCC0Cqso4xH9Lnx4gkRicdDQ/wwcYC3VQzxxllCRSHPTfAIFAUiXi1gig4FoTHKE8IkAU8ZpjxAjvssKCKmx0SSV99IzqXgzKzoALlFL7QwAwzBGlDghRa5vFBaUOgs4pBMPhCiQUYJPDEpE/A88KlbL4pZIcehnjfCHlCuYRJZjFTBEGGVCAFaHnoQ0E3TaT/0NYY+lDSAga77JLArpJSCo+l8WS6jiqqENkpDgjMYsACC6DSQB5xlCOQOAS5M08VUngykG0r9ICIQPoQQk+uufJqLqUJ/HppsECuw+kEdzzZ7CMVxWGItAXFgU8cJ0gxm0BQxOTAPj+I28/B/ZBbrq68UlrppWu2yUIKg8hrQA34lvOnQSNos2UQUAzkT1xEqFGLGginrLC5uz7Ra6VpmtFCJRRAOUQFWixJwzz/zFPQCHU4IZAPQfBDECNBDNGDGkyjjDLCuyRM7q66uoyuJcCsAeU2XsgTgzyrRBdHDHUgU9A8dUgYxwxB2ECQPjCx0jTTKUO9cgJVJ4BLAHsw/8tjIRMwYYwh9TWHTAwIVDnQGafmoUwna2xC0BgZBGFPPz0sPXfdB0+dAAYbMFDzAkPY4wA87BbroX1ciGNile5QK1ARmVDAS0GxBBGCCGpkrnnT/TwttRob/DFENwsEsUIAKPe6ZjxCdjpi2NMVhIwHFEhOUBSvNuG778AjHAkrDByfvAFE5NIP1byqkS470A/JROH6mWjWQMlQcIxBlXPSQwzfy5wacsEKIuxhdGsYABGu0QPMNbBcCcjcpID1JvnR7x3uQIbs8pCMELSiLQKJRXDu8b/vqeEe5kuaEcRgDgD6DoDC60EdetAydcXjE7Ywlh1w8A4/xKAIreGgB/8Nwr0giOF/AHRhDEIQhAp04h91IFsUkzjDp/3vH+5r2BP6EYM2qeIWhmBCO+zwj3DkIA40QEQQPsi/INAiBnBMYuYMEARu/OMfZ9ACJIpQBEiQAY4C7N0MO8erftRBDS+4YR3s4CE7MMMPzcmBDzJzEBFSQARxjGMP+iaLf5ABhB1whSZfqLJd/W8XLgMgO4Q0gQkUTglzCAIVQCiQH5RGDFLMJDG6IQtrWANfFKnCFAEJQ+EdbGm8isEuzOBFCypBFEEQAi0F0j84RnGK31iAN/5hDWUURBj/INsoBVg3hgVvgomsIJEIEc0OHKQAujNBHaA4RW9ok5tCI0gxTHD/xzr4k5i+q1sCEmYuNEHvE+soRDS/MxC4BUEB/oxoDMRwT2vkcyAn4OcdxWlNE9LtYHjbRQ9QWSlmkGMdXljoQfzRFWLME4rhVEAQSMBNSBSkDJewRjj7+U9AvtCYp3yCJXjgAmd4wREqPcgHgjAAjW5UpjS1hk0J8gM06DQGd6RnJgEYxQYeTJy7GEQEdDCGHwDiOEJg6EACtoZLcDOrM1hDVLtQkB/AAaa+3KlWMynA/x3SEoLQwUBgIIOkGgQPPaFpVv9hgjUYgZt0pSocdJrXxe61qy9sIA+iQYcEjQEPmpCCDdS6rQz5Mq/WCMFjrRHZgVT1tJWtLE8BCsMS/0QjHc2ggwSacQRexAghfFhDCExwWm6GgBOQretk7whbnS72n1MUYAyocQQ3QIMDHIhGPgqVEF/4pJOwHcJqp+paqzIXtlHsBDec2lMReMMAigCAIPKRD0EcQQ+kJYg/btCNqHLTGgOgxR0bNxAJWNWflLVGHUSAhC24YQul0Kk/O/GN4wUhFZiYBgAAcIVm/FYh2RlAcwfw2B/e1K1YLa4ISuCGjfgDEJX4BzeIEYJukEIaeogCHnTAgWaUIb8GeURw3JpXWtBinhcVCB3cWofi/gMb0fjBQIYBBFqUZglU8AQepvkQh4JXp7R47D8mUZBHODfBJtCAFegAA3/4w/8Tb5DCAWxQlI6MoaVvtQYtkGsNfOCuuTo1wRswkQ5e6EECbriCHmDAZYskIoGwDfMdFZeHYEjiv8VNc3VRkA4rTAMFHz7JI3RH5H8YGY8C8ccPGlCFe/z3jiaowB7ie4Qr7AAAoWDVUfRRmi8HuA5aSEYDVHDXKFL2EsQ4nhSkYYUdTGMHfShDozHC0pn+l8Rkq0Qv6jEOHhhbDLR4FSmEwI82/8ATEgj1UUDQDVqcNgQkiEElrjCMPIzhF22owBB8cgMhaBkrCxn1EIh7iRBUgBuCaMZAxqCJ5N0gyx2YNsAF4otutPUfsuAlEnaw6DF0wB/5AEIryqDuia80LmJz+Acx1mCNJezgunooA29tUHKTI8Q2xAAwMbwRXytAIx3piEaUbf4QeLpbDAMIwgKmMY0rROMICQcy0QsCCt3twStLaPY0jpAPD099Mz2BycO1/AM96CAKUv/65G6whnF3Vu0XKQC5aw53h4yBMHXPu8kDAgA7eJzjcsvPSUkt0kvPTGMYBSMP9HHjl7e6dsSLkQEAMfsGg7tozLkBAAAAAgAAACIAAACOCwAAAAAAAAEAAAAAAAAAAAAAAA",Append
//-
IniWrite,#9,AuthorEncoded,Folder.gif,"3028,4038"
IniWrite,#9,AuthorEncoded,Logo,Folder.gif
//-
IniWrite,#9,Main,Title,#3
IniWrite,#9,Main,Author,%_ML_CreatePlugin_User%
IniWrite,#9,Main,Description,#4
IniWrite,#9,Main,Download_Level,0
IniWrite,#9,Main,Version,001
IniWrite,#9,Main,Credits,http://TheOven.org
IniWrite,#9,Main,Contact,http://TheOven.org
IniWrite,#9,Main,Date,%_ML_CreatePlugin_MyDate%
//-
//Call,StartDoc,#9

[CallC_Download]
If,#2-,Equal,-,Set,#2,%ProjectTemp%\
StrFormat,FILENAME,#2,#8
If,#8-,Equal,-,Begin
StrFormat,FILENAME,#3,#8
StrFormat,Replace,#8,%20," ",#8
End
Call,FileNameNoExt,#8,_ML_DownloadPlugin_Temp
StrFormat,PATH,#2,#9
StrFormat,CTRIM,#9,\,#9
Run,%API%,Download_Files,#9,#8,#3,#4,#5

[CallC_CreateBulletinPlugin]
Set,%_ML_CreatePlugin_User%,"Author"
If,#4-,Equal,-,Begin
Set,%_ML_t%,""
If,ExistFile,%GlobalTemplates%\Download_1Upload\9_Info.ini,IniRead,%GlobalTemplates%\Download_1Upload\9_Info.ini,Info,Author,%_ML_t%
If,Not,%_ML_t%,Equal,"",Set,%_ML_CreatePlugin_User%,%_ML_t%
If,%_ML_t%,Equal,"",Begin
Call,HostUserName
Set,%_ML_t%,1
If,%HostUserName%,Equal,Administrator,Set,%_ML_t%,0
If,%HostUserName%,Equal,Guest,Set,%_ML_t%,0
If,%HostUserName%,Equal,System,Set,%_ML_t%,0
If,%_ML_t%,Equal,1,Set,%_ML_CreatePlugin_User%,%HostUserName%
End
End
Else,Set,%_ML_CreatePlugin_User%,#4
//--
If,#2-,Equal,-,Set,#2,"%BaseDir%\Projects\MyPlugins_Direct\AppsMy\2Prepare\New Plugin_%_ML_CreatePlugin_User%_Bulletin.Script"
//-
StrFormat,FILENAME,#2,#8
Call,FileNameNoExt,#8,_ML_CreatePlugin_Temp
StrFormat,PATH,#2,#9
StrFormat,CTRIM,#9,\,#9
If,#3-,Equal,-,Set,#3,5
If,Not,ExistDir,#9,DirMake,#9
//-
StrFormat,DATE,%_ML_CreatePlugin_MyDate%,yyyy.mm.dd
//-
FileCreateBlank,#2
//-
If,#5-,Equal,-,Begin
IniWrite,#2,Main,Title,"%_ML_CreatePlugin_Temp% - %_ML_CreatePlugin_User% - Bulletin"
End
Else,Begin
IniWrite,#2,Main,Title,#5
End
IniWrite,#2,Main,Type,Plugin
IniWrite,#2,Main,Author,%_ML_CreatePlugin_User%
//IniWrite,#2,Main,Description,"() %_ML_CreatePlugin_Temp%"
IniWrite,#2,Main,Description,"Bulletin"
IniWrite,#2,Main,Credits,http://TheOven.org
IniWrite,#2,Main,Version,001
IniWrite,#2,Main,Download_Level,2
IniWrite,#2,Main,Level,#3
IniWrite,#2,Main,Selected,None
IniWrite,#2,Main,Mandatory,False
IniWrite,#2,Main,NoWarning,False
If,#6-,Equal,-,Begin
IniWrite,#2,Main,Contact,http://TheOven.org
End
Else,Begin
IniWrite,#2,Main,Contact,#6
End
IniWrite,#2,Main,Date,%_ML_CreatePlugin_MyDate%
IniWrite,#2,Main,Depend,""
IniWrite,#2,Main,Disable,""
//IniWrite,#2,Main,Web1,""
//IniWrite,#2,Main,Web1C,""
IniWrite,#2,Main,CertifiedBy,""
IniWrite,#2,Main,Certification,""
IniWrite,#2,Main,HistoryNotes01,""
IniWrite,#2,Main,HistoryNotes51,"'Plugin Creator' http://TheOven.org/index.php?topic=178"
IniWrite,#2,Main,History001,"%_ML_CreatePlugin_User% %_ML_CreatePlugin_MyDate% Plugin created"
//-
TXTAddLine,#2,"[InterFace]",Append
If,#6-,Equal,-,Begin
TXTAddLine,#2,"pWebLabel1=#$qPlugin Page - Download Plugin#$q,1,10,142,23,143,18,http://TheOven.org",Append
End
Else,Begin
TXTAddLine,#2,"pWebLabel1=#$qPlugin Page - Download Plugin#$q,1,10,142,23,143,18,#6",Append
End
TXTAddLine,#2,"Info_Put_A_TextLabel=#$qDownload and Put your plugin to#$q,1,1,19,66,193,19,10,Normal",Append
If,#7-,Equal,-,Begin
TXTAddLine,#2,"Info_Put_B_TextLabel=#$q\Projects\MyPlugins_Direct\AppsMy\.....#$q,1,1,18,99,395,19,10,Normal",Append
End
Else,Begin
TXTAddLine,#2,"Info_Put_B_TextLabel=#$q#7#$q,1,1,18,99,395,19,10,Normal",Append
End
TXTAddLine,#2,"Opendir_AppsMy_Button=#$qOpen Folder (Put Plugin Here) #$q,1,8,83,138,342,54,P_OpenDir_AppsMy,opendir.bmp,False,_P_OpenDir_AppsMy_,False,False,_P_OpenDir_AppsMy_,False,#$q__Open Folder#$q",Append
TXTAddLine,#2,"ReScan_Info_TextLabel=#$qThan Click Refresh Button to see Plugin at your left tree:#$q,1,1,89,211,286,18,8,Normal",Append
TXTAddLine,#2,"ReScan_Button=,1,8,375,204,27,27,ReScan_P_B,Double-J-Design-Ravenna-3d-Reload024024.bmp,False,_ReScan_P_B_,False,#$q__ReScan (RefResh) Plugins#$q",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[Variables]",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[Process]",Append
TXTAddLine,#2,"Echo,#$qBulletin Plugin - There is no Spoon#$q",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[P_OpenDir_AppsMy]",Append
If,#7-,Equal,-,Begin
TXTAddLine,#2,"Call,OpenDir,#$q#$pBaseDir#$p\Projects\MyPlugins_Direct\AppsMy#$q",Append
End
Else,Begin
TXTAddLine,#2,"Call,OpenDir,#$q#$pBaseDir#$p#7#$q",Append
End
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[ReScan_P_B]",Append
TXTAddLine,#2,"System,ReScanScripts",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[AuthorEncoded]",Append
TXTAddLine,#2,"",Append
//-
IniWrite,#2,AuthorEncoded,Oxygen-Icons.org-Oxygen-Mimetypes-message-news4848.ico,"2022,2696"
IniWrite,#2,AuthorEncoded,Logo,Oxygen-Icons.org-Oxygen-Mimetypes-message-news4848.ico
TXTAddLine,#2,"[EncodedFile-AuthorEncoded-Oxygen-Icons.org-Oxygen-Mimetypes-message-news4848.ico]",Append
TXTAddLine,#2,"lines=0",Append
TXTAddLine,#2,"0=eJztWctPVlcQv7T/QxNSS/FB1dqmtgSwAb8+VxKQFUEgSCKPiI+FC01MNA3sjAujOzckamKjUVmAulBSFoILlIUL5CGgoALiE3e25/T8TmdO5p577/d9NDZpm++aYeY7d+6c35mZM+dhEOSZf5s3B+ZvYfBrURB8FATBBkOmKWgO/mrH80tRkHtyT+75Hz4NDQ0fbNmyZVNxcfE3JSUlISotLX0vVFZWFpJ9yvQ9sJSXl284cOBAno+/qqqqaHFx8Y/nz5/rZ8+eWVpaWtL4/eLFC0dv3ryJpeXl5Yz09u3bjPT69etEgo1Xr179XldXl+/jr6+v32TeAbean58H6YWFBUXEMuwoQe43jUMROZn6VGbs6uXLl9pQSAY3OooI/rLvyV8hXfQDvZaWltU+/ubm5s8ZP2M18VD4TbFQiAewgOLw+zKPBRjwPcXS4SOsobGijdsJewg/9Hbv3h1ZyYAfesD95MkTS0+fPo0QxsiULtaSgAVjl4SxMMk8ND6zucucCb85f9va2jb6+Hfu3LkR+OFzg9PmD2QijgXH3BKNQxElyvA95yS4jK+Xky7mNDbFcQdHPKBTWVn5RRx+jA99PH78WM/NzVkuCW0US0syFukI46Y5FCL4BVzqylgDi+SwA51UKvV1Gvzq0aNHanZ2VhsCV8BNssxJOQfTyvA3xxScSHOb1DV5q0B4zzJ8B47YQKeioqI0Bv8GxAz4pX2vXzn/FOWo4tyiue7mO89T4Pf8IP0TmtNGB3gV+T2EBf1Ax+AvT8KPcc7MzKiHDx9qQ04GN+TqAwh9oz+ikIy+GRP6RkwNaYqtk8Hj8KN+gEvbsAmMBv93afDDrs11rkOSZN3geeHnKs19t/ZBxjuZ+7S+WJI24SPQ9PQ0/IcYWTzgsEH4f/bxNzU1rcc8h2+mpqZA+sGDB0429iynemAJdhEjIivDp5DhO6754+Pj1o9+jnlri60z6Efak7lANhPxwxZ0YIN8YL+HLzh/JH7yleJ33B9k4GVMPEe4Dsqa6LfBX+wDwu76ATZgzOB/PTk5qScmJiwHEX7L5RoE3bgaC478kHomlpY4Pwif5dIm+oMe9y1l2CH//xSD/zO8g984V+ALyLDBXMTfxgXtrE/ctiMPoQObMqbwI/wr4uVsEn4F4vyl37adbAL/j0n4Of+BgXLf2qLcjuQ/sAAf+d/JqBWcE2yT/cA5xrkp84fa7HuuVVxrUcfI/z/E1J8izDXEH/2Q/zX5wfG4WiFzgQljkHWKYuW+4XwESZucM2hnTrG12Kj+fJ+EH/Vfzn/2O88pf/7KOSvnMuxw/UFOcjuvX7L+sz3ySagGcP1HXCmmSfV/HfdFddPlD9Vii1+uX1SXQ2sTrfma1hqHX84pzklw+FvY1JT7kfkEjjGkWb/W0frn4sVcyvIsJvOFidYEu9axHvKHc1Da4pz0bfJ6Reuuq3OoabR/SMXgX0t9Kaoprv4Iv2W1f8A6iXrP5xDMO9oLuDmO8dFeIXRmkTGXucT1n/xfkYQffSFXaP/g8oG53L+Rr1z+yPUX+rynQb9+TrBPyP9OF21cl2Stggw75P9v4/Bjbwp/QN+PMeeR3P9nWr9YD/GQeyraDzuSNmWN4pzk37BD++eyGPxreP8t/SPnD+W/8z/w83mJz2hcx/kcTj6J5KRY+0LndNQDP9dYxj6c/F/i4zfnX4s/7vwiakvo/ChqYGhvjG9hh88kbFPUYUXx8G1GxidzCb4l/xfH4F/N5zd/LZIkz3r+/lbKyB/WA0aZBzJHIEubcq8sz5G8J4fO1q1bI+dHxs/nhLi9on9+5/OXtx+2MvKHz/j4Vt4j8Z0Ayc4mdH2fy70wagv0DP6vYvAXEv6sz+XwlZx7SWf7+/fv65GRkcgdCpPU9e9NJKF2kv+/jMOPuwlxPxWRZVuSTpzMccxkMxsZZPBvSocffYmaH6r/oi1JZ6Vy1roCf+T+yuD/NN192fug3t5effjwYVv/b926pbu6uvSlS5f02bNn9alTp/T169f1kSNH9J07d3RHR4c+efKkla9cuaIvXLjg7vwM/vVx+OPuML37zND9bSZ9X757967eu3evlVGPDh06pK5du6bPnDmjjh8/roaHh/W+fftUd3e3unjxos27e/fuqZ6eHr1nzx7Xr8Efd/9ZkMV9YCgPs70/ZPn27du6vb3dyqOjo/rgwYPq8uXL8LM6evSounHjht61a5fq6+tTx44d062trerq1atq//79iIPMn7U+frP+FvwTOcOEPcjQ0BDw2zuTwcFBDbwDAwMaYzh9+rS+efOmPnfunNXHu/Pnz9u6j7zq7+93tsz6tcbH39jYWCDu+VWCLNuSdGLlzs5OdeLECW36sTKwmhxZkQ0m4//I/X9tbe0n4+PjuHdQRHGybEvSyUpGX2NjY3/nO5VKpQp9/Nu2bcs3OfmOz/985vdk2Zaks1J5Rd+ZtfDd9u3bP/bxNzU15VVXV+fv2LFjlZH/lWRyb1VNTU2+mdeR/7/LPbkn9/z3Hm2fzPw3KH+Y49nybP36J7OzuUd4nDPzr6hMT83T9UzOzyvWyy9K14UK+GbmppZUFqQW6+amFhcnpqfq5qWWF5tYmFjoZSbnM4yC4QH2qULoMnbs8kkmdicYmABatxccLcZICAEAAAACAAAATAAAAHYHAAAAAAAAAQAAAAAAAAAAAAAA",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[InterfaceEncoded]",Append
IniWrite,#2,InterfaceEncoded,opendir.bmp,"571,762"
IniWrite,#2,InterfaceEncoded,Double-J-Design-Ravenna-3d-Reload024024.bmp,"1230,1640"
TXTAddLine,#2,"[EncodedFile-InterfaceEncoded-opendir.bmp]",Append
TXTAddLine,#2,"lines=0",Append
TXTAddLine,#2,"0=eJyVkt1LU3EYx382esMuBFEKE8GLLL0IbyYhpEUI4aKytilTFN1xOrvxohpI9/0FlYESXUR2EXmxi4S9hYF4IZhOSdZMzJdtx+HwvO1sh2/P8cyxYFh9+TzPxXm+v+9z+J1z847ZxA5lprpMVZarEnbeGNC8vNSoI+E/5Z6YZs++Mk+QPTnkaaiAo4ee0LVPEcN/4tViTRjuNB7Jeh/cAxfPcEnNtY8hAW4ZwwqGVbCxL3k/D5zxC71x9AjoTsGRgG0jbY2K1siBfV2ybyjd2xkHr7HHIcO/CZh8ApdEfwIDKXASnAr6BDh4dG5mbVHJui727ar0VuQ/924tCtyNoTwgGFQGdZyxrHMfLgUuFYMShg4wIOrhVTNb3zVYdtCbQD+vQ4sqQwKhH/cLFQGx1C+W+EQWlC/Nyw0LqRUVt7fQtZPDvgtrDB2JHD1JnJrl8/dpjqjLipb3P9zG/Ti+qQirWJY1Yi0L06pW6F+QtJZf+grCEkOYrus5q/iJ06tgiwoLZ+0v3vyRnwEdoailtG6ufllVN1FXO36x6Pcd8wYogXJOrqDsB66+rTdPtV7/aGmcar0weeX4f6N2srrpQ/ON6Xvt3i7q9e+bz74uvqVQt7wPOn0c9b86DbV9tjlnR6n/o39kzmNQdPoblHVTL3ic484vSM1LySzSS8otYBgFIw6YMUPoD4zY5WddWriPgQkAk7cIYWOapDwBAAAAAgAAACcAAADwAQAAAAAAAAEAAAAAAAAAAAAAAA",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[EncodedFile-InterfaceEncoded-Double-J-Design-Ravenna-3d-Reload024024.bmp]",Append
TXTAddLine,#2,"lines=0",Append
TXTAddLine,#2,"0=eJzdlHtQVGUYxu0vWCKDWGBZKG5K4BKXkL1fWfbsroQikMCCtUqZ3FFQtCxXxxTUBbkoEEERhJITE4XaUNroP9VA1pgWmBqkaJcBJ3S5LfD0nQPDyGAThn95Zp45O3u+87zP+d7v/UVEH2EtYi4+kT8Rh8iN6LFFXsz/xunn914AHml193Wh7mwddrbuxvaWHdjbVojmr5vR138DC/Ht/bMHOcfzoDmaCOojA7knQNPwIiLfj4W6NgaqwyuQ35SPq7euPHCd0x3tWL4lDNqWtaCOJ4M6lgjNh2sQWR8Hdd1qRNSsRERlFFQVeqiLKTSda5x3jdpPq+Gqs4eTxhYhJj6o5iRomhIQ2RAP9XvT3tUvMPmVZVooSiIh269EaVvxvGq0nmsBm2LhqUgbsLUsCMwqiA6p4ZftDQ+jIzxedoBvmjtCd4Qy3oqDasiLlJDukaLpbMO8ahxo3Mvkp7XE4AbqDQlUBXx4G53AMdiBk0SUyILXOheI90gg3yeHjNwVJgku93X/Z43JyUlkHdyAyo/LYBmxzKy/fWcAlW2lWGrkwDWeBZdYFjySHCHeJYJ0lxiStwTIqHx1QeeKVtdvPyEo1RfOq1hwjraF7zp3SE1CSHaEQ7TteXRf/3nBNb6/3AluzGKwo2zhHMVC+NZgiF9fDtHWUJS0FC3Yn1Z+RRbYetInnQ38X/GEmGQXbQlGcmHsQ/H/4ZfzYOuIv9YG3gYXJrswLwjyzaGwjlvn1Lh49QJqvqjGqfMncan3RwwM9oPu9b/5j46NwjPGifH3TGBDlB8M4aZACLMCMWgZnPUefSbdViyGpJxi5pSeI2W5FrrSKKRUrUXjV/Vz6tC1eUlejP+SFA6Em4MgyOFBmLkMd4fuzKy3Wq14Jprk0NhAWqFl5lT97qrpOdUjpz4bw6NDc/yHRobgsdKB2aOgjb4Q5gZCkBUA1aYwTExM4N7v5OifYOZJRvsTfkW8Ew0VYYzcrMbF3gv33aPTne2M99PxjiT7cxBk8yDI8McGc8qs9ZZhC5wpO8ZfTvIyjKmayk4zhjJr8VlH66xMY9Yx6HIVcI9zQHgubyY7P80Px858MMt/4O9+hjlOFO2vg/KIHgriqywnvw9pGMbIChWIN6+G+ZP9TC/SSteD95oPhHRPp7PzSXZNHh+W4buz/G/9dXOKN8RfUqKGp9EV3qlcyIsJv4jkB1TTjJESDoggeVMwNUsFoRDlBU9lzwyAIO1ZtHeenLOXPX3XGF5yo56EoTCO4YprnB28jORM0/wqUkD2tgzS3WJId05xQLwtjMxSCDmPdPZlEKT7o+5U1X37dO3GFeQWp6Pn5q8YHx/HvqMmcBPswVnDAjfJHrzspRATvkhNdHb+DAdEZJaEOYHQb5fiy+8+f6CZ7ej+BjEmDdwMjzNM5ibbwyfVFQFpnghM90FIph82lr6EE9+2YmRs5H/zoOv6JVSfKENeTToyDq9HQW02Gs/U4Y/bvz8UxixU/wDOLxv7eJzTdskvTcpJ1fXSdUktzkzP0w1KLEvNy0vUNU7RDUrNyU9MMTAyASK9pNwChlEw7MA0TgidyoJd/rnmIwEGJgDhFxFq3jfyRwEAAAACAAAARQAAAGUEAAAAAAAAAQAAAAAAAAAAAAAA",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[EncodedFolders]",Append
TXTAddLine,#2,"Folder",Append
TXTAddLine,#2,"",Append
TXTAddLine,#2,"[Folder]",Append
TXTAddLine,#2,"",Append
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************

[CallC_LinkType]
//Call,LinkType,<Var>,<%File%>,<%ProjectDir%> --> PluginFile LinkFolder LinkFile FileMain FolderFile File
If,#2-,Equal,-,Set,#2,LinkType
If,#3-,Equal,-,Set,#3,%ScriptFile%
If,#4-,Equal,-,Set,#4,%ProjectDir%
StrFormat,Path,#3,#5
StrFormat,CTRIM,#5,\,#5
StrFormat,Replace,#5\,#4\,,#9
If,Not,#5\,Equal,#9,Set,%#2%,PluginFile
If,#5\,Equal,#9,Begin
Set,%#2%,LinkFile
If,ExistFile,#4\folder.project,Begin
If,Not,ExistDir,%ProjectTemp%,DirMake,%ProjectTemp%
Call,FileDelete,%ProjectTemp%\folder.project
FileCopy,#4\folder.project,%ProjectTemp%
StrFormat,Replace,#5,%BaseDir%\,"",#9
//ProjectDirNoBase1 normally Projects
StrFormat,SPLIT,#9,\,1,#8
//ProjectDirNoBase2 normally ProjectName
StrFormat,SPLIT,#9,\,2,#7
TxtReplace,%ProjectTemp%\folder.project,#8\#7\,""
Retrieve,MD5,#4\folder.project,#9
Retrieve,MD5,%ProjectTemp%\folder.project,#8
If,Not,#8,Equal,#9,Set,%#2%,LinkFolder
End
End
StrFormat,EXT,#3,#9
If,Not,#9,Equal,.script,Set,%#2%,File
StrFormat,FileName,#3,#8
If,Not,#8,Equal,script.project,Set,%#8%,FileMain
If,Not,#8,Equal,folder.project,Set,%#8%,FolderFile

[CallC_SourceDirSet]
//Call,SourceDirSet,<Folder>
If,#2-,Equal,-,Set,#2,%BaseDir%\Source
StrFormat,Ctrim,#2,\,#2
//%SourceDir% At memory does not fit %SourceDirMain% -> Get %SourceDir% %SourceDirMain% value ( [Main] SourceDir value changed by another plugin )
//77rc2 can set Permanent - 082 set permanent with warning - ( Set - You cannot set Builder system variables PERMANENT )
System,ERROROFF
Set,%SourceDir%,#2,Permanent
Set,%SourceDir%,#2
//Delete Variables %SourceDir% -> CodeBox will not work correct -> Do NOT Delete
//IniDelete,%ProjectDir%\script.project,Variables,"#$pSourceDir#$p"
//-
//ReAddVariables to be sure %SourceDir% values are correct. Ex: %Source_Sys%=%SourceDir%\I386 // %Source_Win%=%SourceDir%\I386
// - BUT IT Breaks [Variables] winbuilder bug - DO NOT USE ( Reminder: Projects recreate [Variables] during build to avoid this bug )
//AddVariables,%ProjectDir%\Script.Project,Variables,Global
If,%OSFamily%,Equal,NT5,Run,%api%,CallC_SourceDirSet_NT5,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,%OSFamily%,Equal,NT6,Begin
//SE: Required values written by "Images Configuration" plugin
End
//----------------------------------
IniRead,%ProjectDir%\Script.Project,Main,SourceDir,#9
If,#9-,Equal,-,Begin
IniWrite,%ProjectDir%\Script.Project,Main,SourceDir,#2
End
Else,Begin
If,Not,#9,Equal,#2,Begin
StrFormat,REPLACE,#9,",#2","",#9
StrFormat,REPLACE,#9,"#2,","",#9
StrFormat,REPLACE,#9,#2,"",#9
IniWrite,%ProjectDir%\Script.Project,Main,SourceDir,"#2,#9"
End
End

[CallC_SourceDirSet_NT5]
//Gena: All Values written by "PrepPE" plugin
Set,%Target_Win%,%TargetDir%\I386,Permanent
Set,%Target_Sys%,%TargetDir%\I386\System32,Permanent
Set,%Source_Win%,%SourceDir%\I386,Permanent
Set,%Source_Sys%,%SourceDir%\I386,Permanent
//-
Set,%SourceArch%,x86,Permanent
If,ExistFile,%SourceDir%\AMD64\TXTSETUP.SIF,Begin
Set,%Target_Win%,%TargetDir%\AMD64,Permanent
Set,%Target_Sys%,%TargetDir%\AMD64\System32,Permanent
Set,%Source_Win%,%SourceDir%\AMD64,Permanent
Set,%Source_Sys%,%SourceDir%\AMD64,Permanent
//-
Set,%SourceArch%,x64,Permanent
End
If,ExistFile,%SourceDir%\IA64\TXTSETUP.SIF,Begin
Set,%Target_Win%,%TargetDir%\IA64,Permanent
Set,%Target_Sys%,%TargetDir%\IA64\System32,Permanent
Set,%Source_Win%,%SourceDir%\IA64,Permanent
Set,%Source_Sys%,%SourceDir%\IA64,Permanent
//-
Set,%SourceArch%,IA64,Permanent
End

[CallC_SourceDirAdd]
//Call,SourceDirAdd,<Folder>
If,Not,#2-,Equal,-,Begin
IniRead,%ProjectDir%\Script.Project,Main,SourceDir,#9
If,#9-,Equal,-,Begin
IniWrite,%ProjectDir%\Script.Project,Main,SourceDir,#2
End
Else,Begin
If,Not,#9,Equal,#2,Begin
StrFormat,REPLACE,#9,",#2","",#9
StrFormat,REPLACE,#9,"#2,","",#9
StrFormat,REPLACE,#9,#2,"",#9
IniWrite,%ProjectDir%\Script.Project,Main,SourceDir,"#2,#9"
End
End
End

[CallC_SourceDirRead]
//Call,SourceDirRead,<VAR>
If,#3-,Equal,-,Set,#3,SourceDirRead
IniRead,%ProjectDir%\Script.Project,Main,SourceDir,%#3%
StrFormat,Split,%#3%,",",1,%#3%
If,Not,%#3%-,Equal,-,StrFormat,Ctrim,%#3%,\,%#3%

[CallC_SourceDirFix]
IniRead,%ProjectDir%\Script.Project,Main,SourceDir,#9
StrFormat,Split,#9,",",1,#8
If,Not,#8-,Equal,-,StrFormat,Ctrim,#8,\,#8
If,#8-,Equal,-,Set,#8,%BaseDir%\Source
If,Not,#8,Equal,%SourceDir%,Call,SourceDirSet,#8

[Dummmy_201708181133]
//--
//--
//--
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************

[CallC_DownloadXQ]
If,QUESTION,"Are you Sure you want to DOWNLOAD ?",10,False,Run,%Api%,CallC_DownloadX,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Halt,"DOWNLOAD Cancelled"

[CallC_DownloadX]
//DownloadX="Call,DownloadX,<Folder\|File>|<Default>,[Web],<NORESCAN>,<LinkFolder><NoLink>"
//-
//Better to set NORESCAN for now
Set,#4,NORESCAN
//-----------
//Par2 exists - Par3 exists -- We need Par1 as FileName (Fix DownloadXQ filename trouble when downloading Download_Pack.7z)
If,Not,#3-,Equal,-,Begin
If,Not,#2-,Equal,-,Begin
StrFormat,FILENAME,#2,#1
StrFormat,Replace,#1,%20," ",#1
End
End
//-----------
//Par2 exists - Par3 not exists (condition we like on codebox)
If,#3-,Equal,-,Begin
If,Not,#2-,Equal,-,Begin
If,ExistFile,#2,IniRead,#2,Main,Web1,#3
If,Not,#3-,Equal,-,Begin
StrFormat,FILENAME,#3,#1
StrFormat,Replace,#1,%20," ",#1
End
End
End
//-----------
//Par3 and Par2 not exists (condition we use inside plugins)
If,#3#2-,Equal,-,Begin
IniRead,%ScriptFile%,Main,Web1,#3
If,Not,#3-,Equal,-,Begin
StrFormat,FILENAME,#3,#1
StrFormat,Replace,#1,%20," ",#1
End
Set,#2,%ScriptDir%\#1
End
//-----------
//Par3 exists - Par2 not exists (condition we use only weblink to download)
If,Not,#3-,Equal,-,Begin
If,#2-,Equal,-,Set,#2,Default
End
//-
If,#2,Equal,Default,Begin
StrFormat,FILENAME,#3,#1
StrFormat,Replace,#1,%20," ",#1
StrFormat,SPLIT,#3,/,3,#8
StrFormat,Replace,#3,http://#8/,"",#7
StrFormat,Replace,#7,/,\,#7
StrFormat,PATH,#7,#7
StrFormat,Replace,#7,%20," ",#7
StrFormat,CTrim,#7,\,#7
StrFormat,SPLIT,#7,\,1,#6
If,Not,#6,Equal,Projects,Set,#7,Projects\#7
Set,#2,%BaseDir%\#7\#1
End
//-
//Folder\
If,Not,#2,Equal,Default,Begin
If,Not,#2-,Equal,-,Begin
StrFormat,Right,#2,1,#9
If,#9,Equal,\,Set,#2,#2#1
End
End
//------
If,Not,#5,Equal,NoLink,Begin
If,Not,#5,Equal,Default,Begin
If,#5-,Equal,-,Begin
Set,#5,%ScriptDir%
Call,LinkType,,#5\#1
If,%LinkType%,Equal,LinkFile,Begin
//No need to create link out of ProjecDir (ex: you run current plugin on a link file) --> FallBack Required:
//We Can't find %LinkDir% -> there is no command available -> only we can figure out if it is internal Link (Most Case %99) and use subfolder Else Fallback Default
StrFormat,SPLIT,%ScriptDir%,\,1,#9
If,#9,Equal,Projects,Begin
//Internal Link
StrFormat,SPLIT,%ScriptDir%,\,2,#8
StrFormat,Replace,%BaseDir%\%ScriptDir%,%BaseDir%\Projects\#8,%ProjectDir%,#5
End
Else,Set,#5,Default
End
End
End
End
//-
If,#5,Equal,Default,Begin
StrFormat,SPLIT,#3,/,3,#8
StrFormat,Replace,#3,http://#8/,"",#7
StrFormat,Replace,#7,/,\,#7
StrFormat,PATH,#7,#7
StrFormat,CTrim,#7,\,#7
StrFormat,SPLIT,#7,\,1,#6
If,Not,#6,Equal,Projects,Set,#7,Projects\#7
//Set,#5,%BaseDir%\#7\#9
Set,#5,%BaseDir%\#7
End
//-
//If,#5,Equal,NoLink,Set,#5,NoLink
//----------------------
//1 FileName From Web : WebFile (without %20)
//Echo,#1,Warn
//2 File Download --> Empty: %ScriptDir%\WebFile // Default : "Follow Server Folder\FileName"
//Echo,#2,Warn
//3 Web  -----------> Empty: IniRead,%ScriptFile%,Main,Web1,#3
//Echo,#3,Warn
//4 NORESCAN
//Echo,#4,Warn
//5 LinkDir --------> Empty: %ScriptDir% // Default : %ProjectDir%\"Follow Server Sub Folder" // NoLink
//5 LinkDir --------> Empty: RareCase (1/10000) -> If %ScriptDir% is LinkDir than FallBack to "LinkSubFolder" Else Default
//Echo,#4,Warn
//----------------------
If,#3-,Equal,-,Call,Echo,"WebLink Info not available - Nothing Downloaded",Warn
//--
If,Not,ExistDir,%ProjectTemp%\Plugin_Download\Temp,DirMake,%ProjectTemp%\Plugin_Download\Temp
If,ExistFile,%ProjectTemp%\Plugin_Download\#1,Call,FileDelete,%ProjectTemp%\Plugin_Download\#1
If,Not,#3-,Equal,-,Call,Download,%ProjectTemp%\Plugin_Download\#1,#3
If,ExistFile,%ProjectTemp%\Plugin_Download\#1,Run,%Api%,CallC_Update_D,#1,#2,#3,#4,#5,#6,#7,#8,#9
System,RefreshInterface

[CallC_Update_D]
//#6 %FileName%
StrFormat,FILENAME,#2,#6
//-
If,Not,ExistDir,%ProjectTemp%\Plugin_Download\Backup,DirMake,%ProjectTemp%\Plugin_Download\Backup
StrFormat,DATE,#9,yyyymmddhhnnss
If,ExistFile,#2,FileCopy,#2,%ProjectTemp%\Plugin_Download\Backup\#6_#9
//-
//// %Folder%
//StrFormat,PATH,#2,%Folder%
//StrFormat,CTRIM,%Folder%,\,%Folder%
//--
//#7 %ReScan%
Set,#7,0
//#8 %CreateLink%
Set,#8,0
//--
If,Not,#5,Equal,NoLink,Begin
Call,LinkType,,#2
If,%LinkType%,Equal,LinkFile,Begin
//Here LinkFile Means FileDownload Location Requires a Link to be seen on ProjectDir
Call,FileNameNoExt,#6,_ML_UpdateFileNoExt
If,Not,ExistFile,#5\%_ML_UpdateFileNoExt%.Link,Begin
Set,#7,1
Set,#8,1
End
End
End
If,Not,ExistFile,#2,Set,#7,1
//--
//Put downloaded plugin to project Download Folder:
Run,%Api%,FileCopy_To_Download_Project,,%ProjectTemp%\Plugin_Download\#1,#3
//--
StrFormat,Path,#2,%_ML_T%
StrFormat,CTrim,%_ML_T%,\,%_ML_T%
If,Not,ExistDir,%_ML_T%,DirMake,%_ML_T%
FileCopy,%ProjectTemp%\Plugin_Download\#1,#2
If,#8,Equal,1,Call,CreateLink,#2,#5
//---
If,#4,Equal,NoRescan,Set,#7,0
System,REFRESHINTERFACE
If,#7,Equal,1,System,RESCANSCRIPTS

[FileCopy_To_ProjectDir_Project]
// After copy to Download Project - Update %ProjectDir% Folders
//--
// #2 and #3 required
// 2 File to copy to Download_Project
//-------------------
//3 WebFile
//--
StrFormat,FILENAME,#3,#1
StrFormat,Replace,#1,%20," ",#1
// 1 --> FileName from web
//--
StrFormat,SPLIT,#3,/,3,#8
StrFormat,Replace,#3,http://#8/,"",#7
StrFormat,Replace,#7,/,\,#7
StrFormat,PATH,#7,#7
StrFormat,CTrim,#7,\,#7
StrFormat,SPLIT,#7,\,1,#6
If,Not,#6,Equal,Projects,Set,#7,Projects\#7
// 7 --> SubFolder from web : %BaseDir%\#7
//--
StrFormat,SPLIT,#7,\,2,#9
// 9 --> ProjectName from web :
//--
Set,#5,%BaseDir%\#7
Set,#6,%GlobalTemplates%\Download_#9\Backup\#7
StrFormat,Replace,#5,"%20"," ",#5
StrFormat,Replace,#6,"%20"," ",#6
// 9 --> ProjectName
//--------------------- Backup to Download_Project
// Only 1 (Filename) - 2 File To Copy - 5 Download_Project Folder - 6 Download_Project Backup Folder
//--
If,Not,ExistDir,#5,DirMake,#5
If,Not,ExistDir,#6,DirMake,#6
If,ExistFile,#5\#1,Begin
//-
Retrieve,MD5,#5\#1,#9
Retrieve,MD5,#2,#8
//-
If,Not,#8,Equal,#9,Begin
StrFormat,DATE,#7,yyyymmddhhnnss
StrFormat,Ext,#1,#4
//Desktop Clock Plus-7.Script_20150926164654.Script
//FileCopy,#5\#1,#6\#1_#7#4
IniRead,#5\#1,Main,Version,%_ML_T%
Call,FileNameNoExt,#1,_ML_T1
FileCopy,#5\#1,#6\%_ML_T1%_v%_ML_T%_#7#4
End
End
//--
//---------------------- Final Copy do Download_Project Folder
StrFormat,PATH,#2,#9
StrFormat,CTrim,#9,\,#9
// Avoid case you upload directly from Download_Project folder ;)
If,Not,#9,Equal,#5,FileCopy,#2,#5

[FileCopy_To_Download_Project]
// #2 and #3 required
// 2 File to copy to Download_Project
//-------------------
//3 WebFile
//--
StrFormat,FILENAME,#3,#1
StrFormat,Replace,#1,%20," ",#1
// 1 --> FileName from web
//--
StrFormat,SPLIT,#3,/,3,#8
StrFormat,Replace,#3,http://#8/,"",#7
StrFormat,Replace,#7,/,\,#7
StrFormat,PATH,#7,#7
StrFormat,CTrim,#7,\,#7
StrFormat,SPLIT,#7,\,1,#6
If,Not,#6,Equal,Projects,Set,#7,Projects\#7
// 7 --> SubFolder from web : %BaseDir%\#7
//--
StrFormat,SPLIT,#7,\,2,#9
If,#9,Equal,Tools,StrFormat,SPLIT,#7,\,3,#9
// 9 --> ProjectName from web :
//--
Set,#5,%GlobalTemplates%\Download_#9\#7
Set,#6,%GlobalTemplates%\Download_#9\Backup\#7
StrFormat,Replace,#5,%20," ",#5
StrFormat,Replace,#6,%20," ",#6
// 9 --> ProjectName
//--------------------- Backup to Download_Project
// Only 1 (Filename) - 2 File To Copy - 5 Download_Project Folder - 6 Download_Project Backup Folder
//--
If,Not,ExistDir,#5,DirMake,#5
If,Not,ExistDir,#6,DirMake,#6
If,ExistFile,#5\#1,Begin
//-
Retrieve,MD5,#5\#1,#9
Retrieve,MD5,#2,#8
//-
If,Not,#8,Equal,#9,Begin
StrFormat,DATE,#7,yyyymmddhhnnss
StrFormat,Ext,#1,#4
//Cancelled - Now Backup At Begining and no need to backup ChangeLog FileCopy,#5\#1,#6\#1_#7#4
End
End
//--
//---------------------- Final Copy do Download_Project Folder
StrFormat,PATH,#2,#9
StrFormat,CTrim,#9,\,#9
// Avoid case you upload directly from Download_Project folder ;)
If,Not,#9,Equal,#5,FileCopy,#2,#5
//--
//--
//--
//--
//--
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************

[CallC_UploadXMultiQ]
If,QUESTION,"Are you Sure you want to UPLOAD ?",10,False,Run,%Api%,CallC_UploadXMulti,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Halt,"UPLOAD Cancelled"

[CallC_UploadXMulti]
//UploadXMulti="Call,UploadXMulti,<File>,<WebReadFile>|<Section>|WebRoot,<NOUpdatesINI>
//Call,UploadXMulti                        --> WebReadFile Contains [Main] Web1=Web2= Web3= Web4= ..... as default WebReadFile is %ScriptFile%
//Call,UploadXMulti,,|<Section>           ---> to read from current plugin Call,UploadXMulti,,|Web --> [Web] section -> Web1=Web2= Web3= Web4= ....
//Call,UploadXMulti,,|<Section>|<WebRoot> ---> to read from current plugin [WebRoot] section Call,UploadXMulti,,||WebRoot with WebRoot1=WebRoot2= WebRoot3= WebRoot4= ... WebRootSub1= WebRootSub2= WebRootSub3= WebRootSub4= ... (better use other plugin) -> WebRootSubSub= WebRootFile= always read from ScriptFile [Main] section)
//Call,UploadXMulti,,%ProjectDir%\Utils\UWebRoots_SE.Script||WebRoot
//  --> Gets WebRootSubSub=value automatically from Web1=  If there is no WebRootSubSub= value
//   ----> Plugins Sharing same directory same folder ex: SumatraPDF HotKey no need to write WebRootSubSub=value
//       Tip: Using WebRootSubSub=only meaningful when sub folder structure different - like with ML
//-
//-
//UploadXMulti="Call,UploadXMulti,<File>,<WebReadFile>|<Section>|WebRoot|<WebRootSubSub>,<NOUpdatesINI>
//-
//ex: Call,UploadXMulti,"%BaseDir%\Gena\Utils\Plugin_Creator_10_Packed.script","%ProjectDir%\Utils\WebRoots_SE_Gena.Script||WebRoot|Utils"
//-
Set,%_ML_UploadXMulti_FileNO%,0
//-
If,#2-,Equal,-,Set,#2,%ScriptFile%
//-
//To Write Same Date for 'Version Same - Smaller' Plugins Get date here
Run,%Api%,MyDate_Detail_INI_A
//-
Call,FileCreateBlank,%ProjectTemp%\Upload_Multi\Upload_Multi.ini,OverWriteBackup
//-
If,#3-,Equal,-,Begin
Set,#3,%ScriptFile%
Set,#5,Main
End
Else,Begin
Set,#9,#3
//-
StrFormat,SPLIT,#9,|,3,#8
//-
If,#8,Equal,WebRoot,Begin
If,Not,#4-,Equal,-,Begin
StrFormat,Split,#4,|,0,%_ML_WebRootB_WebTotal%
If,%_ML_WebRootB_WebTotal%,Bigger,2,Begin
StrFormat,Dec,%_ML_WebRootB_WebTotal%,2
//-
StrFormat,SPLIT,#4,|,1,%_ML_WebRootB_WebReadFile%
If,%_ML_WebRootB_WebReadFile%-,Equal,-,Set,%_ML_WebRootB_WebReadFile%,%ScriptFile%
StrFormat,SPLIT,#4,|,2,%_ML_WebRootB_Section%
If,%_ML_WebRootB_Section%-,Equal,-,Set,%_ML_WebRootB_Section%,Main
//-
Loop,%API%,CallC_UploadXMulti_WebRootB_Loop,1,%_ML_WebRootB_WebTotal%,2,#2,,#4
End
End
StrFormat,SPLIT,#9,|,1,#3
If,#3-,Equal,-,Set,#3,%ScriptFile%
//StrFormat,SPLIT,#9,|,2,#5
//If,#5-,Equal,-,Set,#5,WebRootSub
Set,#5,WebRootSub
StrFormat,SPLIT,#9,|,4,%_ML_WebRootSubSub%
If,Not,ExistVar,%_ML_WebRootSubSub%,Set,%_ML_WebRootSubSub%,""
If,%_ML_WebRootSubSub%-,Equal,-,Run,%Api%,CallC_UploadXMulti_Find_WebRootSubSub,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
Else,Begin
Set,#9,#3
StrFormat,SPLIT,#9,|,1,#3
If,#3-,Equal,-,Set,#3,%ScriptFile%
StrFormat,SPLIT,#9,|,2,#5
If,#5-,Equal,-,Set,#5,Main
End
End
//--
// 1 Numerator 2 UploadFile 3 WebReadFile  4 NoUpdatesINI 5 Section
//--
If,Not,#8,Equal,WebRoot,Loop,%API%,CallC_UploadXMulti_Loop,1,100,0,#2,#3,#4,#5,#6,#7,#8,#9
If,#8,Equal,WebRoot,Loop,%API%,CallC_UploadXMulti_WebRoot_Loop,1,100,0,#2,#3,#4,#5,#6,#7,#8,#9
//Call,StartDoc,%ProjectTemp%\Upload_Multi\Upload_Multi.ini
If,ExistSection,%ProjectTemp%\Upload_Multi\Upload_Multi.ini,CheckServer,Run,%ProjectTemp%\Upload_Multi\Upload_Multi.ini,CheckServer
If,ExistSection,%ProjectTemp%\Upload_Multi\Upload_Multi.ini,Upload,Run,%ProjectTemp%\Upload_Multi\Upload_Multi.ini,Upload

[CallC_UploadXMulti_Find_WebRootSubSub]
//Auto Get %_ML_WebRootSubSub% from Web1=...
IniRead,#2,Main,Web1,%_ML_WebRootSubSub%
If,Not,%_ML_WebRootSubSub%-,Equal,-,Begin
StrFormat,Split,%_ML_WebRootSubSub%,/,3,%_ML_T%
StrFormat,Path,%_ML_WebRootSubSub%,%_ML_WebRootSubSub%
//-
StrFormat,Split,%_ML_WebRootSubSub%,/,4,%_ML_T1%
StrFormat,Replace,%_ML_WebRootSubSub%,http://%_ML_T%/%_ML_T1%,,%_ML_T2%
If,%_ML_T1%,Equal,Projects,Begin
StrFormat,Split,%_ML_WebRootSubSub%,/,5,%_ML_T1%
StrFormat,Replace,%_ML_WebRootSubSub%,http://%_ML_T%/Projects/%_ML_T1%,,%_ML_T2%
End
If,Not,%_ML_T2%,Equal,/,StrFormat,CTrim,%_ML_T2%,/,%_ML_WebRootSubSub%
If,%_ML_T2%,Equal,/,Set,%_ML_WebRootSubSub%,""
End

[CallC_UploadXMulti_WebRoot_Loop]
StrFormat,INC,#1,1
Set,#9,""
IniRead,#2,Main,WebRootFile,#6
If,#6-,Equal,-,Begin
StrFormat,FileName,#2,#6
StrFormat,Replace,#6,%20," ",#6
End
//If,#6-,Equal,-,Call,Echo,"ERROR: WebRootFile Value Missing - Halt",Warn,,MessageError,5,Halt
IniRead,#2,Main,WebRootSubSub,#7
If,#7-,Equal,-,If,ExistVar,%_ML_WebRootSubSub%,Set,#7,%_ML_WebRootSubSub%
If,#7-,Equal,-,If,Not,ExistVar,%_ML_WebRootSubSub%,Call,Echo,"ERROR: WebRootSubSub Value Missing - Halt",Warn,,MessageError,5,Halt
IniRead,#3,#5,WebRootSub#1,#8
If,#8-,Equal,-,Loop,BREAK
Else,Run,%Api%,CallC_UploadXMulti_WebRoot_LoopB,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_UploadXMulti_WebRoot_LoopB]
IniRead,#3,#5,WebRoot#1,%_ML_T%
If,%_ML_T%-,Equal,-,Loop,BREAK
Else,Begin
Set,#9,http://%_ML_T%/#8/#7/#6
If,#7-,Equal,-,Set,#9,http://%_ML_T%/#8/#6
If,Not,%_ML_T%-,Equal,-,Run,%Api%,CallC_UploadXMulti_FirstCheckServer,UploadX,#2,#9,#4,#5,#6,#7,#8,#9
End

[CallC_UploadXMulti_Loop]
StrFormat,INC,#1,1
Set,#9,""
IniRead,#3,#5,Web#1,#9
If,#9-,Equal,-,Loop,BREAK
Else,Run,%Api%,CallC_UploadXMulti_FirstCheckServer,UploadX,#2,#9,#4,#5,#6,#7,#8,#9

[CallC_UploadXMulti_FirstCheckServer]
IniWriteTextLine,%ProjectTemp%\Upload_Multi\Upload_Multi.ini,CheckServer,"If,#$p_ML_CheckServer_#$p,Equal,True,Run,#$pApi#$p,CallC_UploadXMulti_FirstCheckServer_Halt,,,#$q#3#$q"
IniWriteTextLine,%ProjectTemp%\Upload_Multi\Upload_Multi.ini,CheckServer,"Call,CheckServer,_ML_CheckServer_,#$q#3#$q"
//IniWriteTextLine,%ProjectTemp%\Upload_Multi\Upload_Multi.ini,Upload,"Run,#$pApi#$p,CallC_UploadX,UploadXMulti,#$q#2#$q,#$q#3#$q"
StrFormat,INC,%_ML_UploadXMulti_FileNO%,1
DirMake,%ProjectTemp%\Upload_Multi\%_ML_UploadXMulti_FileNO%
FileCopy,#2,%ProjectTemp%\Upload_Multi\%_ML_UploadXMulti_FileNO%
StrFormat,FileName,#2,#9
IniWriteTextLine,%ProjectTemp%\Upload_Multi\Upload_Multi.ini,Upload,"Run,#$pApi#$p,CallC_UploadX,UploadXMulti,#$q%ProjectTemp%\Upload_Multi\%_ML_UploadXMulti_FileNO%\#9#$q,#$q#3#$q"

[CallC_UploadXMulti_FirstCheckServer_Halt]
Call,Echo,"Error: Newer Update Available on Server - Halt#$x#3",Warn,,MessageError,5,Halt

[CallC_UploadXMulti_WebRootB_Loop]
StrFormat,INC,#1,1
StrFormat,SPLIT,#4,|,#1,%_ML_WebRootB_Web%
If,Not,%_ML_WebRootB_Web%-,Equal,-,Begin
IniRead,%_ML_WebRootB_WebReadFile%,%_ML_WebRootB_Section%,%_ML_WebRootB_Web%,%_ML_WebRootB_WebValue%
If,Not,%_ML_WebRootB_WebValue%-,Equal,-,Run,%Api%,CallC_UploadXMulti_FirstCheckServer,UploadX,#2,%_ML_WebRootB_WebValue%
End

[MyDate_Detail_INI_A]
RegRead,HKLM,System\CurrentControlSet\Control\TimeZoneInformation,Bias,#9
StrFormat,Div,#9,60
StrFormat,DATE,#8,yyyy.mm.dd_hh:nn.ss
Set,%_ML_MyDate_Detail_INI%,"#8 (GMT0: #9 Hours)"

[CallC_UploadXQ]
If,QUESTION,"Are you Sure you want to UPLOAD ?",10,False,Run,%Api%,CallC_UploadX,#1,#2,#3,#4,#5,#6,#7,#8,#9"
Else,Halt,"UPLOAD Cancelled"

[CallC_UploadX]
If,%Version%,Smaller,81,Call,Echo,"Not Tested below 82 - Stupid winbuilder - %Version% - Halt",Warn,,MessageError,,Halt
//-
//This section also used directly by ML
//UploadX=Call,UploadX,<File>,[Web],<NOUpdatesINI>
// 1
// 2 -> %ScriptFile%
// 3 -> IniRead,%ScriptFile%,Main,Web1,#3
// 4 NOUpdatesINI
If,#2-,Equal,-,Set,#2,%ScriptFile%
//-
If,#1,Equal,UploadXMulti,Set,%_ML_UploadXMulti%,UploadXMulti
Else,Set,%_ML_UploadXMulti%,0
//-
//Running on Link File
StrFormat,SPLIT,#2,\,1,%_ML_T%
If,%_ML_T%,Equal,Projects,Set,#2,%BaseDir%\#2
//-
If,Not,ExistFile,#2,Call,Echo,"Parameter 2 File Not Found #$x#$xTip:#$x You may forget comma ;) #$x#$x#$xHalt",Warn,,MessageError,5,Halt
//-
If,#3-,Equal,-,IniRead,#2,Main,Web1,#3
If,#3-,Equal,-,Begin
//We can predict Target Web If we are uploading from ProjectDir to a Known Server
StrFormat,Replace,#2,%BaseDir%,,%_ML_T%
If,Not,#2,Equal,%_ML_T%,Begin
StrFormat,CTrim,%_ML_T%,\,%_ML_T%
//%_ML_T% Projects\Yomi\AppY\Accessibility\mousemu_RH_Designs.script
StrFormat,Split,%_ML_T%,\,1,%_ML_T1%
If,%_ML_T1%,Equal,Projects,Begin
StrFormat,LTrim,%_ML_T%,9,%_ML_T%
//%_ML_T% Yomi\AppY\Accessibility\mousemu_RH_Designs.script
StrFormat,Split,%_ML_T%,\,1,%_ML_T1%
If,%_ML_T1%,Equal,Win10PESE,Set,#3,http://win10se.cwcodes.net/Projects/%_ML_T%
If,%_ML_T1%,Equal,Win8.1SE,Set,#3,http://win81se.cwcodes.net/Projects/%_ML_T%
If,%_ML_T1%,Equal,Win8PESE,Set,#3,http://w8pese.cwcodes.net/Projects/%_ML_T%
If,%_ML_T1%,Equal,Win7PESE,Set,#3,http://w7pese.cwcodes.net/Projects/%_ML_T%
If,%_ML_T1%,Equal,Gena,Set,#3,http://gena.cwcodes.net/Projects/%_ML_T%
If,%_ML_T1%,Equal,Yomi-Gena,Set,#3,http://yomi-gena.cwcodes.net/%_ML_T%
If,%_ML_T1%,Equal,Yomi,Set,#3,http://yomi.cwcodes.net/%_ML_T%
If,Not,#3-,Equal,-,Begin
StrFormat,Replace,#3,\,/,#3
StrFormat,Replace,#3," ","%20",#3
//Echo,#3,Warn
End
End
End
End
If,#3-,Equal,-,Call,Echo,"Parameter 3 (Web) Missing #$x#$xTip:#$xAlso no Web1=#$x#$x#$xTip:#$x You may forget comma ;)#$x#$xHalt",Warn,,MessageError,5,Halt
//Halt,-
//--
StrFormat,SPLIT,#3,/,3,#8
StrFormat,FILENAME,#3,#1
StrFormat,Replace,#3,http://#8/,,#7
StrFormat,Replace,#7,/#1,,#6
StrFormat,Replace,#7,%20," ",#7
// 7 Projects/Gena/Apps/System Tools/Portable Finder CMD.script
StrFormat,Replace,#6,%20," ",#6
// 6 Projects/Gena/Apps/System Tools
StrFormat,Replace,#1,%20," ",#1
// 1 Portable Finder CMD.script
StrFormat,Replace,#6,Projects/,,#5
StrFormat,Replace,#5,/,\,#5
// 5 Gena\Apps\System Tools
//--
StrFormat,FileName,#2,#9
// 9 Portable Finder CMD.script (From File)
//--
Set,%_ML_UploadContinue%,1
//--
If,Not,ExistFile,%GlobalTemplates%\Download_1Upload\#8_Web.ftp,Call,Echo,"You are not Authorized to Upload Server#$x#$x#$x #8 Server Info not found",Warn,,MessageError,5,Halt
If,Not,ExistFile,%GlobalTemplates%\Download_1Upload\#8_Web.ftp,Set,%_ML_UploadContinue%,0
//--
//Copy to Temp before upload -- to get multi upload [Default settings right on final
Call,DirDeleteMake,%ProjectTemp%\Upload_File_X
FileCopy,#2,%ProjectTemp%\Upload_File_X
Set,#2,%ProjectTemp%\Upload_File_X\#9
//--
If,Not,%_ML_UploadXMulti%,Equal,UploadXMulti,Begin
// It was already checked before at UploadXMulti
Call,CheckServer,_ML_CheckServer_,#3
If,%_ML_CheckServer_%,Equal,True,Call,Echo,"Error: Newer Update Available on Server - Halt#$x#3",Warn,,MessageError,5,Halt
End
//--
If,Not,#1,Equal,#9,Call,Echo,"FileName MisMatch -> Local: #9   Web: #1",Warn,,MessageError,2,Halt
If,Not,#1,Equal,#9,Set,%_ML_UploadContinue%,0
//--
If,%_ML_UploadContinue%,Equal,1,Begin
Call,FileCreateBlank,%ProjectTemp%\NameLocal.txt,OverWrite
Call,FileCreateBlank,%ProjectTemp%\NameWeb.txt,OverWrite
TxtAddLine,%ProjectTemp%\NameLocal.txt,#9,Append
TxtAddLine,%ProjectTemp%\NameWeb.txt,#1,Append
Retrieve,MD5,%ProjectTemp%\NameLocal.txt,%_ML_T%
Retrieve,MD5,%ProjectTemp%\NameLocal.txt,%_ML_T2%
If,Not,%_ML_T%,Equal,%_ML_T2%,Call,Echo,"FileName MisMatch -> Local: #9   Web: #1 (Check Upper/Lower Case)",Warn,,MessageError,2
If,Not,%_ML_T%,Equal,%_ML_T2%,Set,%_ML_UploadContinue%,0
End
//--
//Check Log file Difference (To see if someone update to server before you)
//Get ProjectName from Web Address
//StrFormat,SPLIT,#5,\,1,%_ML_T%
//Call,CheckServerAll,_ML_CheckServerAll,%_ML_T%
//If,Not,%_ML_CheckServerAll%,Equal,True,Call,Echo,"Error: Newer Update Available on Server - Halt#$x#3",Warn,,MessageError,5,Halt
//--
Set,%_ML_Upload_Type%,0
If,#1,Equal,Script.project,Set,%_ML_Upload_Type%,1
If,#1,Equal,folder.project,Set,%_ML_Upload_Type%,1
StrFormat,EXT,#1,#4
If,#4,Equal,.Script,Set,%_ML_Upload_Type%,1
//----------------------------------------
StrFormat,DATE,%_ML_Date_UPLOAD_Start%,yyyymmddhhnnss
StrFormat,FileName,#2,%_ML_FileNameNoExt%
Call,FileNameNoExt,%_ML_FileNameNoExt%,_ML_FileNameNoExt
// ......\Portable Finder CMD.script --> Portable Finder CMD
StrFormat,Replace,#6,/,\,%_ML_Upload_BaseSub%
// Projects\Gena\Apps\System Tools
StrFormat,SPLIT,#5,\,1,%_ML_Upload_Web_ProjectName%
// Gena
//--
If,Not,ExistDir,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%,DirMake,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%
//--
//---------------------------------------------------------- Check-Create Backup S
If,%_ML_UploadContinue%,Equal,1,Begin
If,%_ML_Upload_Type%,Equal,0,Begin
Retrieve,MD5,#2,%_ML_MD5%
//Later here we can ask ;)
If,ExistFile,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_%_ML_MD5%#4,Call,Echo,"Info: Uploading Same File - #2",Warn
FileCopy,#2,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_%_ML_MD5%#4
End
End
//------
If,%_ML_UploadContinue%,Equal,1,Begin
If,%_ML_Upload_Type%,Equal,1,Begin
//--
If,ExistSection,#2,Settings_Default,Exec,#2,Settings_Default
StrFormat,Right,%_ML_Upload_Web_ProjectName%,2,%_ML_T%
If,%_ML_T%,Equal,SE,If,ExistSection,#2,Settings_Default_SE,Exec,#2,Settings_Default_SE
If,ExistSection,#2,Settings_Default_%_ML_Upload_Web_ProjectName%,Exec,#2,Settings_Default_%_ML_Upload_Web_ProjectName%
//--
If,ExistSection,#2,Upload_Default,Exec,#2,Upload_Default
StrFormat,Right,%_ML_Upload_Web_ProjectName%,2,%_ML_T%
If,%_ML_T%,Equal,SE,If,ExistSection,#2,Upload_Default_SE,Exec,#2,Upload_Default_SE
If,ExistSection,#2,Upload_Default_%_ML_Upload_Web_ProjectName%,Exec,#2,Upload_Default_%_ML_Upload_Web_ProjectName%
//--
Set,%_ML_Upload_Revision_BeforeR%,""
IniRead,#2,Main,Version,%_ML_Upload_Version_Before%
IniRead,#2,Main,Revision,%_ML_Upload_Revision_Before%
If,Not,%_ML_Upload_Revision_Before%,Equal,"",Set,%_ML_Upload_Revision_BeforeR%,_r%_ML_Upload_Revision_Before%
//--
If,Not,ExistFile,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_v%_ML_Upload_Version_Before%%_ML_Upload_Revision_BeforeR%#4,Begin
If,ExistFile,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%#4,Begin
IniRead,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%#4,Main,Version,%_ML_T%
If,%_ML_T%,Equal,%_ML_Upload_Version_Before%,Begin
IniRead,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%#4,Main,Revision,%_ML_T%
If,%_ML_T%,Equal,%_ML_Upload_Revision_Before%,Begin
FileCopy,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%#4,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_v%_ML_Upload_Version_Before%%_ML_Upload_Revision_BeforeR%#4
End
End
End
End
//--
If,ExistFile,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_v%_ML_Upload_Version_Before%%_ML_Upload_Revision_BeforeR%#4,Begin
Call,DirDeleteMake,%ProjectTemp%\Upload\Temp
FileCopy,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_v%_ML_Upload_Version_Before%%_ML_Upload_Revision_BeforeR%#4,%ProjectTemp%\Upload\Temp\Temp.script
IniRead,#2,Main,Date,%_ML_T%
IniWrite,%ProjectTemp%\Upload\Temp\Temp.script,Main,Date,%_ML_T%
Retrieve,MD5,#2,%_ML_MD5%
Retrieve,MD5,%ProjectTemp%\Upload\Temp\Temp.script,%_ML_Temp_MD5%
If,%_ML_MD5%,Equal,%_ML_Temp_MD5%,Begin
IniRead,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_v%_ML_Upload_Version_Before%%_ML_Upload_Revision_BeforeR%#4,Main,Date,%_ML_T1%
If,QUESTION,"Same File Exists At #$xDownload_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_v%_ML_Upload_Version_Before%%_ML_Upload_Revision_BeforeR%#4#$x#$xYou Probably UPLOAD before#$xDate=%_ML_T1%#$x#$xDo You want to UPLOAD Same File again ?",Call,Echo,"Info: UPLOAD Same File Continue",Warn
Else,Set,%_ML_UploadContinue%,0
If,%_ML_UploadContinue%,Equal,1,Begin
//It will back up with new version - NO need duplicate file
Call,FileDelete,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_v%_ML_Upload_Version_Before%%_ML_Upload_Revision_BeforeR%#4
// Do not use this Logic - Always have version increase :) - Here kept not to be used :):) -- It is auto increased at final check anyway....
// Do not use this Logic - //Since We continue uploading same File - "Decrease Version" here to get "Auto Version Increase" work ok
// Do not use this Logic - If,%_ML_Upload_Revision_Before%,Equal,"",Begi-n
// Do not use this Logic -   Set,%_ML_T%,%_ML_Upload_Version_Before%
// Do not use this Logic -   StrFormat,Dec,%_ML_T%,1
// Do not use this Logic -   IniWrite,#2,Main,Version,%_ML_T%
// Do not use this Logic - En-d
End
End
End
End
End
//---------------------------------------------------------- Check-Create Backup F
//--
StrFormat,DATE,%_ML_Upload_Date%,yyyy.mm.dd
If,%_ML_UploadContinue%,Equal,1,Begin
If,%_ML_Upload_Type%,Equal,1,Begin
IniWrite,#2,Main,Date,%_ML_Upload_Date%
//-
IniRead,#2,Main,Version,%_ML_Upload_Version%
Set,%_ML_Upload_Revision_R%,""
IniRead,#2,Main,Revision,%_ML_Upload_Revision%
If,%_ML_Upload_Revision%,Equal,"",Begin
IniRead,#2,Main,Version,%_ML_Upload_Version%
StrFormat,INC,%_ML_Upload_Version%,1
If,%_ML_Upload_Version%,Equal,13,StrFormat,INC,%_ML_Upload_Version%,1
If,%_ML_Upload_Version%,Smaller,1000,Set,%_ML_Upload_Version%,%_ML_Upload_Version%
If,%_ML_Upload_Version%,Smaller,100,Set,%_ML_Upload_Version%,0%_ML_Upload_Version%
If,%_ML_Upload_Version%,Smaller,10,Set,%_ML_Upload_Version%,0%_ML_Upload_Version%
IniWrite,#2,Main,Version,%_ML_Upload_Version%
End
Else,Set,%_ML_Upload_Revision_R%,_r%_ML_Upload_Revision%
//-
//AutoDelete Optimum_Bevel
IniDelete,#2,InterFace,Optimum_Bevel
//-
//AutoWrite empty History Note
Set,%_ML_Upload_Revision%,""
IniRead,#2,Main,Revision,%_ML_Upload_Revision%
If,%_ML_Upload_Revision%,Equal,"",Begin
//Set,%_ML_T1%,001
//If,%_ML_Upload_Version%,Smaller,1000,Set,%_ML_T1%,History%_ML_Upload_Version%
//If,%_ML_Upload_Version%,Smaller,100,Set,%_ML_T1%,History0%_ML_Upload_Version%
//If,%_ML_Upload_Version%,Smaller,10,Set,%_ML_T1%,History0%_ML_Upload_Version%
Set,%_ML_T1%,History%_ML_Upload_Version%
//-
Set,%_ML_T%,""
//-
If,ExistSection,#2,History,Set,%_ML_T2%,History
Else,Set,%_ML_T2%,Main
//-
Set,%_ML_T%,""
IniRead,#2,%_ML_T2%,%_ML_T1%,%_ML_T%
If,%_ML_T%-,Equal,-,Begin
Set,%_ML_T%,"Macro Library"
If,ExistFile,%GlobalTemplates%\Download_1Upload\9_Info.ini,IniRead,%GlobalTemplates%\Download_1Upload\9_Info.ini,Info,Author,%_ML_T%
IniWrite,#2,%_ML_T2%,%_ML_T1%,"%_ML_T% updated v%_ML_Upload_Version% - Date:%_ML_Upload_Date%"
End
Else,Begin
Set,%_ML_T3%,""
StrFormat,Replace,%_ML_T%," - Date:",-,%_ML_T3%
If,%_ML_T%,Equal,%_ML_T3%,IniWrite,#2,%_ML_T2%,%_ML_T1%,"%_ML_T% - Date:%_ML_Upload_Date%"
Else,Begin
StrFormat,Right,%_ML_T%,18,%_ML_T3%
If," - Date:%_ML_Upload_Date%",Equal,%_ML_T3%,Echo,"Same Date"
Else,Begin
IniWrite,#2,%_ML_T2%,%_ML_T1%,"%_ML_T% - Date:%_ML_Upload_Date%"
End
End
End
End
//AutoWrite empty Author - Credits - Contact
//-
Set,%_ML_T%,""
IniRead,#2,Main,Author,%_ML_T%
If,%_ML_T%-,Equal,-,IniWrite,#2,Main,Author,http://TheOven.org
//-
Set,%_ML_T%,""
IniRead,#2,Main,Credits,%_ML_T%
If,%_ML_T%-,Equal,-,IniWrite,#2,Main,Credits,http://TheOven.org
//-
Set,%_ML_T%,""
IniRead,#2,Main,Contact,%_ML_T%
If,%_ML_T%-,Equal,-,IniWrite,#2,Main,Contact,http://TheOven.org
//-
//AutoFix Plugin Type (Name bug)
Set,%_ML_T%,""
IniRead,#2,Main,Type,%_ML_T%
If,%_ML_T%,Equal,Script,IniWrite,#2,Main,Type,Plugin
//-
End
// Backup Before Starting Upload
FileCopy,#2,%GlobalTemplates%\Download_%_ML_Upload_Web_ProjectName%\Backup\%_ML_Upload_BaseSub%\%_ML_FileNameNoExt%_v%_ML_Upload_Version%%_ML_Upload_Revision_R%#4
//-------------
Retrieve,FileSize,#2,%_ML_Upload_Size%
Retrieve,MD5,#2,%_ML_Upload_MD5%
//--
//Remove Indent
//IniWrite,#2,DummyDummmyIndentRemove,Dummy,Dummmy
//IniDeleteSection,#2,DummyDummmyIndentRemove
//
End
//--
If,%_ML_UploadContinue%,Equal,1,Begin
If,Not,ExistVar,%_ML_MyDate_Detail_INI%,Run,%Api%,MyDate_Detail_INI_A
End
//--
If,%_ML_UploadContinue%,Equal,1,Run,%Api%,CallC_Upload_Continue,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_Upload_Continue]
Call,DirDeleteMake,%ProjectTemp%\Upload_File\1_Upload
StrFormat,DATE,#9,yyyymmddhhnnss
Set,#9,%ProjectTemp%\Upload_File\#9
Call,DirDeleteMake,#9
//--
Run,%Api%,Prepare_NEW_UpdatesINI,#1,#2,#3,#4,#5,#6,#7,#8,#9
//--
//Exception: %_ML_ChangeLogFileName%,Equal,#1 - If you are only uploading ChangeLog than no need to re upload ChangeLog (also cause md5 mismatch ;) )
Run,%Api%,Get_ChangeLogWeb,_ML_ChangeLogWeb,WEB,#3
StrFormat,FILENAME,%_ML_ChangeLogWeb%,%_ML_T%
StrFormat,Replace,%_ML_T%,%20," ",%_ML_ChangeLogFileName%
If,%_ML_ChangeLogFileName%,Equal,"",Set,%_ML_ChangeLogFileName%,DummyDummy.txt
If,Not,%_ML_ChangeLogFileName%,Equal,#1,Begin
Run,%Api%,Prepare_NEW_ChangeLog,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
//--
//If,Not,#4,Equal,NOUpdatesINI,Set,%_ML_UpdatesIniReady%,0
//If,Not,#4,Equal,NOUpdatesINI,Run,%Api%,CallC_Upload_UpdatesINI,#1,#2,#3,#4,#5,#6,#7,#8,#9
//If,Not,#4,Equal,NOUpdatesINI,If,%_ML_UpdatesIniReady%,Equal,1,Run,%Api%,CallC_Upload_File,#1,#2,#3,#4,#5,#6,#7,#8,#9
//If,Not,#4,Equal,NOUpdatesINI,If,%_ML_UpdatesIniReady%,Equal,1,Run,%Api%,CallC_Upload_File,#1,#2,#3,#4,#5,#6,#7,#8,#9
//If,#4,Equal,NOUpdatesINI,Run,%Api%,CallC_Upload_File,#1,#2,#3,#4,#5,#6,#7,#8,#9
Run,%Api%,CallC_Upload_File,#1,#2,#3,#4,#5,#6,#7,#8,#9
//--
System,RefreshInterface
Echo,"Uploading Finished"

[CallC_Upload_File]
// 1 Portable Finder CMD.script
// 2 -> %ScriptFile%
// 3 -> IniRead,%ScriptFile%,Main,Web1,#3
// 4 NOUpdatesINI
// 5 Gena\Apps\System Tools
// 6 Projects/Gena/Apps/System Tools
// 7 Projects/Gena/Apps/System Tools/Portable Finder CMD.script
// 8 gena.cwcodes.net
// ----->
// 9 %ProjectTemp%\Upload_File\1_Upload
Set,#9,%ProjectTemp%\Upload_File\1_Upload
FileCopy,%GlobalTemplates%\Download_1Upload\#8_Web.ftp,#9\Upload_Web.ftp
//--
Run,%Api%,Get_ChangeLogWeb,_ML_ChangeLogWeb,WEB,#3
StrFormat,FILENAME,%_ML_ChangeLogWeb%,%_ML_T%
StrFormat,Replace,%_ML_T%,%20," ",%_ML_ChangeLogFileName%
If,%_ML_ChangeLogFileName%,Equal,"",Set,%_ML_ChangeLogFileName%,DummyDummy.txt
//--
TxtAddLine,#9\Upload_Web.ftp,"",Append
//--
//UpdateTest
//TxtAddLine,#9\Upload_Web.ftp,"disconnect",Append
//TxtAddLine,#9\Upload_Web.ftp,"bye",Append
//UpdateTest
//--
If,ExistFile,#9\Updates.ini,Begin
TxtAddLine,#9\Upload_Web.ftp,"send .\updates.ini",Append
TxtAddLine,#9\Upload_Web.ftp,"",Append
End
//-
//Exception: %_ML_ChangeLogFileName%,Equal,#2 - If you are only uploading ChangeLog than no need to re upload ChangeLog (also cause md5 mismatch ;) )
If,Not,%_ML_ChangeLogFileName%,Equal,#2,Begin
If,ExistFile,#9\%_ML_ChangeLogFileName%,Begin
//If directory new:     257 "BlaBla" : The directory was successfully created
//If directory exists:  550 Can't create directory: File exists
TxtAddLine,#9\Upload_Web.ftp,"mkdir #$q%_ML_ChangeLogCD%#$q",Append
TxtAddLine,#9\Upload_Web.ftp,"cd #$q%_ML_ChangeLogCD%#$q",Append
TxtAddLine,#9\Upload_Web.ftp,"send .\%_ML_ChangeLogFileName%",Append
//Loop,%API%,CallC_Upload_File_CD_Loop,1,%_ML_ChangeLogCDCD%,#9\Upload_Web.ftp --> %_ML_ChangeLogCDCD% how many times cd.. ;)
TxtAddLine,#9\Upload_Web.ftp,"cd /",Append
End
End
//-
//If directory new:     257 "BlaBla" : The directory was successfully created
//If directory exists:  550 Can't create directory: File exists
TxtAddLine,#9\Upload_Web.ftp,"mkdir #$q#6#$q",Append
TxtAddLine,#9\Upload_Web.ftp,"cd #$q#6#$q",Append
TxtAddLine,#9\Upload_Web.ftp,"send #$q#2#$q",Append
TxtAddLine,#9\Upload_Web.ftp,"",Append
TxtAddLine,#9\Upload_Web.ftp,"disconnect",Append
TxtAddLine,#9\Upload_Web.ftp,"bye",Append
//--
//UpdateTest
//FTP -s:Upload_Web.ftp | tee.exe Upload_Web_Tee.txt
//Call,StartDoc,#9\Upload_Web.ftp
//--> Comment out following ShellExecute,Open,cmd.exe... Line
//Halt,"FTP -s"
//UpdateTest
//--
Retrieve,FILESIZE,#2,%_ML_T%
Set,%_ML_T1%,%_ML_T%
Echo,"%_ML_T1% bytes"
StrFormat,DIV,%_ML_T%,1024
Set,%_ML_T2%,%_ML_T%
Echo,"%_ML_T2% KB"
StrFormat,DIV,%_ML_T%,1024
Set,%_ML_T3%,%_ML_T%
Echo,"%_ML_T3% MB"
Echo,"Uploading Files - Plugin: %_ML_T3% MB / %_ML_T2% KB / %_ML_T1% bytes"
//Echo,"Uploading Files"
ExtractFile,%Api%,Folder,Tee.exe,%ProjectTemp%\Upload_File\1_Upload
ExtractFile,%Api%,InterfaceEncoded,Upload_Tee_Error.cmd,%ProjectTemp%\Upload_File\1_Upload
System,FILEREDIRECT,OFF
ShellExecute,Open,cmd.exe,"/C #$qUpload_Tee_Error.cmd#$q",%ProjectTemp%\Upload_File\1_Upload
System,FILEREDIRECT,ON
If,ExistFile,%ProjectTemp%\Upload_File\1_Upload\Upload_Tee_Web_Error.txt,Call,Echo,"Error Uploading File(s) - Check",Warn,,MessageError
If,ExistFile,%ProjectTemp%\Upload_File\1_Upload\Upload_Web_Error.ftp,Call,Echo,"Error Uploading File(s) - Check",Warn,,MessageError
//--
// Add New Files to "Main Update Folder" + Backup Existing Files to "Backup Folder" + Backup Upload Logs
//-----------------------------------------------------------------------------------
//Put UPloaded plugin(s) to project Download Folder S AND Put Uploaded plugin(s) to their ProjectDir Folder
Run,%Api%,FileCopy_To_Download_Project,,#2,#3
Run,%Api%,FileCopy_To_ProjectDir_Project,,#2,#3
//--
If,ExistFile,#9\%_ML_ChangeLogFileName%,Run,%Api%,FileCopy_To_Download_Project,,#9\%_ML_ChangeLogFileName%,%_ML_ChangeLogWeb%
If,ExistFile,#9\%_ML_ChangeLogFileName%,Run,%Api%,FileCopy_To_ProjectDir_Project,,#2,#3
//Put UPloaded plugin(s) to project Download Folder F
//-----------------------------------------------------------
//-- Backup updates.ini stuff S
// ProjectName
StrFormat,SPLIT,#3,/,4,%_ML_Update_MainFolder%
//http://gena.cwcodes.net/Projects/Gena/Apps/File%20Tasks/Q-Dir_Nenad.script
//http://gena.cwcodes.net/Projects/Tools/Gena/7z.exe
//http://yomi.cwcodes.net/Tools/Yomi/Download_Pack_Big.7z
//http://yomi.cwcodes.net/Yomi/AppsGS/CDVD/CDImageGUI.script
//http://gena.cwcodes.net/Projects/Tools/Languages/Turkish.txt
//http://gena.cwcodes.net/Projects/Tools/Languages/Turkish.txt
//http://yomi.cwcodes.net/Languages/Turkish.txt
If,%_ML_Update_MainFolder%,Equal,Projects,Begin
StrFormat,SPLIT,#3,/,5,%_ML_Update_MainFolder%
If,%_ML_Update_MainFolder%,Equal,Tools,StrFormat,SPLIT,#3,/,6,%_ML_Update_MainFolder%
End
If,%_ML_Update_MainFolder%,Equal,Tools,StrFormat,SPLIT,#3,/,5,%_ML_Update_MainFolder%
//-
Set,%_ML_Update_MainFolder%,%GlobalTemplates%\Download_%_ML_Update_MainFolder%
//UpdateTest
//Set,%_ML_Update_MainFolder%,%ProjectTemp%\Test
//UpdateTest
//--
StrFormat,DATE,#9,yyyymmddhhnnss
If,Not,ExistDir,%_ML_Update_MainFolder%\Backup\Uploads\#9,DirMake,%_ML_Update_MainFolder%\Backup\Uploads\#9
Retrieve,FolderSize,%_ML_Update_MainFolder%\Backup\Uploads,%_ML_T%
//50 MB
//If,%_ML_T%,Bigger,52428800,Call,DirDelete,%_ML_Update_MainFolder%\Backup\Uploads
//100 MB
If,%_ML_T%,Bigger,104857600,Call,DirDelete,%_ML_Update_MainFolder%\Backup\Uploads
//--
If,Not,ExistDir,%_ML_Update_MainFolder%\Backup\Uploads\#9,DirMake,%_ML_Update_MainFolder%\Backup\Uploads\#9
If,ExistDir,%ProjectTemp%\Upload_File\1_Upload,FileCopy,%ProjectTemp%\Upload_File\1_Upload\*,%_ML_Update_MainFolder%\Backup\Uploads\#9
//-- Backup updates.ini stuff F

[CallC_Upload_File_CD_Loop]
TxtAddLine,#1,"cd..",Append
//--
//--
//--
//--
//************************************************************************************************************************************
//************************************************************************************************************************************

[Prepare_NEW_UpdatesINI]
// 1 Portable Finder CMD.script
// 2 -> %ScriptFile%
// 3 -> IniRead,%ScriptFile%,Main,Web1,#3
// 4 NOUpdatesINI
// 5 Gena\Apps\System Tools
// 6 Projects/Gena/Apps/System Tools
// 7 Projects/Gena/Apps/System Tools/Portable Finder CMD.script
// 8 gena.cwcodes.net
// ----->
// 9 %ProjectTemp%\Upload_File\20150830155731 ( %ProjectTemp%\Upload_File\#9 )
//StrFormat,DATE,#9,yyyymmddhhnnss
//Set,#9,%ProjectTemp%\Upload_File\#9
//If,Not,ExistDir,#9,DirMake,#9
//If,ExistFile,#9\updates.ini,Call,FileDelete,#9\updates.ini
//If,ExistFile,#9\updates_Download.ini,Call,FileDelete,#9\updates.ini
Echo,"Downloading Updates.ini"
Call,Download,#9\updates.ini,http://#8/updates.ini
If,Not,ExistFile,#9\updates.ini,Call,Echo,"ERROR: Can not download updates.ini - Halt",Warn,,MessageError,5,Halt
FileCopy,#9\updates.ini,#9\updates_Download.ini
//-
FileCopy,#9\updates.ini,#9\updates_Download_Escape.ini
TxtReplace,#9\updates_Download_Escape.ini,"#","|||||"
//--
Run,%Api%,Edit_UpdatesINI,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Edit_UpdatesINI]
Run,%Api%,CallC_Upload_UpdatesINI_D,#1,#2,#3,#4,#5,#6,#7,#8,#9
//------
TxtReplace,#9\updates.ini,"|||||","#"
FileCopy,#9\updates.ini,#9\updates_#1.ini
//------
FileCopy,#9\updates.ini,%ProjectTemp%\Upload_File\1_Upload

[CallC_Upload_UpdatesINI_D]
// Section Designed to be used multiple times ( currently ChangeLog and File use)
// 1 Portable Finder CMD.script
// 2 -> %ScriptFile%
// 3 -> IniRead,%ScriptFile%,Main,Web1,#3
// 4 NOUpdatesINI
// 5 Gena\Apps\System Tools
// 6 Projects/Gena/Apps/System Tools
// 7 Projects/Gena/Apps/System Tools/Portable Finder CMD.script
// 8 gena.cwcodes.net
// 9 %ProjectTemp%\Upload_File\20150830155731 ( %ProjectTemp%\Upload_File\#9 )
//-
Retrieve,MD5,#2,%_ML_Upload_MD5%
//-
If,ExistSection,#9\updates.ini,Updates\#5,Run,%Api%,CallC_Upload_UpdatesINI_D_ST,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,ExistSection,#9\updates.ini,Updates\#5,Echo,"Updates\#5",Warn
If,Not,ExistSection,#9\updates.ini,Updates\#5,Call,Echo,"ERROR: Updates\#5   --- Adding NEW Folder(s) to updates.ini NOT supported for now - Halt",Warn,,MessageError,5,Halt

[CallC_Upload_UpdatesINI_D_ST]
//Echo,#9\updates.ini,Warn
Echo,#9\updates.ini
If,Not,ExistSection,#9\updates.ini,Updates\#5,Begin
// Add 1 New Sub Folder (NOT TESTED SINCE NOT YET SUPPORTED)
StrFormat,Path,%BaseDir%\#5.Dummy,%_ML_T%
StrFormat,Replace,%_ML_T%,%BaseDir%,,%_ML_T%
StrFormat,CTrim,%_ML_T%,\,%_ML_T%
//IniWrite,#9\updates.ini,Updates\%_ML_T%,#5,Folder
IniRead,#9\updates.ini,Updates\%_ML_T%,#5,%_ML_TF%
If,Not,%_ML_TF%,Equal,Folder,Begin
IniWriteTextLine,#9\updates.ini,Updates\%_ML_T%,#5=Folder
End
End
//-
Set,%_ML_UpdatesINI_Before%,""
IniRead,#9\updates_Download_Escape.ini,Updates\#5,#1,%_ML_UpdatesINI_Before%
If,Not,%_ML_UpdatesINI_Before%,Equal,"",Run,%Api%,CallC_Upload_UpdatesINI_D_P,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,%_ML_UpdatesINI_Before%,Equal,"",Call,Echo,"ERROR: Adding NEW File(s) to updates.ini NOT SUPPORTED for now - Halt",Warn,,MessageError,5,Halt

[CallC_Upload_UpdatesINI_D_P]
If,%_ML_Upload_Type%,Equal,1,Begin
//9 Comma Level -> 1 at the very end before last comma -> Total 10 Parameters (8 th Level - 10 th Certification Ignored )
//StrFormat,SPLIT,%_ML_UpdatesINI_Before%,",",9,%_ML_UpdatesINI_Before9%
//StrFormat,SPLIT,%_ML_UpdatesINI_Before%,",",8,%_ML_UpdatesINI_Before8%
//-
//-
//-
//-
// Auto Increase Version If Smaller Equal S (Double Checking) --------------------------
// (Version Previously Increased - Here double checking with server)
StrFormat,SPLIT,%_ML_UpdatesINI_Before%,",",3,%_ML_UpdatesINI_BeforeV%
//-
IniRead,#2,Main,Version,%_ML_Upload_Version%
//-
If,%_ML_UpdatesINI_BeforeV%,Equal,%_ML_Upload_Version%,Begin
IniRead,#2,Main,Revision,%_ML_Upload_Revision%
If,%_ML_Upload_Revision%,Equal,"",Begin
Call,Echo,"Info Warning: %_ML_UpdatesINI_BeforeV%=%_ML_Upload_Version% (Before=Upload) Version same with server #$x Backup Downloaded to ProjectTemp #$x- Upload Continue",Warn,,MessageError,5
//To underline this is a upload without version change put more time to Date=
IniWrite,#2,Main,Date,%_ML_MyDate_Detail_INI%
//Backup Same Version plugin from Server
Call,Download,%ProjectTemp%\,#3
//....[FileCopy_To_Backup]
End
End
//-
If,%_ML_UpdatesINI_BeforeV%,Bigger,%_ML_Upload_Version%,Begin
Call,Echo,"Info Warning: %_ML_UpdatesINI_BeforeV%>%_ML_Upload_Version% (Before>Upload) Version smaller than server #$x Backup Downloaded to ProjectTemp #$x- Upload Continue",Warn,,MessageError,5
//To underline this is a upload with version samller put more time to Date=
IniWrite,#2,Main,Date,%_ML_MyDate_Detail_INI%
//Backup Small Version plugin from Server
Call,Download,%ProjectTemp%\,#3
//....[FileCopy_To_Backup]
End
//-
Set,%_ML_CodeEnable%,0
If,%_ML_CodeEnable%,Equal,1,Begin
// Auto Increase Version Disable
If,%_ML_UpdatesINI_BeforeV%,Equal,%_ML_Upload_Version%,Begin
IniRead,#2,Main,Revision,%_ML_Upload_Revision%
// There is Revision Number - Disable Auto Increase Version
If,%_ML_Upload_Revision%,Equal,"",Begin
StrFormat,Inc,%_ML_Upload_Version%,1
IniWrite,#2,Main,Version,%_ML_Upload_Version%
//Retrieve,FileSize,#2,%_ML_Upload_Size%
//Retrieve,MD5,#2,%_ML_Upload_MD5%
End
End
//-
If,%_ML_UpdatesINI_BeforeV%,Bigger,%_ML_Upload_Version%,Begin
Set,%_ML_Upload_Version%,%_ML_UpdatesINI_BeforeV%
StrFormat,Inc,%_ML_Upload_Version%,1
IniWrite,#2,Main,Version,%_ML_Upload_Version%
//Retrieve,FileSize,#2,%_ML_Upload_Size%
//Retrieve,MD5,#2,%_ML_Upload_MD5%
End
End
//-
// Auto Increase Version If Smaller Equal F (Double Checking) --------------------------
//-
//-
//-
//We also upload ChangeLog here - for now better get filesize MD5 again
Retrieve,FileSize,#2,%_ML_Upload_Size%
Retrieve,MD5,#2,%_ML_Upload_MD5%
//-
Set,%_ML_Upload_SizeU%,|||||%_ML_Upload_Size%
//-
IniRead,#2,Main,Level,%_ML_Upload_Level%
IniRead,#2,Main,Title,%_ML_Upload_Title%
StrFormat,Replace,%_ML_Upload_Title%," ","|||||$s",%_ML_Upload_Title%
StrFormat,Replace,%_ML_Upload_Title%,",","|||||$c",%_ML_Upload_Title%
StrFormat,Replace,%_ML_Upload_Title%,"#$q","|||||$q",%_ML_Upload_Title%
StrFormat,Replace,%_ML_Upload_Title%,"#$p","|||||$p",%_ML_Upload_Title%
StrFormat,Replace,%_ML_Upload_Title%,#$x,"|||||$x",%_ML_Upload_Title%
StrFormat,Replace,%_ML_Upload_Title%,"#","|||||",%_ML_Upload_Title%
IniRead,#2,Main,Description,%_ML_Upload_Description%
StrFormat,Replace,%_ML_Upload_Description%," ","|||||$s",%_ML_Upload_Description%
StrFormat,Replace,%_ML_Upload_Description%,",","|||||$c",%_ML_Upload_Description%
StrFormat,Replace,%_ML_Upload_Description%,"#$q","|||||$q",%_ML_Upload_Description%
StrFormat,Replace,%_ML_Upload_Description%,"#$p","|||||$p",%_ML_Upload_Description%
StrFormat,Replace,%_ML_Upload_Description%,#$x,"|||||$x",%_ML_Upload_Description%
StrFormat,Replace,%_ML_Upload_Description%,"#","|||||",%_ML_Upload_Description%
IniRead,#2,Main,Author,%_ML_Upload_Author%
StrFormat,Replace,%_ML_Upload_Author%," ","|||||$s",%_ML_Upload_Author%
StrFormat,Replace,%_ML_Upload_Author%,",","|||||$c",%_ML_Upload_Author%
StrFormat,Replace,%_ML_Upload_Author%,"#$q","|||||$q",%_ML_Upload_Author%
StrFormat,Replace,%_ML_Upload_Author%,"#$p","|||||$p",%_ML_Upload_Author%
StrFormat,Replace,%_ML_Upload_Author%,#$x,"|||||$x",%_ML_Upload_Author%
StrFormat,Replace,%_ML_Upload_Author%,"#","|||||",%_ML_Upload_Author%
IniRead,#2,Main,Contact,%_ML_Upload_Contact%
// --> #56609,1,
//IniWrite,#9\updates.ini,Updates\#5,#1,"#7,%_ML_Upload_MD5%,%_ML_Upload_Version%,%_ML_Upload_Title%,%_ML_Upload_Description%,%_ML_Upload_Author%,%_ML_Upload_Contact%,%_ML_UpdatesINI_Before8%,%_ML_UpdatesINI_Before9%,"
IniWrite,#9\updates.ini,Updates\#5,#1,"#7,%_ML_Upload_MD5%,%_ML_Upload_Version%,%_ML_Upload_Title%,%_ML_Upload_Description%,%_ML_Upload_Author%,%_ML_Upload_Contact%,%_ML_Upload_SizeU%,%_ML_Upload_Level%,"
End
//-
If,%_ML_Upload_Type%,Equal,0,Begin
// 2 Comma
// 3 is size StrFormat,SPLIT,%_ML_UpdatesINI_Before%,",",3,%_ML_UpdatesINI_Before3%
Set,%_ML_Upload_SizeU%,|||||%_ML_Upload_Size%
IniWrite,#9\updates.ini,Updates\#5,#1,"#7,%_ML_Upload_MD5%,%_ML_Upload_SizeU%"
// IniWrite,#9\updates.ini,Updates\#5,#1,"#7,%_ML_Upload_MD5%,%_ML_UpdatesINI_Before3%"
End
//-
//Final adjustments - we can break parameters except  #9 :)
Set,%_ML_ChangeLogAuthor%,""
//If,ExistFile,%GlobalTemplates%\Download_1Upload\#8_WEB.ini,IniRead,%GlobalTemplates%\Download_1Upload\#8_WEB.ini,Info,Author,%_ML_ChangeLogAuthor%
If,ExistFile,%GlobalTemplates%\Download_1Upload\9_Info.ini,IniRead,%GlobalTemplates%\Download_1Upload\9_Info.ini,Info,Author,%_ML_ChangeLogAuthor%
If,%_ML_ChangeLogAuthor%,Equal,"",Call,HostUserName,_ML_ChangeLogAuthor
//-
StrFormat,DATE,#1,yyyy-mm-dd_hh:nn.ss
//RegRead does not accept parameters 77rc2
//ActiveTimeBias gives -3 which is wrong for Turkiye
//RegRead,HKLM,System\CurrentControlSet\Control\TimeZoneInformation,ActiveTimeBias,%_ML_T%
RegRead,HKLM,System\CurrentControlSet\Control\TimeZoneInformation,Bias,%_ML_T%
StrFormat,Div,%_ML_T%,60
RegRead,HKLM,System\CurrentControlSet\Control\TimeZoneInformation,TimeZoneKeyName,%_ML_T2%
StrFormat,Replace,%_ML_T2%,Turkey,Turkiye,%_ML_T2%
TxtAddLine,#9\updates.ini,";Hot Update: %_ML_ChangeLogAuthor% - Time: #1   GMT0: %_ML_T% Hours  - %_ML_T2%",Prepend
//--
//--
//--
//--
//Set,%_ML_UpdatesIniReady%,1
//--
//UpdateTest
//Call,StartDoc,#9\updates.ini
//ShellExecuteEx,Open,WinMergeU.exe,"#$q#9\updates.ini#$q #$q#9\updates_Download.ini#$q",%GlobalTemplates%\WinMerge2
//UpdateTest
//---

[Prepare_NEW_ChangeLog]
// 1 Portable Finder CMD.script
// 2 -> %ScriptFile%
// 3 -> IniRead,%ScriptFile%,Main,Web1,#3
// 4 NOUpdatesINI
// 5 Gena\Apps\System Tools
// 6 Projects/Gena/Apps/System Tools
// 7 Projects/Gena/Apps/System Tools/Portable Finder CMD.script
// 8 gena.cwcodes.net
// 9 %ProjectTemp%\Upload_File\20150830155731 ( %ProjectTemp%\Upload_File\#9 )
//
//%_ML_ChangeLogWeb%
Run,%Api%,Get_ChangeLogWeb,_ML_ChangeLogWeb,WEB,#3
If,%_ML_ChangeLogWeb%,Equal,"",Halt,"ChangeLog WebAddress Not Found"
//Set,%_ML_ChangeLogWeb%,http://gena.cwcodes.net/Projects/Gena/Utils/ChangeLog.Script
Echo,%_ML_ChangeLogWeb%
//-
StrFormat,FILENAME,%_ML_ChangeLogWeb%,%_ML_T%
StrFormat,Replace,%_ML_T%,%20," ",%_ML_ChangeLogFileName%
Echo,%_ML_ChangeLogFileName%
StrFormat,PATH,%_ML_ChangeLogWeb%,%_ML_T1%
StrFormat,SPLIT,%_ML_ChangeLogWeb%,/,3,%_ML_T2%
StrFormat,Replace,%_ML_T1%,http://%_ML_T2%/,"",%_ML_T1%
StrFormat,CTrim,%_ML_T1%,/,%_ML_ChangeLogCD%
Echo,%_ML_ChangeLogCD%
StrFormat,Replace,%_ML_ChangeLogCD%,/,\,%_ML_Upload_ChangeLogProjectsCD%
StrFormat,Split,%_ML_Upload_ChangeLogProjectsCD%,\,1,%_ML_T%
If,%_ML_T%,Equal,Projects,StrFormat,Replace,%_ML_Upload_ChangeLogProjectsCD%,Projects\,"",%_ML_Upload_ChangeLogProjectsCD%
Echo,%_ML_Upload_ChangeLogProjectsCD%
StrFormat,SPLIT,%_ML_ChangeLogWeb%,/,4,%_ML_ChangeLogProjectName%
If,%_ML_ChangeLogProjectName%,Equal,Projects,StrFormat,SPLIT,%_ML_ChangeLogWeb%,/,5,%_ML_ChangeLogProjectName%
Echo,%_ML_ChangeLogProjectName%
//-
Set,%_ML_ChangeLogAuthor%,""
//If,ExistFile,%GlobalTemplates%\Download_1Upload\#8_WEB.ini,IniRead,%GlobalTemplates%\Download_1Upload\#8_WEB.ini,Info,Author,%_ML_ChangeLogAuthor%
If,ExistFile,%GlobalTemplates%\Download_1Upload\9_Info.ini,IniRead,%GlobalTemplates%\Download_1Upload\9_Info.ini,Info,Author,%_ML_ChangeLogAuthor%
If,%_ML_ChangeLogAuthor%,Equal,"",Call,HostUserName,_ML_ChangeLogAuthor
//--
//We already download and check from server a couple of times, maybe no need anymore ! -- For now Better we download here since upload can be made by another Admin
Call,Download,#9\,%_ML_ChangeLogWeb%
//FileCopy,%GlobalTemplates%\Download_%_ML_ChangeLogProjectName%\Projects\%_ML_ChangeLogProjectName%\Utils\%_ML_ChangeLogFileName%,#9
//FileCopy,%GlobalTemplates%\Download_%_ML_ChangeLogProjectName%\Projects\%_ML_ChangeLogProjectName%\Utils\%_ML_ChangeLogFileName%,#9_Before.Script
FileCopy,#9\%_ML_ChangeLogFileName%,#9\ChangeLog_Web.Script
FileCopy,%GlobalTemplates%\Download_%_ML_ChangeLogProjectName%\Projects\%_ML_ChangeLogProjectName%\Utils\%_ML_ChangeLogFileName%,#9\ChangeLog_Local_DLXX.Script
//--
IniRead,#9\%_ML_ChangeLogFileName%,Main,Version,%_ML_ChangeLogVersion%
If,Not,#1,Equal,%_ML_ChangeLogFileName%,Begin
//We are Not uploading ChangeLog.Script manually (we are uploading a file - ChangeLog also updated) - version not increased at the first
StrFormat,Inc,%_ML_ChangeLogVersion%,1
End
//[CallC_Upload_UpdatesINI_D_P] also increase version
//StrFormat,INC,%_ML_ChangeLogVersion%,1
//[CallC_Upload_UpdatesINI_D_P] also add Date
IniWrite,#9\%_ML_ChangeLogFileName%,Main,Version,%_ML_ChangeLogVersion%
IniWrite,#9\%_ML_ChangeLogFileName%,Main,Date,%_ML_Upload_Date%
//-
StrFormat,DATE,%_ML_ChangeLog_MyDate%,yyyymmdd
//-
If,%_ML_Upload_Type%,Equal,1,Begin
If,Not,%_ML_Upload_Revision%,Equal,"",Begin
IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_Revision=%_ML_Upload_Revision%
End
IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_Version=%_ML_Upload_Version%
End
IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_Size=%_ML_Upload_Size%
IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_MD5=%_ML_Upload_MD5%
IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_Date=%_ML_Upload_Date%
IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_Web=#3
IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_Update_Date=%_ML_ChangeLog_MyDate%
IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_Update_Admin=%_ML_ChangeLogAuthor%
//IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_Name=#1
//-
IniWriteTextLine,#9\%_ML_ChangeLogFileName%,News,"%_ML_ChangeLog_MyDate% %_ML_ChangeLogVersion% (%_ML_ChangeLogAuthor%)"
//--
//UpdateTest
//Call,StartDoc,#9\%_ML_ChangeLogFileName%
//ShellExecuteEx,Open,WinMergeU.exe,"#$q#9\%_ML_ChangeLogFileName%#$q #$q#9\%_ML_ChangeLogFileName%_Download.ini#$q",%GlobalTemplates%\WinMerge2
//UpdateTest
//--
If,Not,ExistSection,#9\%_ML_ChangeLogFileName%,Optimize,IniAddSection,#9\%_ML_ChangeLogFileName%,Optimize
If,Not,ExistSection,#9\%_ML_ChangeLogFileName%,OptimizeFile,IniAddSection,#9\%_ML_ChangeLogFileName%,OptimizeFile
//--
//Here Loop and check old 50 versions inside ChangeLog and change with _Web_OLD - Start
//Since ChangeLog updates not written to ChangeLog do not loop for ChangeLog here
StrFormat,FileName,#3,%_ML_T%
StrFormat,Replace,%_ML_T%,%20," ",%_ML_T%
If,Not,%_ML_T%,Equal,%_ML_ChangeLogFileName%,Begin
If,%_ML_ChangeLogVersion%,Bigger,50,Begin
Set,%_ML_T%,%_ML_ChangeLogVersion%
StrFormat,Dec,%_ML_T%,1
Set,%_ML_T2%,%_ML_ChangeLogVersion%
StrFormat,Dec,%_ML_T2%,50
Loop,%Api%,Prepare_NEW_ChangeLog_OLD_Loop_A,%_ML_T2%,%_ML_T%,#1,#2,#3,#4,#5,#6,#7,#8,#9
IniRead,#9\%_ML_ChangeLogFileName%,News,%_ML_ChangeLogVersion%_Web,%_ML_T%
If,Not,%_ML_T%-,Equal,-,Begin
IniWrite,#9\%_ML_ChangeLogFileName%,Optimize,%_ML_ChangeLogVersion%_Web,%_ML_T%
IniWrite,#9\%_ML_ChangeLogFileName%,Optimize,%_ML_ChangeLogVersion%_Optimize,%_ML_ChangeLogVersion%
StrFormat,FileName,#3,%_ML_T%
IniWrite,#9\%_ML_ChangeLogFileName%,OptimizeFile,%_ML_T%,%_ML_ChangeLogVersion%
End
End
End
//Here Loop and check old 50 versions inside ChangeLog and change with _Web_OLD - Finish
//--
FileCopy,#9\%_ML_ChangeLogFileName%,%ProjectTemp%\Upload_File\1_Upload
//--
If,ExistFile,#9\Updates.ini,Begin
Set,%_ML_Upload_Type_Before%,%_ML_Upload_Type%
Set,%_ML_Upload_Type%,1
//-
Run,%Api%,Edit_UpdatesINI,%_ML_ChangeLogFileName%,%ProjectTemp%\Upload_File\1_Upload\%_ML_ChangeLogFileName%,%_ML_ChangeLogWeb%,#4,%_ML_Upload_ChangeLogProjectsCD%,%_ML_ChangeLogCD%,%_ML_ChangeLogCD%/%_ML_ChangeLogFileName%,#8,#9
//-
Set,%_ML_Upload_Type%,%_ML_Upload_Type_Before%
End

[Prepare_NEW_ChangeLog_OLD_Loop_A_CANCEL]
//Echo,"Check Version=#c - #3",Warn
Echo,"Check Version=#c - #3"
If,%_ML_Version_Web%,Equal,#3,Echo,"FOUND Version=#c - #3",Warn

[Prepare_NEW_ChangeLog_OLD_Loop_A]
//Echo,"Check Version=%_ML_T2% #c / %_ML_T% - #3",Warn
Echo,"Check Version=%_ML_T2% #c / %_ML_T% - #3"
Set,%_ML_Version_Web%,-
IniRead,#9\%_ML_ChangeLogFileName%,News,#c_Web,%_ML_Version_Web%
If,%_ML_Version_Web%,Equal,#3,Begin
IniDelete,#9\%_ML_ChangeLogFileName%,Optimize,#c_Web
IniDelete,#9\%_ML_ChangeLogFileName%,Optimize,#c_Optimize
StrFormat,FileName,#3,%_ML_T%
IniDelete,#9\%_ML_ChangeLogFileName%,OptimizeFile,%_ML_T%
End
If,%_ML_Version_Web%,Equal,#3,TxtReplace,#9\%_ML_ChangeLogFileName%,#c_Web=%_ML_Version_Web%,#c_Web_OLD=%_ML_Version_Web%
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************

[CallC_DownloadXM]
If,#2-,Equal,-,Set,#2,%ProjectName%
// Currently only Call,DownloadXM,<ProjectName> works --> download updates without Rescan
// Ex:
// Call,DownloadXM,Gena
//
// To Rescan if required, check Call,Download,  default mechanism
//
// For NORESCAN
//In future we can have:
// Call,DownloadXM,<ProjectName>,<NORESCAN>,<LinkFolder><NoLink>
// ...
// Call,DownloadX,<Folder\|File>|<Default>,[Web],<NORESCAN>,<LinkFolder><NoLink>
// Call,Download,[Folder\|DownloadFile],[Web],<NoExit>,<Hide>
//--------------------------------
//--> 3 WebFile
//--
// 9 ProjectName
//StrFormat,SPLIT,#3,/,4,#9
//If,#9,Equal,Projects,StrFormat,SPLIT,#3,/,5,#9
//--
Run,%Api%,Get_ChangeLogWeb,_ML_ChangeLogWeb,ProjectName,#2
If,%_ML_ChangeLogWeb%,Equal,"",Halt,"ChangeLog WebAddress Not Found"
//----------------------------
Set,%_ML_Upload_ChangeLogVersion_Local%,0
//----------------------------
Echo,"Downloading Change Log"
Call,Download,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script,%_ML_ChangeLogWeb%
If,ExistFile,%GlobalTemplates%\Download_#2\Projects\#2\Utils\ChangeLog.Script,IniRead,%GlobalTemplates%\Download_#2\Projects\#2\Utils\ChangeLog.Script,Main,Version,%_ML_Upload_ChangeLogVersion_Local%
//----------------------------
IniRead,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script,Main,Version,%_ML_Upload_ChangeLogVersion_WEB%
//-----------------------------------
//173
Set,%_ML_T_Read%,%_ML_Upload_ChangeLogVersion_Local%
Set,%_ML_T_Local_P1%,%_ML_Upload_ChangeLogVersion_Local%
//174
StrFormat,Inc,%_ML_T_Local_P1%,1
//-
If,%_ML_Upload_ChangeLogVersion_WEB%,Bigger,%_ML_Upload_ChangeLogVersion_Local%,Begin
StrFormat,DATE,#9,yyyymmddhhnn
If,Not,ExistDir,%ProjectTemp%\Download_UpdateS,DirMake,%ProjectTemp%\Download_UpdateS
If,ExistFile,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini,Begin
FileCopy,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini_#9.ini
Call,FileDelete,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini
End
FileCreateBlank,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini
End
//173 - 179 ---> 174 - 179
If,%_ML_Upload_ChangeLogVersion_WEB%,Bigger,%_ML_Upload_ChangeLogVersion_Local%,Loop,%Api%,CallC_Download_Updates_ChangeLog_Loop,%_ML_T_Local_P1%,%_ML_Upload_ChangeLogVersion_WEB%
//--
If,%_ML_Upload_ChangeLogVersion_WEB%,Bigger,%_ML_Upload_ChangeLogVersion_Local%,If,ExistSection,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini,Echo_File_Web,Run,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini,Echo_File_Web
//--
If,%_ML_Upload_ChangeLogVersion_WEB%,Equal,%_ML_Upload_ChangeLogVersion_Local%,Echo,"No need update(s)"
Call,DownloadX,Default,%_ML_ChangeLogWeb%,NORESCAN

[CallC_Download_Updates_ChangeLog_Loop]
Set,%_ML_T_Web%,""
//173+1=174
StrFormat,Inc,%_ML_T_Read%,1
//174
Set,%_ML_T_Read2%,%_ML_T_Read%
//174
IniRead,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script,News,%_ML_T_Read%_Web,%_ML_T_Web%
If,Not,%_ML_T_Web%,Equal,"",Begin
//174 -179
Set,%_ML_T_NewFile%,1
Loop,%Api%,CallC_Download_Updates_ChangeLog_LoopB,%_ML_T_Local_P1%,%_ML_Upload_ChangeLogVersion_WEB%
//If,%_ML_T_NewFile%,Equal,1,Echo,"Echo,#$qInfo Download: %_ML_T_Web%",Warn
If,%_ML_T_NewFile%,Equal,1,Call,DownloadX,Default,%_ML_T_Web%,NORESCAN
If,%_ML_T_NewFile%,Equal,1,Begin
IniWriteTextLine,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini,Web,"%_ML_T_Web%"
IniWriteTextLine,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini,Echo_Web,"Echo#$c#$qInfo Download: %_ML_T_Web%#$q#$cWarn"
StrFormat,FileName,%_ML_T_Web%,#9
IniWriteTextLine,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini,Echo_File_Web,"Echo#$c#$qInfo Download: #9#$q,Warn"
End
End

[CallC_Download_Updates_ChangeLog_LoopB]
Set,%_ML_T_WebB%,""
//175
StrFormat,Inc,%_ML_T_Read2%,1
IniRead,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script,News,%_ML_T_Read2%_Web,%_ML_T_WebB%
If,%_ML_T_WebB%,Equal,%_ML_T_Web%,Set,%_ML_T_NewFile%,0
If,%_ML_T_WebB%,Equal,%_ML_T_Web%,Loop,Break

[Get_ChangeLogWeb]
// 1 WEB
// --> to get ChangeLog location from downloaded file Web address
// Run,%Api%,Get_ChangeLogWeb,[Var],WEB,WebFile
// OR
// --> to get ChangeLog location from ProjectName
// Run,%Api%,Get_ChangeLogWeb,[Var],ProjectName,[NameOfProject]
//--
//
//Ex:
//Run,%Api%,Get_ChangeLogWeb,_ML_ChangeLogWeb,WEB,http://win81se.cwcodes.net/Projects/Win8.1SE/Utils/Plugin_Creator_10_Packed.script
//Echo,%_ML_ChangeLogWeb%,Warn
//Run,%Api%,Get_ChangeLogWeb,_ML_ChangeLogWeb,ProjectName,Win8.1SE
//Echo,%_ML_ChangeLogWeb%,Warn
//--
//-- Run,%Api%,Get_ChangeLogWeb,WebFile,_ML_ChangeLogWeb
//-- %_ML_ChangeLogWeb%
//--
If,#1-,Equal,-,Set,#1,ChangeLogWeb
Set,%#1%,""
//--
//If,#2,Equal,ProjectName,Set,#5,http://DUMMY.cwcodes.net/Projects/#3/Utils/ChangeLog.Script
//We can't get address from only ProjectName --> one of iniread must success else we can only guess a value
// Maybe later from http://uptodates.cwcodes.net/updates.ini .... For now hardcode known values:
//--- Later Better also test and confirm with a download trial
If,#2,Equal,ProjectName,Begin
Set,#5,""
If,#3,Equal,Gena,Set,#5,http://gena.cwcodes.net/Projects/Gena/Utils/ChangeLog.Script
If,#3,Equal,Gena-Sweets,Set,#5,http://gena.cwcodes.net/Projects/Gena/Utils/ChangeLog.Script
If,#3,Equal,Win7PESE,Set,#5,http://w7pese.cwcodes.net/Projects/Win7PESE/Utils/ChangeLog.Script
If,#3,Equal,Win8.1SE,Set,#5,http://win81se.cwcodes.net/Projects/Win8.1SE/Utils/ChangeLog.Script
If,#3,Equal,Win8PESE,Set,#5,http://w8pese.cwcodes.net/Projects/Win8PESE/Utils/ChangeLog.Script
If,#3,Equal,Win10PESE,Set,#5,http://win10se.cwcodes.net/Projects/Win10PESE/Utils/ChangeLog.Script
If,#3,Equal,Yomi,Set,#5,http://yomi.cwcodes.net/Yomi/Utils/ChangeLog.Script
If,#3,Equal,Yomi-Gena,Set,#5,http://yomi-gena.cwcodes.net/Yomi-Gena/Utils/ChangeLog.Script
//--
If,#5,Equal,"",Set,#5,http://#3.cwcodes.net/Projects/#3/Utils/ChangeLog.Script
End
//
If,#2,Equal,WEB,Set,#5,#3
//--
// --> 8 ProjectName
StrFormat,SPLIT,#5,/,4,#8
//http://gena.cwcodes.net/Projects/Gena/Apps/File%20Tasks/Q-Dir_Nenad.script
//http://gena.cwcodes.net/Projects/Tools/Gena/7z.exe
//http://yomi.cwcodes.net/Tools/Yomi/Download_Pack_Big.7z
//http://yomi.cwcodes.net/Yomi/AppsGS/CDVD/CDImageGUI.script
//http://gena.cwcodes.net/Projects/Tools/Languages/Turkish.txt
//http://gena.cwcodes.net/Projects/Tools/Languages/Turkish.txt
//http://yomi.cwcodes.net/Languages/Turkish.txt
If,#8,Equal,Projects,Begin
StrFormat,SPLIT,#5,/,5,#8
If,#8,Equal,Tools,StrFormat,SPLIT,#5,/,6,#8
End
If,#8,Equal,Tools,StrFormat,SPLIT,#5,/,5,#8
//HardCoded for Gena-Sweets
If,#8,Equal,Gena-Sweets,Set,#8,Gena
//--
If,#8,Equal,Languages,Call,Echo,"UPLOADING Languages#$x#$x#$x Not Supported for Now",Warn,,MessageError,5,Halt
//--
If,Not,ExistFile,%GlobalTemplates%\Download_#8\Projects\#8\Utils\ChangeLog.Script,If,ExistFile,%BaseDir%\Projects\#8\Utils\ChangeLog.Script,Begin
If,Not,ExistDir,%GlobalTemplates%\Download_#8\Projects\#8\Utils,DirMake,%GlobalTemplates%\Download_#8\Projects\#8\Utils
FileCopy,%BaseDir%\Projects\#8\Utils\ChangeLog.Script,%GlobalTemplates%\Download_#8\Projects\#8\Utils
End
If,ExistFile,%GlobalTemplates%\Download_#8\Projects\#8\Utils\ChangeLog.Script,IniRead,%GlobalTemplates%\Download_#8\Projects\#8\Utils\ChangeLog.Script,Main,ChangeLogWeb,#9
If,#9,Equal,"",If,ExistFile,%BaseDir%\Projects\#8\Script.Project,IniRead,%BaseDir%\Projects\#8\Script.Project,Main,ChangeLogWeb,#9
If,#9,Equal,"",If,ExistFile,%GlobalTemplates%\Download_#8\Projects\#8\Script.Project,IniRead,%GlobalTemplates%\Download_#8\Projects\#8\Script.Project,Main,ChangeLogWeb,#9
If,#9,Equal,"",Begin
StrFormat,SPLIT,#5,/,4,#8
If,#8,Equal,Projects,Begin
StrFormat,SPLIT,#5,/,3,#6
StrFormat,SPLIT,#5,/,5,#7
Set,#9,http://#6/#8/#7/Utils/ChangeLog.Script
End
Else,Begin
StrFormat,SPLIT,#5,/,3,#6
Set,#9,http://#6/#8/Utils/ChangeLog.Script
End
End
//--
Set,%#1%,#9

[CallC_BackupProject_Dummy]
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************

[CallC_BackupProject]
//Call,BackupProject,<ProjectFolder>,<BackupFolder>,<OverWrite|Force>
//OverWrite --> Copy even if there already exists Script.Project
//Force --> Copy even if there no exists Script.Project
//Call,BackupProject,,,OverWrite
//--
If,#2-,Equal,-,Set,#2,%ProjectDir%
If,Not,#4-,Equal,-,Begin
StrFormat,Replace,#4,"OverWrite","",#5
If,Not,#4,Equal,#5,Set,#5,OverWrite
Else,Begin
StrFormat,Replace,#4,"Force","",#5
If,Not,#4,Equal,#5,Set,#5,Force
End
End
Set,#4,#5
//-
StrFormat,Split,#2,\,0,#8
StrFormat,Split,#2,\,#8,#9
//ProjectName
//Echo,#9,Warn
StrFormat,Replace,#2,\Projects\#9,"",#8
//BaseFolder from #2
//Echo,#8,Warn
//-
If,#3-,Equal,-,Set,#3,#8\Workbench\Common\Download_#9
//-
If,#4-,Equal,-,Begin
If,ExistFile,#2\Script.Project,Begin
If,Not,ExistFile,#3\Projects\#9\Script.Project,Run,%Api%,CallC_BackupProject_A,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
End
//-
If,#4,Equal,OverWrite,Begin
If,ExistFile,#2\Script.Project,Run,%Api%,CallC_BackupProject_A,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
//-
If,#4,Equal,Force,Run,%Api%,CallC_BackupProject_A,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_BackupProject_A]
//Project Folder Name
//Echo,#2,Warn
//Backup Folder
//Echo,#3,Warn
//ProjectFolderName
//Echo,#9,Warn
//BaseFolder from #2
//Echo,#8,Warn
//--
Echo,"BackupProject Files. Please Wait.... (it can take some minutes)"
//Set,#7,Open
Set,#7,Hide
//--
If,ExistDir,#8\Projects\Tools\Languages,Begin
Call,DirMake,#3\Projects\Tools\Languages
//-
System,FILEREDIRECT,OFF
Shellexecute,#7,xcopy.exe,"#$q#8\Projects\Tools\Languages\*#$q #$q#3\Projects\Tools\Languages#$q /i /s /e /r /v /k /f /h /y"
Set,#6,%ExitCode%
System,FILEREDIRECT,ON
If,Not,#6,Equal,0,Call,Echo,"XCopy Failed - Backup #8\Projects\Tools\Languages",Warn
End
//--
If,ExistDir,#8\Projects\Tools\#9,Begin
Call,DirMake,#3\Projects\Tools\#9
//-
System,FILEREDIRECT,OFF
Shellexecute,#7,xcopy.exe,"#$q#8\Projects\Tools\#9\*#$q #$q#3\Projects\Tools\#9#$q /i /s /e /r /v /k /f /h /y"
Set,#6,%ExitCode%
System,FILEREDIRECT,ON
If,Not,#6,Equal,0,Call,Echo,"XCopy Failed - Backup #8\Projects\Tools\#9",Warn
End
//--
If,ExistDir,#8\Projects\#9,Begin
Call,DirMake,#3\Projects\#9
//-
System,FILEREDIRECT,OFF
Shellexecute,#7,xcopy.exe,"#$q#8\Projects\#9\*#$q #$q#3\Projects\#9#$q /i /s /e /r /v /k /f /h /y"
Set,#6,%ExitCode%
System,FILEREDIRECT,ON
If,Not,#6,Equal,0,Call,Echo,"XCopy Failed - Backup #8\Projects\#9",Warn
//-
Call,FileDelete,#3\Projects\#9\CodeBox.txt
End
//--
//ProjectFolder2 - ex: Gena-Sweets
If,ExistFile,#3\Projects\#9\Script.Project,Begin
IniRead,#3\Projects\#9\Script.Project,Main,ProjectFolder2,#5
If,Not,#5-,Equal,-,Begin
If,ExistDir,#8\Projects\#5,Begin
//--
Call,DirMake,#3\Projects\#5
//-
System,FILEREDIRECT,OFF
Shellexecute,#7,xcopy.exe,"#$q#8\Projects\#5\*#$q #$q#3\Projects\#5#$q /i /s /e /r /v /k /f /h /y"
Set,#6,%ExitCode%
System,FILEREDIRECT,ON
If,Not,#6,Equal,0,Call,Echo,"XCopy Failed - Backup #8\Projects\##5",Warn
//-
Call,FileDelete,#3\Projects\#5\CodeBox.txt
End
End
End

[CallC_BackupProject_Dummy]
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************

[CallC_DownloadUpdates_Dummy]
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************

[CallC_DownloadUpdates_INFO]
//Call,DownloadUpdates,<projectdir>,<changelogfile>,<changelogWEB>,<startfromOR-checkoldversions>
//Return value %DownloadUpdatesRefresh% True False
//
//ChangeLog -> 145_MD5=0 --> Means File Deleted
//TO DO:
//*
//Additional parameter for ChangeLog -> Extra
//IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,%_ML_Version_Download%_Extra,%_ML_Version_Extra%
//145_Extra=DeleteFile
//--> To do==> plugin required to add DeleteFile to change log ++ maybe also a workaround to add new files to change log ;)
//----> Maybe later DeleteDir to avoid forgotten empty folders (which happened in the past ... )
//*
//Maybe TextBox %_ML_VersionLogLocal% --> 1463 to start update change
// to get %_ML_VersionLogLocal%=0 download ALL => a list generator required to run on Downloads_XXX and to add ChangeLOG ....
//-----------
//TO DO:
//---
Call,DownloadUpdates,%BaseDir%\Projects\Gena,%BaseDir%\Projects\Gena\Utils\ChangeLog.Script
//here "local version no"-20 checks 20 previous updates (to test command easily and etc)
Call,DownloadUpdates,,,,-20
Call,DownloadUpdates,,,,1342
//-
Call,DownloadUpdates,%BaseDir%\Projects\Gena
Echo,%DownloadUpdatesRefresh%,Warn
Call,DownloadUpdates,%BaseDir%\Projects\Win7PESE
//Call,DownloadUpdates,%BaseDir%\Projects\Win7PESE,,,-20
Echo,%DownloadUpdatesRefresh%,Warn
Call,DownloadUpdates,%BaseDir%\Projects\Win8.1SE
Echo,%DownloadUpdatesRefresh%,Warn
Call,DownloadUpdates,%BaseDir%\Projects\Win8PESE
Echo,%DownloadUpdatesRefresh%,Warn
Call,DownloadUpdates,%BaseDir%\Projects\Win10PESE
Echo,%DownloadUpdatesRefresh%,Warn
Call,DownloadUpdates,%BaseDir%\Projects\Yomi
Echo,%DownloadUpdatesRefresh%,Warn
//Call,DownloadUpdates,%BaseDir%\Projects\Yomi-Gena
//Echo,%DownloadUpdatesRefresh%,Warn
//-
//Additional codes to ease tests....
//-
Call,StartDocNotePad,%BaseDir%\Projects\Gena\Utils\ChangeLog.Script
Call,StartDocNotePad,%BaseDir%\Projects\Win7PESE\Utils\ChangeLog.Script
Call,StartDocNotePad,%BaseDir%\Projects\Win8.1SE\Utils\ChangeLog.Script
Call,StartDocNotePad,%BaseDir%\Projects\Win8PESE\Utils\ChangeLog.Script
Call,StartDocNotePad,%BaseDir%\Projects\Win10PESE\Utils\ChangeLog.Script
Call,StartDocNotePad,%BaseDir%\Projects\Yomi\Utils\ChangeLog.Script
//Call,StartDocNotePad,%BaseDir%\Projects\Yomi-Gena\Utils\ChangeLog.Script
//--
Call,Download,%BaseDir%\Projects\Gena\Utils\,http://gena.cwcodes.net/Projects/Gena/Utils/ChangeLog.Script
FileCopy,%BaseDir%\Projects\Gena\Utils\ChangeLog.Script,%BaseDir%\Workbench\Common\Download_Gena\Projects\Gena\Utils
//-
Call,Download,%BaseDir%\Projects\Win7PESE\Utils\,http://w7pese.cwcodes.net/Projects/Win7PESE/Utils/ChangeLog.Script
FileCopy,%BaseDir%\Projects\Win7PESE\Utils\ChangeLog.Script,%BaseDir%\Workbench\Common\Download_Win7PESE\Projects\Win7PESE\Utils
//-
Call,Download,%BaseDir%\Projects\Win8.1SE\Utils\,http://win81se.cwcodes.net/Projects/Win8.1SE/Utils/ChangeLog.Script
FileCopy,%BaseDir%\Projects\Win8.1SE\Utils\ChangeLog.Script,%BaseDir%\Workbench\Common\Download_Win8.1SE\Projects\Win8.1SE\Utils
//-
Call,Download,%BaseDir%\Projects\Win8PESE\Utils\,http://w8pese.cwcodes.net/Projects/Win8PESE/Utils/ChangeLog.Script
FileCopy,%BaseDir%\Projects\Win8PESE\Utils\ChangeLog.Script,%BaseDir%\Workbench\Common\Download_Win8PESE\Projects\Win8PESE\Utils
//-
Call,Download,%BaseDir%\Projects\Win10PESE\Utils\,http://win10se.cwcodes.net/Projects/Win10PESE/Utils/ChangeLog.Script
FileCopy,%BaseDir%\Projects\Win10PESE\Utils\ChangeLog.Script,%BaseDir%\Workbench\Common\Download_Win10PESE\Projects\Win10PESE\Utils
//-
Call,Download,%BaseDir%\Projects\Yomi\Utils\,http://yomi.cwcodes.net/Yomi/Utils/ChangeLog.Script
FileCopy,%BaseDir%\Projects\Yomi\Utils\ChangeLog.Script,%BaseDir%\Workbench\Common\Download_Yomi\Projects\Yomi\Utils

[CallC_DownloadUpdates]
//See [CallC_DownloadUpdates_INFO]
If,#2-,Equal,-,Set,#2,%ProjectDir%
Set,%_ML_DownloadUpdates_ProjectDir%,#2
If,#3-,Equal,-,Set,#3,#2\Utils\ChangeLog.Script
//---------------------
Call,BackupProject,#2
//---------------------
If,#4-,Equal,-,Begin
If,ExistFile,#3,IniRead,#3,Main,ChangeLogWeb,#4
If,#4-,Equal,-,Begin
If,ExistFile,%ProjectDir%\Script.Project,IniRead,%ProjectDir%\Script.Project,Main,ChangeLogWeb,#4
End
End
//-
//Set,%_ML_DownloadUpdates_PDir%,#2
Set,%_ML_DownloadUpdates_ChangeLog%,#3
//-
If,#4-,Equal,-,Call,Echo,"ChangeLog Web Location Not Found.",Warn,,Message,20
If,Not,#4-,Equal,-,Run,%Api%,CallC_DownloadUpdates_A,#1,#2,#3,#4,#5,#6,#7,#8,#9
System,REFRESHINTERFACE

[CallC_DownloadUpdates_A]
If,ExistFile,#3,IniRead,#3,Main,Version,%_ML_VersionLogLocal%
Else,Set,%_ML_VersionLogLocal%,0
Set,%_ML_Custom_VersionLogLocal%,False
If,Not,#5-,Equal,-,Set,%_ML_Custom_VersionLogLocal%,True
If,Not,#5-,Equal,-,Begin
If,#5,Equal,0,Set,%_ML_VersionLogLocal%,0
If,#5,Bigger,0,Set,%_ML_VersionLogLocal%,#5
If,#5,Smaller,0,Begin
StrFormat,Inc,%_ML_VersionLogLocal%,#5
End
End
//--
If,Not,ExistDir,%ProjectTemp%\Download_Updates,DirMake,%ProjectTemp%\Download_Updates
//--
If,ExistFile,%ProjectTemp%\ChangeLog_WEB.Script,Call,FileDelete,%ProjectTemp%\ChangeLog_WEB.Script
If,ExistFile,%ProjectTemp%\ChangeLog_WEB_Download.Script,Call,FileDelete,%ProjectTemp%\ChangeLog_WEB_Download.Script
Call,Download,%ProjectTemp%\ChangeLog_WEB.Script,#4
If,Not,ExistFile,%ProjectTemp%\ChangeLog_WEB.Script,Call,Echo,"%ProjectTemp%\ChangeLog_WEB.Script Not Downloaded - Exit",Warn,,Message,20
Else,IniRead,%ProjectTemp%\ChangeLog_WEB.Script,Main,Version,%_ML_VersionLogWeb%
If,ExistFile,%ProjectTemp%\ChangeLog_WEB.Script,FileCopy,%ProjectTemp%\ChangeLog_WEB.Script,%ProjectTemp%\ChangeLog_WEB_Download.Script
If,ExistFile,%ProjectTemp%\ChangeLog_WEB.Script,Run,%Api%,CallC_DownloadUpdates_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DownloadUpdates_B]
If,%_ML_VersionLogLocal%,Bigger,%_ML_VersionLogWeb%,Call,Echo,"You are living in future #$x VersionLocal=%_ML_VersionLogLocal% > VersionServer=%_ML_VersionLogWeb%#$x#$xCanceling Download Updates",Warn,,Message,20
If,Not,%_ML_VersionLogLocal%,Bigger,%_ML_VersionLogWeb%,Run,%Api%,CallC_DownloadUpdates_C,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DownloadUpdates_C]
Set,%_ML_VersionRead%,%_ML_VersionLogLocal%
Set,%DownloadUpdatesRefresh%,False
Set,%_ML_UpdatesOK%,1
//Start Checking Server with new update +1 (1454+1=1455)
StrFormat,Inc,%_ML_VersionRead%,1
If,Not,ExistSection,%ProjectTemp%\ChangeLog_WEB.Script,Optimize,IniAddSection,%ProjectTemp%\ChangeLog_WEB.Script,Optimize
If,%_ML_VersionLogLocal%,Smaller,%_ML_VersionLogWeb%,Loop,%Api%,CallC_DownloadUpdates_Loop_A,%_ML_VersionRead%,%_ML_VersionLogWeb%
If,%_ML_Custom_VersionLogLocal%%_ML_UpdatesOK%,Equal,False1,FileCopy,%ProjectTemp%\ChangeLog_WEB_Download.Script,%_ML_DownloadUpdates_ChangeLog%
If,%_ML_Custom_VersionLogLocal%%_ML_UpdatesOK%,Equal,False1,Begin
//-
StrFormat,FileName,%_ML_DownloadUpdates_ChangeLog%,%_ML_T%
//-
StrFormat,Split,#2,\,0,#8
StrFormat,Split,#2,\,#8,#9
//HardCoded Utils here ( Lazy )
If,Not,ExistDir,%GlobalTemplates%\Download_#9\Projects\#9\Utils,DirMake,%GlobalTemplates%\Download_#9\Projects\#9\Utils
FileCopy,%ProjectTemp%\ChangeLog_WEB_Download.Script,%GlobalTemplates%\Download_#9\Projects\#9\Utils\%_ML_T%
End
If,%_ML_UpdatesOK%,Equal,0,Call,Echo,"UPDATE ERROR",Warn,,Message,20

[CallC_DownloadUpdates_Loop_A_CANCEL]
//Echo,"Check Version=#c / %_ML_VersionLogWeb%",Warn
Echo,"Check Version=#c / %_ML_VersionLogWeb%"
Set,%_ML_Version_Web%,-
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,#c_Web,%_ML_Version_Web%
//Echo,"#c_Web=%_ML_Version_Web%",Warn
//-
Set,%_ML_T%,#c
StrFormat,Inc,%_ML_T%,1
Set,%NewPlugin%,1
If,%_ML_Version_Web%-,Equal,-,Set,%NewPlugin%,0
If,Not,%_ML_Version_Web%-,Equal,-,Loop,%Api%,CallC_DownloadUpdates_Loop_B,%_ML_T%,%_ML_VersionLogWeb%
//--
//If,%NewPlugin%,Equal,1,Echo,"Download #c %_ML_Version_Web%",Warn
If,%NewPlugin%,Equal,1,Set,%_ML_Version_Download%,#c
If,%NewPlugin%,Equal,1,Run,%Api%,CallC_DownloadUpdates_Loop_Download

[CallC_DownloadUpdates_Loop_A]
//Echo,"Check Version=#c / %_ML_VersionLogWeb%",Warn
Echo,"Check Version=#c / %_ML_VersionLogWeb%"
Set,%_ML_Version_Web%,-
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,#c_Web,%_ML_Version_Web%
Set,%_ML_T%,#c
StrFormat,Inc,%_ML_T%,1
Set,%NewPlugin%,1
If,%_ML_Version_Web%-,Equal,-,Set,%NewPlugin%,0
Set,%_ML_OptimizeValue%,""
If,Not,%_ML_Version_Web%-,Equal,-,Begin
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,Optimize,#c_Optimize,%_ML_OptimizeValue%
If,Not,%_ML_OptimizeValue%-,Equal,-,Begin
Set,%_ML_T%,%_ML_OptimizeValue%
StrFormat,Inc,%_ML_T%,1
End
End
If,Not,%_ML_Version_Web%-,Equal,-,Begin
If,%_ML_T%,Smaller,%_ML_VersionLogWeb%,Loop,%Api%,CallC_DownloadUpdates_Loop_B,%_ML_T%,%_ML_VersionLogWeb%,#c
End
If,%NewPlugin%,Equal,1,Set,%_ML_Version_Download%,#c
If,%NewPlugin%,Equal,1,Run,%Api%,CallC_DownloadUpdates_Loop_Download

[CallC_DownloadUpdates_Loop_B_CANCEL]
Echo,"Check Version=#1 / %_ML_VersionLogWeb% - #c"
//check 1455
//Check newer updates if available
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,#c_Web,%Version_Web_Check%
//Echo,"#c_Web_Check=%Version_Web_Check%",Warn
//-
//IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,%_ML_VersionRead%_Web,%Version_Web_Check%
//If,%_ML_Version_Web%,Equal,%Version_Web_Check%,Echo,"%_ML_Version_Web%=%Version_Web_Check%",Warn
If,%_ML_Version_Web%,Equal,%Version_Web_Check%,Set,%NewPlugin%,0
If,%_ML_Version_Web%,Equal,%Version_Web_Check%,Loop,Break
//If,%_ML_Version_Web%,Equal

[CallC_DownloadUpdates_Loop_B]
Echo,"Check Version=#1 / %_ML_VersionLogWeb% - #c"
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,#c_Web,%Version_Web_Check%
If,%_ML_Version_Web%,Equal,%Version_Web_Check%,Set,%NewPlugin%,0
If,%_ML_Version_Web%,Equal,%Version_Web_Check%,Loop,Break

[CallC_DownloadUpdates_Loop_Download]
//Echo,"Download %_ML_Version_Download% %_ML_Version_Web%",Warn
//Echo,"Download /Add=%_ML_Version_Download% / %_ML_VersionLogWeb%",Warn
Echo,"Download /Add=%_ML_Version_Download% / %_ML_VersionLogWeb%"
//-
Set,%_ML_Version_MD5%,""
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,%_ML_Version_Download%_MD5,%_ML_Version_MD5%
If,Not,%_ML_Version_MD5%,Equal,0,Run,%Api%,CallC_DownloadUpdates_Loop_Download_A
If,%_ML_Version_MD5%,Equal,0,Run,%Api%,CallC_DownloadUpdates_Loop_Download_DeleteFile

[CallC_DownloadUpdates_Loop_Download_DeleteFile]
StrFormat,FileName,%_ML_Version_Web%,%Version_Web_FileName%
StrFormat,Replace,%Version_Web_FileName%,%20," ",%Version_Web_FileName%
//--
Set,#2,%ProjectTemp%\Download_Updates\%Version_Web_FileName%
Set,#3,%_ML_Version_Web%
//--
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,%_ML_Version_Download%_MD5,%_ML_Version_MD5%
//--
StrFormat,FILENAME,#3,#1
StrFormat,Replace,#1,%20," ",#1
// 1 --> FileName from web
//--
StrFormat,SPLIT,#3,/,3,#8
StrFormat,Replace,#3,http://#8/,"",#7
StrFormat,Replace,#7,/,\,#7
StrFormat,PATH,#7,#7
StrFormat,CTrim,#7,\,#7
StrFormat,SPLIT,#7,\,1,#6
If,Not,#6,Equal,Projects,Set,#7,Projects\#7
// 7 --> SubFolder from web : %BaseDir%\#7
Set,%_SubFolder_Web%,#7
StrFormat,Replace,%_SubFolder_Web%,%20," ",%_SubFolder_Web%
//--
StrFormat,SPLIT,#7,\,2,#9
If,#9,Equal,Tools,StrFormat,SPLIT,#7,\,3,#9
If,#9,Equal,Languages,Begin
// 9 --> ProjectName from local parameter
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,0,%_ML_T%
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,%_ML_T%,#9
End
// 9 --> ProjectName from web :
// 9 --> ProjectName from local parameter -> to overcome Gena-Sweets like situation
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,0,%_ML_T%
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,%_ML_T%,#9
//--
Set,#5,%GlobalTemplates%\Download_#9\#7
Set,#6,%GlobalTemplates%\Download_#9\Backup\#7
StrFormat,Replace,#5,%20," ",#5
StrFormat,Replace,#6,%20," ",#6
// 9 --> ProjectName
//--------------------- Backup to Download_Project
// Only 1 (Filename) - 2 File To Copy - 5 Download_Project Folder - 6 Download_Project Backup Folder
//--
If,Not,ExistDir,#5,DirMake,#5
If,Not,ExistDir,#6,DirMake,#6
If,ExistFile,#5\#1,Begin
//-
StrFormat,DATE,#7,yyyymmddhhnnss
StrFormat,Ext,#1,#4
IniRead,#5\#1,Main,Version,%_ML_T%
Call,FileNameNoExt,#1,_ML_T1
//Cancelled - Now Backup At Begining and no need to backup ChangeLog FileCopy,#5\#1,#6\#1_#7#4
FileCopy,#5\#1,#6\%_ML_T1%_v%_ML_T%_#7#4
//-
FileDelete,#5\#1
End
//--
//---------------------- Final Delete
//------
StrFormat,EXT,%Version_Web_FileName%,%_ML_T%
If,%_ML_T%,Equal,.Script,Begin
If,%_SubFolder_Web%-,Equal,-,Begin
If,ExistFile,%BaseDir%\%Version_Web_FileName%,Begin
Set,%_ML_T%,""
IniRead,%BaseDir%\%Version_Web_FileName%,Main,Level,%_ML_T%
If,Not,%_ML_T%-,Equal,-,Begin
If,Not,%_ML_T%,Equal,0,Set,%DownloadUpdatesRefresh%,True
End
End
End
Else,Begin
If,ExistFile,%BaseDir%\%_SubFolder_Web%\%Version_Web_FileName%,Begin
Set,%_ML_T%,""
IniRead,%BaseDir%\%_SubFolder_Web%\%Version_Web_FileName%,Main,Level,%_ML_T%
If,Not,%_ML_T%-,Equal,-,Begin
If,Not,%_ML_T%,Equal,0,Set,%DownloadUpdatesRefresh%,True
End
End
End
End
//------
If,%_SubFolder_Web%-,Equal,-,Begin
If,ExistFile,%BaseDir%\#1,FileDelete,%BaseDir%\#1
End
Else,Begin
If,ExistFile,%BaseDir%\%_SubFolder_Web%\#1,FileDelete,%BaseDir%\%_SubFolder_Web%\#1
End

[CallC_DownloadUpdates_Loop_Download_A]
StrFormat,FileName,%_ML_Version_Web%,%Version_Web_FileName%
StrFormat,Replace,%Version_Web_FileName%,%20," ",%Version_Web_FileName%
//--
Set,#2,%ProjectTemp%\Download_Updates\%Version_Web_FileName%
Set,#3,%_ML_Version_Web%
//--
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,%_ML_Version_Download%_MD5,%_ML_Version_MD5%
//--
StrFormat,FILENAME,#3,#1
StrFormat,Replace,#1,%20," ",#1
// 1 --> FileName from web
//--
StrFormat,SPLIT,#3,/,3,#8
StrFormat,Replace,#3,http://#8/,"",#7
StrFormat,Replace,#7,/,\,#7
StrFormat,PATH,#7,#7
StrFormat,CTrim,#7,\,#7
StrFormat,SPLIT,#7,\,1,#6
If,Not,#6,Equal,Projects,Set,#7,Projects\#7
// 7 --> SubFolder from web : %BaseDir%\#7
Set,%_SubFolder_Web%,#7
StrFormat,Replace,%_SubFolder_Web%,%20," ",%_SubFolder_Web%
//--
StrFormat,SPLIT,#7,\,2,#9
If,#9,Equal,Tools,StrFormat,SPLIT,#7,\,3,#9
If,#9,Equal,Languages,Begin
// 9 --> ProjectName from local parameter
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,0,%_ML_T%
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,%_ML_T%,#9
End
// 9 --> ProjectName from web :
// 9 --> ProjectName from local parameter -> to overcome Gena-Sweets like situation
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,0,%_ML_T%
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,%_ML_T%,#9
//--
Set,#5,%GlobalTemplates%\Download_#9\#7
Set,#6,%GlobalTemplates%\Download_#9\Backup\#7
StrFormat,Replace,#5,%20," ",#5
StrFormat,Replace,#6,%20," ",#6
// 9 --> ProjectName
//--
Set,%_ML_Download%,0
If,ExistFile,#5\#1,Begin
Retrieve,MD5,#5\#1,#9
If,Not,#9,Equal,%_ML_Version_MD5%,Set,%_ML_Download%,1
If,#9,Equal,%_ML_Version_MD5%,Begin
If,Not,ExistDir,%BaseDir%\%_SubFolder_Web%,DirMake,%BaseDir%\%_SubFolder_Web%
//---
//Check DownloadUpdatesRefresh value
If,Not,ExistFile,%BaseDir%\%_SubFolder_Web%\#1,Begin
//Check new file level=0
StrFormat,EXT,%Version_Web_FileName%,%_ML_T%
If,%_ML_T%,Equal,.Script,Begin
Set,%_ML_T%,""
IniRead,#2,Main,Level,%_ML_T%
If,Not,%_ML_T%-,Equal,-,Begin
If,Not,%_ML_T%,Equal,0,Set,%DownloadUpdatesRefresh%,True
End
End
End
//-
If,ExistFile,%BaseDir%\%_SubFolder_Web%\#1,Begin
//Check if level changed (to 0 OR from 0)
StrFormat,EXT,%Version_Web_FileName%,%_ML_T%
If,%_ML_T%,Equal,.Script,Begin
//no need to check level change (to 0 OR from 0) for now -> will not effect anything
End
End
//---
FileCopy,#5\#1,%BaseDir%\%_SubFolder_Web%
End
End
Else,Set,%_ML_Download%,1
If,%_ML_Download%,Equal,1,Run,%Api%,CallC_DownloadUpdates_Loop_Download_A_Download

[CallC_DownloadUpdates_Loop_Download_A_Download]
StrFormat,FileName,%_ML_Version_Web%,%Version_Web_FileName%
StrFormat,Replace,%Version_Web_FileName%,%20," ",%Version_Web_FileName%
//--
Set,%_ML_Download%,0
If,ExistFile,%ProjectTemp%\Download_Updates\%Version_Web_FileName%,Begin
Retrieve,MD5,%ProjectTemp%\Download_Updates\%Version_Web_FileName%,#9
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,%_ML_Version_Download%_MD5,%_ML_Version_MD5%
If,Not,#9,Equal,%_ML_Version_MD5%,Set,%_ML_Download%,1
End
Else,Set,%_ML_Download%,1
If,%_ML_Download%,Equal,1,Begin
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,%_ML_Version_Download%_Size,%_ML_Version_Size%
If,%_ML_Version_Size%,Smaller,100,Call,Download,%ProjectTemp%\Download_Updates\,%_ML_Version_Web%,CheckSize=%_ML_Version_Size%
Else,Call,Download,%ProjectTemp%\Download_Updates\,%_ML_Version_Web%
End
//-
Set,#2,%ProjectTemp%\Download_Updates\%Version_Web_FileName%
Set,#3,%_ML_Version_Web%
//--
If,Not,ExistFile,#2,Set,%_ML_UpdatesOK%,0
//If,Not,ExistFile,#2,Exit,"CAN NOT DOWNLOAD"
If,Not,ExistFile,#2,Call,Echo,"CAN NOT DOWNLOAD - Exit",Warn,,Message,20
If,ExistFile,#2,Run,%Api%,CallC_DownloadUpdates_Loop_Download_A_Download_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DownloadUpdates_Loop_Download_A_Download_B]
IniRead,%ProjectTemp%\ChangeLog_WEB.Script,News,%_ML_Version_Download%_MD5,%_ML_Version_MD5%
Retrieve,MD5,#2,#8
If,Not,#8,Equal,%_ML_Version_MD5%,Set,%_ML_UpdatesOK%,0
//If,Not,#8,Equal,%_ML_Version_MD5%,Exit,"MD5 DO NOT MATCH"
If,Not,#8,Equal,%_ML_Version_MD5%,Call,Echo,"MD5 DO NOT MATCH - Exit",Warn,,Message,20
If,#8,Equal,%_ML_Version_MD5%,Run,%Api%,CallC_DownloadUpdates_Loop_Download_A_Download_C,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DownloadUpdates_Loop_Download_A_Download_C]
StrFormat,FILENAME,#3,#1
StrFormat,Replace,#1,%20," ",#1
// 1 --> FileName from web
//--
StrFormat,SPLIT,#3,/,3,#8
StrFormat,Replace,#3,http://#8/,"",#7
StrFormat,Replace,#7,/,\,#7
StrFormat,PATH,#7,#7
StrFormat,CTrim,#7,\,#7
StrFormat,SPLIT,#7,\,1,#6
If,Not,#6,Equal,Projects,Set,#7,Projects\#7
// 7 --> SubFolder from web : %BaseDir%\#7
Set,%_SubFolder_Web%,#7
StrFormat,Replace,%_SubFolder_Web%,%20," ",%_SubFolder_Web%
//--
StrFormat,SPLIT,#7,\,2,#9
If,#9,Equal,Tools,StrFormat,SPLIT,#7,\,3,#9
If,#9,Equal,Languages,Begin
// 9 --> ProjectName from local parameter
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,0,%_ML_T%
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,%_ML_T%,#9
End
// 9 --> ProjectName from web :
// 9 --> ProjectName from local parameter -> to overcome Gena-Sweets like situation
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,0,%_ML_T%
StrFormat,Split,%_ML_DownloadUpdates_ProjectDir%,\,%_ML_T%,#9
//--
Set,#5,%GlobalTemplates%\Download_#9\#7
Set,#6,%GlobalTemplates%\Download_#9\Backup\#7
StrFormat,Replace,#5,%20," ",#5
StrFormat,Replace,#6,%20," ",#6
// 9 --> ProjectName
//--------------------- Backup to Download_Project
// Only 1 (Filename) - 2 File To Copy - 5 Download_Project Folder - 6 Download_Project Backup Folder
//--
If,Not,ExistDir,#5,DirMake,#5
If,Not,ExistDir,#6,DirMake,#6
If,ExistFile,#5\#1,Begin
//-
Retrieve,MD5,#5\#1,#9
Retrieve,MD5,#2,#8
//-
If,Not,#8,Equal,#9,Begin
StrFormat,DATE,#7,yyyymmddhhnnss
StrFormat,Ext,#1,#4
IniRead,#5\#1,Main,Version,%_ML_T%
Call,FileNameNoExt,#1,_ML_T1
//Cancelled - Now Backup At Begining and no need to backup ChangeLog FileCopy,#5\#1,#6\#1_#7#4
FileCopy,#5\#1,#6\%_ML_T1%_v%_ML_T%_#7#4
End
End
//--
//---------------------- Final Copy do Download_Project Folder
StrFormat,PATH,#2,#9
StrFormat,CTrim,#9,\,#9
// Avoid case you upload directly from Download_Project folder ;)
If,Not,#9,Equal,#5,FileCopy,#2,#5
//---------------------- Final Copy do ProjectDir SubFolder
// 1 --> FileName from web
//-
//Check DownloadUpdatesRefresh value
If,Not,ExistFile,%BaseDir%\%_SubFolder_Web%\#1,Begin
//Check new file level=0
StrFormat,EXT,%Version_Web_FileName%,%_ML_T%
If,%_ML_T%,Equal,.Script,Begin
Set,%_ML_T%,""
IniRead,#2,Main,Level,%_ML_T%
If,Not,%_ML_T%-,Equal,-,Begin
If,Not,%_ML_T%,Equal,0,Set,%DownloadUpdatesRefresh%,True
End
End
End
//-
If,ExistFile,%BaseDir%\%_SubFolder_Web%\#1,Begin
//Check if level changed (to 0 OR from 0)
StrFormat,EXT,%Version_Web_FileName%,%_ML_T%
If,%_ML_T%,Equal,.Script,Begin
//no need to check level change (to 0 OR from 0) for now -> will not effect anything
End
End
//-
If,Not,ExistDir,%BaseDir%\%_SubFolder_Web%,DirMake,%BaseDir%\%_SubFolder_Web%
FileCopy,#2,%BaseDir%\%_SubFolder_Web%
//Echo,"#2    %BaseDir%\%_SubFolder_Web%",Warn

[CallC_DownloadUpdates_Dummy]
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************

[CallC_CheckServer]
// *********************************************************************************************************************************************
// CheckServer for a plugin, to see if it was updated or not...
// Web ->> WebAddress of a file
//
// Call,CheckServer,,WebFile
// Maybe Later: Call,CheckServer,,WebFile,[IniFile]
//
//Ex:
//Call,CheckServer,a,http://gena.cwcodes.net/Projects/Gena/Basic/Build/Macro_Library.script
//Call,CheckServer,b,http://gena.cwcodes.net/Projects/Gena/Utils/POSReady%202009%20Converter.script
//Echo,%a%,Warn
//Echo,%b%,Warn
//-
If,#2-,Equal,-,Set,#2,CheckServer
Set,%#2%,False
// 3 Web
If,#3-,Equal,-,Exit,"CheckServer Parameter (Web) Not Found"
//If,#4-,Not,Equal,-,If,Not,ExistFile,#4,Exit,"#4 File Not Found"
//--
// 8 ProjectName
StrFormat,SPLIT,#3,/,4,#8
//http://gena.cwcodes.net/Projects/Gena/Apps/File%20Tasks/Q-Dir_Nenad.script
//http://gena.cwcodes.net/Projects/Tools/Gena/7z.exe
//http://yomi.cwcodes.net/Tools/Yomi/Download_Pack_Big.7z
//http://yomi.cwcodes.net/Yomi/AppsGS/CDVD/CDImageGUI.script
//http://gena.cwcodes.net/Projects/Tools/Languages/Turkish.txt
//http://gena.cwcodes.net/Projects/Tools/Languages/Turkish.txt
//http://yomi.cwcodes.net/Languages/Turkish.txt
If,#8,Equal,Projects,Begin
StrFormat,SPLIT,#3,/,5,#8
If,#8,Equal,Tools,StrFormat,SPLIT,#3,/,6,#8
End
If,#8,Equal,Tools,StrFormat,SPLIT,#3,/,5,#8
//HardCoded for Gena-Sweets
If,#8,Equal,Gena-Sweets,Set,#8,Gena
If,#8,Equal,Languages,Call,Echo,"UPLOADING Languages#$x#$x#$x Not Supported for Now",Warn,,MessageError,5,Halt
//--
Run,%Api%,Get_ChangeLogWeb,_ML_ChangeLogWeb,WEB,#3
If,%_ML_ChangeLogWeb%,Equal,"",Halt,"ChangeLog WebAddress Not Found"
//--------------------------------
Set,%_ML_Upload_ChangeLogVersion_Local%,0
//----------------------------
Echo,"Downloading Change Log"
Call,Download,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script,%_ML_ChangeLogWeb%
If,ExistFile,%GlobalTemplates%\Download_#8\Projects\#8\Utils\ChangeLog.Script,IniRead,%GlobalTemplates%\Download_#8\Projects\#8\Utils\ChangeLog.Script,Main,Version,%_ML_Upload_ChangeLogVersion_Local%
//----------------------------
IniRead,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script,Main,Version,%_ML_Upload_ChangeLogVersion_WEB%
//-----------------------------------
//173
Set,%_ML_T_Read%,%_ML_Upload_ChangeLogVersion_Local%
Set,%_ML_T_Local_P1%,%_ML_Upload_ChangeLogVersion_Local%
//174
StrFormat,Inc,%_ML_T_Local_P1%,1
//-
//173 - 179 ---> 174 - 179
Set,%_ML_T_NewFile%,0
If,%_ML_Upload_ChangeLogVersion_WEB%,Bigger,%_ML_Upload_ChangeLogVersion_Local%,Loop,%Api%,CallC_CheckServer_Loop,%_ML_T_Local_P1%,%_ML_Upload_ChangeLogVersion_WEB%,#3
//--
If,%_ML_Upload_ChangeLogVersion_WEB%,Bigger,%_ML_Upload_ChangeLogVersion_Local%,If,ExistSection,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini,Echo_File_Web,Run,%ProjectTemp%\Download_UpdateS\Download_UpdateS.ini,Echo_File_Web
//--
If,%_ML_Upload_ChangeLogVersion_WEB%,Equal,%_ML_Upload_ChangeLogVersion_Local%,Echo,"No need update(s)"
//--
If,%_ML_T_NewFile%,Equal,1,Echo,"Newer File On Server"
If,%_ML_T_NewFile%,Equal,1,Set,%#2%,True
//--
//Temporary - For now here a message warning - Just Additional info about version change S
If,Not,%_ML_Upload_ChangeLogVersion_WEB%,Equal,%_ML_Upload_ChangeLogVersion_Local%,Call,Echo,"Info: New Plugins on server - ChangeLog Web: %_ML_Upload_ChangeLogVersion_WEB% - ChangeLog Local: %_ML_Upload_ChangeLogVersion_Local%",Warn,,MessageInformation,5
//Temporary - For now here a message warning - Just Additional info about version change F

[CallC_CheckServer_Loop]
// - 1 Web
Set,%_ML_T_Web%,""
//173+1=174
StrFormat,Inc,%_ML_T_Read%,1
//174
IniRead,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script,News,%_ML_T_Read%_Web,%_ML_T_Web%
If,#1,Equal,%_ML_T_Web%,Set,%_ML_T_NewFile%,1
If,#1,Equal,%_ML_T_Web%,Loop,BREAK

[CallC_CheckServerAll]
//Call,CheckServerAll,,[ProjectName],OpenLog
//
// OpenLog -> open downloaded log if Return True
//
//Return Values: True -> MD5 equal // False -> MD5 not equal // None -> Can not compare md5
//Ex:
//Call,CheckServerAll,,Gena,OpenLog
//Echo,%CheckServerAll%,Warn
//--
If,#2-,Equal,-,Set,#2,CheckServerAll
Set,%#2%,None
If,#3-,Equal,-,Set,#3,%ProjectName%
//--
// -->
// 9 %_ML_ChangeLogWeb%
// %_ML_T% %_ML_ChangeLogMD5_Local%
// %_ML_T1% %_ML_ChangeLogMD5_Web%
Run,%Api%,Get_ChangeLogWeb,_ML_ChangeLogWeb,ProjectName,#3
//--------------------------------
If,%_ML_ChangeLogWeb%,Equal,"",Halt,"ChangeLog WebAddress Not Found"
Retrieve,MD5,%GlobalTemplates%\Download_#3\Projects\#3\Utils\ChangeLog.Script,%_ML_T%
//----------------------------
Call,FileDelete,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script
Echo,"Downloading Change Log"
Call,Download,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script,%_ML_ChangeLogWeb%
Retrieve,MD5,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script,%_ML_T1%
//--
If,%_ML_T1%,Equal,%_ML_T%,Set,%#2%,True
If,Not,%_ML_T1%,Equal,%_ML_T%,Set,%#2%,False
//--
If,#4,Equal,OpenWebLog,If,%#2%,Equal,True,Call,StartDoc,%ProjectTemp%\Download_ChangeLog\ChangeLog.Script

[CallC_CompareEditDirect]
If,#2-,Equal,-,Set,#2,%ScriptFile%
If,#3-,Equal,-,Exit,"Parameter 3 Missing"
//--
Set,#9,0
If,ExistFile,%GlobalTemplates%\WinMerge2\WinMergeU.exe,Begin
Set,#9,1
ShellExecuteEx,Open,WinMergeU.exe,"/r #$q#2#$q #$q#3#$q",%GlobalTemplates%\WinMerge2
End
Else,Begin
If,ExistFile,%GlobalTemplates%\BCompare3\BCompare.exe,Begin
Set,#9,1
ShellExecuteEx,Open,BCompare.exe,"#$q#2#$q #$q#3#$q",%GlobalTemplates%\BCompare3
End
End

[CallC_CompareEdit]
If,#2-,Equal,-,Set,#2,%ScriptFile%
If,#3-,Equal,-,IniRead,%ScriptFile%,Main,Web1,#3
If,#3-,Equal,-,Exit,"Parameter 3 Missing"
//-
Call,DirDeleteMake,%ProjectTemp%\Call\CompareFiles
DirMake,%ProjectTemp%\Call\CompareFiles\1
DirMake,%ProjectTemp%\Call\CompareFiles\2
//-
Set,#8,Local
// Reminding .Link Files -> %ScriptFile% does not start with C: D: E: ... ;)
StrFormat,Left,#2,3,#9
If,#9,Equal,htt,Set,#8,Download
If,#9,Equal,ftp,Set,#8,Download
If,#8,Equal,Local,FileCopy,#2,%ProjectTemp%\Call\CompareFiles\1
If,#8,Equal,Download,Call,Download,%ProjectTemp%\Call\CompareFiles\1\,#2
//-
Set,#8,Local
StrFormat,Left,#3,3,#9
If,#9,Equal,htt,Set,#8,Download
If,#9,Equal,ftp,Set,#8,Download
If,#8,Equal,Local,FileCopy,#3,%ProjectTemp%\Call\CompareFiles\2
If,#8,Equal,Download,Call,Download,%ProjectTemp%\Call\CompareFiles\2\,#3
//-
// Assign #9 File Type - NormalFile <-> PluginFile
//Check only first file if it is a plugin or not
Set,#9,NormalFile
StrFormat,FileName,#2,#8
If,#8,Equal,script.project,Set,#9,PluginFile
If,#8,Equal,folder.project,Set,#9,PluginFile
StrFormat,Ext,#2,#8
If,#8,Equal,.Script,Set,#9,PluginFile
//--
// Assign #7 #8 Filenames
//Find File Names #2 -> #7 // #3 -> #8
StrFormat,FileName,#2,#7
StrFormat,FileName,#3,#8
StrFormat,Replace,#7,"%20"," ",#7
StrFormat,Replace,#8,"%20"," ",#8
//--
Set,#6,1
If,Not,ExistFile,%ProjectTemp%\Call\CompareFiles\1\#7,Begin
Echo,"%ProjectTemp%\Call\CompareFiles\1\#7 Missing",Warn
Set,#6,0
End
If,Not,ExistFile,%ProjectTemp%\Call\CompareFiles\2\#8,Begin
Echo,"%ProjectTemp%\Call\CompareFiles\2\#8 Missing",Warn
Set,#6,0
End
//-
If,#6,Equal,1,Begin
//----------
If,#9,Equal,PluginFile,Begin
// Use Default upload settings to compare easier
If,ExistSection,%ProjectTemp%\Call\CompareFiles\1\#7,Settings_Default,Exec,%ProjectTemp%\Call\CompareFiles\1\#7,Settings_Default
If,ExistSection,%ProjectTemp%\Call\CompareFiles\2\#8,Settings_Default,Exec,%ProjectTemp%\Call\CompareFiles\2\#8,Settings_Default
//--
//Remove Indent to compare easier
IniWrite,%ProjectTemp%\Call\CompareFiles\1\#7,Main,DummmyDummyDummyDummy,DummmyDummyDummyDummy
IniDelete,%ProjectTemp%\Call\CompareFiles\1\#7,Main,DummmyDummyDummyDummy
//-
IniWrite,%ProjectTemp%\Call\CompareFiles\2\#8,Main,DummmyDummyDummyDummy,DummmyDummyDummyDummy
IniDelete,%ProjectTemp%\Call\CompareFiles\2\#8,Main,DummmyDummyDummyDummy
End
//---
Set,#9,0
If,ExistFile,%GlobalTemplates%\WinMerge2\WinMergeU.exe,Begin
Set,#9,1
ShellExecuteEx,Open,WinMergeU.exe,"#$q%ProjectTemp%\Call\CompareFiles\1\#7#$q #$q%ProjectTemp%\Call\CompareFiles\2\#8#$q",%GlobalTemplates%\WinMerge2
End
Else,Begin
If,ExistFile,%GlobalTemplates%\BCompare3\BCompare.exe,Begin
Set,#9,1
ShellExecuteEx,Open,BCompare.exe,"#$q%ProjectTemp%\Call\CompareFiles\1\#7#$q #$q%ProjectTemp%\Call\CompareFiles\2\#8#$q",%GlobalTemplates%\BCompare3
End
End
//----------
If,#9,Equal,0,Begin
//NO compare utility found fallback to WinMerge2
If,Not,ExistFile,"%BaseDir%\Projects\Yomi\AppsGS\File Tasks\WinMerge2_12_4.script",Begin
Call,Download,"%BaseDir%\Projects\Yomi\AppsGS\File Tasks\WinMerge2_12_4.script",http://yomi.cwcodes.net/Yomi/AppsGS/File%20Tasks/WinMerge2_12_4.script
End
If,ExistFile,"%BaseDir%\Projects\Yomi\AppsGS\File Tasks\WinMerge2_12_4.script",Begin
//Extracting-innounp-Copy Start
Call,DirDeleteMake,%ProjectTemp%\TempExtractFolder\WinMerge2
Run,%ProjectDir%\Utils\InnounpM01.Script,ExtractInnounp,%ProjectDir%\Utils\InnounpM01.Script,%ProjectTemp%\TempExtractFolder\WinMerge2
ExtractFile,"%BaseDir%\Projects\Yomi\AppsGS\File Tasks\WinMerge2_12_4.script",Folder,WinMerge-2.12.4-Setup.exe,%ProjectTemp%\TempExtractFolder\WinMerge2
ShellExecute,Hide,cmd.exe,"/c innounp.exe -x -b -d#$q%ProjectTemp%\TempExtractFolder\WinMerge2#$q #$q%ProjectTemp%\TempExtractFolder\WinMerge2\WinMerge-2.12.4-Setup.exe#$q",%ProjectTemp%\TempExtractFolder\WinMerge2
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q%ProjectTemp%\TempExtractFolder\WinMerge2\innounp.exe#$q&del /q /f /A:R /A:H /A:S /A:A #$q%ProjectTemp%\TempExtractFolder\WinMerge2\innounp.exe#$q"
If,ExistFile,%ProjectTemp%\TempExtractFolder\WinMerge2\innounp.exe,Call,FileDelete,%ProjectTemp%\TempExtractFolder\WinMerge2\innounp.exe
ShellExecute,Hide,cmd.exe,"/C ren #$q%ProjectTemp%\TempExtractFolder\WinMerge2\{app}#$q #$qWinMerge2#$q"
If,Not,ExistDir,%ProjectTemp%\TempExtractFolder\WinMerge2\WinMerge2,Call,Rename,%ProjectTemp%\TempExtractFolder\WinMerge2\{app},%ProjectTemp%\TempExtractFolder\WinMerge2\WinMerge2
//Extracting-innounp-Copy Finish
//-
FileCopy,%ProjectTemp%\TempExtractFolder\WinMerge2\{sys}\mfc71.dll,%ProjectTemp%\TempExtractFolder\WinMerge2\WinMerge2
FileCopy,%ProjectTemp%\TempExtractFolder\WinMerge2\{sys}\mfc71u.dll,%ProjectTemp%\TempExtractFolder\WinMerge2\WinMerge2
FileCopy,%ProjectTemp%\TempExtractFolder\WinMerge2\{sys}\msvcp71.dll,%ProjectTemp%\TempExtractFolder\WinMerge2\WinMerge2
FileCopy,%ProjectTemp%\TempExtractFolder\WinMerge2\{sys}\msvcr71.dll,%ProjectTemp%\TempExtractFolder\WinMerge2\WinMerge2
//-
Call,DirDelete,%GlobalTemplates%\WinMerge2
DirCopy,%ProjectTemp%\TempExtractFolder\WinMerge2\WinMerge2,%GlobalTemplates%
//-
If,ExistFile,%GlobalTemplates%\WinMerge2\WinMergeU.exe,Begin
ShellExecuteEx,Open,WinMergeU.exe,"#$q%ProjectTemp%\Call\CompareFiles\1\#7#$q #$q%ProjectTemp%\Call\CompareFiles\2\#8#$q",%GlobalTemplates%\WinMerge2
End
End
End
//----------
End
System,RefreshInterface

[CallC_CompareMD5FileSize]
//Call,CompareMD5FileSize,,File1,File2,[MD5 or FileSize]
//File1 and File2 can be Web1 and Web2
//[MD5 or FileSize] optional to compare only with File1
//Return Value with 1M 2M 1S 2S have MD5 and FileSize info
//Call,CompareMD5FileSize,,"%BaseDir%\Projects\Gena\Apps\File Tasks\Q-Dir_Nenad.script",http://w7pese.cwcodes.net/Projects/Win7PESE/Apps/File%20Tasks/Q-Dir_Nenad.script
//-
//Echo,%CompareMD5FileSize1S%,Warn
//Echo,%CompareMD5FileSize2S%,Warn
//Echo,%CompareMD5FileSizeS%,Warn
//-
//Echo,%CompareMD5FileSize1M%,Warn
//Echo,%CompareMD5FileSize2M%,Warn
//Echo,%CompareMD5FileSizeM%,Warn
//--
If,#2-,Equal,-,Set,#2,CompareMD5FileSize
//-
If,#3-,Equal,-,Set,#3,%ScriptFile%
If,#5-,Equal,-,If,#4-,Equal,-,Exit,"Parameter 4 Missing"
//-
// Assign #6 File Type - NormalFile <-> PluginFile
//Check only first file if it is a plugin or not
Set,#6,NormalFile
StrFormat,FileName,#3,#8
If,#8,Equal,script.project,Set,#6,PluginFile
If,#8,Equal,folder.project,Set,#6,PluginFile
StrFormat,Ext,#3,#8
If,#8,Equal,.Script,Set,#6,PluginFile
//-
Call,DirDeleteMake,%ProjectTemp%\Call\CompareFilesMD5
DirMake,%ProjectTemp%\Call\CompareFilesMD5\1
DirMake,%ProjectTemp%\Call\CompareFilesMD5\2
//-
Set,#8,Local
// Reminding .Link Files -> %ScriptFile% does not start with C: D: E: ... ;)
StrFormat,Left,#3,7,#9
If,#9,Equal,http://,Set,#8,Download
StrFormat,Left,#3,6,#9
If,#9,Equal,ftp://,Set,#8,Download
If,#6,Equal,PluginFile,If,#8,Equal,Local,FileCopy,#3,%ProjectTemp%\Call\CompareFilesMD5\1
If,#8,Equal,Download,Call,Download,%ProjectTemp%\Call\CompareFilesMD5\1\,#3
//-
If,#5-,Equal,-,Begin
Set,#8,Local
StrFormat,Left,#4,7,#9
If,#9,Equal,http://,Set,#8,Download
StrFormat,Left,#4,6,#9
If,#9,Equal,ftp://,Set,#8,Download
If,#6,Equal,PluginFile,If,#8,Equal,Local,FileCopy,#3,%ProjectTemp%\Call\CompareFilesMD5\2
If,#8,Equal,Download,Call,Download,%ProjectTemp%\Call\CompareFilesMD5\2\,#4
End
//--
// Assign #7 #8 Filenames
//Find File Names #3 -> #7 // #4 -> #8
StrFormat,FileName,#3,#7
StrFormat,FileName,#4,#8
StrFormat,Replace,#7,"%20",,#7
StrFormat,Replace,#8,"%20",,#8
//--
Set,#6,1
If,Not,ExistFile,%ProjectTemp%\Call\CompareFilesMD5\1\#7,Set,#6,0
If,ExistFile,#3,Set,#6,1
If,#6,Equal,0,Echo,"#3 Missing",Warn
//-
If,#6,Equal,1,Begin
If,#5-,Equal,-,Begin
If,Not,ExistFile,%ProjectTemp%\Call\CompareFilesMD5\2\#8,Set,#6,0
If,ExistFile,#4,Set,#6,1
If,#6,Equal,0,Echo,"#4 Missing",Warn
End
End
//--
If,#6,Equal,1,Begin
If,#6,Equal,PluginFile,Begin
// Use Default upload settings to compare easier
If,ExistSection,%ProjectTemp%\Call\CompareFilesMD5\1\#7,Upload_Default,Exec,%ProjectTemp%\Call\CompareFilesMD5\1\#7,Upload_Default
If,ExistSection,%ProjectTemp%\Call\CompareFilesMD5\2\#8,Upload_Default,Exec,%ProjectTemp%\Call\CompareFilesMD5\2\#8,Upload_Default
//--
//Remove Indent to compare easier
IniWrite,%ProjectTemp%\Call\CompareFilesMD5\1\#7,Main,DummmyDummyDummyDummy,DummmyDummyDummyDummy
IniDelete,%ProjectTemp%\Call\CompareFilesMD5\1\#7,Main,DummmyDummyDummyDummy
//-
IniWrite,%ProjectTemp%\Call\CompareFilesMD5\2\#8,Main,DummmyDummyDummyDummy,DummmyDummyDummyDummy
IniDelete,%ProjectTemp%\Call\CompareFilesMD5\2\#8,Main,DummmyDummyDummyDummy
End
//--
If,ExistFile,%ProjectTemp%\Call\CompareFilesMD5\1\#7,Begin
Retrieve,Md5,%ProjectTemp%\Call\CompareFilesMD5\1\#7,%#21M%
Retrieve,FileSize,%ProjectTemp%\Call\CompareFilesMD5\1\#7,%#21S%
End
Else,Begin
Retrieve,Md5,#3,%#21M%
Retrieve,FileSize,#3,%#21S%
End
//-
If,#5-,Equal,-,Begin
If,ExistFile,%ProjectTemp%\Call\CompareFilesMD5\2\#8,Begin
Retrieve,Md5,%ProjectTemp%\Call\CompareFilesMD5\2\#8,%#22M%
Retrieve,FileSize,%ProjectTemp%\Call\CompareFilesMD5\2\#8,%#22S%
End
Else,Begin
Retrieve,Md5,#4,%#22M%
Retrieve,FileSize,#4,%#22S%
End
End
//-
If,%#21M%,Equal,%#22M%,Set,%#2M%,Equal
Else,Set,%#2M%,NotEqual
//-
If,%#21S%,Equal,%#22S%,Set,%#2S%,Equal
Else,Set,%#2S%,NotEqual
End

[CallC_CompareINI]
//Call,CompareINI,[Var],<Section>,<Value>,File1,File2,[Value to Compare with File1]
//Call,CompareINI,Main,Version,File1,File2,[Version]
//--
//Call,CompareINI,,,,"%BaseDir%\Projects\Gena\Apps\File Tasks\Q-Dir_Nenad.script",http://w7pese.cwcodes.net/Projects/Win7PESE/Apps/File%20Tasks/Q-Dir_Nenad.script
//Echo,%CompareINI1%,Warn
//Echo,%CompareINI2%,Warn
//Echo,%CompareINI%,Warn
// Equal Bigger Smaller NotEqual EmptyEqual NotEmptyEqual
//--
If,#2-,Equal,-,Set,#2,CompareINI
If,#3-,Equal,-,Set,#3,Main
If,#4-,Equal,-,Set,#4,Version
If,#5-,Equal,-,Set,#5,%ScriptFile%
If,#6-,Equal,-,Set,#6,IniRead,#5,Main,Web1,#6
If,#6-,Equal,-,If,#7-,Equal,-,Exit,"Parameter 6 (File2) or 7 (Compare Value) Missing"
//-
Set,%#2%,""
Set,%#21%,""
Set,%#22%,""
//-
Call,DirDeleteMake,%ProjectTemp%\Call\CompareINI
DirMake,%ProjectTemp%\Call\CompareINI\1
DirMake,%ProjectTemp%\Call\CompareINI\2
//-
Set,#8,Local
// Reminding .Link Files -> %ScriptFile% does not start with C: D: E: ... ;)
StrFormat,Left,#5,7,#9
If,#9,Equal,http://,Set,#8,Download
StrFormat,Left,#5,6,#9
If,#9,Equal,ftp://,Set,#8,Download
If,#8,Equal,Local,IniRead,#5,#3,#4,%#21%
If,#8,Equal,Download,Call,Download,%ProjectTemp%\Call\CompareINI\1\,#5
If,#8,Equal,Download,Begin
StrFormat,FileName,#5,#8
StrFormat,Replace,#8,"%20",,#8
If,ExistFile,%ProjectTemp%\Call\CompareINI\1\#8,IniRead,%ProjectTemp%\Call\CompareINI\1\#8,#3,#4,%#21%
End
If,%#21%,Equal,"",Echo,"%#21% #3 #4 NOT FOUND"
//----
If,#7-,Equal,-,Begin
Set,#8,Local
// Reminding .Link Files -> %ScriptFile% does not start with C: D: E: ... ;)
StrFormat,Left,#6,7,#9
If,#9,Equal,http://,Set,#8,Download
StrFormat,Left,#6,6,#9
If,#9,Equal,ftp://,Set,#8,Download
If,#8,Equal,Local,IniRead,#6,#3,#4,%#22%
If,#8,Equal,Download,Call,Download,%ProjectTemp%\Call\CompareINI\2\,#6
If,#8,Equal,Download,Begin
StrFormat,FileName,#6,#8
StrFormat,Replace,#8,"%20",,#8
If,ExistFile,%ProjectTemp%\Call\CompareINI\2\#8,IniRead,%ProjectTemp%\Call\CompareINI\2\#8,#3,#4,%#22%
End
If,%#22%,Equal,"",Echo,"%#22% #3 #4 NOT FOUND"
End
//--------------
If,%#21%,Equal,%#22%,Set,%#2%,Equal
If,Not,%#21%,Equal,%#22%,Set,%#2%,NotEqual
If,%#21%%#22%,Equal,"",Set,%#2%,EmptyEqual
If,%#21%,Equal,"",If,Not,%#22%,Equal,"",Set,%#2%,NotEmptyEqual
If,%#22%,Equal,"",If,Not,%#21%,Equal,"",Set,%#2%,NotEmptyEqual
If,%#21%,Bigger,%#22%,Set,%#2%,Bigger
If,%#21%,Smaller,%#22%,Set,%#2%,Smaller

[CallC_SaveLog]
If,Not,#2-,Equal,-,Begin
StrFormat,FileName,#2,#8
StrFormat,PATH,#2,#2
If,#2-,Equal,-,Set,#2,%BaseDir%
StrFormat,CTRIM,#2,\,#2
If,Not,ExistDir,#2,DirMake,#2
If,ExistDir,#2,Begin
//-
StrFormat,EXT,#8,#7
If,#7-,Equal,-,Set,#7,html
If,#3,Equal,TimeStamp,Begin
StrFormat,DATE,%_ML_CallSaveLog_MyDate%,yyyymmdd_hhnnss
Call,FileNameNoExt,#8,Call_SaveLog_FileNameNoExt
Set,#8,%Call_SaveLog_FileNameNoExt%_%_ML_CallSaveLog_MyDate%.#7
End
Set,%SaveLogFileName%,#8
//-
If,ExistFile,#2\#8,Call,FileDelete,#2\#8
If,Not,ExistFile,#2\#8,Begin
Call,DirDeleteMake,%BaseDir%\Temp\Macro_Library\CallSaveLog
Require,File,ssr.exe_Ross_MacGregor,%BaseDir%\Temp\Macro_Library\CallSaveLog
If,ExistFile,%BaseDir%\Temp\Macro_Library\CallSaveLog\ssr.exe,Begin
System,Savelog,%BaseDir%\Temp\Macro_Library\CallSaveLog\logsave.html
ExtractFile,%api%,Folder,log_30000000_ssr_ChangerSaveLog.cmd,%BaseDir%\Temp\Macro_Library\CallSaveLog
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/c log_30000000_ssr_ChangerSaveLog.cmd #$q%BaseDir%\Temp\Macro_Library\CallSaveLog\logsave.html#$q",%BaseDir%\Temp\Macro_Library\CallSaveLog
System,FILEREDIRECT,ON
FileCopy,%BaseDir%\Temp\Macro_Library\CallSaveLog\logsave.html,#2\#8
Set,%SaveLogFile%,#2\#8
End
Else,Echo,"Call SaveLog - Can Not find ssr.exe - Nothing Processed - '%BaseDir%\Temp\Macro_Library\CallSaveLog\ssr.exe'",Warn
End
Else,Echo,"Call SaveLog - Can Not Delete Existing Log - Nothing Processed - '#2\#8'",Warn
End
Else,Echo,"Call SaveLog - Can Not Create Folder - Nothing Processed - '#2'",Warn
End
Else,Echo,"Call SaveLog - Parameter 2 missing -  - Nothing Processed",Warn

[CallC_RetrieveFolderUniqueID]
If,#3-,Equal,-,Set,#3,RetrieveFolderUniqueID
//Call,RetrieveFolderUniqueID,<Folder>
//1 Directory not exists
//2 Directory exists but empty
Set,#6,1
If,Not,ExistDir,#2,Set,%#3%,1
If,Not,ExistDir,#2,Set,#6,0
//-
If,ExistDir,#2,Begin
Retrieve,FOLDERSIZE,#2,%_ML_RetrieveFolderUniqueID%
If,%_ML_RetrieveFolderUniqueID%,Equal,0,Begin
Set,#7,CreateUnique.ini
Set,#8,%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID\#7
If,ExistFile,#8,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#8#$q&del /q /f /A:R /A:H /A:S /A:A #$q#8#$q"
If,ExistFile,#8,FileDelete,#8
If,Not,ExistDir,%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID,DirMake,%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID
ShellExecute,Hide,cmd.exe,"/c Dir /b /s #$q#2#$q>#7",%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID
Retrieve,Filesize,#8,%_ML_RetrieveFolderUniqueID%
If,%_ML_RetrieveFolderUniqueID%,Equal,0,Set,#6,0
If,%_ML_RetrieveFolderUniqueID%,Equal,0,Set,%#3%,2
//If,%_ML_RetrieveFolderUniqueID%,Equal,0, -> There are empty files and/or sub-folders
End
End
//#6=0 ==> Directory not exists OR Directory exists but empty
If,#6,Equal,1,Run,%api%,CallC_RetrieveFolderUniqueID_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_RetrieveFolderUniqueID_B]
Set,#9,md5deep.exe
Call,HostOSArch
If,%HostOSArch%,Equal,x64,Set,#9,md5deep64.exe
//-
If,Not,ExistFile,%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID\#9,Run,%api%,CallC_RetrieveFolderUniqueID_Extract,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,ExistFile,%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID\#9,Run,%api%,CallC_RetrieveFolderUniqueID_C,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_RetrieveFolderUniqueID_C]
Set,#7,CreateUnique.ini
Set,#8,%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID\#7
If,ExistFile,#8,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#8#$q&del /q /f /A:R /A:H /A:S /A:A #$q#8#$q"
If,ExistFile,#8,FileDelete,#8
FileCreateBlank,#8
// If a  deterministic  order  is required specify -j0 to disable multi-threading --- Bad for speed - Required to get UniqueID - It would be faster if there was sort option with mutli-threading
ShellExecute,Hide,cmd.exe,"/c #9 -r -j0 #$q#2#$q>#7",%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID
//To get empty folder unique
ShellExecute,Hide,cmd.exe,"/c Dir /b /s #$q#2#$q>>#7",%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID
TXTReplace,#8,#2,-
Retrieve,MD5,#8,%#3%

[CallC_RetrieveFolderUniqueID_Extract]
If,Not,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Call,Download,%ProjectDir%\Utils\Utils_Tools_001.Script,http://gena.cwcodes.net/Projects/Gena/Utils/Utils_Tools_001.Script
If,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Begin
If,Not,ExistDir,%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID,DirMake,%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID
If,Not,ExistSection,%ProjectDir%\Utils\Utils_Tools_001.Script,EncodedFile-Folder-md5deep.7z,If,Not,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Call,Download,%ProjectDir%\Utils\Utils_Tools_001.Script,http://gena.cwcodes.net/Projects/Gena/Utils/Utils_Tools_001.Script
If,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Begin
If,ExistSection,%ProjectDir%\Utils\Utils_Tools_001.Script,EncodedFile-Folder-md5deep.7z,Begin
ExtractFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Folder,md5deep.7z,%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID
ShellExecute,Hide,%Tools%\7z.exe,"x #$q%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID\md5deep.7z#$q -y -o#$q%BaseDir%\Temp\Macro_Library\RetrieveFolderUniqueID#$q"
End
End
End

[CallC_ExecCall]
If,#3-,Equal,-,Set,#3,Process
If,%Version%,Bigger,80,Exec,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%api%,CallC_Exec_B,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_Exec_B]
Set,%_ML_T%,""
//If you use or organise Call,AddInterface inside your plugin no need Call,ExecCall
IniRead,#2,Main,NoExecCall,%_ML_T%
If,Not,%_ML_T%,Equal,True,Run,%api%,CallC_Exec_C,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Exec,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_Exec_C]
//Retrieve,MD5,#2,#9
//Echo,#9,Warn
//-
Set,%_ML_T%,""
IniRead,#2,Main,Interface,%_ML_T%
If,%_ML_T%-,Equal,-,Set,%_ML_T%,Interface
//-
TxtReplace,#2,"Run,#$pScriptFile#$p,DummyDummyDummy_CallEXEC",""
If,ExistSection,#2,DummyDummyDummy_CallEXEC,IniDeleteSection,#2,DummyDummyDummy_CallEXEC
//-
IniWriteTextLine,#2,#3,"Run,#$pScriptFile#$p,DummyDummyDummy_CallEXEC"
IniWriteTextLine,#2,DummyDummyDummy_CallEXEC,"If,ExistSection,#$pScriptFile#$p,%_ML_T%,Call,AddInterface,#$pScriptFile#$p,%_ML_T%"
Exec,#2,#3,#4,#5,#6,#7,#8,#9
//-
TxtReplace,#2,"Run,#$pScriptFile#$p,DummyDummyDummy_CallEXEC",""
IniWrite,#2,DummyDummyDummy_CallEXEC,Dummmmy,Dummy
IniDeleteSection,#2,DummyDummyDummy_CallEXEC
//-
//Retrieve,MD5,#2,#8
//Echo,#8,Warn
//If,Not,#8,Equal,#9,Echo,-------,Warn

[CallC_CABCompress]
If,Not,#2-,Equal,-,Begin
If,ExistFile,#2,Begin
//-
If,#3-,Equal,-,Begin
StrFormat,FileName,#2,#9
Call,FileNameNoExt,#9,_ML_T_1_CallC_CABCompress
StrFormat,EXT,#2,#8
StrFormat,SPLIT,#8,.,2,#8
//-
StrFormat,RTRIM,#8,1,#7
If,Not,#7_,Equal,#8,Set,#8,#7
//-
StrFormat,PATH,#2,#7
StrFormat,CTRIM,#7,\,#7
Set,#3,#7\%_ML_T_1_CallC_CABCompress%.#8_
End
//-
If,Not,#4,Equal,NOUpperCASE,StrFormat,UCASE,#3,#3
//-
If,#6-,Equal,-,Set,#6,"/D CompressionType=LZX /D CompressionMemory=21 /D Cabinet=ON /D Compress=ON /D FolderSizeThreshold=5000000 "
//-
If,ExistFile,#3,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,attrib.exe,"-R -S -A -H #$q#3#$q"
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#3#$q&del /q /f /A:R /A:H /A:S /A:A #$q#3#$q"
System,FILEREDIRECT,ON
End
If,ExistFile,#3,Call,FileDelete,#3
If,ExistFile,#3,Call,Echo,"#3 NOT DELETED - CAB Compression ABORTED",Warn,,Message,5
If,Not,ExistFile,#3,Begin
//-
System,FILEREDIRECT,OFF
ShellExecute,Hide,attrib.exe,"-R -S -A -H #$q#2#$q"
ShellExecute,Hide,makecab.exe,"#6#$q#2#$q #$q#3#$q"
System,FILEREDIRECT,ON
//-
If,Not,ExistFile,#3,Call,Echo,"#3 NOT Created - CAB Compression FAILURE !!!!????",Warn,,Message,5
//-
If,ExistFile,#3,Begin
If,Not,#5,Equal,NODelete,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#2#$q&del /q /f /A:R /A:H /A:S /A:A #$q#2#$q"
System,FILEREDIRECT,ON
If,ExistFile,#2,Call,FileDelete,#2
End
End
//-
End
End
Else,Echo,"#2 File NOT FOUND"
End
Else,Call,Echo,"PARAMETER 2 MÝSSÝNG",Warn

[CallC_FileCreateBINI]
//Call,FileCreateBINI,<File>
//-
//Call,HostDesktopDir
//Call,FileCreateBINI,%HostDesktopDir%\Test.ini
//Call,StartDoc,%HostDesktopDir%\Test.ini
//-
//To gather all  available builder options in one place ;)
If,#2-,Equal,-,Set,#2,%ProjectTemp%\BINI.ini
FileCreateBlank,#2
IniRead,%Api%,INIVariables,Servers,#9
//IniRead,%Api%,INIVariables,Servers,%_ML_T1%
//-
IniWrite,#2,Main,Last_Project,
IniWrite,#2,Main,WebServer_Selected,
IniWrite,#2,Main,WebServer,"#9"
IniWrite,#2,Main,LogTimeStamp,1
//Log Auto Can cause hang on big builds (Memory not available - Builder Bug)
IniWrite,#2,Main,LogAuto,1
IniWrite,#2,Main,Enable_CodeBox,True
IniWrite,#2,Main,Enable_RefreshButton,True
//With this When you hit Stop button it asks to stop or not
IniWrite,#2,Main,StopAgree,Stop_The_Build
//Check Later:
//LogStop=0
//ViewLogAfterProcess=0
//Run_External=False
//ValueTimeout=15
//UseTimeout=False
//RenameCurrent=False
//AskForDownload=False
//DisableNetwork=False
//SourceIndenting=False
//InterfaceGrid=0
////Allow_Beta=1
//Last_Download_Level=3
//ErrorStop=True
//ViewLogInBrowser=1
//ExtractWarn=True
//AutoDownloadTree=True
//StopDownloadTree=False
//ParameterCount=True
//ForceWarning=False
//VerboseWarning=True
//Language=_default
//LastLog=D:\The Oven\log_20130920_213237.html
//X=79
//Y=0
//XX=937
//YY=887
//SP=262
//DN=413
IniWrite,#2,Custom,Title,"%ProjectName% %Version%    TheOven.org [ Cooking With Codes ]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                :)"
//IniWrite,%Download_XXX%\winbuilder.ini,Custom,Logo,Logo.bmp
IniWrite,#2,Custom,Logo,TheOven.gif

[CallC_AddButtonCompareEdi=t]
// TEMPORARY HIDDEN MACRO
//************************************************************************************************************************************
//Call,AddButtonCompareEdi=t
//-
If,#2-,Equal,-,Set,#2,%ScriptFile%
Set,%w%,#2
//-
IniWrite,%w%,Interface,Button_CompareEdit,",1,8,426,-1,24,24,CompareEditXXX,AmperossQetto2Move0016016.bmp,False,False,_CompareEditXXX_,False,#$q__DOWNLOAD and Compare with an Editor#$q"
//-
If,ExistSection,%w%,CompareEditXXX,IniDeleteSection,%w%,CompareEditXXX
IniWriteTextLine,%w%,CompareEditXXX,""
IniWriteTextLine,%w%,CompareEditXXX,"Call,CompareEdit"
//-
IniWrite,%w%,InterfaceEncoded,AmperossQetto2Move0016016.bmp,"893,1191"
//-
IniWrite,%w%,EncodedFile-InterfaceEncoded-AmperossQetto2Move0016016.bmp,lines,0
IniWrite,%w%,EncodedFile-InterfaceEncoded-AmperossQetto2Move0016016.bmp,0,eJxtk1lIVFEYxw16agEVzTRncRtt0cx0NCu0QlsgyyCih7Cgh6KFNgQzSsqnFohUEm3FlqmsVGxxxoxSyYkpTcctsiKXtCZ1mPXee878++5o4YMf/DjfnXN+//sdmLt2s3amj7e0RAzhO8kMH7XPv/KfPcF0NXd7RXRg3ufCoDMD+nkFQ8Z5BYOTDBmDCgYNgXlfCudsq4yZzg3I7ToSfMHmVJQBilLi6pT1X097IZdsroBc87GpblB+zwHVNUBJ50JLBAQUSVhQIkJB/X+KBYQWCd4s1XUgKL/3kOz6HTYpQ4scbq9fLsL/ooAV50ahueKE8oYI1TWBoLVcgLKMKJWf6T1XHILv8WaVothyMlwHqG+KmHVJxKHbFnjs49j5zAnf2xyqexLC74hewm6JdE6AmjLDH1BGseVU2E17VeRjIIBmPFhhASQnnneK0Fy2IYaIKHEi9C6DXxmDWscQeY+yKkREPpLfaa+JuO/Wh5C/9bEd4C7INWyxw/bbCmnUiuZeK9bpHDhfY0FkuQvKSo6ohxKiqoCIu+76qEp3XUQtkFDL0DYm2x4863bjdAdwthfY0QKsMYjgYNDTAQVlqJ9yLHwBaB66DdFPhbol9TRLDUPsS4bWMQ+sYw6kVjuwhmbaXzuOvTVWVJtpPkqpbx/DYp0b0a+AmGrBsKhWMMS+AWL1dDcipZGhctiDHSYRbRY3OSIhYdwlYaI4cppdCGsAFr8Q6uNeiU/iacalrxkSyI1ropxGCXEtDGs/cmxq50hrlvCkx+G9W/F3DzQNDLITpxerEhrFE0ntwLK3DInvGLTvGZI/0BytHInka0wce9tpDo+E0gEPwuncUkJ2ljeJuUlGzNcamS3pA8iVkEJO6ieOVR2EmXpaN3Zz7PviQbyJPMrXfgSSjcy+2mQPlv+DaR3CrrSvQGon0caxmry0Lo508tJ7KIf6BLqHvLeyC0j/RpiFnKnfQEa3sDujj1syR4CMn0AmsZ76DSMTvfe3X8C6Pv4n0yzsme4bzO6yB2f1s6NZ/VyX9YPVZU+yhcjqlx5kD9FetyNkqvMXP3mcf3ick3XMLUgtyi8uDkwtKck38s0vSzUwMDQDIr2k3AKGUTDMgRkLhFZixi4vra37hIEJABkJC8Gkai7oAQAAAAIAAAA3AAAAIgMAAAAAAAABAAAAAAAAAAAAAAA
//-
IniDelete,%w%,Process,"Call,AddButtonCompareEdi"
//-
System,REFRESHINTERFACE
Halt,"AddButtonCompareEdi=t"

[CallC_AddWebPluginLink=s]
//Call,AddWebPluginLink=s
//-
If,#2-,Equal,-,Set,#2,%ScriptFile%
Set,%w%,#2
//-
IniRead,%w%,Interface,pWebLabel1,%t%
If,Not,%t%-,Equal,-,Begin
If,%t%,Equal,"HomePage,1,10,343,20,55,18,",Begin
IniDelete,%w%,Interface,pWebLabel1,%t%
//-
End
End
//-
IniRead,%w%,Interface,WebLabel_Homepg,%t%
If,%t%-,Equal,-,Begin
IniWrite,%w%,Interface,WebLabel_Homepg,"HomePage,1,10,343,20,55,18,"
End
//-
IniRead,%w%,Interface,pWebLabel2,%t%
If,Not,%t%-,Equal,-,Begin
If,%t%,Equal,"#$qPlugin Page#$q,1,10,338,4,55,18,http://TheOven.org/index.php?board=9",Begin
IniDelete,%w%,Interface,pWebLabel2,%t%
End
End
//-
IniRead,%w%,Interface,WebLabel_Plugin,%t%
If,%t%-,Equal,-,Begin
IniWrite,%w%,Interface,WebLabel_Plugin,"#$qPlugin Page#$q,1,10,338,4,55,18,http://TheOven.org/index.php?board=9"
End
//-
IniRead,%w%,Main,Contact,%t%
If,%t%-,Equal,-,Begin
IniWrite,%w%,Main,Contact,"http://TheOven.org"
End
//-
IniRead,%w%,Main,Credits,%t%
If,%t%-,Equal,-,Begin
IniWrite,%w%,Main,Credits,"http://TheOven.org"
End
//-
IniDelete,%w%,Process,"Call,AddWebPluginLink"
//-
System,REFRESHINTERFACE
Halt,"AddWebPluginLink=s"

[CallC_AddButtonContaine=r]
// TEMPORARY HIDDEN MACRO
//************************************************************************************************************************************
//A seperate macro for container since forgotten frequently
//Call,AddButtonContaine=r
//-
If,#2-,Equal,-,Set,#2,%ScriptFile%
Set,%w%,#2
//-
IniRead,%w%,Main,Web1C,%_ML_T1%
If,%_ML_T1%,Equal,"",IniWrite,%w%,Main,Web1C,""
//-
IniWrite,%w%,Interface,Button_Download_Container,",1,8,426,21,24,24,DownloadXXX_Container,DesignboltsThinDownloadDownloadButton0016016.bmp,False,False,_pButton1_,False,#$q__Download Container#$q"
//-
If,ExistSection,%w%,DownloadXXX_Container,IniDeleteSection,%w%,DownloadXXX_Container
IniWriteTextLine,%w%,DownloadXXX_Container,""
IniWriteTextLine,%w%,DownloadXXX_Container,"Call,DownloadXQ,#$pFileContainer#$p,#$pWebFileContainer#$p"
IniWriteTextLine,%w%,DownloadXXX_Container,"IniRead,#$pScriptFile#$p,Main,Web1C,#$pWebFileContainer#$p"
//-
IniWrite,%w%,InterfaceEncoded,DesignboltsThinDownloadDownloadButton0016016.bmp,"321,428"
//-
IniWrite,%w%,EncodedFile-InterfaceEncoded-DesignboltsThinDownloadDownloadButton0016016.bmp,lines,0
IniWrite,%w%,EncodedFile-InterfaceEncoded-DesignboltsThinDownloadDownloadButton0016016.bmp,0,eJxz8jVjZgADMyDWAGIBKGZkkIBIAOWP8EEwDMzZI0lPNGGFdHGVUlKOIRABGUAuLpWzd0sWV6uYlNeJb7zKd+QjEAEZQC5QECiFqR4orjx9PUQl/8G3QARhAwWBUpjOABoFUSC886FdfKxdXDSQAREBSqE5DOhUiDMk1l6wSsvQ7Jqj1TETyAByIQ4DKkBWD/QdxCj1vkWCe58rzt6iNHMjkAHkQsSBCrCqhyCIemQRNPVw92BVj+keZP+C1W9VmrkZzsX0Lyw8NxAZnmTEF6npgUYIALPqdh94nDNwSS3OTM9Lys8pKQ7JyMxzyS/Py8lPTIHRTqUlJfl5BgaGZkCkl5RbwDAKhhMwY4bQt3DIe+zniWZgAgAtoBR8NIDcsAEAAAACAAAAQwAAANoAAAAAAAAAAQAAAAAAAAAAAAAA
//-
IniDelete,%w%,Process,"Call,AddButtonContaine"
//-
System,REFRESHINTERFACE
Halt,"AddButtonContaine=r"

[CallC_AddButtonProvideFil=e]
// TEMPORARY HIDDEN MACRO
//OpenDir button to provide Files (yellow folder icon with green down arrow)
//************************************************************************************************************************************
//Call,AddButtonProvideFil=e
//-
If,#2-,Equal,-,Set,#2,%ScriptFile%
Set,%w%,#2
//-
IniRead,%w%,Variables,#$pProvideFiles#$p,%_ML_T1%
If,%_ML_T1%,Equal,"",IniWrite,%w%,Variables,#$pProvideFiles#$p,#$pGlobalTemplates#$p\1_Test
//-
IniWrite,%w%,Interface,Opendir_Button,",1,8,190,10,20,20,OpenDir_P_B,opendir.bmp,False,False,_OpenDir_P_B_,False,#$q__Open Folder#$q"
//-
If,ExistSection,%w%,OpenDir_P_B,IniDeleteSection,%w%,OpenDir_P_B
IniWriteTextLine,%w%,OpenDir_P_B,""
IniWriteTextLine,%w%,OpenDir_P_B,"Call,OpenDir,#$pProvideFiles#$p"
//-
IniWrite,%w%,InterfaceEncoded,opendir.bmp,"571,762"
//-
If,ExistSection,%w%,EncodedFile-InterfaceEncoded-opendir.bmp,IniDeleteSection,%w%,EncodedFile-InterfaceEncoded-opendir.bmp
IniWrite,%w%,EncodedFile-InterfaceEncoded-opendir.bmp,lines,0
IniWrite,%w%,EncodedFile-InterfaceEncoded-opendir.bmp,0,eJyVkt1LU3EYx382esMuBFEKE8GLLL0IbyYhpEUI4aKytilTFN1xOrvxohpI9/0FlYESXUR2EXmxi4S9hYF4IZhOSdZMzJdtx+HwvO1sh2/P8cyxYFh9+TzPxXm+v+9z+J1z847ZxA5lprpMVZarEnbeGNC8vNSoI+E/5Z6YZs++Mk+QPTnkaaiAo4ee0LVPEcN/4tViTRjuNB7Jeh/cAxfPcEnNtY8hAW4ZwwqGVbCxL3k/D5zxC71x9AjoTsGRgG0jbY2K1siBfV2ybyjd2xkHr7HHIcO/CZh8ApdEfwIDKXASnAr6BDh4dG5mbVHJui727ar0VuQ/924tCtyNoTwgGFQGdZyxrHMfLgUuFYMShg4wIOrhVTNb3zVYdtCbQD+vQ4sqQwKhH/cLFQGx1C+W+EQWlC/Nyw0LqRUVt7fQtZPDvgtrDB2JHD1JnJrl8/dpjqjLipb3P9zG/Ti+qQirWJY1Yi0L06pW6F+QtJZf+grCEkOYrus5q/iJ06tgiwoLZ+0v3vyRnwEdoailtG6ufllVN1FXO36x6Pcd8wYogXJOrqDsB66+rTdPtV7/aGmcar0weeX4f6N2srrpQ/ON6Xvt3i7q9e+bz74uvqVQt7wPOn0c9b86DbV9tjlnR6n/o39kzmNQdPoblHVTL3ic484vSM1LySzSS8otYBgFIw6YMUPoD4zY5WddWriPgQkAk7cIYWOapDwBAAAAAgAAACcAAADwAQAAAAAAAAEAAAAAAAAAAAAAAA
//-
IniDelete,%w%,Process,"Call,AddButtonProvideFil"
//-
System,REFRESHINTERFACE
Halt,"AddButtonProvideFil=e"

[CallC_AddButtonDelet=e]
// TEMPORARY HIDDEN MACRO
//OpenDir button to provide Files (yellow folder icon with green down arrow)
//************************************************************************************************************************************
//Call,AddButtonDelet=e
//-
If,#2-,Equal,-,Set,#2,%ScriptFile%
Set,%w%,#2
//-
//IniRead,%w%,Variables,#$pProvideFiles#$p,%_ML_T1%
//If,%_ML_T1%,Equal,"",IniWrite,%w%,Variables,#$pProvideFiles#$p,#$pGlobalTemplates#$p\1_Test
//-
IniWrite,%w%,Interface,Delete_Button,",1,8,250,9,20,20,Delete_P_B,trash.bmp,False,False,_Delete_P_B_,False"
//-
If,ExistSection,%w%,Delete_P_B,IniDeleteSection,%w%,Delete_P_B
IniWriteTextLine,%w%,Delete_P_B,""
IniWriteTextLine,%w%,Delete_P_B,"Call,DirDelete,#$pProjectTemp#$p\Test"
IniWriteTextLine,%w%,Delete_P_B,"Call,FileDelete,#$pProjectTemp#$p\Test.ini"
//-
IniWrite,%w%,InterfaceEncoded,trash.bmp,"867,1156"
//-
If,ExistSection,%w%,EncodedFile-InterfaceEncoded-trash.bmp,IniDeleteSection,%w%,EncodedFile-InterfaceEncoded-trash.bmp
IniWrite,%w%,EncodedFile-InterfaceEncoded-trash.bmp,lines,0
IniWrite,%w%,EncodedFile-InterfaceEncoded-trash.bmp,0,eJxtlNtTEnEUx2umtx5qtKb+hN7MyUxCELxfkBRvjToTXkYTu3i3tJdq8sHeLEfNLBJSQcVLKCy7wCIsKyiwKOEFZyjxkoOvNl7GqRMk4yBnvmdn9/c7n99v95zf2fjMmgvnfBYNfgM8HDwM/Py5677xuzAfdtHvJ/bnxA4PD+fnLQa9ISA9XA2EwW96g81GHR8fB+JPs4gSmSXJr2KxqF8klUjFItHQ4CA8SoaGxCKxuF9ktVhQFXqWXV5edq2ucjOzxmSytjdtly+Fl5WWYyjKyci8euVa5/vOT31997hZjkWHx+MJYmdnTdNT8iePnxoNxNLS0s2IyMmJSSNBdHd1M+gMi8UyZzYX3i9UIciCfSGIJY3klFxeW1OrVCitVuvtqGjZqAxBkK6uLjYrXq/XazQa/gM+qlLZKXswS84qpqcb6uoh3mazxdyJGZONQeSHnp7EhETIFK7FS/il8BUhWUSpbGpsUiEqirLRafSJ8XFgP/b2piQlQ65xHC8vK9eoMSoUC9/yvPkZsHaKYjKY3yYnIauQovTUNIIw6HC8sqJCq1GH3BdDVS9aWxUKBUVRbBZbLpdD1YSfhVxOJlRaq9FWCwS4VhtyXzWGtba0WC3WNZeLHcdSKpWwyBehkJOe7nA4FhcWH1ZWzujws6zJZNLP6JITk2CFdx0dkRERjQ0NpJEo4fOjbkUJhULZ6AgzNhZGHI7vQSyKYktOZ052dg6Pl8vLKS4qys/Ny8nmFeTnFxcW5fJ4MFWQl+daXcEw9WkWjvGGZ10qkQyDpFLQiE/DJ5LCGZUMSeCMDgysrbnMJnOAJUlya2uzuqqKHhMTx2CAWMw4dtx/sZhM/yCdRnskEKyurECDBNj9/X14591db0N9HWSGm8FJT01N8yslBe65nH8jr1+93N7ehsLt7f0O6iMdroM1obhbm5vNTY0MOj0pIT6WRnvb3r65sWG32ZxOp5EwhuxBsJ1fO263G0Ox9fWfkFJoSWiHDY9HrVa73T+8Xu/p4CDWbwcHB2bzHEEYYRfCQEATHR0dnQ3z/Tn+Ah/33RZ4nOMsKUosztBLyi1gGAUjEBSwQGgpZuzyyx1fajMwAQDHowYo0vtiWAEAAAACAAAAJQAAABoDAAAAAAAAAQAAAAAAAAAAAAAA
//-
IniDelete,%w%,Process,"Call,AddButtonDelet=e"
//-
System,REFRESHINTERFACE
Halt,"AddButtonProvideFil=e"

[CallC_AddButtonEdi=t]
// TEMPORARY HIDDEN MACRO
//Edit button to open a file inside notepad (white paper icon with pencil)
//************************************************************************************************************************************
//Call,AddButtonEdi=t
//-
If,#2-,Equal,-,Set,#2,%ScriptFile%
Set,%w%,#2
//-
IniRead,%w%,Variables,#$pOpenFile#$p,%_ML_T1%
If,%_ML_T1%,Equal,"",IniWrite,%w%,Variables,#$pOpenFile#$p,#$pScriptFile#$p
//-
IniWrite,%w%,Interface,Edit_Button,",1,8,219,10,20,20,Edit_P_B,Oxygen-Icons_0_016016.bmp,False,False,_Edit_P_B_,False,__Edit"
//-
If,ExistSection,%w%,Edit_P_B,IniDeleteSection,%w%,Edit_P_B
IniWriteTextLine,%w%,Edit_P_B,""
IniWriteTextLine,%w%,Edit_P_B,"Call,StartDocNotePad,#$pOpenFile#$p"
//-
IniWrite,%w%,InterfaceEncoded,Oxygen-Icons_0_016016.bmp,"710,947"
//-
If,ExistSection,%w%,EncodedFile-InterfaceEncoded-Oxygen-Icons_0_016016.bmp,IniDeleteSection,%w%,EncodedFile-InterfaceEncoded-Oxygen-Icons_0_016016.bmp
IniWrite,%w%,EncodedFile-InterfaceEncoded-Oxygen-Icons_0_016016.bmp,lines,0
IniWrite,%w%,EncodedFile-InterfaceEncoded-Oxygen-Icons_0_016016.bmp,0,eJylk11IU2Ecxi3qJkIyjGA3qTMmdtEgUvAiygSFsAsJQRIE6y68iMRid+lNF2H2QRcFslhhJiTOQVp0tpJtoUiNyuNQK2Jfbu187Xzs++m8b062cBD0wsM5vOf9Pef5///ntHYO7amgq0lXg64Duqp07aqoofunt54XLwD/rUwmg0gkUlaxWAz5fB7leHImnU5TZbNZqlwuRxmy52e/wG63l/UgfCqVAru6CpvtKRRFLeX9q3A5nWU9CryiKOgeGkbfpAvPFpbhX9uAKIoIBoOYn5uDlEjs6EH4ZDJJNeP7hr6pBZiHH8M0s4Fbd+7C4XDA5/PBybzFB68Xs7OlHsX8900O/VYHjEYjDl0dg/nFR9weHQXDMLSXJEsw8BPRaLSE1zRNlwpZ1XCDldF+bRh1xnpUjUzg7IQHVqsVKysrILMivSFMMa+qKq0/mdSwKScx4pfRcXkAtaYGVI7N4+JzF609FArtyBNWlmXqQ+sQNVi+Cmi90IMjx45j/yMvrr90wu12057+zRNWkqQSD19cxcBSBC1t7TCYm1H55BPuv1oAy7IIBAIlfCIh6b4CvRY8SE/ehGT0Muswn2zGwaYzODzJYtqzTHtRmAHhJUkEz3PU40+OBK2J+IxviOiYWoSpsRH7Tp3H0el1ON+9pxkLvCDwiMd/UQ9BEKhfIYuiyLB85nDigR01tbXYe64fLeMMwuHwNs9xcf0/iVIPcs/z/FYWkeYRdfUsxlFveQiDwYDdnTfR3W/b5snZnbiE/s2SWkiOmCihzcOhrvceqqtfo6trifJknmQm/6IfgTAuXWExOLimv0/Db8YwheR4nJP0r6hMT83T9UzOzyuON4g3MDQDIr2k3AKGUTACQBkLhM5nwi6/K8vLh4EJAIwhCu0OuYbLAQAAAAIAAAAzAAAAbwIAAAAAAAABAAAAAAAAAAAAAAA
//-
IniDelete,%w%,Process,"Call,AddButtonEdi"
//-
System,REFRESHINTERFACE
Halt,"AddButtonEdi=t"

[CallC_AddOptimumBeve=l]
// Max sized Bevel for Default builder interface - See your interface size easier
//Tip: Delete Optimum_Bevel in the end - Optimum_Bevel will be deleted automatically during upload ;)
//Call,AddOptimumBeve=l
//-
If,#2-,Equal,-,Set,#2,%ScriptFile%
Set,%w%,#2
//-
//82
//IniWrite,%w%,Interface,Optimum_Bevel,"Optimum_Bevel,1,12,0,0,564,330"
//77RC2
//IniWrite,%w%,Interface,Optimum_Bevel,"Optimum_Bevel,1,12,0,0,564,328"
//Optimum
//IniWrite,%w%,Interface,Optimum_Bevel,"Optimum_Bevel,1,12,0,0,564,328"
//Optimum
//IniWrite,%w%,Interface,Optimum_Bevel,"Optimum_Bevel,1,12,0,0,564,328"
//Optimum with up left frames out
IniWrite,%w%,Interface,Optimum_Bevel,"Optimum_Bevel,1,12,-2,-2,566,330"
//-
IniDelete,%w%,Process,"Call,AddOptimumBeve"
//-
System,REFRESHINTERFACE
Halt,"AddOptimumBeve=l"

[CallC_AddDUbutton=s]
// TEMPORARY HIDDEN MACRO
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//************************************************************************************************************************************
//--
// Call,AddDUbutton=s
// Call,AddDUbutton=s,,Container
// Call,AddDUbutton=s,,WebRoot
//
//At plugin
// 1) [Process] write top Call,AddDUbutton=s
// 2) **** Close Edtor ****
// 3) Small Green play at main gui
// 4) Remove Call,AddDUbutton=s line from top of [Process] (Removed automatically be sure ;) )
//--
// If You are using Builder Editor small green play
// -> Close (Red X at Top-Right)
// ----> Click 'Edit'
//    (Editor can not refresh with command)
//--
// Call,AddDUbutton=s,<File>,Container,WebRoot
//--
//--
// WebRoot option is to handle 1 plugin on multiple servers
//--
// Ex:
//Web1=http://gena.cwcodes.net/Projects/Gena/Utils/Plugin_Creator_10_Packed.script
//WebRootSubSub=Utils
//WebRootFile=Plugin_Creator_10_Packed.script
//--
//--
//--
//-- Container option to add 3rd button to download Container file
//--
//--
//-- Web1 Theorically added , you need to CHECK
//--
If,#2-,Equal,-,Set,#9,""
If,#2-,Equal,-,Set,#2,%ScriptFile%
Set,%w%,#2
//--
If,ExistSection,#2,DownloadXXX,Call,Echo,"REMOVE Call AddDUbutton=s.... line from Plugin Codes #$x#$x Forgotten ;) #$x#$x#$xHalt",Warn,,MessageError,5,Halt
//--
StrFormat,FileName,%w%,%wFileName%
StrFormat,DATE,%_ML_MyDate%,yyyymmdd_hh-nn-ss
If,Not,ExistDir,%ProjectTemp%,DirMake,%ProjectTemp%
FileCopy,%w%,%ProjectTemp%\%wFileName%_%_ML_MyDate%.Script
//--
IniRead,%w%,Main,Web1,%_ML_T1%
If,%_ML_T1%,Equal,"",Begin
StrFormat,Replace,#2,%BaseDir%\,"",%BaseSubFile%
Set,%WebSubFile%,%BaseSubFile%
StrFormat,SPLIT,%BaseSubFile%,\,2,%t2%
Set,%WebFile%,""
If,%t2%,Equal,Gena,Set,%WebFile%,http://gena.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Gena-Sweets,Set,%WebFile%,http://gena.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Win7PESE,Set,%WebFile%,http://w7pese.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Win8.1SE,Set,%WebFile%,http://win81se.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Win8PESE,Set,%WebFile%,http://w8pese.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Win10PESE,Set,%WebFile%,http://win10se.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Yomi,Begin
StrFormat,Replace,%WebSubFile%,Projects\,"",%WebSubFile%
Set,%WebFile%,http://yomi.cwcodes.net/%WebSubFile%
End
If,%t2%,Equal,Yomi-Gena,Begin
StrFormat,Replace,%WebSubFile%,Projects\,"",%WebSubFile%
Set,%WebFile%,http://yomi-gena.cwcodes.net/%WebSubFile%
End
//-
StrFormat,Replace,%WebFile%,\,/,%WebFile%
StrFormat,Replace,%WebFile%," ","%20",%WebFile%
IniWrite,%w%,Main,Web1,%WebFile%
End
//--
If,#3,Equal,Container,Begin
IniRead,%w%,Main,Web1C,%_ML_T1%
If,%_ML_T1%,Equal,"",IniWrite,%w%,Main,Web1C,""
IniRead,%w%,Main,Web1C,%_ML_T1%
If,%_ML_T1%,Equal,"",Begin
StrFormat,Replace,#2,%BaseDir%\,"",%BaseSubFile%
Set,%WebSubFile%,%BaseSubFile%
StrFormat,SPLIT,%BaseSubFile%,\,2,%t2%
Set,%WebFile%,""
If,%t2%,Equal,Gena,Set,%WebFile%,http://gena.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Gena-Sweets,Set,%WebFile%,http://gena.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Win7PESE,Set,%WebFile%,http://w7pese.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Win8.1SE,Set,%WebFile%,http://win81se.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Win8PESE,Set,%WebFile%,http://w8pese.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Win10PESE,Set,%WebFile%,http://win10se.cwcodes.net/%WebSubFile%
If,%t2%,Equal,Yomi,Begin
StrFormat,Replace,%WebSubFile%,Projects\,"",%WebSubFile%
Set,%WebFile%,http://yomi.cwcodes.net/%WebSubFile%
End
If,%t2%,Equal,Yomi-Gena,Begin
StrFormat,Replace,%WebSubFile%,Projects\,"",%WebSubFile%
Set,%WebFile%,http://yomi-gena.cwcodes.net/%WebSubFile%
End
//-
StrFormat,Replace,%WebFile%,\,/,%WebFile%
StrFormat,Replace,%WebFile%," ","%20",%WebFile%
StrFormat,RTrim,%WebFile%,7,%WebFile%
Set,%WebFile%,%WebFile%_File.Script
IniWrite,%w%,Main,Web1C,%WebFile%
End
End
//---
If,#4,Equal,WebRoot--,Begin
StrFormat,Replace,#2,%BaseDir%\,"",%BaseSubFile%
StrFormat,SPLIT,%BaseSubFile%,\,2,%t2%
StrFormat,Replace,%BaseSubFile%,Projects\%t2%\,"",%WebRootSubSub%
StrFormat,Replace,%WebRootSubSub%,\,/,%WebRootSubSub%
StrFormat,Replace,%WebRootSubSub%," ","%20",%WebRootSubSub%
StrFormat,PATH,%WebRootSubSub%,%WebRootSubSub%
StrFormat,CTRIM,%WebRootSubSub%,/,%WebRootSubSub%
StrFormat,FileName,#2,%WebRootFile%
StrFormat,Replace,%WebRootFile%," ","%20",%WebRootFile%
IniRead,%w%,Main,WebRootSubSub,%_ML_T1%
If,%_ML_T1%,Equal,"",IniWrite,%w%,Main,WebRootSubSub,%WebRootSubSub%
//-
IniRead,%w%,Main,WebRootFile,%_ML_T1%
If,%_ML_T1%,Equal,"",IniWrite,%w%,Main,WebRootFile,%WebRootFile%
End
//---
//Dangerous and mostly don't work - builder bug ;)
//TXTDelLine,%w%,"Call,AddDUbutton=s"
//TXTDelLine,%w%,"Call#$cAddDUbutton=s"
//---
IniDelete,%w%,Process,"Call,AddDUbutton"
//---
IniWrite,%w%,Interface,Button_Download,",1,8,403,21,24,24,DownloadXXX,DoubleJDesignRavenna3dArrowDown0016016.bmp,False,False,_DownloadXXX_,False,#$q__DOWNLOAD Plugin#$q"
IniWrite,%w%,Interface,Button_Upload,",1,8,403,-1,24,24,UploadXXX,BokehliciaCaptivaSoftwareupload0016016.bmp,False,False,_UploadXXX_,False,#$q__UPLOAD Plugin (Admins Only)#$q"
If,#3,Equal,Container,Begin
IniWrite,%w%,Interface,Button_Download_Container,",1,8,426,21,24,24,DownloadXXX_Container,DesignboltsThinDownloadDownloadButton0016016.bmp,False,False,_pButton1_,False,#$q__Download Container#$q"
End
//--
If,ExistSection,%w%,DownloadXXX,IniDeleteSection,%w%,DownloadXXX
IniWriteTextLine,%w%,DownloadXXX,""
IniWriteTextLine,%w%,DownloadXXX,"Call,DownloadXQ"
//--
If,ExistSection,%w%,UploadXXX,IniDeleteSection,%w%,UploadXXX
IniWriteTextLine,%w%,UploadXXX,""
//IniWriteTextLine,%w%,UploadXXX,"//System,RefreshInterface"
IniWriteTextLine,%w%,UploadXXX,"//[Settings_Default] [Settings_Default_SE] [Settings_Default_Gena] [Settings_Default_Yomi] [Settings_Default_Win10PESE] [Settings_Default_Win8.1SE] [Settings_Default_Win8PESE] [Settings_Default_Win7PESE]"
IniWriteTextLine,%w%,UploadXXX,"//[Upload_Default] [Upload_Default_SE] [Upload_Default_Gena] [Upload_Default_Yomi] [Upload_Default_Win10PESE]"
IniWriteTextLine,%w%,UploadXXX,"//[Settings_Default] IniWrite,#$pScriptFile#$p,Main,Level,0"
IniWriteTextLine,%w%,UploadXXX,"//[Settings_Default] IniWrite,#$pScriptFile#$p,Main,Selected,False"
//IniWriteTextLine,%w%,UploadXXX,"//---"
//IniWriteTextLine,%w%,UploadXXX,"//If,Not,#$pVUploadXStart#$p,Equal,#$pVUploadXLater#$p,IniWrite,#$pScriptFile#$p,Main,Version,#$pVUploadXLater#$p"
//IniWriteTextLine,%w%,UploadXXX,"//->"
//IniWriteTextLine,%w%,UploadXXX,"//IniRead,#$pScriptFile#$p,Main,Web2,#$pWeb2#$p"
//IniWriteTextLine,%w%,UploadXXX,"//-"
//IniWriteTextLine,%w%,UploadXXX,"//If,Not,#$pVUploadXStart#$p,Equal,#$pVUploadXLater#$p,IniWrite,#$pScriptFile#$p,Main,Version,#$pVUploadXStart#$p"
//IniWriteTextLine,%w%,UploadXXX,"//IniRead,#$pScriptFile#$p,Main,Version,#$pVUploadXLater#$p"
//IniWriteTextLine,%w%,UploadXXX,"//->"
//IniWriteTextLine,%w%,UploadXXX,"//IniRead,#$pScriptFile#$p,Main,Version,#$pVUploadXStart#$p"
//IniWriteTextLine,%w%,UploadXXX,"//---"
IniWriteTextLine,%w%,UploadXXX,"//Call,UploadXMultiQ,,#$pProjectDir#$p\Utils\WebRoots_SE.Script||WebRoot,||Web1"
IniWriteTextLine,%w%,UploadXXX,"//Call,UploadXMultiQ,,#$pProjectDir#$p\Utils\WebRoots_SE.Script||WebRoot,||Web2"
IniWriteTextLine,%w%,UploadXXX,"//Call,UploadXMultiQ,,#$pProjectDir#$p\Utils\WebRoots_SE_Gena.Script||WebRoot"
IniWriteTextLine,%w%,UploadXXX,"//Call,UploadXMultiQ,,#$pProjectDir#$p\Utils\WebRoots_SE.Script||WebRoot"
IniWriteTextLine,%w%,UploadXXX,"//Call,UploadXMultiQ"
IniWriteTextLine,%w%,UploadXXX,"Call,UploadXQ"
//--
If,#3,Equal,Container,Begin
If,ExistSection,%w%,DownloadXXX_Container,IniDeleteSection,%w%,DownloadXXX_Container
IniWriteTextLine,%w%,DownloadXXX_Container,""
IniWriteTextLine,%w%,DownloadXXX_Container,"Call,DownloadXQ,#$pFileContainer#$p,#$pWebFileContainer#$p"
IniWriteTextLine,%w%,DownloadXXX_Container,"IniRead,#$pScriptFile#$p,Main,Web1C,#$pWebFileContainer#$p"
End
//--
IniWrite,%w%,InterfaceEncoded,DoubleJDesignRavenna3dArrowDown0016016.bmp,"622,830"
IniWrite,%w%,InterfaceEncoded,BokehliciaCaptivaSoftwareupload0016016.bmp,"676,902"
If,#3,Equal,Container,Begin
IniWrite,%w%,InterfaceEncoded,DesignboltsThinDownloadDownloadButton0016016.bmp,"321,428"
End
//--
IniWrite,%w%,EncodedFile-InterfaceEncoded-DoubleJDesignRavenna3dArrowDown0016016.bmp,lines,0
IniWrite,%w%,EncodedFile-InterfaceEncoded-DoubleJDesignRavenna3dArrowDown0016016.bmp,0,eJzNk09Ik2Ecxw06BF2KqG5ih1EgYZZu7+v7vnu3d++2MpelRFHgQZEaJLVIXSxrW4Wauf7Nwha2rQ7dOgT9IQT1EkQHi+hSHfRSUZrMcp389PjSoUib3vrB9/I8fD78fr+Hxwi0LS+yyi6ySWSVyGqRZUUl1rnr1/3vBfy3+TTxkabuAzx4dp+lsu/G31LRXIrjaCmeVjtfpj4v2jH+YQwpWIYc3orctgUptJkT/UcWxc/1rLXYqYpKqGcklEglcns5DuF48uLhPx2TUxOYIRWlU8PZraOdU1GjMsop4RO9+DucfM1NzuvIfctR3Wai9hq4rvrREybOCy608xpqrAqlQzhObiOSbv2Ln8nPsDvsZ33dSoob1mE7XIIsetAvCUePG63TiRpXUE47rJ0MvRz8wzH9fZqR0SHSj1LUhn2s8a6gMi7hTm7HddmLftHA2aVT2mJjY3Mx7naJ/I/8vHN0Zc5avKNLw+gP4O7bgeuKD73XQyDqI5QM8ur96IJ7jKUiFi8nDDwDezBuCsf1amsnA4Opgm8Y7jtu8UrSj3lnL+btOjypXRg3dpIdThfkjyWCFu9M1eC7tx/vXeFIC8etWjKL4IPdTRZfFqtAvua1PJ5sPWamnuxIpiD/9Plj4ukIh3oaqGk3KG+0sWHfWhp7DvJm7PWS/9FcZmdnF+R+AlbU23p4nNNyyS9Nykn1ckktzkzPC0osS83LSzROcSwqyi93yS/PMzAwNAMivaTcAoZRMPxAGQuEZmPCLu9y8YwcAxMAHjMRfb+2diEBAAAAAgAAAEQAAAAGAgAAAAAAAAEAAAAAAAAAAAAAAA
//-
IniWrite,%w%,EncodedFile-InterfaceEncoded-BokehliciaCaptivaSoftwareupload0016016.bmp,lines,0
IniWrite,%w%,EncodedFile-InterfaceEncoded-BokehliciaCaptivaSoftwareupload0016016.bmp,0,eJytU21LWmEYbrAfsP0De4H2pRcqRq+0RllUZkav1O+YIH2JPvUhKKJfUE3aaCNQQR3pYWDTPCpBMKUxSczjZDB0Q8UPV/d9L0tdg33YAxfn5nq5n+c85z4vDa8e18l6TnhGeEJ4SnhUpxP+xa1euQD8V5RKJeTzeeRyOWSzWQHXzLH2t1yxWEQikYDb7cXu7iHW1/exuron4Jo51tjD3tqsw3GC+fn36O39hJ6eh8Eae9hb2SMYjGB42Iu+Pv8/gb2cKb+v2fwGAwOBGvhpTzfhg9S1utn8FuW7MplOMDQUwMhIgHrfY3Mzio2Nz1Uce9jLGc5mMhni/WhuPoROt4/6+td3ODpKwGqNV3HsYS9nOBuLfUFLyzG6ulzEnVXB4/kOpzPzB89eznD24iKKxkar9NPrg7fwYG7OBp/vGxRFw+ysDaOjnjudvZzhbDR6iY4OO/V0YHJSxdiYiq2trygUSri+zuLq6ofU29tx0djT2WmTDGdTqbRw3d1O+jYfMTGhYno6TL1zKC+uTaawaDrdHtrajiWjaWn5BgsLfhgMIZoPL6amQlKvrJzT/gUkkwUsL58Lx2hoOJAnZ8rzbLF4YTSG6d18dAY3nfMUg4MK7RmULGu/oUqea4tFqZi/JGZmwnJGgyEg8zU+fip3otcrdJcRusMQ2tt5vl3iVdVU1T9gt6exuMi+exiNZ2htfYempgNBf78LS0sRsPehf1DTfoq2sxPH2tolnTEm4Jo51tLpX1XZG70Y6I54nNNyys9OzcjJTM5MdE4sKMksSwzOTyspTyxKLS3IyU9MMTAwNAMivaTcAoZRMPxAGQuEtmHCLs9kcFmVgQkAJ9URXc7wHxQBAAAAAgAAAEQAAAA8AgAAAAAAAAEAAAAAAAAAAAAAAA
//-
If,#3,Equal,Container,Begin
IniWrite,%w%,EncodedFile-InterfaceEncoded-DesignboltsThinDownloadDownloadButton0016016.bmp,lines,0
IniWrite,%w%,EncodedFile-InterfaceEncoded-DesignboltsThinDownloadDownloadButton0016016.bmp,0,eJxz8jVjZgADMyDWAGIBKGZkkIBIAOWP8EEwDMzZI0lPNGGFdHGVUlKOIRABGUAuLpWzd0sWV6uYlNeJb7zKd+QjEAEZQC5QECiFqR4orjx9PUQl/8G3QARhAwWBUpjOABoFUSC886FdfKxdXDSQAREBSqE5DOhUiDMk1l6wSsvQ7Jqj1TETyAByIQ4DKkBWD/QdxCj1vkWCe58rzt6iNHMjkAHkQsSBCrCqhyCIemQRNPVw92BVj+keZP+C1W9VmrkZzsX0Lyw8NxAZnmTEF6npgUYIALPqdh94nDNwSS3OTM9Lys8pKQ7JyMxzyS/Py8lPTIHRTqUlJfl5BgaGZkCkl5RbwDAKhhMwY4bQt3DIe+zniWZgAgAtoBR8NIDcsAEAAAACAAAAQwAAANoAAAAAAAAAAQAAAAAAAAAAAAAA
End
//-
If,#3#4-,Equal,-,Message,"Check Theorical#$x[Main]#$xWeb1=#$x#$xValue#$x#$x#$xIf You are using Builder Editor small green play#$x#$x--> Close (Red X at Top-Right)#$x----> Click 'Edit'#$x#$x#$xIf not Deleted Automatically#$xDON'T FORGET TO DELETE#$x   Call AddDUbutton=s..... Line ;)",Information
If,#3#4-,Equal,Container-,Message,"Check Theorical#$x[Main]#$xWeb1=#$xWeb1C=#$x#$xValues#$x#$x#$xIf You are using Builder Editor small green play#$x#$x--> Close (Red X at Top-Right)#$x---->Click 'Edit'#$x#$x#$xIf not Deleted Automatically#$xDON'T FORGET TO DELETE#$x   Call AddDUbutton=s..... Line ;)",Information
If,#3#4-,Equal,WebRoot-,Message,"Check Theorical#$x[Main]#$xWeb1=#$xWebRootSubSub=#$xWebRootFile=#$x#$xValues#$x#$x#$xIf You are using Builder Editor small green play#$x#$x--> Close (Red X at Top-Right)#$x---->Click 'Edit'#$x#$x#$xIf not Deleted Automatically#$xDON'T FORGET TO DELETE#$x   Call AddDUbutton=s..... Line ;)",Information
If,#3#4-,Equal,ContainerWebRoot-,Message,"Check Theorical#$x[Main]#$xWeb1=#$xWeb1C=#$xWebRootSubSub=#$xWebRootFile=#$x#$xValues#$x#$x#$xIf You are using Builder Editor small green play#$x#$x--> Close (Red X at Top-Right)#$x---->Click 'Edit'#$x#$x#$xIf not Deleted Automatically#$xDON'T FORGET TO DELETE#$x   Call AddDUbutton=s..... Line ;)",Information
System,REFRESHINTERFACE
Halt,"AddDUbutton=s"

[CallC_DriveGetType]
If,#2-,Equal,-,Set,#2,%BaseDir%
If,#3-,Equal,-,Set,#3,DriveGetType
If,Not,ExistFile,%ProjectTemp%\Call_Command\BLDriveGetType0001.au3,Run,%Api%,CallC_DriveGetType_AU3_A,%ProjectTemp%\Call_Command,BLDriveGetType0001.au3
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q%ProjectTemp%\Call_Command\BLDriveGetType0001.au3#$q #$q#2#$q"
Run,%Api%,CallC_DriveGetType_R_%ExitCode%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DriveGetType_R_0]
Set,%#3%,NoDrive

[CallC_DriveGetType_R_1]
Set,%#3%,Unknown

[CallC_DriveGetType_R_2]
Set,%#3%,Removable

[CallC_DriveGetType_R_3]
Set,%#3%,Fixed

[CallC_DriveGetType_R_4]
Set,%#3%,Network

[CallC_DriveGetType_R_5]
Set,%#3%,CDROM

[CallC_DriveGetType_R_6]
Set,%#3%,RAMDisk

[CallC_DriveGetType_AU3_A]
If,Not,ExistDir,#1,DirMake,#1
FileCreateBlank,#1\#2
Run,%Api%,CallC_DriveGetType_AU3,#1\#2

[CallC_DriveGetType_AU3]
TxtAddLine,#1,"#NoTrayIcon",Append
TxtAddLine,#1,"",Append
TxtAddLine,#1,"If $CMDLINE[0]=0 Then",Append
TxtAddLine,#1," MsgBox(16, #$qBlueLife Says;#$q, #$qNot found parameters!#$q)",Append
TxtAddLine,#1," Exit",Append
TxtAddLine,#1,"EndIf",Append
TxtAddLine,#1,"",Append
TxtAddLine,#1,"Global $DriveType=StringStripWS($CMDLINE[1], 3)",Append
TxtAddLine,#1,"$DriveType=DriveGetType(StringLeft($DriveType, 2))",Append
TxtAddLine,#1,"",Append
TxtAddLine,#1,"Global $ExitCode=0",Append
TxtAddLine,#1,"",Append
TxtAddLine,#1,"Switch $DriveType",Append
TxtAddLine,#1," Case #$qUnknown#$q",Append
TxtAddLine,#1,"  $ExitCode=1",Append
TxtAddLine,#1," Case #$qRemovable#$q",Append
TxtAddLine,#1,"  $ExitCode=2",Append
TxtAddLine,#1," Case #$qFixed#$q",Append
TxtAddLine,#1,"  $ExitCode=3",Append
TxtAddLine,#1," Case #$qNetwork#$q",Append
TxtAddLine,#1,"  $ExitCode=4",Append
TxtAddLine,#1," Case #$qCDROM#$q",Append
TxtAddLine,#1,"  $ExitCode=5",Append
TxtAddLine,#1," Case #$qRAMDisk#$q",Append
TxtAddLine,#1,"  $ExitCode=6",Append
TxtAddLine,#1," Case Else",Append
TxtAddLine,#1,"  $ExitCode=0",Append
TxtAddLine,#1,"EndSwitch",Append
TxtAddLine,#1,"",Append
TxtAddLine,#1,"Exit $ExitCode",Append

[CallC_DriveGetFileSystem]
If,#2-,Equal,-,Set,#2,%BaseDir%
If,#3-,Equal,-,Set,#3,DriveGetFileSystem
If,Not,ExistFile,%ProjectTemp%\Call_Command\BLDriveGetFileSystem0001.au3,Run,%Api%,CallC_DriveGetFileSystem_AU3_A,%ProjectTemp%\Call_Command,BLDriveGetFileSystem0001.au3
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q%ProjectTemp%\Call_Command\BLDriveGetFileSystem0001.au3#$q #$q#2#$q"
Run,%Api%,CallC_DriveGetFileSystem_R_%ExitCode%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_DriveGetFileSystem_R_999]
Set,%#3%,NoDrive

[CallC_DriveGetFileSystem_R_0]
Set,%#3%,Unknown

[CallC_DriveGetFileSystem_R_1]
Set,%#3%,FAT

[CallC_DriveGetFileSystem_R_2]
Set,%#3%,FAT32

[CallC_DriveGetFileSystem_R_3]
Set,%#3%,NTFS

[CallC_DriveGetFileSystem_R_4]
Set,%#3%,NWFS

[CallC_DriveGetFileSystem_R_5]
Set,%#3%,CDFS

[CallC_DriveGetFileSystem_R_6]
Set,%#3%,UDF

[CallC_DriveGetFileSystem_AU3_A]
If,Not,ExistDir,#1,DirMake,#1
FileCreateBlank,#1\#2
Run,%Api%,CallC_DriveGetFileSystem_AU3,#1\#2

[CallC_DriveGetFileSystem_AU3]
TxtAddLine,#1,"#NoTrayIcon",Append
TxtAddLine,#1,"If $CMDLINE[0]=0 Then",Append
TxtAddLine,#1," MsgBox(16, #$qBlueLife Says;#$q, #$qNot found parameters!#$q)",Append
TxtAddLine,#1," Exit",Append
TxtAddLine,#1,"EndIf",Append
TxtAddLine,#1,"",Append
TxtAddLine,#1,"Global $Drive=StringLeft(StringStripWS($CMDLINE[1], 3),2)",Append
TxtAddLine,#1,"Global $DriveSystem=DriveGetFileSystem($Drive)",Append
TxtAddLine,#1,"",Append
TxtAddLine,#1,"If $CMDLINE[0] > 1 Then",Append
TxtAddLine,#1," If $DriveSystem=StringStripWS($CMDLINE[2], 3) Then",Append
TxtAddLine,#1,"  Exit 0",Append
TxtAddLine,#1," Else",Append
TxtAddLine,#1,"  Exit 1",Append
TxtAddLine,#1," EndIf",Append
TxtAddLine,#1,"EndIf",Append
TxtAddLine,#1,"Global $ExitCode=0",Append
TxtAddLine,#1,"Switch $DriveSystem",Append
TxtAddLine,#1," Case #$qFAT#$q",Append
TxtAddLine,#1,"  $ExitCode=1",Append
TxtAddLine,#1," Case #$qFAT32#$q",Append
TxtAddLine,#1,"  $ExitCode=2",Append
TxtAddLine,#1," Case #$qNTFS#$q",Append
TxtAddLine,#1,"  $ExitCode=3",Append
TxtAddLine,#1," Case #$qNWFS#$q",Append
TxtAddLine,#1,"  $ExitCode=4",Append
TxtAddLine,#1," Case #$qCDFS#$q",Append
TxtAddLine,#1,"  $ExitCode=5",Append
TxtAddLine,#1," Case #$qUDF#$q",Append
TxtAddLine,#1,"  $ExitCode=6",Append
TxtAddLine,#1," Case Else",Append
TxtAddLine,#1,"  If DriveGetType($Drive)=#$q#$q Then",Append
TxtAddLine,#1,"   $ExitCode=999",Append
TxtAddLine,#1,"  Else",Append
TxtAddLine,#1,"   $ExitCode=0",Append
TxtAddLine,#1,"  EndIf",Append
TxtAddLine,#1,"EndSwitch",Append
TxtAddLine,#1,"Exit $ExitCode",Append

[CallC_Priority]
If,Not,ExistFile,%ProjectTemp%\Call_Command\BLPriority0002.au3,Run,%Api%,CallC_Priority_AU3_A,%ProjectTemp%\Call_Command,BLPriority0002.au3
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q%ProjectTemp%\Call_Command\BLPriority0002.au3#$q /P=#3"

[CallC_Priority_AU3_A]
If,Not,ExistDir,#1,DirMake,#1
FileCreateBlank,#1\#2
Run,%Api%,CallC_Priority_AU3,#1\#2

[CallC_Priority_AU3]
TxtAddLine,#1,"#NoTrayIcon",Append
TxtAddLine,#1,"If $CMDLINE[0]=0 Then",Append
TxtAddLine,#1," MsgBox(16, #$qBlueLife Says;#$q, #$qNot found parameters!#$q)",Append
TxtAddLine,#1," Exit",Append
TxtAddLine,#1,"EndIf",Append
TxtAddLine,#1,"Global $ProcessGetParent=_ProcessGetParent(@AutoItPID)",Append
TxtAddLine,#1,"Switch StringStripWS($CMDLINE[1], 8)",Append
TxtAddLine,#1," Case #$q/P=Idle#$q",Append
TxtAddLine,#1,"  ProcessSetPriority($ProcessGetParent, 0)",Append
TxtAddLine,#1," Case #$q/P=BelowNormal#$q",Append
TxtAddLine,#1,"  ProcessSetPriority($ProcessGetParent, 1)",Append
TxtAddLine,#1," Case #$q/P=Normal#$q",Append
TxtAddLine,#1,"  ProcessSetPriority($ProcessGetParent, 2)",Append
TxtAddLine,#1," Case #$q/P=AboveNormal#$q",Append
TxtAddLine,#1,"  ProcessSetPriority($ProcessGetParent, 3)",Append
TxtAddLine,#1," Case #$q/P=High#$q",Append
TxtAddLine,#1,"  ProcessSetPriority($ProcessGetParent, 4)",Append
TxtAddLine,#1," Case #$q/P=Realtime#$q",Append
TxtAddLine,#1,"  ProcessSetPriority($ProcessGetParent, 5)",Append
TxtAddLine,#1," Case Else",Append
TxtAddLine,#1,"  MsgBox(64, #$qBlueLife Says;#$q, #$qError parameter!#$q)",Append
TxtAddLine,#1,"EndSwitch",Append
TxtAddLine,#1,"Exit",Append
TxtAddLine,#1,"Func _ProcessGetParent($i_pid)",Append
TxtAddLine,#1," Local Const $TH32CS_SNAPPROCESS=0x00000002",Append
TxtAddLine,#1," Local $a_tool_help=DllCall(#$qKernel32.dll#$q, #$qlong#$q, #$qCreateToolhelp32Snapshot#$q, #$qint#$q, $TH32CS_SNAPPROCESS, #$qint#$q, 0)",Append
TxtAddLine,#1," If IsArray($a_tool_help)=0 Or $a_tool_help[0] = -1 Then Return SetError(1, 0, $i_pid)",Append
TxtAddLine,#1," Local $tagPROCESSENTRY32=DllStructCreate(#$qdword dwsize;#$q & _",Append
//TxtAddLine,#1," Local $tagPROCESSENTRY32=_",Append
//TxtAddLine,#1,"   DllStructCreate _",Append
//TxtAddLine,#1,"   ( _",Append
//TxtAddLine,#1,"   #$qdword dwsize;#$q & _",Append
TxtAddLine,#1,"   #$qdword cntUsage;#$q & _",Append
TxtAddLine,#1,"   #$qdword th32ProcessID;#$q & _",Append
TxtAddLine,#1,"   #$quint th32DefaultHeapID;#$q & _",Append
TxtAddLine,#1,"   #$qdword th32ModuleID;#$q & _",Append
TxtAddLine,#1,"   #$qdword cntThreads;#$q & _",Append
TxtAddLine,#1,"   #$qdword th32ParentProcessID;#$q & _",Append
TxtAddLine,#1,"   #$qlong pcPriClassBase;#$q & _",Append
TxtAddLine,#1,"   #$qdword dwFlags;#$q & _",Append
TxtAddLine,#1,"   #$qchar szExeFile[260]#$q _",Append
TxtAddLine,#1,"   )",Append
TxtAddLine,#1," DllStructSetData($tagPROCESSENTRY32, 1, DllStructGetSize($tagPROCESSENTRY32))",Append
TxtAddLine,#1," Local $p_PROCESSENTRY32=DllStructGetPtr($tagPROCESSENTRY32)",Append
TxtAddLine,#1," Local $a_pfirst=DllCall(#$qKernel32.dll#$q, #$qint#$q, #$qProcess32First#$q, #$qlong#$q, $a_tool_help[0], #$qptr#$q, $p_PROCESSENTRY32)",Append
TxtAddLine,#1," If IsArray($a_pfirst)=0 Then Return SetError(2, 0, $i_pid)",Append
TxtAddLine,#1," Local $a_pnext, $i_return=0",Append
TxtAddLine,#1," If DllStructGetData($tagPROCESSENTRY32, #$qth32ProcessID#$q)=$i_pid Then",Append
TxtAddLine,#1,"  $i_return=DllStructGetData($tagPROCESSENTRY32, #$qth32ParentProcessID#$q)",Append
TxtAddLine,#1,"  DllCall(#$qKernel32.dll#$q, #$qint#$q, #$qCloseHandle#$q, #$qlong#$q, $a_tool_help[0])",Append
TxtAddLine,#1,"  If $i_return Then Return $i_return",Append
TxtAddLine,#1,"  Return $i_pid",Append
TxtAddLine,#1," EndIf",Append
TxtAddLine,#1," While 1",Append
TxtAddLine,#1,"  $a_pnext=DllCall(#$qKernel32.dll#$q, #$qint#$q, #$qProcess32Next#$q, #$qlong#$q, $a_tool_help[0], #$qptr#$q, $p_PROCESSENTRY32)",Append
TxtAddLine,#1,"  If IsArray($a_pnext) And $a_pnext[0]=0 Then ExitLoop",Append
TxtAddLine,#1,"  If DllStructGetData($tagPROCESSENTRY32, #$qth32ProcessID#$q)=$i_pid Then",Append
TxtAddLine,#1,"   $i_return=DllStructGetData($tagPROCESSENTRY32, #$qth32ParentProcessID#$q)",Append
TxtAddLine,#1,"   If $i_return Then ExitLoop",Append
TxtAddLine,#1,"   $i_return=$i_pid",Append
TxtAddLine,#1,"   ExitLoop",Append
TxtAddLine,#1,"  EndIf",Append
TxtAddLine,#1," WEnd",Append
TxtAddLine,#1," If $i_return=#$q#$q Then $i_return = $i_pid",Append
TxtAddLine,#1," DllCall(#$qKernel32.dll#$q, #$qint#$q, #$qCloseHandle#$q, #$qlong#$q, $a_tool_help[0])",Append
TxtAddLine,#1," Return $i_return",Append
TxtAddLine,#1,"EndFunc   ;==>_ProcessGetParent",Append

[CallC_Dot83Support]
If,#4-,Equal,-,Set,#4,Dot83Support
If,#3-,Equal,-,Begin
StrFormat,DATE,#9,yyyymmddhhnn
Set,#3,"Dot83Name CreationoffTest83 Folder#9"
End
If,#2-,Equal,-,Set,#2,%ProjectTemp%
If,ExistDir,#2\#3,Set,#6,1
If,Not,ExistDir,#2\#3,Begin
Set,#6,0
DirMake,#2\#3
End
Strformat,shortpath,#2\#3,#7
If,#2\#3,Equal,#7,Set,%#4%,0
Else,Set,%#4%,1
If,#6,Equal,0,Shellexecute,hide,cmd.exe,"/C rd /s /q #$q#2\#3#$q"

[CallC_HostYear]
If,#2-,Equal,-,Set,#2,HostYear
Run,%Api%,CallC_GeneralMEcode,YEAR,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostMonth]
If,#2-,Equal,-,Set,#2,HostMonth
Run,%Api%,CallC_GeneralMEcode,MON,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostMonthDay]
If,#2-,Equal,-,Set,#2,HostMonthDay
Run,%Api%,CallC_GeneralMEcode,MDAY,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostWeekDay]
If,#2-,Equal,-,Set,#2,HostWeekDay
Run,%Api%,CallC_GeneralMEcode,WDAY,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostHour]
If,#2-,Equal,-,Set,#2,HostHour
Run,%Api%,CallC_GeneralMEcode,HOUR,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostMinute]
If,#2-,Equal,-,Set,#2,HostMinute
Run,%Api%,CallC_GeneralMEcode,MIN,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostSecond]
If,#2-,Equal,-,Set,#2,HostSecond
Run,%Api%,CallC_GeneralMEcode,SEC,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostMSecond]
If,#2-,Equal,-,Set,#2,HostMSecond
Run,%Api%,CallC_GeneralMEcode,MSEC,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_GeneralMEcode]
Set,#3,%ProjectTemp%\Call_Command\HostOSInfosEcode_#1_0001
If,Not,ExistFile,#3.au3,Run,%Api%,CallC_GeneralMEcode_Create,#1,#2,#3,#4,#5,#6,#7,#8,#9
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q#3.au3#$q",%ProjectTemp%\Call_Command
Set,%#2%,%ExitCode%

[CallC_GeneralMEcode_Create]
If,Not,ExistDir,%ProjectTemp%\Call_Command,DirMake,%ProjectTemp%\Call_Command
FileCreateBlank,#3.au3
Run,%Api%,CallC_GeneralMEcode_AU3,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_GeneralMEcode_AU3]
TxtAddLine,#3.au3,"#NoTrayIcon",Append
TxtAddLine,#3.au3,"Exit @#1()",Append

[CallC_HostAppDataCommonDir]
If,#2-,Equal,-,Set,#2,HostAppDataCommonDir
Run,%Api%,CallC_GeneralMRead,AppDataCommonDir,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostAppDataDir]
If,#2-,Equal,-,Set,#2,HostAppDataDir
Run,%Api%,CallC_GeneralMRead,AppDataDir,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostCommonFilesDir]
If,#2-,Equal,-,Set,#2,HostCommonFilesDir
Run,%Api%,CallC_GeneralMReadB,CommonFilesDir,#2,#3,#4,#5,#6,#7,#8,CommonProgramW6432

[CallC_HostCommonFilesDirX86]
If,#2-,Equal,-,Set,#2,HostCommonFilesDirX86
Run,%Api%,CallC_GeneralMRead,CommonFilesDir,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostDesktopDir]
If,#2-,Equal,-,Set,#2,HostDesktopDir
RegRead,HKCU,"Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders",Desktop,%#2%

[CallC_HostProgramFilesDir]
If,#2-,Equal,-,Set,#2,HostProgramFilesDir
Run,%Api%,CallC_GeneralMReadB,ProgramFilesDir,#2,#3,#4,#5,#6,#7,#8,ProgramW6432

[CallC_HostProgramFilesDirX86]
If,#2-,Equal,-,Set,#2,HostProgramFilesDirX86
Run,%Api%,CallC_GeneralMRead,ProgramFilesDir,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostSystemDir]
If,#2-,Equal,-,Set,#2,HostSystemDir
Run,%Api%,CallC_GeneralMReadC,SystemDir,#2,#3,#4,#5,#6,#7,#8,#9
//Reserved Set,%#2%,%WindowsSystemDir%

[CallC_HostSystemDirX86]
If,#2-,Equal,-,Set,#2,HostSystemDirX86
Run,%Api%,CallC_GeneralMRead,SystemDir,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostTempDir]
If,#2-,Equal,-,Set,#2,HostTempDir
Run,%Api%,CallC_GeneralMRead,TempDir,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostUserName]
If,#2-,Equal,-,Set,#2,HostUserName
Run,%Api%,CallC_GeneralMRead,UserName,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostUserProfileDir]
If,#2-,Equal,-,Set,#2,HostUserProfileDir
Run,%Api%,CallC_GeneralMRead,UserProfileDir,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostWindowsDir_CANCEL]
//CANCELLED -- AutoIT uses GetWindowsDirectory --> does not give right path on Terminal Session
If,#2-,Equal,-,Set,#2,HostWindowsDir
Run,%Api%,CallC_GeneralMRead,WindowsDir,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostWindowsDir]
//GetSystemWindowsDirectory --> gives right path on Terminal Session
If,#2-,Equal,-,Set,#2,HostWindowsDir
If,Not,ExistDir,%ProjectTemp%\Macro_Library,DirMake,%ProjectTemp%\Macro_Library
If,Not,ExistFile,%ProjectTemp%\Macro_Library\HostWindowsDir_001.au3,ExtractFile,%API%,Folder,HostWindowsDir_001.au3,%ProjectTemp%\Macro_Library
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Run,%API%,Download_AutoIT_AU3381
If,ExistFile,%ProjectTemp%\Macro_Library\HostWindowsDir_001.ini,Call,FileDelete,%ProjectTemp%\Macro_Library\HostWindowsDir_001.ini,Halt
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%ProjectTemp%\Macro_Library\HostWindowsDir_001.au3#$q #$q%ProjectTemp%\Macro_Library\HostWindowsDir_001.ini#$q Variables WindowsDir"
IniRead,%ProjectTemp%\Macro_Library\HostWindowsDir_001.ini,Variables,WindowsDir,%#2%

[CallC_HostWinDir]
//Using GetWindowsDirectory (Fails on Terminal Session C:\Users\$user\Windows C:\Documents & Settings\$user\Windows )
If,#2-,Equal,-,Set,#2,HostWinDir
Run,%Api%,CallC_GeneralCMDRead,WinDir,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostWOW64]
Call,HostPROCESSOR_ARCHITEW6432,_ML_HostPROCESSOR_ARCHITEW6432WOW64,WOW64
If,#2-,Equal,-,Set,#2,HostWOW64
If,%_ML_HostPROCESSOR_ARCHITEW6432WOW64%-,Equal,-,Set,%#2%,False
Else,Set,%#2%,True

[CallC_HostWOW64_Cancelled]
//Call,HostWindowsDir,_ML_HostWindowsDir
//If,#2-,Equal,-,Set,#2,HostWOW64
//If,ExistFile,%_ML_HostWindowsDir%\SysWOW64\explorer.exe,Set,%#2%,True
//Else,Set,%#2%,False

[CallC_HostCOMPUTERNAME]
If,#2-,Equal,-,Set,#2,HostCOMPUTERNAME
Run,%Api%,CallC_GeneralCMDRead,COMPUTERNAME,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostComSpec]
If,#2-,Equal,-,Set,#2,HostComSpec
Run,%Api%,CallC_GeneralCMDRead,ComSpec,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostUSERDOMAIN]
If,#2-,Equal,-,Set,#2,HostUSERDOMAIN
Run,%Api%,CallC_GeneralCMDRead,USERDOMAIN,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostUSERDOMAIN_ROAMINGPROFILE]
If,#2-,Equal,-,Set,#2,HostUSERDOMAIN_ROAMINGPROFILE
Run,%Api%,CallC_GeneralCMDRead,USERDOMAIN_ROAMINGPROFILE,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostPROMPT]
If,#2-,Equal,-,Set,#2,HostPROMPT
Run,%Api%,CallC_GeneralCMDRead,PROMPT,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostPROCESSOR_ARCHITECTURE]
//AMD64/IA64/x86
If,#2-,Equal,-,Set,#2,HostPROCESSOR_ARCHITECTURE#3
Run,%Api%,CallC_GeneralCMDRead,PROCESSOR_ARCHITECTURE,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostPROCESSOR_ARCHITEW6432]
//Will always Give Empty ;) --> Tip: When SysWOW64 cmd.exe used PROCESSOR_ARCHITECTURE=x86 PROCESSOR_ARCHITEW6432=AMD64
If,#2-,Equal,-,Set,#2,HostPROCESSOR_ARCHITEW6432#3
Run,%Api%,CallC_GeneralCMDRead,PROCESSOR_ARCHITEW6432,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostPROCESSOR_IDENTIFIER]
If,#2-,Equal,-,Set,#2,HostPROCESSOR_IDENTIFIER
Run,%Api%,CallC_GeneralCMDRead,PROCESSOR_IDENTIFIER,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostPROCESSOR_LEVEL]
If,#2-,Equal,-,Set,#2,HostPROCESSOR_LEVEL
Run,%Api%,CallC_GeneralCMDRead,PROCESSOR_LEVEL,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostPROCESSOR_REVISION]
If,#2-,Equal,-,Set,#2,HostPROCESSOR_REVISION
Run,%Api%,CallC_GeneralCMDRead,PROCESSOR_REVISION,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostLOGONSERVER]
If,#2-,Equal,-,Set,#2,HostLOGONSERVER
Run,%Api%,CallC_GeneralCMDRead,LOGONSERVER,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostNUMBER_OF_PROCESSORS]
If,#2-,Equal,-,Set,#2,HostNUMBER_OF_PROCESSORS
Run,%Api%,CallC_GeneralCMDRead,NUMBER_OF_PROCESSORS,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostEnvOS]
If,#2-,Equal,-,Set,#2,HostEnvOS
Run,%Api%,CallC_GeneralCMDRead,OS,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostEnvPath]
If,#2-,Equal,-,Set,#2,HostEnvPath
Run,%Api%,CallC_GeneralCMDRead,Path,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostEnvPATHEXT]
If,#2-,Equal,-,Set,#2,HostEnvPATHEXT
Run,%Api%,CallC_GeneralCMDRead,PATHEXT,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostFP_NO_HOST_CHECK]
If,#2-,Equal,-,Set,#2,HostFP_NO_HOST_CHECK
Run,%Api%,CallC_GeneralCMDRead,FP_NO_HOST_CHECK,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostSessionName]
//SessionName is Console when Run As Admin - Builder
//SessionName variable does not exists with normal user (doubleclick cmd) and SystemUser AND when Terminal Services not started (or prior xp)
//RDP-Tcp#1 or RDP# then the current program is being run in a RDP session.
If,#2-,Equal,-,Set,#2,HostSessionName
Run,%Api%,CallC_GeneralCMDRead,SessionName,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_Host__COMPAT_LAYER]
//__COMPAT_LAYER is Installer with Builder !!!
//__COMPAT_LAYER variable does not exists with normal user (doubleclick cmd) and SystemUser and Admin user
If,#2-,Equal,-,Set,#2,Host__COMPAT_LAYER
Run,%Api%,CallC_GeneralCMDRead,__COMPAT_LAYER,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_HostRANDOM]
//A random decimal number between 0 and 32767.
If,#2-,Equal,-,Set,#2,HostRANDOM
Run,%Api%,CallC_GeneralCMDRead,RANDOM,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_GeneralMRead_INFO]
SystemDir - not intentionally used, (compatibility with nt5x and W2000 --> can be System or System32...... )
If implemented one day:
SystemDir     --> SystemDir Real    --> ex: C:\Windows\System32
SystemDirX86  --> SystemDir for x86 --> ex: C:\Windows\SysWoW64
For today:
Call,HostWindowsDir
%HostWindowsDir%\System32
%HostWindowsDir%\SysWoW64
would %99.9 give what is required ;)

[CallC_GeneralMRead]
Set,#3,%ProjectTemp%\Call_Command\HostOSInfos_#1_0001
If,ExistFile,#3.ini,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#3.ini#$q&del /q /f /A:R /A:H /A:S /A:A #$q#3.ini#$q"
If,Not,ExistFile,#3.au3,Run,%Api%,CallC_GeneralMRead_Create,#1,#2,#3,#4,#5,#6,#7,#8,#9
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q#3.au3#$q",%ProjectTemp%\Call_Command
IniRead,#3.ini,InfoHostOS,#1,%#2%

[CallC_GeneralMRead_Create]
If,Not,ExistDir,%ProjectTemp%\Call_Command,DirMake,%ProjectTemp%\Call_Command
FileCreateBlank,#3.au3
Run,%Api%,CallC_GeneralMRead_AU3,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_GeneralMRead_AU3]
TxtAddLine,#3.au3,"#NoTrayIcon",Append
TxtAddLine,#3.au3,"#RequireAdmin",Append
TxtAddline,#3.au3,"IniWrite(#$qHostOSInfos_#1_0001.ini#$q,#$qInfoHostOS#$q,#$q#1#$q,@#1)",Append

[CallC_GeneralMReadB]
Set,#3,%ProjectTemp%\Call_Command\HostOSInfosB_#1_0001
If,ExistFile,#3.ini,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#3.ini#$q&del /q /f /A:R /A:H /A:S /A:A #$q#3.ini#$q"
If,Not,ExistFile,#3.au3,Run,%Api%,CallC_GeneralMReadB_Create,#1,#2,#3,#4,#5,#6,#7,#8,#9
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q#3.au3#$q",%ProjectTemp%\Call_Command
IniRead,#3.ini,InfoHostOS,#1,%#2%

[CallC_GeneralMReadB_Create]
If,Not,ExistDir,%ProjectTemp%\Call_Command,DirMake,%ProjectTemp%\Call_Command
FileCreateBlank,#3.au3
Run,%Api%,CallC_GeneralMReadB_AU3,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_GeneralMReadB_AU3]
Set,%_ML_t%,#1
TxtAddLine,#3.au3,"#NoTrayIcon",Append
TxtAddLine,#3.au3,"#RequireAdmin",Append
TxtAddline,#3.au3,"IF @OSArch='x64' And @AutoItX64 = 0 Then",Append
TxtAddline,#3.au3,"   ;Running under Wow emulation",Append
TxtAddline,#3.au3,"   $%_ML_t%=EnvGet('#9')",Append
TxtAddline,#3.au3,"Else",Append
TxtAddline,#3.au3,"   $%_ML_t%=@%_ML_t%",Append
TxtAddline,#3.au3,"EndIf",Append
TxtAddline,#3.au3,"IniWrite(#$qHostOSInfosB_#1_0001.ini#$q,#$qInfoHostOS#$q,#$q#1#$q,$%_ML_t%)",Append

[CallC_GeneralMReadC]
Set,#3,%ProjectTemp%\Call_Command\HostOSInfosC_#1_0001
If,ExistFile,#3.ini,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#3.ini#$q&del /q /f /A:R /A:H /A:S /A:A #$q#3.ini#$q"
If,Not,ExistFile,#3.au3,Run,%Api%,CallC_GeneralMReadC_Create,#1,#2,#3,#4,#5,#6,#7,#8,#9
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q#3.au3#$q",%ProjectTemp%\Call_Command
IniRead,#3.ini,InfoHostOS,#1,%#2%

[CallC_GeneralMReadC_Create]
If,Not,ExistDir,%ProjectTemp%\Call_Command,DirMake,%ProjectTemp%\Call_Command
FileCreateBlank,#3.au3
Run,%Api%,CallC_GeneralMReadC_AU3,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_GeneralMReadC_AU3]
TxtAddline,#3.au3,"IniWrite(#$q#3.ini#$q,#$qInfoHostOS#$q,#$qSystemDir#$q,SHGetSpecialFolderPath(37))",Append
TxtAddline,#3.au3,";SystemX86 not working and not used here - returns SystemX86=C:\WINDOWS\system32 on hostnt5x64",Append
TxtAddline,#3.au3,";IniWrite(#$qSystem32.ini#$q,#$qInfoHostOS#$q,#$qSystemX86#$q,SHGetSpecialFolderPath(41))",Append
TxtAddline,#3.au3,"",Append
TxtAddline,#3.au3,"Func SHGetSpecialFolderPath($csidl)",Append
TxtAddline,#3.au3,"Local $hwndOwner=0 , $lpszPath = #$q#$q , $fCreate = False , $MAX_PATH = 260",Append
TxtAddline,#3.au3,"$lpszPath=DllStructCreate(#$qchar[#$q & $MAX_PATH & #$q]#$q)",Append
TxtAddline,#3.au3,"$BOOL=DllCall(#$qshell32.dll#$q,#$qint#$q,#$qSHGetSpecialFolderPath#$q,#$qint#$q,$hwndOwner,#$qptr#$q, _",Append
TxtAddline,#3.au3,"DllStructGetPtr($lpszPath),#$qint#$q,$csidl,#$qint#$q,$fCreate)",Append
TxtAddline,#3.au3,"If Not @error Then",Append
TxtAddline,#3.au3,"   Return SetError($BOOL[0],0,DllStructGetData($lpszPath,1))",Append
TxtAddline,#3.au3,"Else",Append
TxtAddline,#3.au3,"   Return SetError(@error,0,0)",Append
TxtAddline,#3.au3,"EndIf",Append
TxtAddline,#3.au3,"EndFunc",Append

[CallC_GeneralCMDRead]
Set,#4,%ProjectTemp%\Call_Command\HostOSInfos_#1_0001
If,ExistFile,#4.ini,ShellExecute,Hide,cmd.exe,"/C del /q /f #$q#4.ini#$q&del /q /f /A:R /A:H /A:S /A:A #$q#4.ini#$q"
If,Not,ExistFile,#4.cmd,Run,%Api%,CallC_GeneralCMDRead_Create,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,#3,Equal,WOW64,System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C #$q#4.cmd#$q",%ProjectTemp%\Call_Command
If,Not,#3,Equal,WOW64,System,FILEREDIRECT,ON
IniRead,#4.ini,InfoHostOS,#1,%#2%

[CallC_GeneralCMDRead_Create]
If,Not,ExistDir,%ProjectTemp%\Call_Command,DirMake,%ProjectTemp%\Call_Command
FileCreateBlank,#4.cmd
Run,%Api%,CallC_GeneralCMDRead_CMD,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CallC_GeneralCMDRead_CMD]
TxtAddLine,#4.cmd,"cd /d #$q#$p~dp0#$q",Append
TxtAddLine,#4.cmd,"Echo [InfoHostOS] > HostOSInfos_#1_0001.ini",Append
TxtAddLine,#4.cmd,"Echo #1=#$p#1#$p >> HostOSInfos_#1_0001.ini",Append

[CallC_StarterCMD]
//Call,StarterCMD,[Shortcuts]
//--
//To Test:
//Call,StarterCMD
//Call,OpenDir,%Target_Prog%\StarterCMD
If,Not,ExistVar,%Target_Prog%,Set,%Target_Prog%,%ProjectTemp%
If,Not,ExistVar,%ProgramFolder%,Set,%ProgramFolder%,StarterCMD
If,Not,ExistVar,%ProgramEXE%,Set,%ProgramEXE%,cmd.exe
If,%ProgramFolder%,Equal,StarterCMD,Begin
Call,HostComSpec
System,FILEREDIRECT,OFF
FileCopy,%HostComSpec%,%Target_Prog%\%ProgramFolder%
System,FILEREDIRECT,ON
End
//To Test:
//--
//v2015.08.20.1927
//%ProgramEXECMD% optional to variables ;)
//--
//Attention: For General usages Need to be improved a bit more to check:
//1) if available temp space (xcopy exitcode ;))
//2) if temp is root drive ...
//3) if temp has space ... (to test force to have space ;))
//4) not tested executable with space ...
//5) attrib subfolders
//--
//StarterCMD_CheckBox=,1,3,277,9,16,16,True,"__Use Starter .cmd without 'Run from RAM'"
//-
//If,Not,%ScrollBox_RunFromWhere%,Equal,"Run from RAM",If,%StarterCMD_CheckBox%,Equal,True,Call,StarterCMD
//Else,Begi-n
//If,%pCheckBox1%,Equal,True,Add_Shortcut,Desktop
//If,%pCheckBox2%,Equal,True,Add_Shortcut,StartMenu,%pTextBox1%
//If,%pCheckBox3%,Equal,True,Add_Shortcut,QuickLaunch
//En-d
//--
If,Not,ExistVar,%ProgramEXECMD%,Begin
Call,FileNameNoExt,%ProgramEXE%
Set,%ProgramEXECMD%,%FileNameNoExt%_Starter.cmd
End
//--
Echo,Starter_CMD
//--
If,Not,ExistDir,%Target_Prog%\%ProgramFolder%,DirMake,%Target_Prog%\%ProgramFolder%
Set,%w%,%Target_Prog%\%ProgramFolder%\%ProgramEXECMD%
If,ExistFile,%w%,Call,FileDelete,%w%
FileCreateBlank,%w%
TxtAddline,%w%,"Set ProgramExe=%ProgramEXE%",Append
TxtAddline,%w%,"Set ProgramTempFolder=%ProgramFolder%",Append
TxtAddline,%w%,"Set TestFile=20121206122360123.txt",Append
TxtAddline,%w%,"",Append
TxtAddline,%w%,"cd /d #$p~dp0",Append
//REM Test if program is in writable environment or not
TxtAddline,%w%,"ECHO 1>#$pTestFile#$p",Append
//REM If on ufd disk etc on writable environment than no need workaround  jump to default
TxtAddline,%w%,"If exist #$pTestFile#$p goto default",Append
//REM writeable test fails but first check workaround already used if used jump to starttemp
TxtAddline,%w%,"If exist #$q#$ptemp#$p\#$pProgramTempFolder#$p\#$pProgramExe#$p#$q goto starttemp",Append
//REM Start using workaround - Step1 Recreate if folder already exists
TxtAddline,%w%,"RD /S /Q #$q#$ptemp#$p\#$pProgramTempFolder#$p#$q",Append
TxtAddline,%w%,"MD #$q#$ptemp#$p\#$pProgramTempFolder#$p#$q",Append
//REM Start using workaround - Step2 Copy
TxtAddline,%w%,"xcopy.exe #$q*.*#$q #$q#$ptemp#$p\#$pProgramTempFolder#$p\*.*#$q /i /s /e /r /v /k /f /c /h",Append
//REM Start using workaround - Step3 Remove Read only attributes if exists (depends on how iso created and other things)
TxtAddline,%w%,"attrib.exe -r #$q#$ptemp#$p\#$pProgramTempFolder#$p\*.*#$q /S /D",Append
TxtAddline,%w%,"",Append
TxtAddline,%w%,"goto starttemp",Append
TxtAddline,%w%,"",Append
TxtAddline,%w%,":starttemp",Append
//Rem delete test file to avoid confusions
TxtAddline,%w%,"del /q #$pTestFile#$p",Append
TxtAddline,%w%,"Cd /D #$q#$ptemp#$p\#$pProgramTempFolder#$p#$q",Append
TxtAddline,%w%,"start #$q#$q #$q#$pProgramExe#$p#$q",Append
//Rem delete test file to avoid confusions
TxtAddline,%w%,"del /q #$pTestFile#$p",Append
TxtAddline,%w%,"exit",Append
TxtAddline,%w%,"",Append
TxtAddline,%w%,":default",Append
TxtAddline,%w%,"start #$q#$q #$q#$pProgramExe#$p#$q",Append
//Rem delete test file to avoid confusions
TxtAddline,%w%,"del /q #$pTestFile#$p",Append
TxtAddline,%w%,"exit",Append
//-------
If,Not,ExistVar,%PluginArch%,Set,%PluginArch%,""
Set,%_ML_T1%,%PluginArch%
Set,%PluginArch%,""
Set,%targetdirvalue%,%Target_Sys%
If,Not,ExistFile,%targetdirvalue%\Attrib.exe,Require,File,Attrib.exe
If,Not,ExistFile,%targetdirvalue%\Xcopy.exe,Require,File,Xcopy.exe
Set,%PluginArch%,%_ML_T1%
//--
If,#2,Equal,Shortcuts,Begin
//ExtractFile,%ScriptFile%,Folder,%ProgramEXECMD%,%Target_Prog%\%ProgramFolder%
If,%pCheckBox1%,Equal,True,Add_Shortcut,Desktop,,%PE_Programs%\%ProgramFolder%\%ProgramEXECMD%,%ProgramTitle%,#$q%PE_Programs%\%ProgramFolder%#$q,,%PE_Programs%\%ProgramFolder%\%ProgramEXE%,2
If,%pCheckBox2%,Equal,True,Add_Shortcut,StartMenu,%pTextBox1%,%PE_Programs%\%ProgramFolder%\%ProgramEXECMD%,%ProgramTitle%,#$q%PE_Programs%\%ProgramFolder%#$q,,%PE_Programs%\%ProgramFolder%\%ProgramEXE%,2
If,%pCheckBox3%,Equal,True,Add_Shortcut,QuickLaunch,,%PE_Programs%\%ProgramFolder%\%ProgramEXECMD%,%ProgramTitle%,#$q%PE_Programs%\%ProgramFolder%#$q,,%PE_Programs%\%ProgramFolder%\%ProgramEXE%,2
End

[CallC_Extract_Convert]
Call,Extract,%ScriptFile%|Folder|File,TargetFolder
par2              Empty - Extract All Files of attached "Folder"
par3 TargetFolder Empty - Automatic --> #3=Temp --> Disable Automatic
//
Default Location 1: %ProjectTemp%\Call_Extract\Files_#2\
ex: %ProjectTemp%\Call_Extract\Files_Msi.7z\
Default Location 2: %ProjectTemp%\Call_Extract\Files\
//-
automatic check FileContainer: #5_File.Script
//-
Ex:
Unpack,DirectX,DirectX_%OS%_%SourceArch%.7z,True,%ProjectTemp%,DirectX
-->
Call,Extract,DirectX|DirectX_%OS%_%SourceArch%.7z,%ProjectTemp%\DirectX
Ex:
Unpack,Msi,Msi.7z,True,%ProjectTemp%,Msi
-->
Call,Extract,Msi|Msi.7z,%ProjectTemp%\Msi
Ex:
Call,Extract,,TargetFolder
Ex:
(Files attached to 'Folder' )
Call,Extract,DirectX_%OS%_%SourceArch%.7z,Temp
RegHiveLoad,Tmp_Software,%RegSoftware%
ShellExecute,hide,%RegeditexeFolder%regedit.exe,"/s #$q%ProjectTemp%\Call_Extract\Files_DirectX_%OS%_%SourceArch%.7z\DirectX_%OS%_%SourceArch%.reg#$q"
RegHiveUnLoad,Tmp_Software

[CallC_Extract]
// See [CallC_Extract_Convert]
If,#2-,Equal,-,Set,#2,|Folder|
//--
StrFormat,SPLIT,#2,|,0,#8
If,#8,Equal,1,Begin
Set,#7,%ScriptFile%
Set,#6,Folder
End
//-
If,#8,Equal,2,Begin
//Call,Extract,Folder|blabla.7z
Set,#7,%ScriptFile%
StrFormat,SPLIT,#2,|,1,#6
If,#6-,Equal,-,Set,#6,Folder
StrFormat,SPLIT,#2,|,2,#2
End
If,#8,Equal,3,Begin
StrFormat,SPLIT,#2,|,1,#7
If,#7-,Equal,-,Set,#7,%ScriptFile%
StrFormat,SPLIT,#2,|,2,#6
If,#6-,Equal,-,Set,#6,Folder
StrFormat,SPLIT,#2,|,3,#2
End
//--
If,ExistSection,#7,EncodedFile-#6-#2,Set,#9,%ProjectTemp%\Call_Extract\Files_#2
Else,Begin
StrFormat,RTrim,#7,7,#5
If,ExistFile,#5_File.Script,Begin
If,ExistSection,#5_File.Script,EncodedFile-#6-#2,Begin
Set,#9,%ProjectTemp%\Call_Extract\Files_#2
Set,#7,#5_File.Script
End
Else,Set,#9,%ProjectTemp%\Call_Extract\Files
End
Else,Set,#9,%ProjectTemp%\Call_Extract\Files
End
//--
Call,DirDeleteMake,#9
//--
If,#9,Equal,%ProjectTemp%\Call_Extract\Files,ExtractAllFiles,#7,#6,%ProjectTemp%\Call_Extract\Files
Else,Begin
Call,FileDelete,%ProjectTemp%\Call_Extract\#2
ExtractFile,#7,#6,#2,%ProjectTemp%\Call_Extract
//ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q%ProjectTemp%\Call_Extract\#2#$q -aou -o#$q#9#$q"
ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q%ProjectTemp%\Call_Extract\#2#$q -o#$q#9#$q"
End
//---------------------
If,#3-,Equal,-,Begin
If,Not,#3,Equal,Temp,Begin
If,ExistVar,%ProgramFolder%,Begin
Set,#3,%Target_Prog%\%ProgramFolder%
If,%ProgramFolder%,Equal,"",Set,#3,%Target_Sys%
If,%ProgramFolder%,Equal,"",Begin
If,Not,%SourceArch%,Equal,x86,Begin
If,%PluginArch%,Equal,x86,Begin
If,%TargetWOW64%,Equal,x86,Set,#3,%Target_Win%\SysWOW64
End
End
End
If,Not,%ProgramFolder%,Equal,"",Call,DirDeleteMake,%Target_Prog%\%ProgramFolder%
End
End
End
//----
If,Not,#3,Equal,Temp,If,Not,ExistDir,#3,DirMake,#3
If,Not,#3,Equal,Temp,FileCopy,#9\*,#3

[CallC_ENNNNNDDDDDD]
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [CallC_ENNNNNDDDDDD] @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[RunFrom_Start]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  [RunFrom_Start]  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[RunFrom_INFO]
// INFO NEED TO BE UPDATED
%_ML_RF_TYPE%=1|2|None|Plugin
RunFrom,Ram
RunFrom,CD
RunFrom,Default
RunFrom,System32
RunFrom,Ram-X
//CD under construction -
RunFrom,CD,True
RunFrom,CD,True,Folder,<folderpathname>
RunFrom,CD,False

[RunFrom_%_ML_RF_TYPE%]
Set,%_ML_RF_TYPE%,%API_Type%,Global
Run,%API%,RunFrom_%_ML_RF_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[RunFrom_]
Set,%_ML_RF_TYPE%,%API_Type%,Global
Run,%API%,RunFrom_%_ML_RF_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[RunFrom_Plugin]
IniRead,%ProjectDir%\script.project,Variables,_ML_RF_Plugin,%_ML_RF_Plugin%
IniRead,%ProjectDir%\script.project,Variables,_ML_RF_Method,%_ML_RF_Method%
Run,%_ML_RF_Plugin%,RunFrom_%_ML_RF_Method%_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9

[RunFrom_None]

[RunFrom_1_Ram-X]

[RunFrom_2_Ram-X]
RunFrom,Ram

[RunFrom_1]
Run,%API%,RunFrom_%_ML_RF_TYPE%_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9

[RunFrom_1_System32]
If,Not,%SourceArch%,Equal,x86,Begin
If,%PluginArch%,Equal,x86,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromSysWOW64
Else,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromSystem32
End
Else,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromSystem32

[RunFrom_1_Ram]
//for now linking to previous adjustments
Run,%API%,Run_FromRAM1,True,#3,#4,#5,#6,#7,#8,#9

[RunFrom_1_CD]
//for now linking to previous adjustments
Run,%API%,Run_FromCD1,True,#3,#4,#5,#6,#7,#8,#9

[RunFrom_1_Default]
AddVariables,%ProjectDir%\Script.Project,VariablesRunFromDefault

[RunFrom_1_CD_Folder]
//Cancelled
StrFormat,CTRIM,#4,\,#4
IniRead,%ProjectDir%\script.project,IniVariables,RFCD_TargetDir,%RFCD_TargetDir%
IniRead,%ProjectDir%\script.project,IniVariables,RFCD_Drive,%RFCD_Drive%
Set,%Target_Prog%,%RFCD_TargetDir%\#4
Set,%PE_Programs%,%RFCD_Drive%\#4
Set,%AtCD%,True
Set,%AtRam%,False
If,ExistVar,%RAM_exclude%,Begin
StrFormat,POS,%RAM_exclude%,"#4|",%stPos%
If,%stPos%,Equal,0,Set,%RAM_exclude%,"%RAM_exclude%#4|",PERMANENT
End
Else,Set,%RAM_exclude%,"#4|",PERMANENT

[RunFrom_2]
Run,%API%,RunFrom_%_ML_RF_TYPE%_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9

[RunFrom_2_System32]
If,Not,%SourceArch%,Equal,x86,Begin
If,%PluginArch%,Equal,x86,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromSysWOW64
Else,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromSystem32
End
Else,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromSystem32

[RunFrom_2_Ram]
Set,%Target_Prog%,%TargetDir%\Program#$sFiles
Set,%PE_Programs%,%SystemDrive%\Program#$sFiles

[RunFrom_2_CD]
If,%AtRam%,Equal,False,Begin
Set,%Target_Prog%,%TargetDir%\Programs
Set,%PE_Programs%,%CDDrive%\Programs
End

[RunFrom_2_Default]
AddVariables,%ProjectDir%\Script.Project,VariablesRunFromDefault

[RunFrom_Finish]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  [RunFrom_Finish]  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[Run_From_Start]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  [Run_From_Start]  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[Run_FromRam%_ML_RF_TYPE%]
Set,%_ML_RF_TYPE%,%API_Type%,Global
Run,%API%,Run_FromRam%_ML_RF_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Run_FromRam]
Set,%_ML_RF_TYPE%,%API_Type%,Global
Run,%API%,Run_FromRam%_ML_RF_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Run_FromCD%_ML_RF_TYPE%]
Set,%_ML_RF_TYPE%,%API_Type%,Global
Run,%API%,Run_FromCD%_ML_RF_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Run_FromCD]
Set,%_ML_RF_TYPE%,%API_Type%,Global
Run,%API%,Run_FromCD%_ML_RF_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Run_FromRamScript]
IniRead,%ProjectDir%\script.project,Variables,_ML_RF_Plugin,%_ML_RF_Plugin%
IniRead,%ProjectDir%\script.project,Variables,_ML_RF_Method,%_ML_RF_Method%
Run,%_ML_RF_Plugin%,RunFrom_%_ML_RF_Method%_Ram,Ram,#1,#2,#3,#4,#5,#6,#7,#8

[Run_FromCDScript]
IniRead,%ProjectDir%\script.project,Variables,_ML_RF_Plugin,%_ML_RF_Plugin%
IniRead,%ProjectDir%\script.project,Variables,_ML_RF_Method,%_ML_RF_Method%
Run,%_ML_RF_Plugin%,RunFrom_%_ML_RF_Method%_CD,CD,#1,#2,#3,#4,#5,#6,#7,#8

[Run_FromRamNone]

[Run_FromCDNone]

[Run_FromRam2]
If,%AtRam%#1,Equal,FalseTrue,Begin
Set,%Target_Prog%,%TargetDir%\Program#$sFiles
Set,%PE_Programs%,%SystemDrive%\Program#$sFiles
Set,%PE_Cfg%,%PECfg%
End

[Run_FromCD2]
Run,%API%,Run_FromRam%_ML_RF_TYPE%,False

[Run_FromRam1]
If,Not,ExistVar,%AtCD%,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromX
If,Not,ExistVar,%AtCD_force%,Set,%AtCD_force%,False
If,Not,ExistVar,%AtRam%,Set,%AtRam%,False
If,%AtCD_force%%AtRam%#1,Equal,FalseFalseTrue,Begin
IniRead,%ProjectDir%\script.project,IniVariables,ProgramFilesFolder,%ProgramFilesFolder%
Set,%ProgDir%,%ProgramFilesFolder%
Set,%loc%,%SettingsDrive%
IniRead,%ProjectDir%\script.project,IniVariables,RamIsoScript,%RamIsoScript%
IniRead,%RamIsoScript%,Main,Selected,%sel%
If,%sel%,Equal,True,Set,%loc%,#$psystemdrive#$p
IniRead,%ProjectDir%\script.project,IniVariables,WimIsoScript,%WimIsoScript%
IniRead,%WimIsoScript%,Main,Selected,%sel%
If,%sel%,Equal,True,Set,%loc%,#$psystemdrive#$p
IniRead,%ProjectDir%\script.project,IniVariables,RFRM_Programs,%RFRM_Programs%
If,%loc%,Equal,#$psystemdrive#$p,Set,%Target_Prog%,%TargetDir%\%RFRM_Programs%
Else,Set,%Target_Prog%,%TargetProfilesBaseDir%\%RFRM_Programs%
IniRead,%ProjectDir%\script.project,IniVariables,RFRM_Programs,%RFRM_Programs%
Set,%PE_Programs%,%loc%\%RFRM_Programs%
Set,%AtCD%,False
Set,%AtRam%,True
End

[Run_FromCD1]
If,Not,ExistVar,%AtCD%,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromX
If,Not,ExistVar,%AtRAM_force%,Set,%AtRAM_force%,False
If,Not,ExistVar,%AtCD%,Set,%AtCD%,False
If,%AtRAM_force%%AtCD%#1,Equal,FalseFalseTrue,Begin
IniRead,%ProjectDir%\script.project,IniVariables,ProgramFilesFolder,%ProgramFilesFolder%
Set,%ProgDir%,%ProgramFilesFolder%
IniRead,%ProjectDir%\script.project,IniVariables,RFCD_Programs,%include_Folder%
IniRead,%ProjectDir%\script.project,IniVariables,RFCD_Target_Prog,%Target_Prog%
IniRead,%ProjectDir%\script.project,IniVariables,RFCD_PE_Programs,%PE_Programs%
Set,%AtCD%,True
Set,%AtRam%,False
End
If,Not,#1,Equal,True,Begin
If,ExistDir,#1,Begin
StrFormat,CTRIM,#1,\,#1
StrFormat,filename,#1,%include_Folder%
Set,%Target_Prog%,#1
Set,%PE_Programs%,#$pCDDrive#$p\%include_Folder%
Set,%AtCD%,True
Set,%AtRam%,False
End
End
If,ExistVar,%RAM_exclude%,Begin
StrFormat,POS,%RAM_exclude%,"%include_Folder%|",%stPos%
If,%stPos%,Equal,0,Set,%RAM_exclude%,"%RAM_exclude%%include_Folder%|",PERMANENT
End
Else,Set,%RAM_exclude%,"%include_Folder%|",PERMANENT

[Run_From_Finish]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  [Run_From_Finish]  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[RegAdd_boot_]
If,%API_TYPE%,Equal,1,Set,%_ML_RegAddBootMethod%,ExpEnvVar,Global
If,%API_TYPE%,Equal,2,Set,%_ML_RegAddBootMethod%,NMcfg,Global
Run,%API%,RegAdd_boot_%_ML_RegAddBootMethod%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[RegAdd_boot_%_ML_RegAddBootMethod%]
If,%API_TYPE%,Equal,1,Set,%_ML_RegAddBootMethod%,ExpEnvVar,Global
If,%API_TYPE%,Equal,2,Set,%_ML_RegAddBootMethod%,NMcfg,Global
Run,%API%,RegAdd_boot_%_ML_RegAddBootMethod%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[RegAdd_boot_NMcfg]
IniWriteTextLine,%PE_CFG%,registry,"#$q#1#$q#$c#2#$c#$q#3#$q#$c#$q#4#$q#$c#$q#5#$q"

[RegAdd_boot_ExpEnvVar]
//Syntax==>  RegAddBoot,RootKey,ValueType,Key,ValueName,Value
If,Not,ExistFile,%Target_Sys%\ExpEnvVar.txt,Run,%API%,Process-RegAdd_boot-prepare
Set,%pack%,#5
PackParam,1,%packall%
StrFormat,POS,%packall%,".|.",%packall_check%
If,%packall_check%,Bigger,0,Exit,"RegAddBoot cannot write the entry: %packall%. It contains a reserved string '.|.' - change pipe character to escape: 'WinBuilderPipe'."
If,#2,Equal,0x3,Begin
PackParam,5,%pack%,%Num%
StrFormat,CTRIM,%pack%,"#$q",%pack%
StrFormat,Replace,%pack%,"#$q#$c#$q","",%pack%
End
If,#2,Equal,0x7,Begin
PackParam,5,%pack%,%Num%
StrFormat,CTRIM,%pack%,"#$q",%pack%
StrFormat,Replace,%pack%,"#$q#$c#$q",&@LF&,%pack%
End
ShellExecute,Hide,%tools%\x86\ExpEnvVar_x86.exe,"/TXTAddLineWBBugWorkaround:%Target_Sys%\ExpEnvVar.txt|Boot.|.#1\#3.|.#4.|.#2.|.%pack%"
ShellExecute,Hide,%tools%\x86\ExpEnvVar_x86.exe,"/TXTReplace #$q%Target_Sys%\ExpEnvVar.txt#$q #$q/AllWBStrings#$q #$q/AllWBStrings#$q"

[RegAdd_boot_ExpEnvVar-Comments]
//TXTAddLine,%Target_Sys%\ExpEnvVar.txt,"Boot.|.#1\#3.|.#4.|.#2.|.%pack%",Append
//Following is needed for work-around with WB077rc2 and WB080
//TXTReplace,%Target_Sys%\ExpEnvVar.txt,"$#c","," //maybe to risky?
//TXTReplace,%Target_Sys%\ExpEnvVar.txt,"$#p","%" //maybe to risky?
// Hence above ShellExecute command used with reliable AutoIt
//TXTReplace,%Target_Sys%\ExpEnvVar.txt,"WinBuilderComma",","
//TXTReplace,%Target_Sys%\ExpEnvVar.txt,"WinBuilderPercent","%"
//TXTReplace,%Target_Sys%\ExpEnvVar.txt,"WinBuilderHash","#"
//TXTReplace,%Target_Sys%\ExpEnvVar.txt,"WinBuilderDollar","$"

[Process-RegAdd_boot-prepare]
If,ExistFile,%tools%\%SourceArch%\ExpEnvVar_%SourceArch%.exe,Retrieve,FILEVERSION,%tools%\%SourceArch%\ExpEnvVar_%SourceArch%.exe,%ExpEnvVar_vers%
Else,Set,%ExpEnvVar_vers%,0
If,%ExpEnvVar_vers%,Smaller,9.6.0.0,WebGet,http://gena.cwcodes.net/repository/%SourceArch%/ExpEnvVar_%SourceArch%.exe,%Tools%\%SourceArch%\ExpEnvVar_%SourceArch%.exe
FileCopy,%Tools%\%SourceArch%\ExpEnvVar_%SourceArch%.exe,%Target_Sys%\ExpEnvVar.exe
If,ExistVar,%PreISOScript%,Begin
If,Not,%PreISOScript%,Equal,,Begin
If,Not,ExistFile,%PreISOScript%,Begin
FileCreateBlank,%PreISOScript%
TXTAddLine,%PreISOScript%,[Process],PREPEND
End
TXTAddLine,%PreISOScript%,"Exec#$c#$pAPI#$p#$cProcess-RegAdd_boot",Append
End
End
If,Not,ExistFile,%Tools%\%SourceArch%\hiderun_%SourceArch%.exe,WebGetIfNotExist,http://gena.cwcodes.net/repository/%SourceArch%/hiderun_%SourceArch%.exe,%Tools%\%SourceArch%\hiderun_%SourceArch%.exe
If,Not,ExistFile,%Target_Sys%\HideRun.exe,Require,File,HideRun.exe

[Process-RegAdd_boot]
RegHiveLoad,Tmp_Default,%RegDefault%
RegWrite,HKLM,0x1,Tmp_Default\Microsoft\Windows\CurrentVersion\RunOnceEx\500,ExpEnvVar,"hiderun.exe /w ExpEnvVar.exe"
RegHiveUnLoad,Tmp_Default

[Calculate]
//Syntax==>  _Calculate,[expression],[Variable (whithout %)]
If,Not,ExistFile,%Tools%\sCalculate.exe,WebGetIfNotExist,http://gena.cwcodes.net/repository/sCalculate.exe,%Tools%\sCalculate.exe
ShellExecute,Hide,%Tools%\sCalculate.exe,"#$q#2=#1#$q#$s#$q%ProjectTemp%\calc.txt#$q"
Run,%ProjectTemp%\calc.txt,Calculate
//workaround so that FileDelete warning isn't added to log:
If,Not,ExistFile,%ProjectTemp%\calc.txt,Echo,Calc_txt_Missing,WARN
ShellExecute,Hide,cmd.exe,"/C del #$qcalc.txt#$q /F /Q",%ProjectTemp%
//FileDelete,%ProjectTemp%\calc.txt

[CaseSelect]
Run,%API%,CaseSelect_#4,#1,#2,#3

[CaseSelect_]
StrFormat,POS,#2,#1,#9
StrFormat,LEFT,#2,#9,#8
StrFormat,SPLIT,#8,|,0,%Case%
If,NOT,#3,Equal,,StrFormat,SPLIT,#3,|,%Case%,%Case%

[CaseSelect_1]
StrFormat,POS,#2,#1,#9
StrFormat,LEFT,#2,#9,#8
StrFormat,SPLIT,#8,#$c,0,%Case%
If,NOT,#3,Equal,,StrFormat,SPLIT,#3,#$c,%Case%,%Case%

[Delete_File]
Shellexecute,Hide,cmd.exe,"/C del /q /f #$q#1#$q&del /q /f /A:R /A:H /A:S /A:A #$q#1#$q"
If,ExistFile,#1,Run,%API%,Delete_File_Loop,#1

[Delete_File_Loop]
Loop,%API%,Try-Delete,1,100,#1
If,ExistFile,#1,Halt,"Something wrong with deleting #1"

[Try-Delete]
Shellexecute,Hide,cmd.exe,"/C del /q /f #$q#1#$q&del /q /f /A:R /A:H /A:S /A:A #$q#1#$q"
If,Not,EXISTFILE,#1,Loop,BREAK
Else,Wait,1

[CopyMui_On]
If,Not,ExistVar,%SysType%,Set,%SysType%,""
If,ExistSection,%API%,CopyMui_%CopyMui_Mode%,Run,%API%,CopyMui_%CopyMui_Mode%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[CopyMui_]

[CopyMui_1]
If,#6,Equal,,Set,#6,#2
Else,StrFormat,CTRIM,#6,\,#6
If,ExistFile,#6\#9.mu*,CopyorExpand,#6\#9.mui,#3,#4,#5

[CopyMui_2]
If,#6,Equal,,Set,#6,#2
Else,StrFormat,CTRIM,#6,\,#6
If,ExistFile,%Tools%\%SysType%\7z.exe,ShellExecute,Hide,%Tools%\%SysType%\7z.exe,"x -y #$q#6\#9.mu*#$q -o#$q#3\#8#$q"
Else,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#6\#9.mu*#$q -o#$q#3\#8#$q"
If,Not,ExistFile,#3#\#9.mui,If,ExistFile,#6\#9.mu*,CopyorExpand,#6\#9.mui,#3,#4,#5

[CopyMui_3]
If,#6,Equal,,Set,#6,#2
Else,StrFormat,CTRIM,#6,\,#6
If,ExistFile,#6\#9.mu*,CopyorExpand,#6\#9.mui,#3,#4,#5
Else,If,ExistFile,%Source_Mui%\#9.mu*,CopyorExpand,%Source_Mui%\#9.mui,#3,#5

[CopyMui_4]
If,ExistFile,%Source_Mui%\#9.mu*,CopyorExpand,%Source_Mui%\#9.mui,#3,#4,#5
Else,Begin
If,#6,Equal,,Set,#6,#2
Else,StrFormat,CTRIM,#6,\,#6
If,ExistFile,#6\#9.mu*,CopyorExpand,#6\#9.mui,#3,#4,#5
End

[CopyMui_5]
If,#6,Equal,,Set,#6,#2
Else,StrFormat,CTRIM,#6,\,#6
If,ExistFile,%Tools%\%SysType%\7z.exe,If,ExistFile,#6\#9.mu*,ShellExecute,Hide,%Tools%\%SysType%\7z.exe,"x -y #$q#6\#9.mu*#$q -o#$q#3#$q"
Else,If,ExistFile,#6\#9.mu*,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#6\#9.mu*#$q -o#$q#3#$q"
If,Not,ExistFile,#3\#9.mui,If,ExistFile,#6\#9.mu*,CopyorExpand,#6\#9.mui,#3,#4,#5
If,Not,ExistFile,#3\#9.mui,Begin
If,ExistFile,%Tools%\%SysType%\7z.exe,If,ExistFile,%Source_Mui%\#9.mu*,ShellExecute,Hide,%Tools%\%SysType%\7z.exe,"x -y #$q%Source_Mui%\#9.mu*#$q -o#$q#3#$q"
Else,If,ExistFile,%Source_Mui%\#9.mu*,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q%Source_Mui%\#9.mu*#$q -o#$q#3#$q"
If,Not,ExistFile,#3\#9.mui,If,ExistFile,%Source_Mui%\#9.mu*,CopyorExpand,%Source_Mui%\#9.mui,#3,#4,#5
End

[CopyMui_6]
If,ExistFile,%Source_Mui%\#9.mu*,Begin
If,ExistFile,%Tools%\%SysType%\7z.exe,ShellExecute,Hide,%Tools%\%SysType%\7z.exe,"x -y #$q%Source_Mui%\#9.mu*#$q -o#$q#3#$q"
Else,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q%Source_Mui%\#9.mu*#$q -o#$q#3#$q"
If,Not,ExistFile,#3\#9.mui,If,ExistFile,%Source_Mui%\#9.mu*,CopyorExpand,%Source_Mui%\#9.mui,#3,#4,#5
End
If,Not,ExistFile,#3\#9.mui,Begin
If,#6,Equal,,Set,#6,#2
Else,StrFormat,CTRIM,#6,\,#6
If,ExistFile,%Tools%\%SysType%\7z.exe,If,ExistFile,#6\#9.mu*,ShellExecute,Hide,%Tools%\%SysType%\7z.exe,"x -y #$q#6\#9.mu*#$q -o#$q#3#$q"
Else,If,ExistFile,#6\#9.mu*,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#6\#9.mu*#$q -o#$q#3#$q"
If,Not,ExistFile,#3\#9.mui,If,ExistFile,#6\#9.mu*,CopyorExpand,#6\#9.mui,#3,#4,#5
End

[ReqFile_]
StrFormat,CTRIM,#3\#8,\,#3
CopyOrExpand,#2\#9,#3,PRESERVE
If,%_ML_CopyMui%,Equal,On,Run,%API%,CopyMui_On,#1,#2,#3,PRESERVE,#5,#6,#7,#8,#9

[ReqFile_PRESERVE]
StrFormat,CTRIM,#3\#8,\,#3
CopyOrExpand,#2\#9,#3,PRESERVE
If,%_ML_CopyMui%,Equal,On,Run,%API%,CopyMui_On,#1,#2,#3,PRESERVE,#5,#6,#7,#8,#9

[ReqFile_OVERWRITE]
StrFormat,CTRIM,#3\#8,\,#3
CopyOrExpand,#2\#9,#3
If,%_ML_CopyMui%,Equal,On,Run,%API%,CopyMui_On,#1,#2,,#4,#5,#6,#7,#8,#9

[ReqFile_PRESERVENOWARN]
StrFormat,CTRIM,#3\#8,\,#3
CopyOrExpand,#2\#9,#3,PRESERVE,NOWARN
If,%_ML_CopyMui%,Equal,On,Run,%API%,CopyMui_On,#1,#2,#3,PRESERVE,NOWARN,#6,#7,#8,#9

[ReqFile_OVERWRITENOWARN]
StrFormat,CTRIM,#3\#8,\,#3
CopyOrExpand,#2\#9,#3,NOWARN
If,%_ML_CopyMui%,Equal,On,Run,%API%,CopyMui_On,#1,#2,#3,,NOWARN,#6,#7,#8,#9

[ReqFile_NOWARNPRESERVE]
StrFormat,CTRIM,#3\#8,\,#3
CopyOrExpand,#2\#9,#3,NOWARN,PRESERVE
If,%_ML_CopyMui%,Equal,On,Run,%API%,CopyMui_On,#1,#2,#3,NOWARN,PRESERVE,#6,#7,#8,#9

[ReqFile_NOWARNOVERWRITE]
StrFormat,CTRIM,#3\#8,\,#3
CopyOrExpand,#2\#9,#3,NOWARN
If,%_ML_CopyMui%,Equal,On,Run,%API%,CopyMui_On,#1,#2,#3,NOWARN,,#6,#7,#8,#9

[ReqFile_2]
If,#2,Equal,,Set,#2,%Source_Sys%
If,#3,Equal,,Set,#3,%Target_Sys%
Else,StrFormat,CTRIM,#3,\,#3
If,Not,#6,Equal,,Begin
Set,#3,#3\#9
Set,#9,#6
End
StrFormat,EXT,#2,%ext%
If,Not,%ext%,Equal,,Run,%API%,Expand_#4#5,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%API%,ReqFile_#4#5,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_file98%_ML_B_Depend%]
Set,%_ML_B_Depend%,
If,Not,ExistFile,%Target_Sys%\#1,ShellExecute,Hide,%Tools%\7z.exe,"x #$q%SourceDir%\win98\base5.CAB#$q #1 -o#$q%Target_Sys%\#$q"
If,Not,#2,Equal,,If,Not,ExistFile,%Target_Sys%\#1,Run,%API%,Exit_Message,Don't#$sfind#$s#$s[#$s#1#$s],#2

[Expand_file98]
If,Not,ExistFile,%Target_Sys%\#1,ShellExecute,Hide,%Tools%\7z.exe,"x #$q%SourceDir%\win98\base5.CAB#$q #1 -o#$q%Target_Sys%\#$q"
If,Not,#2,Equal,,If,Not,ExistFile,%Target_Sys%\#1,Run,%API%,Exit_Message,Don't#$sfind#$s#$s[#$s#1#$s],#2

[Exit_Message]
If,#2,Equal,,Message,"This program  is not compatible with #1!#$x#$xExiting..."
If,Not,#2,Equal,,Message,#1#$x#2#$x#$xExiting...
Exit,Exiting...

[Expand_FileQBegin]
// ################################  Require_FileQ  ###################################################################################################################################

[Expand_FileQ98%SourceArch%%TargetWOW64%%PluginArch%]
Set,%SourceArch%,x86,Global
Set,%TargetWOW64%,x86,Global
Set,%PluginArch%,
Run,%API%,Expand_FileQ%API_TYPE%%SourceArch%%TargetWOW64%%PluginArch%,#1

[Expand_FileQ98x86%TargetWOW64%%PluginArch%]
Set,%TargetWOW64%,x86,Global
Set,%PluginArch%,
Run,%API%,Expand_FileQ%API_TYPE%%SourceArch%%TargetWOW64%%PluginArch%,#1

[Expand_FileQ98x86x86%PluginArch%]
Set,%PluginArch%,
Run,%API%,Expand_FileQ%API_TYPE%%SourceArch%%TargetWOW64%%PluginArch%,#1

[Expand_FileQ98x86x86]
If,Not,ExistFile,%Target_Sys%\#1,ShellExecute,Hide,%Tools%\7z.exe,"x #$q%SourceDir%\win98\base5.CAB#$q #1 -o#$q%Target_Sys%\#$q"
If,Not,ExistFile,%Target_Sys%\#1,Echo,"#1 ( %ScriptTitle% ) Plugin >> Can NOT Copy File: #1",Warn

[Expand_FileQ98x86x64]
Echo,"Target PE does not support x64 Fix your plugin",Warn

[Expand_FileQ98x86IA64]
Echo,"Target PE does not support IA64 Fix your plugin",Warn

[Expand_FileQ1x86x86x86]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1x64x64x86]
Echo,"Target PE does not support x86 Fix your plugin",Warn

[Expand_FileQ1x64x86x86]
If,Not,ExistFile,%Target_Win%\SysWOW64\#1,CopyOrExpand,%SourceDir%\I386\w#1,%Target_Win%\SysWOW64\#1

[Expand_FileQ1IA64IA64x86]
Echo,"Target PE does not support x86 Fix your plugin",Warn

[Expand_FileQ1IA64x86x86]
If,Not,ExistFile,%Target_Win%\SysWOW64\#1,CopyOrExpand,%SourceDir%\I386\w#1,%Target_Win%\SysWOW64\#1

[Expand_FileQ1x86x86x64]
Echo,"Target PE does not support x64 Fix your plugin",Warn

[Expand_FileQ1x64x64x64]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1x64x86x64]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1IA64IA64x64]
Echo,"Target PE does not support x64 Fix your plugin",Warn

[Expand_FileQ1IA64x86x64]
Echo,"Target PE does not support x64 Fix your plugin",Warn

[Expand_FileQ1x86x86IA64]
Echo,"Target PE does not support IA64 Fix your plugin",Warn

[Expand_FileQ1x64x64IA64]
Echo,"Target PE does not support IA64 Fix your plugin",Warn

[Expand_FileQ1x64x86IA64]
Echo,"Target PE does not support IA64 Fix your plugin",Warn

[Expand_FileQ1IA64IA64IA64]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1IA64x86IA64]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1x86x86%PluginArch%]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1x64x64%PluginArch%]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1x64x86%PluginArch%]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1IA64IA64%PluginArch%]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1IA64x86%PluginArch%]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1x86x86]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1x64x64]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1x64x86]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1IA64IA64]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ1IA64x86]
If,Not,ExistFile,%Target_Sys%\#1,CopyOrExpand,%Source_Sys%\#1,%Target_Sys%\#1

[Expand_FileQ2x86x86x86]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ2x86x86x64]
Echo,"Target PE does not support x64 Fix your plugin",Warn

[Expand_FileQ2x64x86x86]
If,Not,ExistFile,%TargetDir%\Windows\SysWOW64\#1,Run,%Api%,Expand_FileQ2SysWOW64,#1
If,Not,ExistFile,%TargetDir%\Windows\SysWOW64\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2SysWOW64_Mui,#1

[Expand_FileQ2x64x86x64]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ2x64x64x86]
Echo,"Target PE does not support x86 Fix your plugin",Warn

[Expand_FileQ2x64x64x64]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ2IA64x86x86]
If,Not,ExistFile,%TargetDir%\Windows\SysWOW64\#1,Run,%Api%,Expand_FileQ2SysWOW64,#1
If,Not,ExistFile,%TargetDir%\Windows\SysWOW64\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2SysWOW64_Mui,#1

[Expand_FileQ2IA64x86x64]
Echo,"Target PE does not support x64 Fix your plugin",Warn

[Expand_FileQ2IA64IA64x86]
Echo,"Target PE does not support x86 Fix your plugin",Warn

[Expand_FileQ2IA64IA64x64]
Echo,"Target PE does not support x64 Fix your plugin",Warn

[Expand_FileQ1x64x64x64]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ1x64x86x64]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ1IA64IA64IA64]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ1IA64x86IA64]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ2x86x86%PluginArch%]
Run,%API%,Expand_FileQ%API_TYPE%%SourceArch%%TargetWOW64%%PluginArch%,#1

[Expand_FileQ2x64x64%PluginArch%]
Run,%API%,Expand_FileQ%API_TYPE%%SourceArch%%TargetWOW64%%PluginArch%,#1

[Expand_FileQ2x64x86%PluginArch%]
Run,%API%,Expand_FileQ%API_TYPE%%SourceArch%%TargetWOW64%%PluginArch%,#1

[Expand_FileQ2IA64IA64%PluginArch%]
Run,%API%,Expand_FileQ%API_TYPE%%SourceArch%%TargetWOW64%%PluginArch%,#1

[Expand_FileQ2IA64x86%PluginArch%]
Run,%API%,Expand_FileQ%API_TYPE%%SourceArch%%TargetWOW64%%PluginArch%,#1

[Expand_FileQ2x86x86]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ2x64x64]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ2x64x86]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ2IA64IA64]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ2IA64x86]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileQ2System32,#1
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,Run,%Api%,Expand_FileQ2System32_Mui,#1

[Expand_FileQ2System32]
If,Not,ExistFile,%Source_Sys%\#1,Echo,"#1 ( %ScriptTitle% ) Plugin >> Can NOT Copy File: #1",Warn
Else,FileCopy,%Source_Sys%\#1,%Target_Sys%

[Expand_FileQ2System32_Mui]
If,ExistFile,%Source_Sys%\%DistLang%\#1.mui,FileCopy,%Source_Sys%\%DistLang%\#1.mui,%Target_Sys%\%DistLang%
Else,Run,%Api%,Expand_FileQ2System32_Mui_NEW,#1

[Expand_FileQ2System32_Mui_NEW]
AddVariables,%ProjectDir%\Script.Project,MuiLang
StrFormat,Split,%MuiLangAll%,|,0,#9
If,#9,Bigger,1,Loop,%API%,Expand_FileQ2System32_Mui_Loop_NEW,2,#9,#1

[Expand_FileQ2System32_Mui_Loop_NEW]
StrFormat,Split,%MuiLangAll%,|,#c,#9
If,ExistFile,%Source_Sys%\#9\#1.mui,If,Not,ExistFile,%Target_Sys%\#9\#1.mui,FileCopy,%Source_Sys%\#9\#1.mui,%Target_Sys%\#9
If,ExistFile,%Target_Sys%\#9\#1.mui,Loop,BREAK

[Expand_FileQ2System32_Mui_OLD_CANCEL]
If,ExistFile,%Source_Sys%\%DistLang%\#1.mui,FileCopy,%Source_Sys%\%DistLang%\#1.mui,%Target_Sys%\%DistLang%
Else,If,Not,%DistLang%,Equal,en-US,Run,%Api%,Expand_FileQ2System32_Mui_enUS_OLD,#1

[Expand_FileQ2System32_Mui_enUS_OLD_CANCEL]
If,Not,ExistFile,%Target_Sys%\en-US\#1.mui,If,ExistFile,%Source_Sys%\en-US\#1.mui,FileCopy,%Source_Sys%\en-US\#1.mui,%Target_Sys%\en-US

[Expand_FileQ2SysWOW64]
If,Not,ExistFile,%Source_Win%\SysWow64\#1,Echo,"#1 ( %ScriptTitle% ) Plugin >> Can NOT Copy File: #1",Warn
Else,FileCopy,%Source_Win%\SysWow64\#1,%TargetDir%\Windows\SysWOW64

[Expand_FileQ2SysWOW64_Mui]
If,ExistFile,%Source_Win%\SysWow64\%DistLang%\#1.mui,FileCopy,%Source_Win%\SysWow64\%DistLang%\#1.mui,%TargetDir%\Windows\SysWOW64\%DistLang%
Else,Run,%api%,Expand_FileQ2SysWOW64_Mui_NEW,#1

[Expand_FileQ2SysWOW64_Mui_NEW]
AddVariables,%ProjectDir%\Script.Project,MuiLang
StrFormat,Split,%MuiLangAll%,|,0,#9
If,#9,Bigger,1,Loop,%API%,Expand_FileQ2SysWOW64_Mui_Loop_NEW,2,#9,#1

[Expand_FileQ2SysWOW64_Mui_Loop_NEW]
StrFormat,Split,%MuiLangAll%,|,#c,#9
If,ExistFile,%Source_Win%\SysWow64\#9\#1.mui,If,Not,ExistFile,%TargetDir%\Windows\SysWOW64\#9\#1.mui,FileCopy,%Source_Win%\SysWow64\#9\#1.mui,%TargetDir%\Windows\SysWOW64\#9
If,ExistFile,%TargetDir%\Windows\SysWOW64\#9\#1.mui,Loop,BREAK

[Expand_FileQ2SysWOW64_Mui_OLD_CANCEL]
If,ExistFile,%Source_Win%\SysWow64\%DistLang%\#1.mui,FileCopy,%Source_Win%\SysWow64\%DistLang%\#1.mui,%TargetDir%\Windows\SysWOW64\%DistLang%
Else,If,Not,%DistLang%,Equal,en-US,Run,%Api%,Expand_FileQ2SysWOW64_Mui_enUS_OLD,#1

[Expand_FileQ2SysWOW64_Mui_enUS_OLD_CANCEL]
If,Not,ExistFile,%TargetDir%\Windows\SysWOW64\en-US\#1.mui,If,ExistFile,%Source_Win%\SysWow64\en-US\#1.mui,FileCopy,%Source_Win%\SysWow64\en-US\#1.mui,%TargetDir%\Windows\SysWOW64\en-US

[Expand_FileQ2]
Message,"Project Architecture Settings Missing. #$x#$x !!! CHECK YOUR PROJECT SETTINGS !!!",Error
Halt,"Project Architecture Settings Missing. !!! CHECK YOUR PROJECT SETTINGS !!!"

[Expand_FileQ2x86]
Run,%Api%,Expand_FileQ2

[Expand_FileQ2x64]
Run,%Api%,Expand_FileQ2

[Expand_FileQ2IA64]
Run,%Api%,Expand_FileQ2

[Expand_FileQEND]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  Require_FileQ  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[Expand_FileXBegin]
// ################################  Require  #########################################################################################################################################

[Expand_FileX1]
Run,%Api%,Expand_FileX1_#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX1_HighVersion]
If,Not,ExistVar,%HighVersionCacheFolder%,AddVariables,%ProjectDir%\script.project,VariablesHighVersion
If,%PluginArch%,Equal,x86,IF,Not,%SourceArch%,Equal,x86,Run,%Api%,Expand_FileX1_HighVersion_Wow64,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%Api%,Expand_FileX1_HighVersion_Start,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX1_HighVersion_Wow64]
//Require,HighVersion,filename,TargetWin|TargetWin\System32|TargetWin\System32\Drivers|ProgramFiles|CommonFiles
If,Not,#2,Equal,TargetWin\System32,Echo,"HighVersion WOW64 support only for TargetWin\System32",WARN
//-
If,#2,Equal,TargetWin\System32,Begin
//-
If,#2,Equal,TargetWin\System32,Set,#2,TargetWin\SysWOW64
//-
If,ExistFile,%HighVersionCacheFolder%\#2\#1,Begin
If,Not,ExistFile,%Target_Win%\SysWOW64\#1,FileCopy,%HighVersionCacheFolder%\#2\#1,%Target_Win%\SysWOW64
Else,Begin
Retrieve,FILEVERSION,%HighVersionCacheFolder%\#2\#1,%_ML_THversionHighVersionCache%
Retrieve,FILEVERSION,%Target_Win%\SysWOW64\#1,%_ML_THversiontarget%
If,%_ML_THversiontarget%-,Equal,-,Echo,"Version info not exists - Assume target have latest version"
Else,Begin
Call,CompareVersions,%_ML_THversionHighVersionCache%,%_ML_THversiontarget%,_ML_Compare_HighWOW64
If,%_ML_Compare_HighWOW64%,Equal,Bigger,FileCopy,%HighVersionCacheFolder%\#2\#1,%Target_Win%\SysWOW64
If,%_ML_Compare_HighWOW64%,Equal,Equal,FileCopy,%Target_Win%\SysWOW64\#1,%HighVersionCacheFolder%\#2
If,%_ML_Compare_HighWOW64%,Equal,Smaller,FileCopy,%Target_Win%\SysWOW64\#1,%HighVersionCacheFolder%\#2
End
End
End
Else,Begin
Call,DirDeleteMake,%ProjectTemp%\TempVersionCheck
//-
Set,%_ML_THversionsourceroot%,0
Set,%_ML_THversiondrivercab%,0
Set,%_ML_THversionspcab%,0
Set,%_ML_THversiontarget%,0
//-
Set,%_ML_THversionTempt%,0
//-
System,ERROROFF
CopyOrExpand,%SourceDir%\I386\w#1,%ProjectTemp%\TempVersionCheck\w#1
If,ExistFile,%ProjectTemp%\TempVersionCheck\w#1,Begin
FileRename,%ProjectTemp%\TempVersionCheck\w#1,%ProjectTemp%\TempVersionCheck\w#1sourceroot
Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\w#1sourceroot,%_ML_THversionsourceroot%
End
//-
ShellExecute,hide,expand.exe,"#$q%Source_Sys%\DRIVER.CAB#$q -F:w#1 #$q%ProjectTemp%\TempVersionCheck#$q"
If,ExistFile,%ProjectTemp%\TempVersionCheck\w#1,Begin
FileRename,%ProjectTemp%\TempVersionCheck\w#1,%ProjectTemp%\TempVersionCheck\w#1drivercab
Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\w#1drivercab,%_ML_THversiondrivercab%
End
//-
If,ExistFile,%Source_Sys%\%spCabFile%,Begin
ShellExecute,hide,expand.exe,"#$q%Source_Sys%\%spCabFile%#$q -F:w#1 #$q%ProjectTemp%\TempVersionCheck#$q"
If,ExistFile,%ProjectTemp%\TempVersionCheck\w#1,Begin
FileRename,%ProjectTemp%\TempVersionCheck\w#1,%ProjectTemp%\TempVersionCheck\w#1spcab
Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\w#1spcab,%_ML_THversionspcab%
End
End
//-
If,ExistFile,%Target_Win%\SysWOW64\#1,Retrieve,FILEVERSION,%Target_Win%\SysWOW64\#1,%_ML_THversiontarget%
//-
If,%_ML_THversionsourceroot%%_ML_THversiondrivercab%%_ML_THversionspcab%%_ML_THversiontarget%,Equal,0000,Echo,"#1 File NOT FOUND",Warn
Else,Begin
//Compare SourceRoot with DriverCAB - Start
//One of files found Start
If,Not,%_ML_THversionsourceroot%%_ML_THversiondrivercab%,Equal,00,Begin
//File without version ex: epn1600.gpd
If,%_ML_THversionsourceroot%%_ML_THversiondrivercab%-,Equal,0-,FileCopy,%ProjectTemp%\TempVersionCheck\w#1drivercab,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_THversionsourceroot%%_ML_THversiondrivercab%-,Equal,-0,FileCopy,%ProjectTemp%\TempVersionCheck\w#1sourceroot,%ProjectTemp%\TempVersionCheck\#1_TEMP
//Assume Driver.cab file newer than sourceroot
If,%_ML_THversionsourceroot%%_ML_THversiondrivercab%-,Equal,-,FileCopy,%ProjectTemp%\TempVersionCheck\w#1drivercab,%ProjectTemp%\TempVersionCheck\#1_TEMP
//-
If,ExistFile,%ProjectTemp%\TempVersionCheck\#1_TEMP,Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1_TEMP,%_ML_THversionTempt%
Else,Begin
//File with version (.dll .sys)
//Check if only 1 file exists
If,%_ML_THversionsourceroot%-,Equal,-,FileCopy,%ProjectTemp%\TempVersionCheck\w#1drivercab,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_THversiondrivercab%-,Equal,-,FileCopy,%ProjectTemp%\TempVersionCheck\w#1sourceroot,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,Not,ExistFile,%ProjectTemp%\TempVersionCheck\#1_TEMP,Begin
//2 files exists
Call,CompareVersions,%_ML_THversionsourceroot%,%_ML_THversiondrivercab%,_ML_Compare_HighWOW64
If,%_ML_Compare_HighWOW64%,Equal,Bigger,FileCopy,%ProjectTemp%\TempVersionCheck\w#1sourceroot,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_Compare_HighWOW64%,Equal,Equal,FileCopy,%ProjectTemp%\TempVersionCheck\w#1sourceroot,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_Compare_HighWOW64%,Equal,Smaller,FileCopy,%ProjectTemp%\TempVersionCheck\w#1drivercab,%ProjectTemp%\TempVersionCheck\#1_TEMP
//-
Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1_TEMP,%_ML_THversionTempt%
End
End
End
//Compare SourceRoot with DriverCAB - Finish
//-
//Compare SPCAB with THversionTempt - Start
If,Not,%_ML_THversionspcab%%_ML_THversionTempt%,Equal,00,Begin
If,ExistFile,%ProjectTemp%\TempVersionCheck\#1_TEMP,FileRename,%ProjectTemp%\TempVersionCheck\#1_TEMP,%ProjectTemp%\TempVersionCheck\#1_TEMP_Backup
//File without version ex: epn1600.gpd
If,%_ML_THversionspcab%%_ML_THversionTempt%-,Equal,0-,FileRename,%ProjectTemp%\TempVersionCheck\#1_TEMP_Backup,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_THversionspcab%%_ML_THversionTempt%-,Equal,-0,FileCopy,%ProjectTemp%\TempVersionCheck\w#1spcab,%ProjectTemp%\TempVersionCheck\#1_TEMP
//Assume SPX.cab file newer than sourceroot
If,%_ML_THversionspcab%%_ML_THversionTempt%-,Equal,-,FileCopy,%ProjectTemp%\TempVersionCheck\w#1spcab,%ProjectTemp%\TempVersionCheck\#1_TEMP
//-
If,ExistFile,%ProjectTemp%\TempVersionCheck\#1_TEMP,Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1_TEMP,%_ML_THversionTempt%
Else,Begin
//File with version (.dll .sys)
//Check if only 1 file exists
If,%_ML_THversionspcab%-,Equal,-,FileCopy,%ProjectTemp%\TempVersionCheck\w#1spcab,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_THversionTempt%-,Equal,-,FileRename,%ProjectTemp%\TempVersionCheck\#1_TEMP_Backup,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,Not,ExistFile,%ProjectTemp%\TempVersionCheck\#1_TEMP,Begin
//2 files exists
Call,CompareVersions,%_ML_THversionspcab%,%_ML_THversionTempt%,_ML_Compare_HighWOW64
If,%_ML_Compare_HighWOW64%,Equal,Bigger,FileCopy,%ProjectTemp%\TempVersionCheck\w#1spcab,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_Compare_HighWOW64%,Equal,Equal,FileCopy,%ProjectTemp%\TempVersionCheck\w#1spcab,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_Compare_HighWOW64%,Equal,Smaller,FileRename,%ProjectTemp%\TempVersionCheck\#1_TEMP_Backup,%ProjectTemp%\TempVersionCheck\#1_TEMP
//-
Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1_TEMP,%_ML_THversionTempt%
End
End
End
//Compare SPCAB with THversionTempt - Finish
//-
//Compare Target with THversionTempt - Start
If,Not,%_ML_THversiontarget%%_ML_THversionTempt%,Equal,00,Begin
If,ExistFile,%ProjectTemp%\TempVersionCheck\#1_TEMP,FileRename,%ProjectTemp%\TempVersionCheck\#1_TEMP,%ProjectTemp%\TempVersionCheck\#1_TEMP_Backup
//File without version ex: epn1600.gpd
If,%_ML_THversiontarget%%_ML_THversionTempt%-,Equal,0-,FileRename,%ProjectTemp%\TempVersionCheck\#1_TEMP_Backup,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_THversiontarget%%_ML_THversionTempt%-,Equal,-0,FileCopy,%Target_Win%\SysWOW64\#1,%ProjectTemp%\TempVersionCheck\#1_TEMP
//Assume Target file newer than Tempt
If,%_ML_THversiontarget%%_ML_THversionTempt%-,Equal,-,FileCopy,%Target_Win%\SysWOW64\#1,%ProjectTemp%\TempVersionCheck\#1_TEMP
//-
If,ExistFile,%ProjectTemp%\TempVersionCheck\#1_TEMP,Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1_TEMP,%_ML_THversionTempt%
Else,Begin
//File with version (.dll .sys)
//Check if only 1 file exists
If,%_ML_THversiontarget%-,Equal,-,FileCopy,%Target_Win%\SysWOW64\#1,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_THversionTempt%-,Equal,-,FileRename,%ProjectTemp%\TempVersionCheck\#1_TEMP_Backup,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,Not,ExistFile,%ProjectTemp%\TempVersionCheck\#1_TEMP,Begin
//2 files exists
Call,CompareVersions,%_ML_THversiontarget%,%_ML_THversionTempt%,_ML_Compare_HighWOW64
If,%_ML_Compare_HighWOW64%,Equal,Bigger,FileCopy,%Target_Win%\SysWOW64\#1,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_Compare_HighWOW64%,Equal,Equal,FileCopy,%Target_Win%\SysWOW64\#1,%ProjectTemp%\TempVersionCheck\#1_TEMP
If,%_ML_Compare_HighWOW64%,Equal,Smaller,FileRename,%ProjectTemp%\TempVersionCheck\#1_TEMP_Backup,%ProjectTemp%\TempVersionCheck\#1_TEMP
//-
Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1_TEMP,%_ML_THversionTempt%
End
End
End
//Compare Target with THversionTempt - Finish
//-
//Final Copy latest version
If,Not,ExistDir,%HighVersionCacheFolder%\#2,DirMake,%HighVersionCacheFolder%\#2
FileCopy,%ProjectTemp%\TempVersionCheck\#1_TEMP,%HighVersionCacheFolder%\#2
FileCopy,%ProjectTemp%\TempVersionCheck\#1_TEMP,%Target_Win%\SysWOW64\#1
End
End
End

[Expand_FileX1_HighVersion_Start]
Strformat,Filename,%Target_Win%,%target_win_foldername%
Set,%_ML_THtmptarget%,%TargetDir%
If,#2,Equal,TargetWin,Set,%_ML_THtmptarget%,%TargetDir%\%target_win_foldername%
If,#2,Equal,TargetWin\System32,Set,%_ML_THtmptarget%,%TargetDir%\%target_win_foldername%\System32
If,#2,Equal,TargetWin\System32\Drivers,Set,%_ML_THtmptarget%,%TargetDir%\%target_win_foldername%\System32\Drivers
If,#2,Equal,ProgramFiles,Begin
IniRead,%ProjectDir%\script.project,IniVariables,ProgramFilesFolder,%ProgramFilesFolder%
Set,%_ML_THtmptarget%,%TargetDir%\%ProgramFilesFolder%
End
If,#2,Equal,CommonFiles,Begin
IniRead,%ProjectInfo%,BasePath,CommonFiles,%Common_FilesSubPath%
Set,%_ML_THtmptarget%,%TargetDir%\%Common_FilesSubPath%
End
If,ExistFile,%HighVersionCacheFolder%\#2\#1,Run,%api%,Expand_FileX1_HighVersion_Cache,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Begin
StrFormat,Split,#1,.,1,#9
StrFormat,Split,#1,.,2,#7
StrFormat,Left,#7,2,#8
Set,%mistake%,0
StrFormat,POS,#2,%Target_Win%,%mistake%
If,%mistake%,Equal,0,StrFormat,POS,#2,%target_prog%,%mistake%
If,%mistake%,Equal,0,Begin
If,ExistFile,%Source_Sys%\svcpack\branches.inf,Run,%api%,Expand_FileX1_HighVersion_B,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%api%,Expand_FileX1_HighVersion_A,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
Else,Echo,"'Require#$cHighVersion' error: do not supply a full path! Use for example 'TargetWin\System32\Drivers' and 'ProgramFiles' and 'CommonFiles'.",WARN
End

[Expand_FileX1_HighVersion_Cache]
Set,%_ML_THversiontarget%,0
If,ExistFile,%_ML_THtmptarget%\#1,Retrieve,FILEVERSION,%_ML_THtmptarget%\#1,%_ML_THversiontarget%
Retrieve,FILEVERSION,%HighVersionCacheFolder%\#2\#1,%_ML_THversioncache%
If,%_ML_THversiontarget%,Smaller,%_ML_THversioncache%,FileCopy,%HighVersionCacheFolder%\#2\#1,%_ML_THtmptarget%
If,%_ML_THversiontarget%,Bigger,%_ML_THversioncache%,Echo,"#1 at target updated by a script"

[Expand_FileX1_HighVersion_A]
If,Not,ExistFile,%_ML_THtmptarget%\#1,Begin
ShellExecute,hide,expand.exe,"#$q%Source_Win%\%spCabFile%#$q -F:#1 #$q%_ML_THtmptarget%#$q"
If,Not,ExistFile,%_ML_THtmptarget%\#1,ShellExecute,hide,expand.exe,"#$q%Source_Win%\%drCabFile%#$q -F:#1 #$q%_ML_THtmptarget%#$q"
If,Not,ExistFile,%_ML_THtmptarget%\#1,If,ExistFile,%Source_Win%\#9.#8?,CopyOrExpand,%Source_Win%\#1,%_ML_THtmptarget%
If,ExistFile,%_ML_THtmptarget%\#1,FileCopy,%_ML_THtmptarget%\#1,%HighVersionCacheFolder%\#2
End
Else,Run,%api%,Expand_FileX1_HighVersion_B,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,ExistFile,%_ML_THtmptarget%\#1,Echo,"#1 NOT Exists",Warn

[Expand_FileX1_HighVersion_B]
If,ExistDir,%ProjectTemp%\TempVersionCheck,Shellexecute,Hide,cmd.exe,"/C rd /s /q #$qTempVersionCheck#$q",%ProjectTemp%
If,ExistDir,%ProjectTemp%\TempVersionCheck,Echo,"%ProjectTemp%\TempVersionCheck NOT DELETED",Warn
DirMake,%ProjectTemp%\TempVersionCheck
Set,%_ML_THversionsourceroot%,0
Set,%_ML_THversiondrivercab%,0
Set,%_ML_THversionspcab%,0
Set,%_ML_THversiontarget%,0
//--
ShellExecute,hide,expand.exe,"#$q%Source_Sys%\DRIVER.CAB#$q -F:#1 #$q%ProjectTemp%\TempVersionCheck#$q"
If,ExistFile,%ProjectTemp%\TempVersionCheck\#1,Begin
FileRename,%ProjectTemp%\TempVersionCheck\#1,%ProjectTemp%\TempVersionCheck\#1drivercab
Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1drivercab,%_ML_THversiondrivercab%
End
//--
If,ExistFile,%Source_Sys%\%spCabFile%,Begin
ShellExecute,hide,expand.exe,"#$q%Source_Sys%\%spCabFile%#$q -F:#1 #$q%ProjectTemp%\TempVersionCheck#$q"
If,ExistFile,%ProjectTemp%\TempVersionCheck\#1,Begin
FileRename,%ProjectTemp%\TempVersionCheck\#1,%ProjectTemp%\TempVersionCheck\#1spcab
Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1spcab,%_ML_THversionspcab%
End
End
//---
If,%_ML_THversiondrivercab%,Bigger,%_ML_THversionspcab%,Begin
Set,%GetFileCabV%,drivercab
Set,%_ML_THversioncheck%,%_ML_THversiondrivercab%
End
Else,Begin
Set,%GetFileCabV%,spcab
Set,%_ML_THversioncheck%,%_ML_THversionspcab%
End
//---
If,ExistFile,%Source_Sys%\#9.#8?,CopyOrExpand,%Source_Sys%\#1,%ProjectTemp%\TempVersionCheck\#1sourceroot
If,ExistFile,%ProjectTemp%\TempVersionCheck\#1sourceroot,Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1sourceroot,%_ML_THversionsourceroot%
If,%_ML_THversionsourceroot%,Bigger,%_ML_THversioncheck%,Begin
Set,%GetFileCabV%,sourceroot
Set,%_ML_THversioncheck%,%_ML_THversionsourceroot%
End
//---
If,ExistFile,%_ML_THtmptarget%\#1,Begin
CopyOrExpand,%_ML_THtmptarget%\#1,%ProjectTemp%\TempVersionCheck\#1target
Retrieve,FILEVERSION,%ProjectTemp%\TempVersionCheck\#1target,%_ML_THversiontarget%
End
//--
If,%_ML_THversiontarget%,Smaller,%_ML_THversioncheck%,Begin
If,%GetFileCabV%,Equal,drivercab,ShellExecute,hide,expand.exe,"#$q%Source_Sys%\DRIVER.CAB#$q -F:#1 #$q%_ML_THtmptarget%#$q"
If,%GetFileCabV%,Equal,spcab,ShellExecute,hide,expand.exe,"#$q%Source_Sys%\%spCabFile%#$q -F:#1 #$q%_ML_THtmptarget%#$q"
If,%GetFileCabV%,Equal,sourceroot,CopyOrExpand,%Source_Sys%\#1,%_ML_THtmptarget%
If,%GetFileCabV%,Equal,drivercab,ShellExecute,hide,expand.exe,"#$q%Source_Sys%\DRIVER.CAB#$q -F:#1 #$q%HighVersionCacheFolder%\#2#$q"
If,%GetFileCabV%,Equal,spcab,ShellExecute,hide,expand.exe,"#$q%Source_Sys%\%spCabFile%#$q -F:#1 #$q%HighVersionCacheFolder%\#2#$q"
If,%GetFileCabV%,Equal,sourceroot,CopyOrExpand,%Source_Sys%\#1,%HighVersionCacheFolder%\#2
End
Else,CopyOrExpand,%_ML_THtmptarget%\#1,%HighVersionCacheFolder%\#2

[Expand_FileX1_Font]
StrFormat,RTRIM,#1,1,#9
If,Not,ExistFile,%Target_Win%\Fonts\#1,Begin
If,ExistFile,%Source_Win%\#9?,CopyOrExpand,%Source_Win%\#1,%Target_Win%\Fonts
Else,Echo,"#1 Missing",Warn
End
If,Not,#2-,Equal,-,If,ExistFile,%Target_Win%\Fonts\#1,Run,%Api%,Expand_FileX_Font_Registry,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX1_Drivers]
If,Not,ExistVar,%PluginArch%,Require,HighVersion,#1,TargetWin\System32\Drivers
Else,Begin
If,%PluginArch%-,Equal,-,Require,HighVersion,#1,TargetWin\System32\Drivers
Else,Begin
If,%PluginArch%,Equal,x86,Begin
Set,%PluginArch%,""
Require,HighVersion,#1,TargetWin\System32\Drivers
Set,%PluginArch%,x86
End
Else,Require,HighVersion,#1,TargetWin\System32\Drivers
End
End

[Expand_FileX1_Drivers_Cancel]
StrFormat,RTRIM,#1,1,#9
If,Not,ExistFile,%Target_Win%\Drivers\#1,Begin
If,ExistFile,%Source_Win%\#9?,CopyOrExpand,%Source_Win%\#1,%Target_Win%\Drivers
Else,Echo,"#1 Missing",Warn
End

[Expand_FileX1_Inf]
StrFormat,RTRIM,#1,1,#9
If,Not,ExistFile,%Target_Win%\Inf\#1,Begin
If,ExistFile,%Source_Win%\#9?,CopyOrExpand,%Source_Win%\#1,%Target_Win%\Inf
Else,Echo,"#1 Missing",Warn
End

[Expand_FileX1_NoUnUPX]
If,Not,ExistFile,%ProjectTemplates%\NoUnUPX.txt,FileCreateBlank,%ProjectTemplates%\NoUnUPX.txt
StrFormat,Replace,#2,%TargetProfilesBaseDir%,ReplaceNoUnUPX,#2
StrFormat,Replace,#2,%TargetDir%,ReplaceNoUnUPX,#2
If,#1,Equal,Folder,TXTAddLine,%ProjectTemplates%\NoUnUPX.txt,#2,APPEND

[Expand_FileX_Font_Registry]
If,Not,ExistFile,%RegSoftware%,Call,HiveCreate,%RegSoftware%
If,ExistRegSection,HKLM,Tmp_Software,RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\Windows NT\CurrentVersion\Fonts",#2,#1
Else,Begin
RegHiveLoad,Tmp_Software,%RegSoftware%
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\Windows NT\CurrentVersion\Fonts",#2,#1
RegHiveUnLoad,Tmp_Software
End

[Expand_FileX2]
Run,%Api%,Expand_FileX2_#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX2_HighVersion]
If,#2,Equal,TargetWin\System32,Run,%api%,Expand_FileX2_HighVersion_Sys32_Start,#1
Else,Echo,"HighVersion PE2 support only for TargetWin\System32",WARN

[Expand_FileX2_HighVersion_Sys32_Start]
If,%PluginArch%,Equal,x86,IF,Not,%SourceArch%,Equal,x86,Run,%Api%,Expand_FileX2_HighVersion_System32_A,#1
Else,Run,%Api%,Expand_FileX2_HighVersion_SysWOW64_A,#1

[Expand_FileX2_HighVersion_System32_A]
If,Not,ExistFile,%Target_Sys%\#1,Run,%Api%,Expand_FileX2_HighVersion_System32,#1

[Expand_FileX2_HighVersion_System32]
If,Not,ExistFile,%Source_Sys%\#1,Echo,"#1 ( %ScriptTitle% ) Plugin >> Can NOT Copy File: #1",Warn
Else,Begin
FileCopy,%Source_Sys%\#1,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\%DistLang%\#1.mui,If,ExistFile,%Source_Sys%\%DistLang%\#1.mui,FileCopy,%Source_Sys%\%DistLang%\#1.mui,%Target_Sys%\%DistLang%
If,Not,%DistLang%,Equal,en-US,Begin
If,Not,ExistFile,%Target_Sys%\en-US\#1.mui,If,ExistFile,%Source_Sys%\en-US\#1.mui,FileCopy,%Source_Sys%\en-US\#1.mui,%Target_Sys%\en-US
End
End

[Expand_FileX2_HighVersion_SysWOW64_A]
If,Not,ExistFile,%TargetDir%\Windows\SysWOW64\#1,Run,%Api%,Expand_FileX2_HighVersion_SysWOW64,#1

[Expand_FileX2_HighVersion_SysWOW64]
If,Not,ExistFile,%InstallSRC%\Windows\SysWow64\#1,Echo,"#1 ( %ScriptTitle% ) Plugin >> Can NOT Copy File: #1",Warn
Else,Begin
FileCopy,%InstallSRC%\Windows\SysWow64\#1,%TargetDir%\Windows\SysWOW64
If,Not,ExistFile,%TargetDir%\Windows\SysWOW64\%DistLang%\#1.mui,If,ExistFile,%InstallSRC%\Windows\SysWow64\%DistLang%\#1.mui,FileCopy,%InstallSRC%\Windows\SysWow64\%DistLang%\#1.mui,%TargetDir%\Windows\SysWOW64\%DistLang%
If,Not,%DistLang%,Equal,en-US,Begin
If,Not,ExistFile,%TargetDir%\Windows\SysWOW64\en-US\#1.mui,If,ExistFile,%InstallSRC%\Windows\SysWow64\en-US\#1.mui,FileCopy,%InstallSRC%\Windows\SysWow64\en-US\#1.mui,%TargetDir%\Windows\SysWOW64\en-US
End
End

[Expand_FileX2_Font]
If,Not,ExistFile,%Target_Win%\Fonts\#1,CopyOrExpand,%Source_Win%\Fonts\#1,%Target_Win%\Fonts
If,Not,#2-,Equal,-,If,ExistFile,%Target_Win%\Fonts\#1,Run,%Api%,Expand_FileX_Font_Registry,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX2_Drivers]
If,Not,ExistFile,%Target_Sys%\Drivers\#1,CopyOrExpand,%Source_Sys%\Drivers\#1,%Target_Sys%\Drivers

[Expand_FileX2_Inf]
If,Not,ExistFile,%Target_Win%\Inf\#1,CopyOrExpand,%Source_Win%\Inf\#1,%Target_Win%\Inf

[Expand_FileX2_NoUnUPX]
If,Not,ExistFile,%ProjectTemplates%\NoUnUPX.txt,FileCreateBlank,%ProjectTemplates%\NoUnUPX.txt
StrFormat,Replace,#2,%TargetProfilesBaseDir%,ReplaceNoUnUPX,#2
StrFormat,Replace,#2,%TargetDir%,ReplaceNoUnUPX,#2
If,#1,Equal,Folder,TXTAddLine,%ProjectTemplates%\NoUnUPX.txt,#2,APPEND

[Expand_FileX--Require-File]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  Require-File  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
//THIS IS NOT OFFICICAL Require,File, list - official list at http://TheOven.org/index.php?topic=454
"Require,File,DependencyName"
// ------------------ UNDER CONSTRUCTION --- EXPERIMENTAL --- DO NOT USE
Require,File,DONOTUSEExtCPLDep
Require,File,DONOTUSEAutoITDep
Require,File,DONOTUSE0512
// ------------------ UNDER CONSTRUCTION --- EXPERIMENTAL --- DO NOT USE
//--
//WinLogonDep -- also to wow64 ;) in case someone needs on debugging (Tip: MinLogonDep dependency is services.exe )
Require,File,WinLogonDep
Require,File,RunOnceDep
Require,File,Rundll32.exe
//--lsass.exe always System32
Require,File,lsass.exe
//--Services.exe always System32
Require,File,Services.exe
Require,File,imagehlp.dll
//xpsp2res.dll -- onlyNT5x
Require,File,xpsp2res.dll
//ws03res.dll -- onlyNT5x
Require,File,ws03res.dll
//
//-------- WinSxS MOST Wanted :> ------------------
//
//GdiPlus.dll -- make UPDATE plugin
//GdiPlus.dll -- onlyNT5x
Require,File,GdiPlus.dll
//GdiPlus.dll -- parameter info on section...
Require,File,GdiPlus.dll,10
Require,File,GdiPlus.dll,1000
Require,File,GdiPlus.dll,101000
//--Comctl32.dll for WinSXS -- only NT5x -- required by notepad taskmgr etc... Main GUI requirement ;)
Require,File,Comctl32.dll
//--VisualCPlusPlus -- onlyNT5x
//--VisualCPlusPlus adds VisualCPlusPlus WinSxS x86 items from source to WinSxS - ATL.DLL - MFC42.DLL - MFC42U.DLL - MSVCP60.DLL
Require,File,VisualCPlusPlus
// Require,File,WinSXS  only for debugging purposes... not practicable for any plugin
//--WinSXS -- onlyNT5x
// WinSXS - NoneXP32 -> extracts all WinSxS from from asm01.cab
// WinSXS - XP32 -> extracts known WinSxS by Macro Library
Require,File,WinSxS
Require,File,WinSxS,OnlySourceArch
Require,File,WinSxS,x86
//
//-------- Basic GUI Utilities ------------------
//
Require,File,Notepad.exe
Require,File,Regedit.exe
Require,File,Taskmgr.exe
//
//-------- CMD Utilities ------------------
//DepCmdDisk --> common dependenciess of ms cmd disk utilities ;)
//Require,File,DepCmdDisk IS NOT a command but a temporary hidden features during development - will be removed later...
Require,File,DepCmdDisk
//-
Require,File,Cmd.exe
Require,File,Attrib.exe
Require,File,Cacls.exe
Require,File,Chcp.com
Require,File,Chkdsk.exe
//NoFN=Do NOT add ufat.dll untfs.dll
Require,File,Chkdsk.exe,NoFN
Require,File,Chkntfs.exe
Require,File,Cipher.exe
Require,File,Comp.exe
Require,File,Compact.exe
Require,File,Convert.exe
Require,File,DiskComp.com
Require,File,DiskCopy.com
Require,File,Doskey.exe
Require,File,Expand.exe
Require,File,Fc.exe
Require,File,Find.exe
Require,File,Findstr.exe
Require,File,Format.com
//NoFN=Do NOT add ufat.dll untfs.dll
Require,File,Format.com,NoFN
Require,File,FsUtil.exe
Require,File,Help.exe
Require,File,Label.exe
Require,File,Makecab.exe
Require,File,Mode.com
Require,File,More.com
Require,File,MountVol.exe
Require,File,Net.exe
//Net.exe par1: Netmsg.dll - adds Netmsg.dll
//Net.exe par2: Net.hlp - adds Net.hlp on nt5x builds
Require,File,Net.exe,Netmsg.dll,Net.hlp
Require,File,Ntsd.exe
Require,File,Recover.exe
Require,File,Reg.exe
Require,File,Regini.exe
Require,File,Regsvr32.exe
Require,File,Replace.exe
Require,File,Sc.exe
Require,File,Sort.exe
Require,File,Subst.exe
Require,File,Tree.com
Require,File,Xcopy.exe
//-------- CMD Utilities ------------------

[Expand_FileX1_File]
Set,#9,NT5x
Set,#8,%Target_Sys%
Set,#7,%Source_Sys%
If,Not,%SourceArch%,Equal,x86,Begin
If,ExistVar,%PluginArch%,Begin
If,%PluginArch%,Equal,x86,Begin
Set,#8,%Target_Win%\SysWOW64
Set,#7,%SourceDir%\I386
End
End
End
Run,%API%,Expand_FileX_File_#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX2_File]
Set,#9,-
Set,#8,%Target_Sys%
Set,#7,%Source_Sys%
If,Not,%SourceArch%,Equal,x86,Begin
If,ExistVar,%PluginArch%,Begin
If,%PluginArch%,Equal,x86,Begin
Set,#8,%Target_Win%\SysWOW64
Set,#7,%InstallSRC%\Windows\SysWow64
End
End
End
Run,%API%,Expand_FileX_File_#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_fltmgr.sys]
//fltmgr.sys,[NORegistry],[NOTxtSetup],[fltlib.dll|fltlib.dllSys32],[fltlib.dllWOW64]
If,%OSFamily%,Equal,NT5,Begin
Set,%_ML_T%,0
If,ExistFile,%Target_Sys%\DRIVERS\FLTMGR.SY_,Set,%_ML_T%,1
If,ExistFile,%Target_Sys%\DRIVERS\FLTMGR.SYS,Set,%_ML_T%,1
If,%_ML_T%,Equal,0,CopyOrExpand,%Source_Sys%\fltmgr.sys,%Target_Sys%\DRIVERS\FLTMGR.SYS
End
Else,Begin
If,Not,ExistFile,%Target_Sys%\DRIVERS\FLTMGR.SYS,CopyOrExpand,%Source_Sys%\DRIVERS\fltmgr.sys,%Target_Sys%\DRIVERS\FLTMGR.SYS
End
//--
If,Not,#1,Equal,NORegistry,Require,Registry,fltmgr.sys
//--
If,%OSFamily%,Equal,NT5,Begin
If,Not,#2,Equal,NOTxtSetup,Begin
If,Not,ExistFile,%Target_Win%\TXTSETUP.SIF,FileCreateBlank,%Target_Win%\TXTSETUP.SIF
If,Not,ExistSection,%Target_Win%\TXTSETUP.SIF,BusExtenders.Load,IniAddSection,%Target_Win%\TXTSETUP.SIF,BusExtenders.Load
IniWrite,%Target_Win%\TXTSETUP.SIF,FileSystems.Load,fltmgr,fltmgr.sys
End
End
//--
If,#3,Equal,fltlib.dll,Require_FileQ,fltlib.dll
//--
If,#3,Equal,fltlib.dllSys32,Begin
Set,#9,-
If,#7,Equal,%Target_Win%\SysWOW64,Begin
Set,%PluginArch%,%SourceArch%
Set,#9,r
End
Require_FileQ,fltlib.dll
If,#9,Equal,r,Set,%PluginArch%,x86
End
//--
If,#4,Equal,fltlib.dllWOW64,Begin
If,%TargetWOW64%,Equal,x86,Begin
If,Not,%SourceArch%,Equal,x86,Begin
If,#7,Equal,%Target_Win%\SysWOW64,Require_FileQ,fltlib.dll
If,#7,Equal,%Target_Sys%,Begin
Set,%PluginArch%,x86
Require_FileQ,fltlib.dll
Set,%PluginArch%,
End
End
End
End

[Expand_FileX_File_storport.sys]
If,%OSFamily%,Equal,NT5,Run,%api%,Expand_FileX_File_storport.sys_diskdump.sys,storport.sys,#1,#2,#3,#4,#5,#6,#7,#8
Else,Require,Drivers,storport.sys

[Expand_FileX_File_diskdump.sys]
If,%OSFamily%,Equal,NT5,Run,%api%,Expand_FileX_File_storport.sys_diskdump.sys,diskdump.sys,#1,#2,#3,#4,#5,#6,#7,#8
Else,Require,Drivers,diskdump.sys

[Expand_FileX_File_storport.sys_diskdump.sys]
IniRead,%ProjectDir%\Script.Project,IniVariables,OS,%OS%
//--
StrFormat,UCASE,#1,#1
//--
//First get from source - maybe it is an KB updated source ;)
If,Not,%OS%%SourceArch%,Equal,XPx86,Require,Highversion,#1,TargetWin\System32\Drivers
//--
//-----------------------------
If,%OS%%SourceArch%,Equal,W2003x86,Begin
IniRead,%ProjectDir%\Script.Project,IniVariables,OSServicePack,%OSServicePack%
If,%OSServicePack%,Equal,SP2,Begin
//Optional if one provides update file
If,ExistFile,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-x86-ENU.exe,Begin
Call,DirDeleteMake,%ProjectTemp%\WindowsServer2003-KB943295-x86
ShellExecute,Hide,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-x86-ENU.exe,"/q /x:#$q%ProjectTemp%\WindowsServer2003-KB943295-x86#$q"
If,ExistFile,%ProjectTemp%\WindowsServer2003-KB943295-x86\SP2GDR\#1,Begin
Call,FileCopyBiggerVersion,%ProjectTemp%\WindowsServer2003-KB943295-x86\SP2GDR\#1,%Target_Sys%\Drivers
End
Else,Begin
Call,Echo,"WindowsServer2003-KB943295-x86-ENU.exe extraction Failed -- #1 FallBAck from SourceDir",Warn
//Require,Highversion,#1,TargetWin\System32\Drivers
End
End
Else,Begin
Echo,"WindowsServer2003-KB943295-x86-ENU.exe NOT found -- #1 FallBAck from SourceDir"
//Require,Highversion,#1,TargetWin\System32\Drivers
End
End
Else,Begin
//******* CRITICAL storport.sys is critical important for DPS Mass Storage *********************
If,Not,ExistFile,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-x86-ENU.exe,Call,Download,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-x86-ENU.exe,http://download.microsoft.com/download/6/7/0/67008594-195b-4903-982a-aca07219aaa1/WindowsServer2003-KB943295-x86-ENU.exe
//-
If,ExistFile,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-x86-ENU.exe,Begin
Call,DirDeleteMake,%ProjectTemp%\WindowsServer2003-KB943295-x86
ShellExecute,Hide,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-x86-ENU.exe,"/q /x:#$q%ProjectTemp%\WindowsServer2003-KB943295-x86#$q"
If,ExistFile,%ProjectTemp%\WindowsServer2003-KB943295-x86\SP2GDR\#1,Begin
Call,FileCopyBiggerVersion,%ProjectTemp%\WindowsServer2003-KB943295-x86\SP2GDR\#1,%Target_Sys%\Drivers
End
Else,Begin
Call,Echo,"WindowsServer2003-KB943295-x86-ENU.exe extraction Failed -- #1 FallBAck from SourceDir",Warn
//Require,Highversion,#1,TargetWin\System32\Drivers
//-
//Check if source KB updated ;)
Call,DirDeleteMake,%ProjectTemp%\Test_Version
CopyOrExpand,%Target_Sys%\Drivers\#1,%ProjectTemp%\Test_Version
Retrieve,FILEVERSION,%ProjectTemp%\Test_Version\#1,%_ML_T1%
Call,CompareVersions,%_ML_T1%,5.2.3790.4163,%_ML_T2%
If,%_ML_T2%,Equal,Smaller,Call,Echo,"Updated #1 **CRITICAL IMPORTANT for 'DPs Mass Storage Drivers' plugin#$x#$xProvide %GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-x86-ENU.exe"
//-
End
End
Else,Begin
Echo,"WindowsServer2003-KB943295-x86-ENU.exe NOT found -- #1 FallBAck from SourceDir"
//Require,Highversion,#1,TargetWin\System32\Drivers
//-
//Check if source KB updated ;)
Call,DirDeleteMake,%ProjectTemp%\Test_Version
CopyOrExpand,%Target_Sys%\Drivers\#1,%ProjectTemp%\Test_Version
Retrieve,FILEVERSION,%ProjectTemp%\Test_Version\#1,%_ML_T1_Expand_FileX_File_storport_diskdump%
Call,CompareVersions,%_ML_T1_Expand_FileX_File_storport_diskdump%,5.2.3790.4163,%_ML_T2_Expand_FileX_File_storport_diskdump%
If,%_ML_T2_Expand_FileX_File_storport_diskdump%,Equal,Smaller,Call,Echo,"Updated #1 **CRITICAL IMPORTANT for 'DPs Mass Storage Drivers' plugin#$x#$xProvide %GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-x86-ENU.exe"
//-
End
End
End
//-----------------------------
If,%SourceArch%,Equal,x64,Begin
//Optional if one provides update file - W2003x64 and XPx64 use same update file
If,ExistFile,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003.WindowsXP-KB943295-x64-ENU.exe,Begin
Call,DirDeleteMake,%ProjectTemp%\WindowsServer2003_WindowsXP-KB943295-x64
//ShellExecute,Hide,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003.WindowsXP-KB943295-x64-ENU.exe,"/q /x:#$q%ProjectTemp%\WindowsServer2003_WindowsXP-KB943295-x64#$q"
ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003.WindowsXP-KB943295-x64-ENU.exe#$q -o#$q%ProjectTemp%\WindowsServer2003_WindowsXP-KB943295-x64#$q"
If,ExistFile,%ProjectTemp%\WindowsServer2003_WindowsXP-KB943295-x64\SP2GDR\#1,Begin
Call,FileCopyBiggerVersion,%ProjectTemp%\WindowsServer2003_WindowsXP-KB943295-x64\SP2GDR\#1,%Target_Sys%\Drivers
End
Else,Begin
Call,Echo,"WindowsServer2003.WindowsXP-KB943295-x64-ENU.exe extraction Failed -- #1 FallBAck from SourceDir",Warn
//Require,Highversion,#1,TargetWin\System32\Drivers
End
End
Else,Begin
Echo,"WindowsServer2003.WindowsXP-KB943295-x64-ENU.exe NOT found -- #1 FallBAck from SourceDir"
//Require,Highversion,#1,TargetWin\System32\Drivers
End
End
//-----------------------------
If,%SourceArch%,Equal,IA64,Begin
//Optional if one provides update file
If,ExistFile,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-ia64-ENU.exe,Begin
Call,DirDeleteMake,%ProjectTemp%\WindowsServer2003-KB943295-ia64
//ShellExecute,Hide,%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-ia64-ENU.exe,"/q /x:#$q%ProjectTemp%\WindowsServer2003-KB943295-ia64#$q"
ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q%GlobalTemplates%\hotfixes\KB943295\WindowsServer2003-KB943295-ia64-ENU.exe#$q -o#$q%ProjectTemp%\WindowsServer2003-KB943295-ia64#$q"
If,ExistFile,%ProjectTemp%\WindowsServer2003-KB943295-ia64\SP2GDR\#1,Begin
Call,FileCopyBiggerVersion,%ProjectTemp%\WindowsServer2003-KB943295-ia64\SP2GDR\#1,%Target_Sys%\Drivers
End
Else,Begin
Call,Echo,"WindowsServer2003-KB943295-ia64-ENU.exe extraction Failed -- #1 FallBAck from SourceDir",Warn
//Require,Highversion,#1,TargetWin\System32\Drivers
End
End
Else,Begin
Echo,"WindowsServer2003-KB943295-ia64-ENU.exe NOT found -- #1 FallBAck from SourceDir"
//Require,Highversion,#1,TargetWin\System32\Drivers
End
End
//-----------------------------
If,Not,%OS%%SourceArch%,Equal,XPx86,Begin
If,#2,Equal,CABCompress,Begin
StrFormat,SPLIT,#1,.,1,#9
If,ExistFile,%Target_Sys%\Drivers\#9.SY_,Echo,"Already CABCompressed"
If,ExistFile,%Target_Sys%\Drivers\#9.SYS,Call,CABCompress,%Target_Sys%\Drivers\#9.SYS
End
//-
If,Not,#2,Equal,CABCompress,Begin
//Better Extract Result as Default
StrFormat,SPLIT,#1,.,1,#9
If,ExistFile,%Target_Sys%\Drivers\#9.SY_,Begin
Call,DirDeleteMake,%ProjectTemp%\Extract
CopyOrExpand,%Target_Sys%\Drivers\#1,%ProjectTemp%\Extract
If,ExistFile,%ProjectTemp%\Extract\#1,Begin
Call,FileDelete,%Target_Sys%\Drivers\#9.SY_
FileCopy,%ProjectTemp%\Extract\#1,%Target_Sys%\Drivers
End
End
End
//--
//To ease tests make sure UpperCase
StrFormat,SPLIT,#1,.,1,#9
If,ExistFile,%Target_Sys%\Drivers\#9.SYS,Set,#9,%Target_Sys%\Drivers\#9.SYS
If,ExistFile,%Target_Sys%\Drivers\#9.SY_,Set,#9,%Target_Sys%\Drivers\#9.SY_
System,FILEREDIRECT,OFF
ShellExecute,Hide,attrib.exe,"-R -S -A -H #$q#9#$q"
System,FILEREDIRECT,ON
FileRename,#9,#9TEMP
FileRename,#9TEMP,#9
//--
//Echo Version - Last lines of Macro ;)
Call,DirDeleteMake,%ProjectTemp%\Test_Version
CopyOrExpand,%Target_Sys%\Drivers\#1,%ProjectTemp%\Test_Version
Retrieve,FILEVERSION,%ProjectTemp%\Test_Version\#1,%_ML_T3_Expand_FileX_File_storport_diskdump%
Set,%#1_Version%,%_ML_T3_Expand_FileX_File_storport_diskdump%
//--
Echo,"#1 version: %_ML_T3_Expand_FileX_File_storport_diskdump% - KB943295 version: 5.2.3790.4163"
End
//--
//FallBack to 0.0.0.0 on XPx86
If,%OS%%SourceArch%,Equal,XPx86,Set,%#1_Version%,0.0.0.0

[Expand_FileX_File_imagehlp.dll]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
If,#8,Equal,NT5x,Begin
If,Not,ExistFile,#7\imagehlp.dll,Begin
If,%SourceArch%,Equal,x86,Begin
//Location of imagehlp.dll - NTDLL.DLL may differ between enu - none-enu source
If,ExistFile,%Source_Win%\IMAGEHLP.DL?,CopyOrExpand,%Source_Win%\imagehlp.dll,%Target_Sys%
Else,Begin
If,ExistFile,%Source_Win%\WIN9XUPG\imagehlp.dll,CopyOrExpand,%Source_Win%\WIN9XUPG\imagehlp.dll,%Target_Sys%
End
If,Not,ExistFile,%Target_Sys%\imagehlp.dll,Echo,"Imagehlp.dll NOT FOUND",WARN
End
Else,Require_FileQ,imagehlp.dll
End
End
//--
If,Not,ExistFile,#7\imagehlp.dll,Require_FileQ,imagehlp.dll

[Expand_FileX_File_NTDLL.DLL]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
If,#8,Equal,NT5x,Begin
If,Not,ExistFile,#7\NTDLL.DLL,Begin
If,%SourceArch%,Equal,x86,Begin
//Location of imagehlp.dll - NTDLL.DLL may differ between enu - none-enu source
If,ExistFile,%Source_Win%\NTDLL.DL?,CopyOrExpand,%Source_Win%\NTDLL.DLL,%Target_Sys%
Else,Begin
If,ExistFile,%Source_Win%\System32\NTDLL.DL?,CopyOrExpand,%Source_Win%\System32\NTDLL.DLL,%Target_Sys%
End
If,Not,ExistFile,%Target_Sys%\NTDLL.DLL,Echo,"NTDLL.DLL NOT FOUND",WARN
End
Else,Require_FileQ,NTDLL.DLL
End
End
//--
If,Not,ExistFile,#7\NTDLL.DLL,Require_FileQ,NTDLL.DLL

[Expand_FileX_File_DONOTUSEExtCPLDep]
//UNDER CONSTRUCTION - check sysdm.cpl test results at explorer mini
//.cpl extension seems mainly require rundll32.exe and shell32.dll maybe more
//check ms cpl and compare with imdisk cpl....
If,Not,ExistFile,#7\rundll32.exe,Require_FileQ,rundll32.exe
If,Not,ExistFile,#7\imagehlp.dll,Require,File,imagehlp.dll
If,Not,ExistFile,#7\shell32.dll,Require_FileQ,shell32.dll

[Expand_FileX_File_CMD_Utilities_Start]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  CMD_Utilities Start  @@@@@@
ps:
-- [Expand_FileX_File_DepCmdDisk] is common with disk utilities
-- ulib.dll is also very common with some cmd utilities ;)

[Expand_FileX_File_Cmd.exe]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
If,Not,ExistFile,#7\Cmd.exe,Require_FileQ,Cmd.exe
//without sxs.dll cmd.exe will only work once as shell - second cmd window will not open ;) (xpsp3x86)
//sxs.dll - all applications (include command line) common dependency ;) ( The system cannot execute the specified program. )
//Exception: using winlogon with cmd will succeed with cmd screen (besides no new cmd screen can be produced ;))
//sxs.dll must be at system32 (will not do the trick under program folder)
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
//--
If,#8,Equal,NT5x,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
If,Not,#9%SourceArch%,Equal,XPx86,Begin
//2k3x86sp2-XPx64sp2 requires mpr.dll to get cmd.exe work (else cmd.exe only blinks ;))
If,Not,ExistFile,#7\mpr.dll,Require_FileQ,mpr.dll
End
End

[Expand_FileX_File_Attrib.exe]
If,Not,ExistFile,#7\Attrib.exe,Require_FileQ,Attrib.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\ulib.dll,Require_FileQ,ulib.dll

[Expand_FileX_File_Cacls.exe]
//Cacls.exe not exists at WAIK and POSReady2009
If,ExistFile,#6\Cacls.ex?,Begin
If,Not,ExistFile,#7\Cacls.exe,Require_FileQ,Cacls.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
//
If,#8,Equal,NT5x,Require,File,ws03res.dll
End
Else,Echo,"Cacls.exe not exists",Warn

[Expand_FileX_File_Chcp.com]
//Chcp.com not exists at WOW64
If,Not,#7,Equal,%Target_Win%\SysWOW64,Begin
If,Not,ExistFile,#7\Chcp.com,Require_FileQ,Chcp.com
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
End

[Expand_FileX_File_Chkdsk.exe]
If,Not,ExistFile,#7\Chkdsk.exe,Require_FileQ,Chkdsk.exe
If,Not,#1,Equal,NoFN,Begin
If,Not,ExistFile,#7\ufat.dll,Require_FileQ,ufat.dll
If,Not,ExistFile,#7\untfs.dll,Require_FileQ,untfs.dll
End
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_Chkntfs.exe]
If,Not,ExistFile,#7\Chkntfs.exe,Require_FileQ,Chkntfs.exe
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_Cipher.exe]
If,Not,ExistFile,#7\Cipher.exe,Require_FileQ,Cipher.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Comp.exe]
//Comp.exe not exists at WAIK
If,Not,ExistFile,#7\Comp.exe,Require_FileQ,Comp.exe
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_Compact.exe]
//Compact.exe not exists at WAIK
If,Not,ExistFile,#7\Compact.exe,Require_FileQ,Compact.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Convert.exe]
If,Not,ExistFile,#7\Convert.exe,Require_FileQ,Convert.exe
If,Not,ExistFile,#7\cabinet.dll,Require_FileQ,cabinet.dll
If,Not,ExistFile,#7\cnvfat.dll,Require_FileQ,cnvfat.dll
If,Not,ExistFile,#7\osuninst.dll,Require_FileQ,osuninst.dll
If,Not,ExistFile,#7\scecli.dll,Require_FileQ,scecli.dll
If,Not,ExistFile,#7\ufat.dll,Require_FileQ,ufat.dll
If,Not,ExistFile,#7\untfs.dll,Require_FileQ,untfs.dll
If,Not,ExistFile,#7\userenv.dll,Require_FileQ,userenv.dll
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_DiskComp.com]
//DiskComp.com not exists at WAIK not exists at WOW64
If,Not,#7,Equal,%Target_Win%\SysWOW64,Begin
If,ExistFile,#6\DiskComp.co?,Begin
If,Not,ExistFile,#7\DiskComp.com,Require_FileQ,DiskComp.com
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Echo,"DiskComp.com not exists",Warn
End
End

[Expand_FileX_File_DiskCopy.com]
//DiskCopy.com not exists at WAIK not exists at WOW64
If,Not,#7,Equal,%Target_Win%\SysWOW64,Begin
If,ExistFile,#6\DiskCopy.co?,Begin
If,Not,ExistFile,#7\DiskCopy.com,Require_FileQ,DiskCopy.com
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Echo,"DiskCopy.com not exists",Warn
End
End

[Expand_FileX_File_Doskey.exe]
If,Not,ExistFile,#7\Doskey.exe,Require_FileQ,Doskey.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\ulib.dll,Require_FileQ,ulib.dll

[Expand_FileX_File_Expand.exe]
If,Not,ExistFile,#7\Expand.exe,Require_FileQ,Expand.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\Cabinet.dll,Require_FileQ,Cabinet.dll
If,Not,#8,Equal,NT5x,If,Not,ExistFile,#7\dpx.dll,Require_FileQ,dpx.dll

[Expand_FileX_File_Fc.exe]
//Fc.exe not exists at WAIK
If,Not,ExistFile,#7\Fc.exe,Require_FileQ,Fc.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Find.exe]
If,Not,ExistFile,#7\Find.exe,Require_FileQ,Find.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Findstr.exe]
//Findstr.exe not exists at WAIK
If,Not,ExistFile,#7\Findstr.exe,Require_FileQ,Findstr.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Format.com]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
If,Not,ExistFile,#7\Format.com,Require_FileQ,Format.com
If,Not,#1,Equal,NoFN,Begin
If,Not,ExistFile,#7\ufat.dll,Require_FileQ,ufat.dll
If,Not,ExistFile,#7\untfs.dll,Require_FileQ,untfs.dll
End
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_FsUtil.exe]
//Fsutil.exe not exists at WAIK
If,Not,ExistFile,#7\FsUtil.exe,Require_FileQ,FsUtil.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Help.exe]
If,Not,ExistFile,#7\Help.exe,Require_FileQ,Help.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Label.exe]
//Label.exe not exists at WAIK
If,Not,ExistFile,#7\Label.exe,Require_FileQ,Label.exe
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_Makecab.exe]
//Makecab.exe not exists at WAIK
If,Not,ExistFile,#7\Makecab.exe,Require_FileQ,Makecab.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Mode.com]
//Lancelot: not fully checked //Mode.com not exists at WOW64
If,Not,#7,Equal,%Target_Win%\SysWOW64,Begin
If,Not,ExistFile,#7\Mode.com,Require_FileQ,Mode.com
If,Not,ExistFile,#7\ulib.dll,Require_FileQ,ulib.dll
If,Not,ExistFile,#7\ureg.dll,Require_FileQ,ureg.dll
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
End

[Expand_FileX_File_More.com]
If,Not,ExistFile,#7\More.com,Require_FileQ,More.com
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\ulib.dll,Require_FileQ,ulib.dll

[Expand_FileX_File_MountVol.exe]
If,Not,ExistFile,#7\MountVol.exe,Require_FileQ,MountVol.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Net.exe_Test]
net start beep
sc query beep
net stop beep
sc query beep
cmd

[Expand_FileX_File_Net.exe]
If,Not,ExistFile,#7\Net.exe,Require_FileQ,Net.exe
If,Not,ExistFile,#7\net1.exe,Require_FileQ,net1.exe
If,Not,ExistFile,#7\samlib.dll,Require_FileQ,samlib.dll
If,Not,ExistFile,#7\ntdsapi.dll,Require_FileQ,ntdsapi.dll
If,Not,ExistFile,#7\ws2_32.dll,Require_FileQ,ws2_32.dll
If,Not,ExistFile,#7\ws2help.dll,Require_FileQ,ws2help.dll
If,#1,Equal,Netmsg.dll,Begin
//netmsg.dll is not mandatory -> give cmd screen response about the result of the action
If,Not,ExistFile,#7\netmsg.dll,Require_FileQ,netmsg.dll
End
If,#8,Equal,NT5x,Begin
//netrap.dll not exists on win7 source ;)
If,Not,ExistFile,#7\netrap.dll,Require_FileQ,netrap.dll
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
If,Not,#9%SourceArch%,Equal,XPx86,Begin
If,Not,ExistFile,#7\ole32.dll,Require_FileQ,ole32.dll
If,Not,ExistFile,#7\oleaut32.dll,Require_FileQ,oleaut32.dll
End
//Net.hlp ONLY NT5x // net.hlp is not mandatory -> only ~100kb help file to response on cmd gui in case needed - not exists on nt6x
If,#2,Equal,Net.hlp,Begin
If,Not,ExistFile,#7\net.hlp,Require_FileQ,net.hlp
End
End
Require,File,Services.exe

[Expand_FileX_File_Ipconfig.exe]
IniRead,%ProjectDir%\script.project,IniVariables,OS,%OS%
//-
If,Not,ExistFile,#7\Ipconfig.exe,Require_FileQ,Ipconfig.exe
If,%OSFamily%,Equal,NT5,Begin
If,Not,ExistFile,#7\netman.dll,Require_FileQ,netman.dll
End
If,Not,ExistFile,#7\netshell.dll,Require_FileQ,netshell.dll
If,Not,ExistFile,#7\rtutils.dll,Require_FileQ,rtutils.dll
If,Not,ExistFile,#7\credui.dll,Require_FileQ,credui.dll
If,Not,ExistFile,#7\WS2_32.dll,Require_FileQ,WS2_32.dll
If,Not,ExistFile,#7\WS2HELP.dll,Require_FileQ,WS2HELP.dll
If,Not,ExistFile,#7\Atl.dll,Require_FileQ,Atl.dll
If,Not,ExistFile,#7\clusapi.dll,Require_FileQ,clusapi.dll
If,Not,ExistFile,#7\mprapi.dll,Require_FileQ,mprapi.dll
If,Not,ExistFile,#7\activeds.dll,Require_FileQ,activeds.dll
If,Not,ExistFile,#7\adsldpc.dll,Require_FileQ,adsldpc.dll
If,Not,ExistFile,#7\samlib.dll,Require_FileQ,samlib.dll
If,Not,ExistFile,#7\rasapi32.dll,Require_FileQ,rasapi32.dll
If,Not,ExistFile,#7\rasman.dll,Require_FileQ,rasman.dll
If,Not,ExistFile,#7\tapi32.dll,Require_FileQ,tapi32.dll
//If,Not,%OS%%SourceArch%,Equal,XPx86,If,Not,ExistFile,#7\WZCSvc.dll,Require_FileQ,WZCSvc.dll
If,%OSFamily%,Equal,NT5,Begin
If,Not,%OS%%SourceArch%,Equal,XPx86,Require,HighVersion,wzcsvc.dll,TargetWin\System32
End
If,Not,ExistFile,#7\WMI.dll,Require_FileQ,WMI.dll
If,Not,ExistFile,#7\dhcpcsvc.dll,Require_FileQ,dhcpcsvc.dll
If,Not,ExistFile,#7\WTSAPI32.dll,Require_FileQ,WTSAPI32.dll
If,Not,ExistFile,#7\WINSTA.dll,Require_FileQ,WINSTA.dll
If,Not,ExistFile,#7\esent.dll,Require_FileQ,esent.dll
//If,Not,%OS%%SourceArch%,Equal,XPx86,If,Not,ExistFile,#7\WZCSAPI.dll,Require_FileQ,WZCSAPI.dll
If,%OSFamily%,Equal,NT5,Begin
If,Not,%OS%%SourceArch%,Equal,XPx86,Require,HighVersion,WZCSAPI.dll,TargetWin\System32
End
//-
If,%OS%%SourceArch%%OSServicePack%,Equal,XPx86SP3,Begin
If,Not,ExistFile,#7\dot3api.dll,Require_FileQ,dot3api.dll
If,Not,ExistFile,#7\dot3dlg.dll,Require_FileQ,dot3dlg.dll
If,Not,ExistFile,#7\onex.dll,Require_FileQ,onex.dll
If,Not,ExistFile,#7\eappcfg.dll,Require_FileQ,eappcfg.dll
If,Not,ExistFile,#7\eappprxy.dll,Require_FileQ,eappprxy.dll
Require,HighVersion,wzcsvc.dll,TargetWin\System32
Require,HighVersion,wzcsapi.dll,TargetWin\System32
If,Not,ExistFile,#7\EapolQec.dll,Require_FileQ,EapolQec.dll
If,Not,ExistFile,#7\QUtil.dll,Require_FileQ,QUtil.dll
End

[Expand_FileX_File_Netsh.exe]
//Netsh.exe not exists at POSReady2009
//If,ExistFile,#6\Netsh.ex? Wrong -> Gena Wow64 wNetsh.ex?
//If,ExistFile,#6\Netsh.ex?,Begi-n
Require_FileQ,netsh.exe
Require_FileQ,credui.dll
Require_FileQ,mprapi.dll
Require_FileQ,activeds.dll
Require_FileQ,adsldpc.dll
Require_FileQ,rtutils.dll
Require_FileQ,rasapi32.dll
Require_FileQ,rasman.dll
Require_FileQ,tapi32.dll
//-
//None XPx86 -> w03a2409.dll or w03s2409.dll exists on x64 and 2003x86 (2k3 Server w03s2409.dll)
If,%OSFamily%,Equal,NT5,Require,File,w03a2409.dll
//--
If,%OSFamily%,Equal,NT6,Begin
Call,TargetVersion,_ML_TV,4x
//-
Call,CompareVersions,%_ML_TV%,10.0.14392.0,_ML_Win10_1607
If,%_ML_Win10_1607%,Equal,Bigger,Begin
Require_FileQ,dmcmnutils.dll
Require_FileQ,mdmregistration.dll
//-
//Only \System32\ Start
If,%SourceArch%,Equal,x86,Begin
//mdmpostprocessevaluator.dll not exists at \SysWOW64\ - Only \System32\
Require_FileQ,mdmpostprocessevaluator.dll
End
Else,Begin
If,Not,%PluginArch%,Equal,x86,Begin
//mdmpostprocessevaluator.dll not exists at \SysWOW64\ - Only \System32\
Require_FileQ,mdmpostprocessevaluator.dll
End
End
//Only \System32\ Finish
//-
End
//-
End
//--
//The following helper DLL cannot be loaded: Start
//--------------
If,Not,#1,Equal,NoHelperDLL,Begin
If,%OSFamily%,Equal,NT6,Begin
//Call,TargetVersion,_ML_TV,1
If,%_ML_TV1%,Bigger,9,Run,%Api%,Expand_FileX_File_Netsh.exe_Helper_Win10x,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%Api%,Expand_FileX_File_Netsh.exe_Helper_Win7_8,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
If,%OSFamily%,Equal,NT5,Run,%Api%,Expand_FileX_File_Netsh.exe_Helper_NT5,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
//The following helper DLL cannot be loaded: Finish
//En-d
//Else,Echo,"Netsh.exe not exists",Warn

[Expand_FileX_File_Netsh.exe_Helper_Win10x]
//Win10x64 Helper DLL:
//-
//RasMonTr.dll
//Authfwcfg.dll
//DhcpcMonitor.dll
//Dot3CFG.dll
//FWCFG.DLL
//HNetMon.dll
//Netiohlp.dll
//nettrace.dll
//nshhttp.dll
//nshipsec.dll
//nshwfp.dll
//P2PNetSh.dll
//Rpcnsh.dll
//Wcnnetsh.dll
//Whhelper.dll
//wlancfg.dll
//wshelper.dll
//wwancfg.dll
//Peerdistsh.dll
//------------------------------
//Win10x64 Wow64 Helper DLL:
//ifmon.dll
//RasMonTr.dll
//Authfwcfg.dll
//DhcpcMonitor.dll
//Dot3CFG.dll
//FWCFG.DLL
//HNetMon.dll
//Netiohlp.dll
//-
//nshhttp.dll
//nshipsec.dll
//nshwfp.dll
//P2PNetSh.dll
//Rpcnsh.dll
//-
//Whhelper.dll
//wlancfg.dll
//wshelper.dll
//-
//Peerdistsh.dll
//--
//-helper DLL ifmon.dll
Require_FileQ,ifmon.dll
//-helper DLL rasmontr.dll
Require_FileQ,rasmontr.dll
Require_FileQ,mfc42u.dll
Require_FileQ,dpapi.dll
//-helper DLL authfwcfg.dll
Require_FileQ,authfwcfg.dll
Require_FileQ,FirewallAPI.dll
Require_FileQ,FWPolicyIOMGR.dll
Require_FileQ,fwbase.dll
//-helper DLL DhcpcMonitor.dll
Require_FileQ,DhcpcMonitor.dll
//-helper DLL Dot3CFG.dll
Require_FileQ,Dot3CFG.dll
Require_FileQ,dot3api.dll
Require_FileQ,OneX.dll
Require_FileQ,eappcfg.dll
Require_FileQ,eappprxy.dll
//-helper DLL fwcfg.dll
Require_FileQ,fwcfg.dll
//-helper DLL hnetmon.dll
Require_FileQ,hnetmon.dll
Require_FileQ,netshell.dll
Require_FileQ,nlaapi.dll
//-helper DLL netiohlp.dll
Require_FileQ,netiohlp.dll
//-
//nettrace.dll NO WOW64
If,%SourceArch%,Equal,x86,Begin
Require_FileQ,nettrace.dll
Require_FileQ,ndfapi.dll
End
Else,Begin
If,Not,%PluginArch%,Equal,x86,Begin
Require_FileQ,nettrace.dll
Require_FileQ,ndfapi.dll
End
End
//-
//-helper DLL nshhttp.dll
Require_FileQ,nshhttp.dll
Require_FileQ,httpapi.dll
//-helper DLL nshipsec.dll
Require_FileQ,nshipsec.dll
Require_FileQ,polstore.dll
Require_FileQ,winipsec.dll
//-helper DLL nshwfp.dll
Require_FileQ,nshwfp.dll
Require_FileQ,cabinet.dll
//-helper DLL p2pnetsh.dll
Require_FileQ,p2pnetsh.dll
Require_FileQ,p2p.dll
//-helper DLL rpcnsh.dll
Require_FileQ,rpcnsh.dll
//-
//wcnnetsh.dll NO WOW64
If,%SourceArch%,Equal,x86,Begin
//-helper DLL wcnnetsh.dll
Require_FileQ,wcnnetsh.dll
Require_FileQ,wlanapi.dll
End
Else,Begin
If,Not,%PluginArch%,Equal,x86,Begin
//-helper DLL wcnnetsh.dll
Require_FileQ,wcnnetsh.dll
Require_FileQ,wlanapi.dll
End
End
//-
//-helper DLL whhelper.dll
Require_FileQ,whhelper.dll
//-helper DLL wlancfg.dll
Require_FileQ,wlancfg.dll
Require_FileQ,wlanapi.dll
Require_FileQ,WiFiDisplay.dll
Require_FileQ,wevtapi.dll
//-helper DLL wshelper.dll
Require_FileQ,wshelper.dll
//-
//wwancfg.dll NO WOW64
If,%SourceArch%,Equal,x86,Begin
//-helper DLL wwancfg.dll
Require_FileQ,wwancfg.dll
Require_FileQ,wwapi.dll
Require_FileQ,RmClient.dll
Require_FileQ,wcmapi.dll
End
Else,Begin
If,Not,%PluginArch%,Equal,x86,Begin
//-helper DLL wwancfg.dll
Require_FileQ,wwancfg.dll
Require_FileQ,wwapi.dll
Require_FileQ,RmClient.dll
Require_FileQ,wcmapi.dll
End
End
//-
//-helper DLL peerdistsh.dll
Require_FileQ,peerdistsh.dll
Require_FileQ,ktmw32.dll

[Expand_FileX_File_Netsh.exe_Helper_Win7_8]
//Win7-8 (Can't Remember which I tested with)
//-helper DLL napmontr.dll
Require_FileQ,napmontr.dll
Require_FileQ,QUtil.dll
Require_FileQ,certcli.dll
Require_FileQ,wevtapi.dll
Require_FileQ,nlaapi.dll
Require_FileQ,cabinet.dll
If,%_ML_TV2%,Bigger,1,Begin
//certca.dll NOT exists on Win7 (6.1) x86 - x64
Require_FileQ,certca.dll
End
//-helper DLL rpcnsh.dll
Require_FileQ,rpcnsh.dll
//-helper DLL hnetmon.dll
Require_FileQ,hnetmon.dll
Require_FileQ,netshell.dll
//-helper DLL nshwfp.dll
Require_FileQ,nshwfp.dll
//-helper DLL nshhttp.dll
Require_FileQ,nshhttp.dll
Require_FileQ,httpapi.dll
If,%SourceArch%,Equal,x64,Begin
If,Not,%PluginArch%,Equal,x86,Begin
//-helper DLL wcnnetsh.dll
Require_FileQ,wcnnetsh.dll
Require_FileQ,wlanapi.dll
//-helper DLL nettrace.dll
Require_FileQ,nettrace.dll
Require_FileQ,ndfapi.dll
End
End
//-helper DLL dot3cfg.dll
Require_FileQ,dot3cfg.dll
Require_FileQ,dot3api.dll
Require_FileQ,OneX.dll
Require_FileQ,eappcfg.dll
Require_FileQ,eappprxy.dll
//-helper DLL authfwcfg.dll
Require_FileQ,authfwcfg.dll
Require_FileQ,FirewallAPI.dll
//-helper DLL ifmon.dll
Require_FileQ,ifmon.dll
//-helper DLL rasmontr.dll
Require_FileQ,rasmontr.dll
Require_FileQ,mfc42u.dll
//-helper DLL netiohlp.dll
Require_FileQ,netiohlp.dll
//-helper DLL p2pnetsh.dll
Require_FileQ,p2pnetsh.dll
Require_FileQ,p2p.dll
//-helper DLL dhcpcmonitor.dll
Require_FileQ,dhcpcmonitor.dll
//If,%_ML_TV1%,Smaller,9,Require_FileQ,DhcpQEC.dll
Require_FileQ,DhcpQEC.dll
//-helper DLL whhelper.dll
Require_FileQ,whhelper.dll
//-helper DLL wshelper.dll
Require_FileQ,wshelper.dll
//-helper DLL nshipsec.dll
Require_FileQ,nshipsec.dll
Require_FileQ,polstore.dll
Require_FileQ,winipsec.dll
//-helper DLL rasmontr.dll
Require_FileQ,rasmontr.dll
//-helper DLL fwcfg.dll
Require_FileQ,fwcfg.dll
//-helper DLL wlancfg.dll
Require_FileQ,wlancfg.dll
Require_FileQ,wlanapi.dll
If,%SourceArch%,Equal,x64,Begin
If,Not,%PluginArch%,Equal,x86,Begin
//-helper DLL wwancfg.dll
Require_FileQ,wwancfg.dll
Require_FileQ,wwapi.dll
If,%_ML_TV2%,Bigger,1,Begin
//wcmapi.dll NOT exists on Win7 (6.1) x86 - x64
Require_FileQ,wcmapi.dll
End
End
End
If,%_ML_TV2%,Bigger,1,Begin
//-helper DLL peerdistsh.dll
//peerdistsh.dll NOT exists on Win7 (6.1) x86 - x64
Require_FileQ,peerdistsh.dll
End
Require_FileQ,ktmw32.dll

[Expand_FileX_File_Netsh.exe_Helper_NT5]
//XP x64 - XP x86 Could not obtain host information from machine. Some commands may not be available. Class not registered
//--
If,%OS%%SourceArch%,Equal,XPx86,Begin
//XPx86SP3
//ipv6mon.dll
//ipmontr.dll
//ifmon.dll
//ippromon.dll
//rasmontr.dll
//*ipxpromn.dll
//dgnet.dll
//HNETMON.dll
//fwcfg.dll
//-helper DLL ipv6mon.dll
Require_FileQ,ipv6mon.dll
Require,File,xpob2res.dll
//-helper DLL ipmontr.dll
Require_FileQ,ipmontr.dll
//-helper DLL ifmon.dll
Require_FileQ,ifmon.dll
Require_FileQ,netcfgx.dll
Require_FileQ,winipsec.dll
Require_FileQ,netshell.dll
Require_FileQ,clusapi.dll
Require_FileQ,mswsock.dll
//-helper DLL ippromon.dll
Require_FileQ,ippromon.dll
//-helper DLL rasmontr.dll -- Not Exists at POSReady2009
Require_FileQ,rasmontr.dll
//-helper DLL ipxpromn.dll
Require_FileQ,ipxpromn.dll
Require_FileQ,framedyn.dll
//-helper DLL ipxmontr.dll
Require_FileQ,ipxmontr.dll
//-helper DLL hnetmon.dll -- Not Exists at POSReady2009
Require_FileQ,hnetmon.dll
//-helper DLL fwcfg.dll
Require_FileQ,fwcfg.dll
End
Else,Begin
//--
//-helper DLL ipv6mon.dll
Require_FileQ,ipv6mon.dll
Require,File,xpob2res.dll
//-helper DLL ipmontr.dll
Require_FileQ,ipmontr.dll
//-helper DLL ifmon.dll
Require_FileQ,ifmon.dll
Require_FileQ,netcfgx.dll
Require_FileQ,winipsec.dll
Require_FileQ,netshell.dll
Require_FileQ,clusapi.dll
Require_FileQ,mswsock.dll
//-helper DLL ippromon.dll
Require_FileQ,ippromon.dll
//If,Not,ExistFile,%SourceDir%\win51.pos,Begi-n
//-helper DLL rasmontr.dll -- Not Exists at POSReady2009
Require_FileQ,rasmontr.dll
//-helper DLL rpcnsh.dll -- Not Exists at POSReady2009
Require_FileQ,rpcnsh.dll
//-helper DLL dhcpmon.dll -- Not Exists at POSReady2009
Require_FileQ,dhcpmon.dll
Require_FileQ,dhcpsapi.dll
Require_FileQ,dsauth.dll
If,%SourceArch%,Equal,x86,Begin
//-helper DLL winsmon.dll -- Not Exists at POSReady2009
Require_FileQ,winsmon.dll
Require_FileQ,winsrpc.dll
End
//En-d
//-helper DLL aaaamon.dll
Require_FileQ,aaaamon.dll
//-helper DLL dgnet.dll
Require_FileQ,dgnet.dll
Require_FileQ,framedyn.dll
//If,Not,ExistFile,%SourceDir%\win51.pos,Begi-n
//-helper DLL hnetmon.dll -- Not Exists at POSReady2009
Require_FileQ,hnetmon.dll
//En-d
//-helper DLL fwcfg.dll
Require_FileQ,fwcfg.dll
//If,Not,ExistFile,%SourceDir%\win51.pos,Begi-n
//-helper DLL nshipsec.dll -- Not Exists at POSReady2009
Require_FileQ,nshipsec.dll
Require_FileQ,polstore.dll
//En-d
End

[Expand_FileX_File_Ntsd.exe]
//Ntsd.exe ONLY Nt5x //Ntsd.exe is Microsoft symbolic debugger tool for NT5 //ps: dbgeng.dll and dbghelp.dll also exists on nt6x
If,#8,Equal,NT5x,Begin
If,Not,ExistFile,#7\Ntsd.exe,Require_FileQ,Ntsd.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\dbgeng.dll,Require_FileQ,dbgeng.dll
If,Not,ExistFile,#7\dbghelp.dll,Require_FileQ,dbghelp.dll
End

[Expand_FileX_File_Recover.exe]
If,Not,ExistFile,#7\Recover.exe,Require_FileQ,Recover.exe
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,ExistFile,#7\untfs.dll,Require_FileQ,untfs.dll

[Expand_FileX_File_Reg.exe]
If,Not,ExistFile,#7\Reg.exe,Require_FileQ,Reg.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\ws2_32.dll,Require_FileQ,ws2_32.dll
If,Not,ExistFile,#7\ws2help.dll,Require_FileQ,ws2help.dll

[Expand_FileX_File_Regini.exe]
//Regini.exe not exists at WOW64 and POSReady2009
If,ExistFile,#6\Regini.ex?,Begin
If,Not,#7,Equal,%Target_Win%\SysWOW64,Begin
If,Not,ExistFile,#7\Regini.exe,Require_FileQ,Regini.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
End
End
Else,Echo,"Regini.exe not exists",Warn

[Expand_FileX_File_Regsvr32.exe]
//registering dll not possible without services - even not possible with rundll32.exe shell32.dll,DllInstall
If,Not,ExistFile,#7\Regsvr32.exe,Require_FileQ,Regsvr32.exe
If,Not,ExistFile,#7\ole32.dll,Require_FileQ,ole32.dll
Require,File,Services.exe

[Expand_FileX_File_Replace.exe]
If,Not,ExistFile,#7\Replace.exe,Require_FileQ,Replace.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\ulib.dll,Require_FileQ,ulib.dll

[Expand_FileX_File_Sc.exe_Test]
sc query beep
sc stop beep
sc start beep
cmd

[Expand_FileX_File_Sc.exe]
//Sc.exe.exe not exists at WAIK
If,Not,ExistFile,#7\Sc.exe,Require_FileQ,Sc.exe
Require,File,Services.exe

[Expand_FileX_File_Sort.exe]
If,Not,ExistFile,#7\Sort.exe,Require_FileQ,Sort.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_Subst.exe]
If,Not,ExistFile,#7\Subst.exe,Require_FileQ,Subst.exe
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\ulib.dll,Require_FileQ,ulib.dll

[Expand_FileX_File_Tree.com]
//Tree.com not exists at WOW64
If,Not,#7,Equal,%Target_Win%\SysWOW64,Begin
If,Not,ExistFile,#7\Tree.com,Require_FileQ,Tree.com
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\ulib.dll,Require_FileQ,ulib.dll
End

[Expand_FileX_File_Xcopy.exe]
If,Not,ExistFile,#7\Xcopy.exe,Require_FileQ,Xcopy.exe
Run,%API%,Expand_FileX_File_DepCmdDisk,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_DepCmdDisk]
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\cfgmgr32.dll,Require_FileQ,cfgmgr32.dll
If,Not,ExistFile,#7\ifsutil.dll,Require_FileQ,ifsutil.dll
If,Not,ExistFile,#7\setupapi.dll,Require_FileQ,setupapi.dll
If,Not,ExistFile,#7\ulib.dll,Require_FileQ,ulib.dll
If,#8,Equal,NT5x,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
If,Not,#9%SourceArch%,Equal,XPx86,Begin
If,Not,ExistFile,#7\atl.dll,Require_FileQ,atl.dll
If,Not,ExistFile,#7\vssapi.dll,Require_FileQ,vssapi.dll
If,Not,ExistFile,#7\winspool.drv,Require_FileQ,winspool.drv
If,Not,ExistFile,#7\ole32.dll,Require_FileQ,ole32.dll
If,Not,ExistFile,#7\oleaut32.dll,Require_FileQ,oleaut32.dll
End
End

[Expand_FileX_File_AU3381.exe]
Set,#5,1
If,Not,%SourceArch%,Equal,x86,Begin
If,ExistVar,%PluginArch%,Begin
If,%TargetWOW64%%PluginArch%,Equal,x86x86,Begin
If,Not,ExistFile,%Target_Win%\SysWOW64\AU3381.exe,FileCopy,%Tools%\x86\AU3381.exe,%Target_Win%\SysWOW64
Set,#5,0
End
End
End
//-
If,#5,Equal,1,Begin
If,Not,ExistFile,%Target_Sys%\AU3381.exe,FileCopy,%Tools%\%SourceArch%\AU3381.exe,%Target_Sys%
End

[Expand_FileX_File_nircmd.exe]
Set,#5,1
If,Not,%SourceArch%,Equal,x86,Begin
If,ExistVar,%PluginArch%,Begin
If,%TargetWOW64%%PluginArch%,Equal,x86x86,Begin
If,Not,ExistFile,%Target_Win%\SysWOW64\nircmd.exe,Run,%ProjectDir%\Utils\NirSoft_NirCmd.Script,Copyx86,nircmd.exe,%Target_Win%\SysWOW64
Set,#5,0
End
End
End
//-
If,#5,Equal,1,Begin
If,Not,ExistFile,%Target_Sys%\nircmd.exe,Run,%ProjectDir%\Utils\NirSoft_NirCmd.Script,Copy%SourceArch%,nircmd.exe,%Target_Sys%
End

[Expand_FileX_File_nircmdc.exe]
Set,#5,1
If,Not,%SourceArch%,Equal,x86,Begin
If,ExistVar,%PluginArch%,Begin
If,%TargetWOW64%%PluginArch%,Equal,x86x86,Begin
If,Not,ExistFile,%Target_Win%\SysWOW64\nircmdc.exe,Run,%ProjectDir%\Utils\NirSoft_NirCmd.Script,Copyx86,nircmdc.exe,%Target_Win%\SysWOW64
Set,#5,0
End
End
End
//-
If,#5,Equal,1,Begin
If,Not,ExistFile,%Target_Sys%\nircmdc.exe,Run,%ProjectDir%\Utils\NirSoft_NirCmd.Script,Copy%SourceArch%,nircmdc.exe,%Target_Sys%
End

[Expand_FileX_File_hid.dll]
If,#8,Equal,NT5x,Require,HighVersion,hid.dll,TargetWin\System32
Else,Require_FileQ,hid.dll

[Expand_FileX_File_HideRun.exe]
Set,#5,1
If,Not,%SourceArch%,Equal,x86,Begin
If,ExistVar,%PluginArch%,Begin
If,%TargetWOW64%%PluginArch%,Equal,x86x86,Begin
If,Not,ExistFile,%Target_Win%\SysWOW64\HideRun.exe,Begin
If,Not,ExistFile,%ProjectDir%\Utils\HiderunG.Script,Call,Download,%ProjectDir%\Utils\HiderunG.Script,http://gena.cwcodes.net/Projects/Gena/Utils/HiderunG.Script
End
If,Not,ExistFile,%Target_Win%\SysWOW64\HideRun.exe,Run,%ProjectDir%\Utils\HiderunG.Script,Hiderun_Copyx86,%Target_Win%\SysWOW64
Set,#5,0
End
End
End
//-
If,#5,Equal,1,Begin
If,Not,ExistFile,%Target_Sys%\HideRun.exe,Begin
If,Not,ExistFile,%ProjectDir%\Utils\HiderunG.Script,Call,Download,%ProjectDir%\Utils\HiderunG.Script,http://gena.cwcodes.net/Projects/Gena/Utils/HiderunG.Script
End
If,Not,ExistFile,%Target_Sys%\HideRun.exe,Run,%ProjectDir%\Utils\HiderunG.Script,Hiderun_Copy%SourceArch%,%Target_Sys%
End

[Expand_FileX_File_Sleep.exe]
Set,#5,1
If,Not,%SourceArch%,Equal,x86,Begin
If,ExistVar,%PluginArch%,Begin
If,%TargetWOW64%%PluginArch%,Equal,x86x86,Begin
If,Not,ExistFile,%Target_Win%\SysWOW64\Sleep.exe,Run,%ProjectDir%\Utils\Sleep_exe_Galapo.Script,Copyx86,%Target_Win%\SysWOW64
Set,#5,0
End
End
End
//-
If,#5,Equal,1,Begin
If,Not,ExistFile,%Target_Sys%\Sleep.exe,Run,%ProjectDir%\Utils\Sleep_exe_Galapo.Script,Copy%SourceArch%,%Target_Sys%
End

[Expand_FileX_File_Whoami.exe]
//Require,File,Whoami.exe,Arch
Set,#5,#1
If,Not,ExistFile,#7\Whoami.exe,Run,%API%,Expand_FileX_File_Whoami.exe#8,Whoami,exe,support_CAB,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_Whoami.exeNT5x]
Run,%API%,WindowsXP-KB838079-SupportTools_NT5x,Whoami,exe,support_CAB,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_Whoami.exe-]
If,Not,ExistFile,#7\#1.#2,If,ExistFile,#6\#1.#2,Require_FileQ,#1.#2
If,Not,ExistFile,#7\#1.#2,If,Not,ExistFile,#6\#1.#2,Run,%API%,Hotfixes_CustomTools,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,ExistFile,#7\#1.#2,Run,%API%,WindowsXP-KB838079-SupportTools_M,#1,#2,#3,#4,#5,#6,#7,#8,#9

[WindowsXP-KB838079-SupportTools_NT5x]
StrFormat,RTRIM,#2,1,%_ML_temp%
//-
If,#7,Equal,%Target_Sys%,Begin
If,ExistFile,#6\#1.%_ML_temp%?,Require_FileQ,#1.#2
End
If,#7,Equal,%Target_Win%\SysWOW64,Begin
If,ExistFile,#6\w#1.%_ML_temp%?,Require_FileQ,#1.#2
End
//--
If,Not,ExistFile,#7\#1.#2,Run,%API%,Hotfixes_CustomTools,#1,#2,#3,#4,#5,#6,#7,#8,#9
//--
If,Not,ExistFile,#7\#1.#2,Begin
If,%SourceArch%,Equal,x86,Begin
If,Not,ExistFile,%Target_Sys%\#1.#2,Run,%API%,WindowsXP-KB838079-SupportTools_M,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
If,Not,%SourceArch%,Equal,x86,Begin
If,Not,ExistFile,%Target_Win%\SysWOW64\#1.#2,Run,%API%,WindowsXP-KB838079-SupportTools_M,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
End

[WindowsXP-KB838079-SupportTools_P_CANCELLED]
//If,Not,%TargetWOW64%,Equal,x86,Echo,"#1.#2 Available only x86",Warn
//Else,Run,%API%,WindowsXP-KB838079-SupportTools_M,#1,#2,#3,#4,#5,#6,#7,#8,#9
Run,%API%,WindowsXP-KB838079-SupportTools_M,#1,#2,#3,#4,#5,#6,#7,#8,#9

[WindowsXP-KB838079-SupportTools_M]
If,%SourceArch%,Equal,x86,Run,%Api%,WindowsXP-KB838079-SupportTools-ENU_Copy,#1.#2,%Target_Sys%,#3
Else,Begin
If,#7,Equal,%Target_Win%\SysWOW64,Run,%Api%,WindowsXP-KB838079-SupportTools-ENU_Copy,#1.#2,%Target_Win%\SysWOW64,#3
//Ignore PluginArch When Arch paramter not used
If,#7,Equal,%Target_Sys%,If,Not,#5,Equal,Arch,Begin
If,%TargetWOW64%,Equal,x86,Run,%Api%,WindowsXP-KB838079-SupportTools-ENU_Copy,#1.#2,%Target_Win%\SysWOW64,#3
End
End

[WindowsXP-KB838079-SupportTools-ENU_Copy]
//Run,%Api%,WindowsXP-KB838079-SupportTools-ENU_Copy,whoami.exe,%ProjectTemp%,support_CAB
//--
Run,%API%,WindowsXP-KB838079-SupportTools_URL
Set,#9,%GlobalTemplates%\Hotfixes\WindowsXP-KB838079-SupportTools\WindowsXP-KB838079-SupportTools-ENU
If,Not,ExistFile,#9\#3\#1,If,ExistFile,#9.exe,Run,%Api%,WindowsXP-KB838079-SupportTools-ENU_Extract
If,Not,ExistFile,#9\#3\#1,Run,%Api%,WindowsXP-KB838079-SupportTools-ENU_Download,Extract
If,ExistFile,#9\#3\#1,If,Not,ExistDir,#2,DirMake,#2
If,ExistFile,#9\#3\#1,FileCopy,#9\#3\#1,#2

[WindowsXP-KB838079-SupportTools_URL]
Set,#9,%GlobalTemplates%\Hotfixes\WindowsXP-KB838079-SupportTools
//--
If,Not,ExistFile,#9\WindowsXP-KB838079-SupportTools.url,Add,Url,Path,#9\WindowsXP-KB838079-SupportTools.url,https://support.microsoft.com/en-us/kb/838079
If,Not,ExistFile,#9\WindowsXP-KB838079-SupportTools_.txt,Add,Url,Path,#9\WindowsXP-KB838079-SupportTools_.txt,https://support.microsoft.com/en-us/kb/838079
If,Not,ExistFile,#9\WindowsXP-KB838079-SupportTools_Download.url,Add,Url,Path,#9\WindowsXP-KB838079-SupportTools_Download.url,http://www.microsoft.com/en-us/download/details.aspx?id=18546
If,Not,ExistFile,#9\WindowsXP-KB838079-SupportTools_Download_.txt,Add,Url,Path,#9\WindowsXP-KB838079-SupportTools_Download_.txt,http://www.microsoft.com/en-us/download/details.aspx?id=18546

[WindowsXP-KB838079-SupportTools-ENU_Download]
Set,#9,%GlobalTemplates%\Hotfixes\WindowsXP-KB838079-SupportTools\WindowsXP-KB838079-SupportTools-ENU
Run,%Api%,Download_Files,%GlobalTemplates%\Hotfixes\WindowsXP-KB838079-SupportTools,WindowsXP-KB838079-SupportTools-ENU.exe,http://download.microsoft.com/download/d/3/8/d38066aa-4e37-4ae8-bce3-a4ce662b2024/WindowsXP-KB838079-SupportTools-ENU.exe
If,#1,Equal,Extract,Run,%Api%,WindowsXP-KB838079-SupportTools-ENU_Extract

[WindowsXP-KB838079-SupportTools-ENU_Extract]
Set,#9,%GlobalTemplates%\Hotfixes\WindowsXP-KB838079-SupportTools\WindowsXP-KB838079-SupportTools-ENU
If,ExistFile,#9.exe,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#9.exe#$q -o#$q#9#$q"
If,ExistFile,#9\support.cab,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#9\support.cab#$q -o#$q#9\support_CAB#$q"
If,ExistFile,#9\sup_pro.cab,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#9\sup_pro.cab#$q -o#$q#9\sup_pro_CAB#$q"
If,ExistFile,#9\sup_srv.cab,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#9\sup_srv.cab#$q -o#$q#9\sup_srv_CAB#$q"
//Corrupted - Delete All
If,Not,ExistFile,#9\support_CAB\whoami.exe,Begin
If,ExistDir,#9,Call,DirDelete,#9
If,ExistFile,#9.exe,Call,FileDelete,#9.exe
End

[Expand_FileX_File_RoboCopy.exe]
//Require,File,RoboCopy.exe,Arch
Set,#5,#1
If,Not,ExistFile,#7\RoboCopy.exe,Run,%API%,Expand_FileX_File_RoboCopy.exe#8,RoboCopy,exe,rktools_MSI,#4,#5,#6,#7,#8,#9
//---
Set,#9,-
If,Not,ExistVar,%PluginArch%,Set,%PluginArch%,""
Set,#8,%PluginArch%
If,ExistFile,%Target_Sys%\RoboCopy.exe,Begin
Set,%PluginArch%,%SourceArch%
Require_FileQ,mfc42u.dll
End
//-
If,ExistFile,%Target_Win%\SysWOW64\RoboCopy.exe,Begin
Set,%PluginArch%,x86
Require_FileQ,mfc42u.dll
End
//---
Set,%PluginArch%,#8

[Expand_FileX_File_RoboCopy.exeNT5x]
Run,%API%,Win2003-ResourceKit_M_NT5x,RoboCopy,exe,rktools_MSI,#4,#5,#6,#7,#8,#9

[Expand_FileX_File_RoboCopy.exe-]
If,Not,ExistFile,#7\#1.#2,If,ExistFile,#6\#1.#2,Require_FileQ,#1.#2
If,Not,ExistFile,#7\#1.#2,If,Not,ExistFile,#6\#1.#2,Run,%API%,Hotfixes_CustomTools,#1,#2,#3,#4,#5,#6,#7,#8,#9
If,Not,ExistFile,#7\#1.#2,Run,%API%,Win2003-ResourceKit_M,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Win2003-ResourceKit_M_NT5x]
StrFormat,RTRIM,#2,1,%_ML_temp%
//-
If,#7,Equal,%Target_Sys%,If,ExistFile,#6\#1.%_ML_temp%?,Require_FileQ,#1.#2
If,#7,Equal,%Target_Win%\SysWOW64,If,ExistFile,#6\w#1.%_ML_temp%?,Require_FileQ,#1.#2
//--
If,Not,ExistFile,#7\#1.#2,Run,%API%,Hotfixes_CustomTools,#1,#2,#3,#4,#5,#6,#7,#8,#9
//--
If,Not,ExistFile,#7\#1.#2,Begin
If,%SourceArch%,Equal,x86,Begin
If,Not,ExistFile,%Target_Sys%\#1.#2,Run,%API%,Win2003-ResourceKit_M,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
If,Not,%SourceArch%,Equal,x86,Begin
If,Not,ExistFile,%Target_Win%\SysWOW64\#1.#2,Run,%API%,Win2003-ResourceKit_M,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
End

[Win2003-ResourceKit_M]
If,%SourceArch%,Equal,x86,Run,%Api%,Win2003-ResourceKit_Copy,#1.#2,%Target_Sys%,#3
Else,Begin
If,#7,Equal,%Target_Win%\SysWOW64,Run,%Api%,Win2003-ResourceKit_Copy,#1.#2,%Target_Win%\SysWOW64,#3
//Ignore PluginArch When Arch parameter not used
If,#7,Equal,%Target_Sys%,Begin
If,Not,#5,Equal,Arch,Begin
If,%TargetWOW64%,Equal,x86,Run,%Api%,Win2003-ResourceKit_Copy,#1.#2,%Target_Win%\SysWOW64,#3
End
End
End

[Win2003-ResourceKit_Copy]
//Run,%Api%,Win2003-ResourceKit_Copy,robocopy.exe,%ProjectTemp%,rktools_MSI
//--
Run,%API%,Win2003-ResourceKit_URL
Set,#9,%GlobalTemplates%\Hotfixes\Win2003-ResourceKit\rktools
If,Not,ExistFile,#9\#3\#1,If,ExistFile,#9.exe,Run,%Api%,Win2003-ResourceKit_Extract
If,Not,ExistFile,#9\#3\#1,Run,%Api%,Win2003-ResourceKit_Download,Extract
If,ExistFile,#9\#3\#1,If,Not,ExistDir,#2,DirMake,#2
If,ExistFile,#9\#3\#1,FileCopy,#9\#3\#1,#2

[Win2003-ResourceKit_URL]
Set,#9,%GlobalTemplates%\Hotfixes\Win2003-ResourceKit
//--
If,Not,ExistFile,#9\Win2003-ResourceKit.url,Add,Url,Path,#9\Win2003-ResourceKit.url,http://www.microsoft.com/en-us/download/details.aspx?id=17657
If,Not,ExistFile,#9\Win2003-ResourceKit_.txt,Add,Url,Path,#9\Win2003-ResourceKit_.txt,http://www.microsoft.com/en-us/download/details.aspx?id=17657
If,Not,ExistFile,#9\Win2003-ResourceKit_Robocopy.url,Add,Url,Path,#9\Win2003-ResourceKit_Robocopy.url,https://technet.microsoft.com/en-us/library/cc733145.aspx
If,Not,ExistFile,#9\Win2003-ResourceKit_Robocopy_.txt,Add,Url,Path,#9\Win2003-ResourceKit_Robocopy_.txt,https://technet.microsoft.com/en-us/library/cc733145.aspx

[Win2003-ResourceKit_Download]
Set,#9,%GlobalTemplates%\Hotfixes\Win2003-ResourceKit\rktools
Run,%Api%,Download_Files,%GlobalTemplates%\Hotfixes\Win2003-ResourceKit,rktools.exe,http://download.microsoft.com/download/8/e/c/8ec3a7d8-05b4-440a-a71e-ca3ee25fe057/rktools.exe
If,#1,Equal,Extract,Run,%Api%,Win2003-ResourceKit_Extract

[Win2003-ResourceKit_Extract]
Set,#9,%GlobalTemplates%\Hotfixes\Win2003-ResourceKit\rktools
If,ExistFile,#9.exe,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#9.exe#$q -o#$q#9#$q"
If,ExistFile,#9\rktools.msi,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#9\rktools.msi#$q -o#$q#9\rktools_MSI#$q"
If,ExistFile,#9\rktools_p.cab,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#9\rktools_p.cab#$q -o#$q#9\rktools_p_CAB#$q"
If,ExistFile,#9\rktools_s.cab,ShellExecute,Hide,%Tools%\7z.exe,"x -y #$q#9\rktools_s.cab#$q -o#$q#9\rktools_s_CAB#$q"
//Corrupted - Delete All
If,Not,ExistFile,#9\rktools_MSI\robocopy.exe,Begin
If,ExistDir,#9,Call,DirDelete,#9
If,ExistFile,#9.exe,Call,FileDelete,#9.exe
End

[Hotfixes_CustomTools]
If,#7,Equal,%Target_Sys%,Begin
If,ExistFile,%GlobalTemplates%\Hotfixes\CustomTools\%SourceArch%\#1.#2,FileCopy,%GlobalTemplates%\Hotfixes\CustomTools\%SourceArch%\#1.#2,#7
End
If,#7,Equal,%Target_Win%\SysWOW64,Begin
If,ExistFile,%GlobalTemplates%\Hotfixes\CustomTools\x86\#1.#2,FileCopy,%GlobalTemplates%\Hotfixes\CustomTools\x86\#1.#2,#7
End

[Hotfixes_CustomTools_CANCELLED]
//Ignore PluginArch When Arch paramter not used
If,Not,ExistFile,#7\#1.#2,Begin
If,Not,#5,Equal,Arch,If,Not,%SourceArch%,Equal,x86,Begin
If,Not,#7,Equal,%Target_Win%\SysWOW64,Begin
If,%TargetWOW64%,Equal,x86,If,ExistFile,%GlobalTemplates%\Hotfixes\CustomTools\x86\#1.#2,FileCopy,%GlobalTemplates%\Hotfixes\CustomTools\x86\#1.#2,%Target_Win%\SysWOW64
End
End
End

[Expand_FileX_File_ssr.exe_Ross_MacGregor]
Set,#3,#1
//ssr.exe_Ross_MacGregor start with Utils_Tools_001--Version=003
Set,#9,3
//-
//Usage: ssr <occurrence> <search_text> <replace_text>
//           <input_file> [<output_file>]
//  <occurrence> - An integer specifying which occurrence to replace,
//                 use 0 for all.
//  Use '' to represent " in search and replace text.
//  Use /SSR_QUOTE/ to represent ' in search and replace text.
//  Use /SSR_NL/ to represent a new line in search and replace text.
//  Use /SSR_TAB/ to represent a tab in search and replace text.
//-
//Version: 1.2
//-
If,Not,#3-,Equal,-,Begin
StrFormat,CTRIM,#3,\,#3
If,Not,ExistDir,#3,DirMake,#3
If,ExistDir,#3,Begin
If,Not,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Call,Download,%ProjectDir%\Utils\Utils_Tools_001.Script,http://gena.cwcodes.net/Projects/Gena/Utils/Utils_Tools_001.Script
If,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Begin
IniRead,%ProjectDir%\Utils\Utils_Tools_001.Script,Main,Version,%_ML_T_ssr.exe_Ross_MacGregor%
If,%_ML_T_ssr.exe_Ross_MacGregor%,Smaller,#9,Call,Download,%ProjectDir%\Utils\Utils_Tools_001.Script,http://gena.cwcodes.net/Projects/Gena/Utils/Utils_Tools_001.Script
//-
If,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Begin
IniRead,%ProjectDir%\Utils\Utils_Tools_001.Script,Main,Version,%_ML_T_ssr.exe_Ross_MacGregor%
StrFormat,DEC,#9,1
If,%_ML_T_ssr.exe_Ross_MacGregor%,Bigger,2,Begin
If,Not,ExistFile,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor\ssr\Release\ssr.exe,Begin
Call,DirDeleteMake,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor
If,Not,ExistDir,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor,Echo,"%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor NOT FOUND",Warn
ExtractFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Folder,41236.ZIP,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor
ExtractFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Folder,41236_Ross_MacGregor_ssr_TXT.URL,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor
ShellExecute,Hide,%Tools%\7z.exe,"x #$q%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor\41236.ZIP#$q -y -o#$q%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor#$q"
End
If,ExistFile,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor\ssr\Release\ssr.exe,Begin
If,Not,#3,Equal,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor\ssr\Release,Begin
System,FILEREDIRECT,OFF
If,ExistFile,#3\ssr.exe,ShellExecute,Hide,attrib.exe,"-R -S -A -H #$q#3#$q"
System,FILEREDIRECT,ON
FileCopy,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor\ssr\Release\ssr.exe,#3
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor
Call,Echo,"CAN NOT Find %BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor\ssr\Release\ssr.exe",Warn
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor
Call,Echo,"CAN NOT UPDATE %ProjectDir%\Utils\Utils_Tools_001.Script",Warn
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor
Call,Echo,"CAN NOT Download %ProjectDir%\Utils\Utils_Tools_001.Script",Warn
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\ssr_exe_Ross_MacGregor
Call,Echo,"CAN NOT Download %ProjectDir%\Utils\Utils_Tools_001.Script",Warn
End
//-
End
Else,Begin
Call,Echo,"Folder Not Exists - '#3'",Warn
End
End
Else,Begin
Call,Echo,"'Parameter 3 missing'",Warn
End

[Expand_FileX_File_EchoFile.exe_BlueLife]
Set,#3,#1
//EchoFile.exe_BlueLife start with Utils_Tools_001--Version=003
Set,#9,3
//-
If,Not,#3-,Equal,-,Begin
StrFormat,CTRIM,#3,\,#3
If,Not,ExistDir,#3,DirMake,#3
If,ExistDir,#3,Begin
If,Not,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Call,Download,%ProjectDir%\Utils\Utils_Tools_001.Script,http://gena.cwcodes.net/Projects/Gena/Utils/Utils_Tools_001.Script
If,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Begin
IniRead,%ProjectDir%\Utils\Utils_Tools_001.Script,Main,Version,%_ML_T_EchoFile.exe_BlueLife%
If,%_ML_T_EchoFile.exe_BlueLife%,Smaller,#9,Call,Download,%ProjectDir%\Utils\Utils_Tools_001.Script,http://gena.cwcodes.net/Projects/Gena/Utils/Utils_Tools_001.Script
//-
If,ExistFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Begin
IniRead,%ProjectDir%\Utils\Utils_Tools_001.Script,Main,Version,%_ML_T_EchoFile.exe_BlueLife%
StrFormat,DEC,#9,1
If,%_ML_T_EchoFile.exe_BlueLife%,Bigger,2,Begin
If,Not,ExistFile,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife\EchoFile.exe,Begin
Call,DirDeleteMake,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife
If,Not,ExistDir,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife,Echo,"%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife NOT FOUND",Warn
ExtractFile,%ProjectDir%\Utils\Utils_Tools_001.Script,Folder,EchoFile.7z,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife
ShellExecute,Hide,%Tools%\7z.exe,"x #$q%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife\EchoFile.7z#$q -y -o#$q%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife#$q"
End
If,ExistFile,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife\EchoFile.exe,Begin
If,Not,#3,Equal,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife,Begin
System,FILEREDIRECT,OFF
If,ExistFile,#3\EchoFile.exe,ShellExecute,Hide,attrib.exe,"-R -S -A -H #$q#3#$q"
System,FILEREDIRECT,ON
FileCopy,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife\EchoFile.exe,#3
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife
Call,Echo,"CAN NOT Find %BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife\EchoFile.exe",Warn
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife
Call,Echo,"CAN NOT UPDATE %ProjectDir%\Utils\Utils_Tools_001.Script",Warn
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife
Call,Echo,"CAN NOT Download %ProjectDir%\Utils\Utils_Tools_001.Script",Warn
End
End
Else,Begin
Call,DirDelete,%BaseDir%\Temp\Macro_Library\EchoFile_exe_BlueLife
Call,Echo,"CAN NOT Download %ProjectDir%\Utils\Utils_Tools_001.Script",Warn
End
//-
End
Else,Begin
Call,Echo,"Folder Not Exists - '#3'",Warn
End
End
Else,Begin
Call,Echo,"'Parameter 3 missing'",Warn
End

[Download_Files]
// This section also used directly by ML
// 1 Folder 2 FileName 3 Web (Cancelled 4 NoExit )
If,#3-,Equal,-,Echo,"Download File - Parameter Missing",Warn
Else,Run,%Api%,Download_Files_P,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Download_Files_P]
//If,#4-,Equal,-,Set,#4,Exit
//If,#5-,Equal,-,Set,#5,Open
If,#4-,Equal,-,Set,#4,NoExit
If,#5-,Equal,-,Set,#5,Hide
//-
Set,#9,%ProjectTemp%\Download_Call
If,#9,Equal,#2,Set,#9,%ProjectTemp%\Download_Call\Download
//-
If,Not,ExistDir,#9,DirMake,#9
If,ExistFile,#9\#2,Call,FileDelete,#9\#2
Run,%Api%,Download_Files_Wget,#9\#2,#3,#4,#5
If,Not,ExistDir,#1,DirMake,#1
//If,ExistFile,#9\#2,FileCopy,#9\#2,#1
If,ExistFile,#9\#2,Begin
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C Move /Y #$q#9\#2#$q #$q#1#$q",#9
System,FILEREDIRECT,ON
If,Not,%ExitCode%,Equal,0,Begin
Echo,"Call Download Move Error - 2nd attempt to Move - ErrorLevel:%ExitCode%",Warn
System,FILEREDIRECT,OFF
ShellExecute,Hide,cmd.exe,"/C Move /Y #$q#9\#2#$q #$q#1#$q",#9
System,FILEREDIRECT,ON
If,Not,%ExitCode%,Equal,0,Echo,"Call Download Move Error - ErrorLevel:%ExitCode%",Warn
End
End

[Download_Files_Wget]
Set,#9,""
Set,#7,""
If,#3,Equal,Exit,Set,#9," - Exiting"
//--
If,Not,ExistDir,%Tools%,DirMake,%Tools%
If,Not,ExistFile,%Tools%\WGet.exe,Begin
System,ERROROFF
WebGet,http://gena.cwcodes.net/Projects/Tools/Gena/WGet.exe,%Tools%\WGet.exe
End
If,Not,ExistFile,%Tools%\msvcr71.dll,Begin
System,ERROROFF
WebGet,http://gena.cwcodes.net/Projects/Tools/Gena/msvcr71.dll,%Tools%\msvcr71.dll
End
If,Not,ExistFile,%Tools%\libeay32.dll,Begin
System,ERROROFF
WebGet,http://gena.cwcodes.net/Projects/Tools/Gena/libeay32.dll,%Tools%\libeay32.dll
End
If,Not,ExistFile,%Tools%\ssleay32.dll,Begin
System,ERROROFF
WebGet,http://gena.cwcodes.net/Projects/Tools/Gena/ssleay32.dll,%Tools%\ssleay32.dll
End
//--
If,Not,ExistFile,%Tools%\WGet.exe,Exit,"%Tools%\WGet.exe Not Found"
If,Not,ExistFile,%Tools%\msvcr71.dll,Exit,"%Tools%\msvcr71.dll Not Found"
If,Not,ExistFile,%Tools%\libeay32.dll,Exit,"%Tools%\libeay32.dll Not Found"
If,Not,ExistFile,%Tools%\ssleay32.dll,Exit,"%Tools%\ssleay32.dll Not Found"
If,Not,ExistDir,%ProjectTemp%,DirMake,%ProjectTemp%
Echo,"Downloading #2"
//ShellExecute,#4,%Tools%\wget.exe,"-t 6 -O #$q#1#$q #$q#2#$q"
//Set,%_ML_T1%,%ExitCode%
//-
//---Minimize WGet with ErrorLevel Start
Call,FileCreateBlank,%ProjectTemp%\Wget_ErrorLevel.ini,OverWrite
Call,FileCreateBlank,%ProjectTemp%\Wget_Download.cmd,OverWrite
TxtAddLine,%ProjectTemp%\Wget_ErrorLevel.ini,"[WGet]",Append
TxtAddLine,%ProjectTemp%\Wget_Download.cmd,"wget.exe -t 6 -O #$q#1#$q #$q#2#$q",Append
TxtAddLine,%ProjectTemp%\Wget_Download.cmd,"Echo ErrorLevel=#$pErrorLevel#$p",Append
// --no-check-certificate required with ErrorLevel 1 Generic error code.
//TxtAddLine,%ProjectTemp%\Wget_Download.cmd,"If #$pErrorLevel#$p Equ 1 wget.exe -t 6 -O #$q#1#$q #$q#2#$q --no-check-certificate",Append
TxtAddLine,%ProjectTemp%\Wget_Download.cmd,"If #$pErrorLevel#$p NEq 0 wget.exe -t 6 -O #$q#1#$q #$q#2#$q --no-check-certificate",Append
TxtAddLine,%ProjectTemp%\Wget_Download.cmd,"If #$pErrorLevel#$p NEq 0 wget.exe --user-agent=#$qMozilla/5.0#$q -O #$q#1#$q #$q#2#$q",Append
TxtAddLine,%ProjectTemp%\Wget_Download.cmd,"Echo 'ErrorLevel=#$pErrorLevel#$p'>>#$q%ProjectTemp%\Wget_ErrorLevel.ini#$q",Append
TxtAddLine,%ProjectTemp%\Wget_Download.cmd,"Exit",Append
TxtAddLine,%ProjectTemp%\Wget_Download.cmd,"Cmd.exe",Append
TxtReplace,%ProjectTemp%\Wget_Download.cmd,%20," "
//ShellExecute,Hide,cmd.exe,"/C Start #$q#$q /Wait /Min #$q%ProjectTemp%\Wget_Download.cmd#$q",%Tools%
ShellExecute,Hide,cmd.exe,"/C Start #$q#$q /Wait /Min cmd.exe /C #$q%ProjectTemp%\Wget_Download.cmd#$q",%Tools%
//Set,%tCMD%,%ExitCode%
TxtReplace,%ProjectTemp%\Wget_ErrorLevel.ini,',""
IniRead,%ProjectTemp%\Wget_ErrorLevel.ini,WGet,ErrorLevel,%_ML_T1%
//If,%_ML_T1%,Equal,"",Call,Echo,"Failed downloading #2 - Wget Failure#9 - Download Cancelled",Warn
//Wget  ErrorLevel 3221225786  --> The application terminated as a result of a CTRL+C. Indicates that the application has been terminated either by user's keyboard input CTRL+C or CTRL+Break or closing command prompt window.
If,%_ML_T1%,Equal,"",Set,%_ML_T1%,3221225786
//Call,FileDelete,%ProjectTemp%\Wget_ErrorLevel.ini
//Call,FileDelete,%ProjectTemp%\Wget_Download.cmd
//Call,Echo,%_ML_T1%,Warn
//Message,%_ML_T1%,Information
//---Minimize WGet with ErrorLevel Finish
//-
If,Not,%_ML_T1%,Equal,0,Call,FileDelete,#1
// https://www.gnu.org/software/wget/manual/html_node/Exit-Status.html
//If,%_ML_T1%,Equal,0,Echo,"Wget ErrorLevel=%_ML_T1% 'No problems occurred.'"
If,%_ML_T1%,Equal,0,Echo,"Download Finished"
If,%_ML_T1%,Equal,1,Echo,"Wget ErrorLevel=%_ML_T1% 'Generic error code.'",Warn
If,%_ML_T1%,Equal,2,Echo,"Wget ErrorLevel=%_ML_T1% 'Parse error—for instance, when parsing command-line options, the ‘.wgetrc’ or ‘.netrc’...'",Warn
If,%_ML_T1%,Equal,3,Echo,"Wget ErrorLevel=%_ML_T1% 'File I/O error.'",Warn
If,%_ML_T1%,Equal,4,Echo,"Wget ErrorLevel=%_ML_T1% 'Network failure.'",Warn
If,%_ML_T1%,Equal,5,Echo,"Wget ErrorLevel=%_ML_T1% 'SSL verification failure.'",Warn
If,%_ML_T1%,Equal,6,Echo,"Wget ErrorLevel=%_ML_T1% 'Username/password authentication failure.'",Warn
If,%_ML_T1%,Equal,7,Echo,"Wget ErrorLevel=%_ML_T1% 'Protocol errors.'",Warn
If,%_ML_T1%,Equal,8,Echo,"Wget ErrorLevel=%_ML_T1% 'Server issued an error response.'",Warn
If,%_ML_T1%,Equal,3221225786,Echo,"Failed downloading #2 - Wget Failure#9 - Download Terminated",Warn
If,%_ML_T1%,Equal,3221225786,Message,"Failed downloading #2 - Wget Failure#9 - Download Terminated",Error,10
If,Not,%_ML_T1%,Equal,0,Begin
If,Not,%_ML_T1%,Equal,3221225786,Message,"Failed downloading #2 - Wget Failure#9 - ErrorLevel=%_ML_T1%",Error,10
End
If,Not,%_ML_T1%,Equal,0,Call,Echo,"Failed downloading #2 - Wget Failure#9 - ErrorLevel=%_ML_T1%",Warn
If,Not,%_ML_T1%,Equal,0,Set,#7,Failed
If,Not,%_ML_T1%,Equal,0,If,#3,Equal,Exit,Exit,"Failed downloading #2 - Wget Failure#9 - ErrorLevel=%_ML_T1%"
//-
If,Not,#7,Equal,Failed,Run,%Api%,Download_Files_WgetB,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Download_Files_WgetB]
Set,#8,0
If,ExistFile,#1,Retrieve,FileSize,#1,#8
If,#3-,Equal,-,Begin
If,ExistFile,#1,Begin
If,#8,Smaller,100,Begin
//Retrieve,FileSize bug - after limit it shows - ex: can not download very big files like WinNT6x iso
If,#8,Bigger,0,Call,FileDelete,#1
End
End
End
If,Not,#3-,Equal,-,Begin
StrFormat,Split,#3,=,1,%_ML_T%
If,%_ML_T%,Equal,CheckSize,Begin
StrFormat,Split,#3,=,2,%_ML_T%
If,ExistFile,#1,Begin
If,#8,Smaller,%_ML_T%,Call,FileDelete,#1
End
End
Else,Begin
If,#8,Smaller,100,Begin
//Retrieve,FileSize bug - after limit it shows - ex: can not download very big files like WinNT6x iso
If,#8,Bigger,0,Call,FileDelete,#1
End
End
End
If,Not,ExistFile,#1,Message,"Failed downloading #2 - Wget Failure#9",Error,10
If,Not,ExistFile,#1,Call,Echo,"Failed downloading #2 - Wget Failure#9",Warn
If,Not,ExistFile,#1,If,#3,Equal,Exit,Exit,"Failed downloading #2 - Wget Failure#9"

[Expand_FileX_File_CMD_Utilities_Finish]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  CMD_Utilities Finish  @@@@@@

[Expand_FileX_File_Major_Gui_Applications_Start]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  Marjo Gui Applications Start  @@@@@@

[Expand_FileX_File_Notepad.exe]
If,Not,ExistFile,#7\notepad.exe,Require_FileQ,notepad.exe
If,Not,ExistFile,#7\winspool.drv,Require_FileQ,winspool.drv
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\comdlg32.dll,Require_FileQ,comdlg32.dll
If,Not,ExistFile,#7\shell32.dll,Require_FileQ,shell32.dll
If,Not,ExistFile,#7\shlwapi.dll,Require_FileQ,shlwapi.dll
Require,File,Comctl32.dll

[Expand_FileX_File_Regedit.exe]
If,Not,#7,Equal,%Target_Win%\SysWOW64,Begin
If,Not,ExistFile,%Target_Win%\regedit.exe,Run,%Api%,Expand_FileX_File_Regedit.exe_Win,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
Else,If,Not,ExistFile,#7\regedit.exe,Require_FileQ,regedit.exe
If,Not,ExistFile,#7\aclui.dll,Require_FileQ,aclui.dll
If,Not,ExistFile,#7\clb.dll,Require_FileQ,clb.dll
If,Not,ExistFile,#7\ulib.dll,Require_FileQ,ulib.dll
If,Not,ExistFile,#7\mpr.dll,Require_FileQ,mpr.dll
If,Not,ExistFile,#7\ole32.dll,Require_FileQ,ole32.dll
If,Not,ExistFile,#7\oleaut32.dll,Require_FileQ,oleaut32.dll
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\comdlg32.dll,Require_FileQ,comdlg32.dll
If,Not,ExistFile,#7\shell32.dll,Require_FileQ,shell32.dll
If,Not,ExistFile,#7\shlwapi.dll,Require_FileQ,shlwapi.dll
If,Not,ExistFile,#7\authz.dll,Require_FileQ,authz.dll
Require,File,Comctl32.dll

[Expand_FileX_File_Regedit.exe_Win]
If,%OSFamily%,Equal,NT5,CopyOrExpand,%Source_Sys%\Regedit.exe,%Target_Win%\Regedit.exe
Else,Begin
CopyOrExpand,%Source_Win%\Regedit.exe,%Target_Win%\Regedit.exe
If,Not,ExistFile,%Target_Win%\%DistLang%\Regedit.exe.mui,If,ExistFile,%Source_Win%\%DistLang%\Regedit.exe.mui,CopyOrExpand,%Source_Win%\%DistLang%\Regedit.exe.mui,%Target_Win%\%DistLang%\Regedit.exe.mui
If,Not,%DistLang%,Equal,en-US,Begin
If,Not,ExistFile,%Target_Win%\%DistLang%\Regedit.exe.mui,If,ExistFile,%Source_Win%\en-US\Regedit.exe.mui,CopyOrExpand,%Source_Win%\en-US\Regedit.exe.mui,%Target_Win%\en-US\Regedit.exe.mui
End
End

[Expand_FileX_File_Taskmgr.exe]
If,Not,ExistFile,#7\taskmgr.exe,Require_FileQ,taskmgr.exe
If,Not,ExistFile,#7\iphlpapi.dll,Require_FileQ,iphlpapi.dll
If,%SourceArch%,Equal,x86,Begin
If,Not,ExistFile,#7\vdmdbg.dll,Require_FileQ,vdmdbg.dll
End
If,#7,Equal,%Target_Win%\SysWOW64,Begin
If,Not,ExistFile,#7\vdmdbg.dll,Require_FileQ,vdmdbg.dll
End
If,Not,%OSFamily%,Equal,NT5,Begin
If,Not,ExistFile,#7\utildll.dll,Require_FileQ,utildll.dll
End
If,Not,ExistFile,#7\psapi.dll,Require_FileQ,psapi.dll
If,Not,ExistFile,#7\shell32.dll,Require_FileQ,shell32.dll
If,Not,ExistFile,#7\shlwapi.dll,Require_FileQ,shlwapi.dll
If,Not,ExistFile,#7\ws2_32.dll,Require_FileQ,ws2_32.dll
If,Not,ExistFile,#7\ws2help.dll,Require_FileQ,ws2help.dll
Require,File,Comctl32.dll
Require,File,Services.exe

[Expand_FileX_File_Major_Gui_Applications_Finish]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  Marjo Gui Applications Finish  @@@@@@

[Expand_FileX_File_Rundll32.exe]
If,Not,ExistFile,#7\rundll32.exe,Require_FileQ,rundll32.exe
If,Not,ExistFile,#7\imagehlp.dll,Require,File,imagehlp.dll
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll

[Expand_FileX_File_DONOTUSE0512]
// UNDER CONSTRUCTION - files removed from core
If,Not,ExistFile,%Target_Sys%\CRYPTDLL.DLL,CopyOrExpand,%Source_Win%\CRYPTDLL.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\DNSAPI.DLL,CopyOrExpand,%Source_Win%\DNSAPI.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\FRAMEBUF.DLL,CopyOrExpand,%Source_Win%\FRAMEBUF.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\SAMLIB.DLL,CopyOrExpand,%Source_Win%\SAMLIB.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\SAMSRV.DLL,CopyOrExpand,%Source_Win%\SAMSRV.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\SCESRV.DLL,CopyOrExpand,%Source_Win%\SCESRV.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\UNTFS.DLL,CopyOrExpand,%Source_Win%\UNTFS.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\VGA850.FON,CopyOrExpand,%Source_Win%\VGA850.FON,%Target_Sys%
FileRename,%Target_Sys%\VGA850.FON,%Target_Sys%\VGA850.FONTEMP
FileRename,%Target_Sys%\VGA850.FONTEMP,%Target_Sys%\VGA850.FON
If,Not,ExistFile,%Target_Sys%\WINMM.DLL,CopyOrExpand,%Source_Win%\WINMM.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\drivers\NPFS.SY?,CopyOrExpand,%Source_Win%\NPFS.SYS,%Target_Sys%\drivers
FileRename,%Target_Sys%\drivers\NPFS.SYS,%Target_Sys%\drivers\NPFS.SYSTEMP
FileRename,%Target_Sys%\drivers\NPFS.SYSTEMP,%Target_Sys%\drivers\NPFS.SYS
//-
If,Not,ExistFile,%Target_Sys%\APPHELP.DLL,CopyOrExpand,%Source_Win%\APPHELP.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\COMCTL32.DLL,CopyOrExpand,%Source_Win%\COMCTL32.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\COMDLG32.DLL,CopyOrExpand,%Source_Win%\COMDLG32.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\CRYPTUI.DLL,CopyOrExpand,%Source_Win%\CRYPTUI.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\DESK.CPL,CopyOrExpand,%Source_Win%\DESK.CPL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\DISKCOPY.DLL,CopyOrExpand,%Source_Win%\DISKCOPY.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\IMM32.DLL,CopyOrExpand,%Source_Win%\IMM32.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\IPHLPAPI.DLL,CopyOrExpand,%Source_Win%\IPHLPAPI.DLL,%Target_Sys%
//-
If,Not,ExistFile,%Target_Sys%\MSGINA.DLL,CopyOrExpand,%Source_Win%\MSGINA.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\MSV1_0.DLL,CopyOrExpand,%Source_Win%\MSV1_0.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\ODBC32.DLL,CopyOrExpand,%Source_Win%\ODBC32.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\OLE32.DLL,CopyOrExpand,%Source_Win%\OLE32.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\OLEAUT32.DLL,CopyOrExpand,%Source_Win%\OLEAUT32.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\OLEDLG.DLL,CopyOrExpand,%Source_Win%\OLEDLG.DLL,%Target_Sys%
If,%SourceArch%,Equal,x86,Begin
If,Not,ExistFile,%Target_Sys%\OLEPRO32.DLL,CopyOrExpand,%Source_Win%\OLEPRO32.DLL,%Target_Sys%
End
If,Not,ExistFile,%Target_Sys%\POWRPROF.DLL,CopyOrExpand,%Source_Win%\POWRPROF.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\RUNDLL32.EXE,CopyOrExpand,%Source_Win%\RUNDLL32.EXE,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\SHELL32.DLL,CopyOrExpand,%Source_Win%\SHELL32.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\SHLWAPI.DLL,CopyOrExpand,%Source_Win%\SHLWAPI.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\SYSSETUP.DLL,CopyOrExpand,%Source_Win%\SYSSETUP.DLL,%Target_Sys%
//-
If,Not,ExistFile,%Target_Sys%\URLMON.DLL,CopyOrExpand,%Source_Win%\URLMON.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\USP10.DLL,CopyOrExpand,%Source_Win%\USP10.DLL,%Target_Sys%
If,%SourceArch%,Equal,x86,Begin
If,Not,ExistFile,%Target_Sys%\VGA256.DLL,CopyOrExpand,%Source_Win%\VGA256.DLL,%Target_Sys%
End
If,Not,ExistFile,%Target_Sys%\WININET.DLL,CopyOrExpand,%Source_Win%\WININET.DLL,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\WINSPOOL.DRV,CopyOrExpand,%Source_Win%\WINSPOOL.DRV,%Target_Sys%
If,Not,ExistFile,%Target_Sys%\WSOCK32.DLL,CopyOrExpand,%Source_Win%\WSOCK32.DLL,%Target_Sys%
//-
If,Not,ExistFile,%Target_Sys%\MNMDD.SY?,CopyOrExpand,%Source_Win%\MNMDD.SYS,%Target_Sys%\drivers
FileRename,%Target_Sys%\drivers\MNMDD.SYS,%Target_Sys%\drivers\MNMDD.SYSTEMP
FileRename,%Target_Sys%\drivers\MNMDD.SYSTEMP,%Target_Sys%\drivers\MNMDD.SYS
If,Not,ExistFile,%Target_Sys%\RDBSS.SY?,CopyOrExpand,%Source_Win%\RDBSS.SYS,%Target_Sys%\drivers
FileRename,%Target_Sys%\drivers\RDBSS.SYS,%Target_Sys%\drivers\RDBSS.SYSTEMP
FileRename,%Target_Sys%\drivers\RDBSS.SYSTEMP,%Target_Sys%\drivers\RDBSS.SYS
//-SCSIPORT.SYS - BS - VSTXWDCS.SYS Not found (VSTXWDCS.SYS comes from dps)
//==> SCSIPORT.SYS prerequested by other things.....
If,Not,ExistFile,%Target_Sys%\SCSIPORT.SY?,CopyOrExpand,%Source_Win%\SCSIPORT.SYS,%Target_Sys%\drivers
FileRename,%Target_Sys%\drivers\SCSIPORT.SYS,%Target_Sys%\drivers\SCSIPORT.SYSTEMP
FileRename,%Target_Sys%\drivers\SCSIPORT.SYSTEMP,%Target_Sys%\drivers\SCSIPORT.SYS
If,Not,ExistFile,%Target_Sys%\SFLOPPY.SY?,CopyOrExpand,%Source_Win%\SFLOPPY.SYS,%Target_Sys%\drivers
FileRename,%Target_Sys%\drivers\SFLOPPY.SYS,%Target_Sys%\drivers\SFLOPPY.SYSTEMP
FileRename,%Target_Sys%\drivers\SFLOPPY.SYSTEMP,%Target_Sys%\drivers\SFLOPPY.SYS
If,Not,ExistFile,%Target_Sys%\SLIP.SY?,CopyOrExpand,%Source_Win%\SLIP.SYS,%Target_Sys%\drivers
FileRename,%Target_Sys%\drivers\SLIP.SYS,%Target_Sys%\drivers\SLIP.SYSTEMP
FileRename,%Target_Sys%\drivers\SLIP.SYSTEMP,%Target_Sys%\drivers\SLIP.SYS
If,Not,ExistFile,%Target_Sys%\TDI.SY?,CopyOrExpand,%Source_Win%\TDI.SYS,%Target_Sys%\drivers
FileRename,%Target_Sys%\drivers\TDI.SYS,%Target_Sys%\drivers\TDI.SYSTEMP
FileRename,%Target_Sys%\drivers\TDI.SYSTEMP,%Target_Sys%\drivers\TDI.SYS

[Expand_FileX_File_xpob2res.dll]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
//None Enu - OBRS0409.dll -> xpob2res.dll
If,#8,Equal,NT5x,Begin
If,Not,ExistFile,#7\xpob2res.dll,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
IniRead,%ProjectDir%\script.project,IniVariables,LocalizeLID,#5
If,#7,Equal,%Target_Sys%,Begin
If,ExistFile,#6\xpob2res.dll,CopyOrExpand,#6\xpob2res.dll,#7\xpob2res.dll
If,Not,ExistFile,#7\xpob2res.dll,Begin
If,ExistFile,#6\xpob2res.dl_,CopyOrExpand,#6\xpob2res.dll,#7\xpob2res.dll
End
If,Not,ExistFile,76\xpob2res.dll,Begin
If,ExistFile,#6\OBRS#5.dll,CopyOrExpand,#6\OBRS#5.dll,#7\xpob2res.dll
If,Not,ExistFile,#7\xpob2res.dll,Begin
If,ExistFile,#6\OBRS#5.dl_,CopyOrExpand,#6\OBRS#5.dll,#7\xpob2res.dll
End
End
End
If,#7,Equal,%Target_Win%\SysWOW64,Begin
If,ExistFile,#6\Wxpob2res.dll,CopyOrExpand,#6\Wxpob2res.dll,#7\xpob2res.dll
If,Not,ExistFile,#7\xpob2res.dll,Begin
If,ExistFile,#6\Wxpob2res.dl_,CopyOrExpand,#6\Wxpob2res.dll,#7\xpob2res.dll
End
If,Not,ExistFile,#7\xpob2res.dll,Begin
If,ExistFile,#6\WOBRS#5.dll,CopyOrExpand,#6\WOBRS#5.dll,#7\xpob2res.dll
If,Not,ExistFile,#7\xpob2res.dll,Begin
If,ExistFile,#6\WOBRS#5.dl_,CopyOrExpand,#6\WOBRS#5.dll,#7\xpob2res.dll
End
End
End
End
If,Not,ExistFile,#7\xpob2res.dll,Call,Echo,"xpob2res.dll NOT FOUND",Warn
End

[Expand_FileX_File_ws03res.dll]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
//ws03res.dll Not exists on win7
//ws03res.dll:
// - XPx86 Enu there is xpsp1res.dll
// - XPx86 None Enu there is SPRS0407.dll --> xpsp1res.dll
// ---> XPx86 -> Require,File,ws03res.dll do nothing
// - XPx64 Enu -> ws03res.dll
// - W2003x86 Enu -> ws03res.dll
// - W2003x86 None Enu -> sprs041f.dll=1,,,,,,,2,0,0,ws03res.dll,1,2
// - W2003x86 Enu -> ws03res.dll
// - W2003x64 None Enu -> sprs0407.dll=1,,,,,,,2,0,0,ws03res.dll,1,2
//==> Require,File,ws03res.dll  works only on none XPx86
//--
If,#8,Equal,NT5x,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
If,Not,#9%SourceArch%,Equal,XPx86,Begin
If,Not,ExistFile,#7\ws03res.dll,Begin
//ws03res.dll -> XPx64 Enu + 2k3x86/x64 Enu -- source ws03res.dll
If,#7,Equal,%Target_Sys%,Begin
If,ExistFile,#6\ws03res.dll,CopyOrExpand,#6\ws03res.dll,#7
If,Not,ExistFile,#7\ws03res.dll,Begin
If,ExistFile,#6\ws03res.dl_,CopyOrExpand,#6\ws03res.dll,#7
End
End
If,#7,Equal,%Target_Win%\SysWOW64,Begin
If,ExistFile,#6\Wws03res.dll,CopyOrExpand,#6\Wws03res.dll,#7\ws03res.dll
If,Not,ExistFile,#7\ws03res.dll,Begin
If,ExistFile,#6\Wws03res.dl_,CopyOrExpand,#6\Wws03res.dll,#7\ws03res.dll
End
End
End
//--
If,Not,ExistFile,#7\ws03res.dll,Begin
IniRead,%ProjectDir%\script.project,IniVariables,LocalizeLID,#5
If,#7,Equal,%Target_Sys%,Begin
If,ExistFile,#6\SPRS#5.dll,CopyOrExpand,%Source_Win%\SPRS#5.dll,#7\ws03res.dll
If,Not,ExistFile,#7\ws03res.dll,Begin
If,ExistFile,#6\SPRS#5.dl_,CopyOrExpand,%Source_Win%\SPRS#5.dll,#7\ws03res.dll
End
End
If,#7,Equal,%Target_Win%\SysWOW64,Begin
If,ExistFile,#6\WSPRS#5.dll,CopyOrExpand,#6\WSPRS#5.dll,#7\ws03res.dll
If,Not,ExistFile,#7\ws03res.dll,Begin
If,ExistFile,#6\WSPRS#5.dl_,CopyOrExpand,#6\WSPRS#5.dll,#7\ws03res.dll
End
End
End
//--
If,Not,ExistFile,#7\ws03res.dll,Call,Echo,"ws03res.dll OR SPRS#5.dll NOT FOUND",Warn
End
End

[Expand_FileX_File_w03a2409.dll]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
//w03a2409:
// - XPx64 Enu -> w03a2409.dll=1,,,,,,,2,0,0,,1,2
// - XPx64 Enu -> w03a2404.dll=1,,,,,,,701,0,0,w03a2409.dll,1,2
// - XPx64 Enu -> .....
// - W2003x86 Enu -> w03a2409.dll=1,,,,,,,2,0,0,,1,2
// - W2003x86 Enu -> w03a2404.dll=1,,,,,,,701,0,0,w03a2409.dll,1,2
// - W2003x86 Enu -> .....
// - W2003x86 None Enu -> Only one line: w03s241f.dll=1,,,,,,,2,0,0,w03a2409.dll,1,2
// - W2003x64 Enu -> w03a2409.dll=1,,,,,,,2,0,0,,1,2
// - W2003x64 Enu -> w03a2404.dll=1,,,,,,,701,0,0,w03a2409.dll,1,2
// - W2003x64 Enu -> .....
// - W2003x64 None Enu -> Only one line: w03s2804.dll=1,,,,,,,2,0,0,w03a2409.dll,1,2
// -
//Require,File,w03a2409.dll --> w03a2409.dll on W2003 Workstation / XPx64 - w03s2409.dll on W3003 Server x86/x64
//==> Require,File,w03a2409.dll works only on none XPx86
//-
If,#8,Equal,NT5x,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
If,Not,#9%SourceArch%,Equal,XPx86,Begin
IniRead,%ProjectDir%\script.project,IniVariables,LocalizeLID,#5
StrFormat,LTRIM,#5,1,#5
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,#7,Equal,%Target_Sys%,Begin
If,ExistFile,#6\w03a2#5.dll,CopyOrExpand,#6\w03a2#5.dll,#7\w03a2409.dll
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,ExistFile,#6\w03a2#5.dl_,CopyOrExpand,#6\w03a2#5.dll,#7\w03a2409.dll
End
//-
If,Not,ExistFile,#7\w03a2409.dll,Begin
//Fallback to source w03a2409.dll
If,ExistFile,#6\w03a2409.dll,CopyOrExpand,#6\w03a2409.dll,#7\w03a2409.dll
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,ExistFile,#6\w03a2409.dl_,CopyOrExpand,#6\w03a2409.dll,#7\w03a2409.dll
End
End
//-
End
If,#7,Equal,%Target_Win%\SysWOW64,Begin
If,ExistFile,#6\Ww03a2#5.dll,CopyOrExpand,#6\Ww03a2#5.dll,#7\w03a2409.dll
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,ExistFile,#6\Ww03a2#5.dl_,CopyOrExpand,#6\Ww03a2#5.dll,#7\w03a2409.dll
End
//-
If,Not,ExistFile,#7\w03a2409.dll,Begin
//Fallback to source w03a2409.dll
If,ExistFile,#6\Ww03a2409.dll,CopyOrExpand,#6\Ww03a2409.dll,#7\w03a2409.dll
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,ExistFile,#6\Ww03a2409.dl_,CopyOrExpand,#6\Ww03a2409.dll,#7\w03a2409.dll
End
End
//-
End
End
//-
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,#7,Equal,%Target_Sys%,Begin
If,ExistFile,#6\w03s2#5.dll,CopyOrExpand,#6\w03s2#5.dll,#7\w03a2409.dll
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,ExistFile,#6\w03s2#5.dl_,CopyOrExpand,#6\w03s2#5.dll,#7\w03a2409.dll
End
//-
If,Not,ExistFile,#7\w03a2409.dll,Begin
//Fallback to source w03s2409.dll
If,ExistFile,#6\w03s2409.dll,CopyOrExpand,#6\w03s2409.dll,#7\w03a2409.dll
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,ExistFile,#6\w03s2409.dl_,CopyOrExpand,#6\w03s2409.dll,#7\w03a2409.dll
End
End
//-
End
If,#7,Equal,%Target_Win%\SysWOW64,Begin
If,ExistFile,#6\Ww03s2#5.dll,CopyOrExpand,#6\Ww03s2#5.dll,#7\w03a2409.dll
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,ExistFile,#6\Ww03s2#5.dl_,CopyOrExpand,#6\Ww03s2#5.dll,#7\w03a2409.dll
End
//-
If,Not,ExistFile,#7\w03a2409.dll,Begin
//Fallback to source w03s2409.dll
If,ExistFile,#6\Ww03s2409.dll,CopyOrExpand,#6\Ww03s2409.dll,#7\w03a2409.dll
If,Not,ExistFile,#7\w03a2409.dll,Begin
If,ExistFile,#6\Ww03s2409.dl_,CopyOrExpand,#6\Ww03s2409.dll,#7\w03a2409.dll
End
End
//-
End
End
If,Not,ExistFile,#7\w03a2409.dll,Call,Echo,"W2003 x86/x64 - XPx64 - w03a2#5.dll OR w03s2#5.dll NOT FOUND",Warn
End
End

[Expand_FileX_File_xpsp2res.dll]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
// xpsp2res.dll not exists on win7
If,#8,Equal,NT5x,Begin
If,Not,ExistFile,#7\xpsp2res.dll,Begin
If,#7,Equal,%Target_Sys%,Begin
If,ExistFile,#6\xpsp2res.dl?,CopyOrExpand,#6\xpsp2res.dll,#7
Else,Begin
IniRead,%ProjectDir%\script.project,IniVariables,LocalizeLID,#5
If,ExistFile,%Source_Win%\sprt#5.dl?,CopyOrExpand,%Source_Win%\sprt#5.dll,%Target_Sys%\xpsp2res.dll
Else,Echo,"sprt#5.dl? - xpsp2res.dll NOT FOUND",Warn
End
End
Else,Begin
If,ExistFile,#6\wxpsp2res.dl?,CopyOrExpand,#6\wxpsp2res.dll,#7\xpsp2res.dll
Else,Begin
IniRead,%ProjectDir%\script.project,IniVariables,LocalizeLID,#5
If,ExistFile,%Source_Win%\wsprt#5.dl?,CopyOrExpand,%Source_Win%\wsprt#5.dll,%Target_Sys%\xpsp2res.dll
Else,Echo,"wsprt#5.dl? - xpsp2res.dll NOT FOUND",Warn
End
End
End
End

[Expand_FileX_File_RunOnceDep]
//rundll32.exe iernonce.dll,RunOnceExProcess
If,Not,ExistFile,#7\rundll32.exe,Require_FileQ,rundll32.exe
If,Not,ExistFile,#7\imagehlp.dll,Require,File,imagehlp.dll
If,Not,ExistFile,#7\iernonce.dll,Require_FileQ,iernonce.dll
//iesetup.dll not required for Runonce (xpsp3x86)
//If,Not,ExistFile,#7\iesetup.dll,Require_FileQ,iesetup.dll
If,Not,ExistFile,#7\version.dll,Require_FileQ,version.dll
//iernonce.dll --- requires ---> ole32.dll - advpack.dll - shell32.dll - comctl32.dll - shlwapi.dll
If,Not,ExistFile,#7\ole32.dll,Require_FileQ,ole32.dll
If,Not,ExistFile,#7\advpack.dll,Require_FileQ,advpack.dll
If,Not,ExistFile,#7\shell32.dll,Require_FileQ,shell32.dll
//Here we need comctl32.dll from sourcewin (Ex xpsp3 v5.82.2900.5512 NOT the one used to start explorer-shell on winsxs with v6.0.2600.0 - Require,File,Comctl32.dll will not work)
If,Not,ExistFile,#7\comctl32.dll,Require_FileQ,comctl32.dll
If,Not,ExistFile,#7\shlwapi.dll,Require_FileQ,shlwapi.dll
Require,File,Services.exe

[Expand_FileX_File_lsass.exe]
Set,#9,-
If,#7,Equal,%Target_Win%\SysWOW64,Begin
Set,%PluginArch%,%SourceArch%
Set,#9,r
End
//---
//lsass.exe and dependencies
If,Not,ExistFile,%Target_Sys%\lsass.exe,Require_FileQ,lsass.exe
If,Not,ExistFile,%Target_Sys%\lsasrv.dll,Require_FileQ,lsasrv.dll
If,Not,ExistFile,%Target_Sys%\samlib.dll,Require_FileQ,samlib.dll
If,Not,ExistFile,%Target_Sys%\samsrv.dll,Require_FileQ,samsrv.dll
If,Not,ExistFile,%Target_Sys%\dnsapi.dll,Require_FileQ,dnsapi.dll
If,Not,ExistFile,%Target_Sys%\cryptdll.dll,Require_FileQ,cryptdll.dll
If,Not,ExistFile,%Target_Sys%\mpr.dll,Require_FileQ,mpr.dll
If,Not,ExistFile,%Target_Sys%\msasn1.dll,Require_FileQ,msasn1.dll
If,Not,ExistFile,%Target_Sys%\msprivs.dll,Require_FileQ,msprivs.dll
If,Not,ExistFile,%Target_Sys%\netapi32.dll,Require_FileQ,netapi32.dll
If,Not,ExistFile,%Target_Sys%\ntdsapi.dll,Require_FileQ,ntdsapi.dll
If,Not,ExistFile,%Target_Sys%\wldap32.dll,Require_FileQ,wldap32.dll
If,Not,ExistFile,%Target_Sys%\ws2_32.dll,Require_FileQ,ws2_32.dll
If,Not,ExistFile,%Target_Sys%\ws2help.dll,Require_FileQ,ws2help.dll
If,Not,ExistFile,%Target_Sys%\drivers\NPFS.SYS,Begin
If,ExistFile,%Source_Sys%\NPFS.SY?,CopyOrExpand,%Source_Sys%\NPFS.SYS,%Target_Sys%\drivers
If,ExistFile,%Source_Sys%\Drivers\NPFS.SY?,CopyOrExpand,%Source_Sys%\Drivers\NPFS.SYS,%Target_Sys%\drivers
End
//---
If,#9,Equal,r,Set,%PluginArch%,x86

[Expand_FileX_File_Services.exe]
Set,#9,-
If,#7,Equal,%Target_Win%\SysWOW64,Begin
Set,%PluginArch%,%SourceArch%
Set,#9,r
End
//---
//sxs.dll - all applications (include command line) common dependency ;)
If,Not,ExistFile,%Target_Sys%\sxs.dll,Require_FileQ,sxs.dll
Require,File,lsass.exe
//services.exe and dependencies
If,Not,ExistFile,%Target_Sys%\services.exe,Require_FileQ,services.exe
If,Not,ExistFile,%Target_Sys%\scesrv.dll,Require_FileQ,scesrv.dll
If,Not,ExistFile,%Target_Sys%\authz.dll,Require_FileQ,authz.dll
If,Not,ExistFile,%Target_Sys%\msvcp60.dll,Require_FileQ,msvcp60.dll
If,Not,ExistFile,%Target_Sys%\ncobjapi.dll,Require_FileQ,ncobjapi.dll
If,Not,ExistFile,%Target_Sys%\umpnpmgr.dll,Require_FileQ,umpnpmgr.dll
If,Not,ExistFile,%Target_Sys%\winsta.dll,Require_FileQ,winsta.dll
//---
If,#9,Equal,r,Set,%PluginArch%,x86

[Expand_FileX_File_DONOTUSEAutoITDep]
//Tested with Autoit v3.3.6.1 with following line
//AU3361.exe /AutoIt3ExecuteLine "MsgBox(4096, ""Title"", ""Test"")"
//-
//Set,%w%,%Target_Sys%\au.cmd
//Set,%w%,%Target_Sys%\CmdShell.cmd
//If,Not,ExistFile,%Target_Sys%\AU3361.exe,FileCopy,%Tools%\%SourceArch%\AU3361.exe,%Target_Sys%
//If,Not,ExistFile,%w%,FileCreateBlank,%w%
//TxtAddLine,%w%,"AU3361.exe /AutoIt3ExecuteLine #$qMsgBox(4096, #$q#$qTitle#$q#$q, #$q#$qTest#$q#$q)#$q",Append
//-
If,Not,ExistFile,#7\sxs.dll,Require_FileQ,sxs.dll
If,Not,ExistFile,#7\comdlg32.dll,Require_FileQ,comdlg32.dll
If,Not,ExistFile,#7\wsock32.dll,Require_FileQ,wsock32.dll
If,Not,ExistFile,#7\version.dll,Require_FileQ,version.dll
If,Not,ExistFile,#7\shlwapi.dll,Require_FileQ,shlwapi.dll
If,Not,ExistFile,#7\crypt32.dll,Require_FileQ,crypt32.dll
If,Not,ExistFile,#7\psapi.dll,Require_FileQ,psapi.dll
If,Not,ExistFile,#7\shell32.dll,Require_FileQ,shell32.dll
If,Not,ExistFile,#7\ole32.dll,Require_FileQ,ole32.dll
If,Not,ExistFile,#7\oleaut32.dll,Require_FileQ,oleaut32.dll
If,Not,ExistFile,#7\wininet.dll,Require_FileQ,wininet.dll
If,Not,ExistFile,#7\mpr.dll,Require_FileQ,mpr.dll
If,Not,ExistFile,#7\winmm.dll,Require_FileQ,winmm.dll
Require,File,Comctl32.dll

[Expand_FileX_File_WinLogonDep]
If,Not,ExistFile,#7\authz.dll,Require_FileQ,authz.dll
If,Not,ExistFile,#7\crypt32.dll,Require_FileQ,crypt32.dll
If,Not,ExistFile,#7\imagehlp.dll,Require,File,imagehlp.dll
If,Not,ExistFile,#7\msasn1.dll,Require_FileQ,msasn1.dll
If,Not,ExistFile,#7\nddeapi.dll,Require_FileQ,nddeapi.dll
If,Not,ExistFile,#7\netapi32.dll,Require_FileQ,netapi32.dll
If,Not,ExistFile,#7\profmap.dll,Require_FileQ,profmap.dll
If,Not,ExistFile,#7\psapi.dll,Require_FileQ,psapi.dll
If,Not,ExistFile,#7\regapi.dll,Require_FileQ,regapi.dll
If,Not,ExistFile,#7\setupapi.dll,Require_FileQ,setupapi.dll
If,Not,ExistFile,#7\version.dll,Require_FileQ,version.dll
If,Not,ExistFile,#7\winsta.dll,Require_FileQ,winsta.dll
If,Not,ExistFile,#7\wintrust.dll,Require_FileQ,wintrust.dll
If,Not,ExistFile,#7\ws2_32.dll,Require_FileQ,ws2_32.dll
If,Not,ExistFile,#7\ws2help.dll,Require_FileQ,ws2help.dll

[Expand_FileX_File_BrowseForFolder]
//More work required ;)
If,Not,ExistFile,#7\shell32.dll,Require_FileQ,shell32.dll
If,Not,ExistFile,#7\shdocvw.dll,Require_FileQ,shdocvw.dll
If,Not,ExistFile,#7\cryptui.dll,Require_FileQ,cryptui.dll
If,Not,ExistFile,#7\browseui.dll,Require_FileQ,browseui.dll

[Expand_FileX_File_WinSXS]
If,#8,Equal,NT5x,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
If,Not,#9%SourceArch%,Equal,XPx86,Begin
If,ExistFile,%Source_Win%\asms01.cab,Begin
If,-#1,Equal,-,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q *"
End
Else,Begin
Call,DirMake,%Target_Win%\WinSxS
Call,DirDelete,%ProjectTemp%\asms01_CAB
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%ProjectTemp%\asms01_CAB#$q *"
If,#1,Equal,OnlySourceArch,Begin
If,Not,%SourceArch%,Equal,x86,Begin
DirDelete,%ProjectTemp%\asms01_CAB\x86_*
DirDelete,%ProjectTemp%\asms01_CAB\wow64_*
DirDelete,%ProjectTemp%\asms01_CAB\policies\x86_*
DirDelete,%ProjectTemp%\asms01_CAB\policies\wow64_*
DirDelete,%ProjectTemp%\asms01_CAB\setuppolicies\x86_*
DirDelete,%ProjectTemp%\asms01_CAB\setuppolicies\wow64_*
FileDelete,%ProjectTemp%\asms01_CAB\manifests\x86_*
FileDelete,%ProjectTemp%\asms01_CAB\manifests\wow64_*
End
End
If,#1,Equal,x86,Begin
If,Not,%SourceArch%,Equal,x86,Begin
If,%SourceArch%,Equal,IA64,Set,#9,IA64
If,%SourceArch%,Equal,x64,Set,#9,AMD64
DirDelete,%ProjectTemp%\asms01_CAB\#9_*
DirDelete,%ProjectTemp%\asms01_CAB\wow64_*
DirDelete,%ProjectTemp%\asms01_CAB\policies\#9_*
DirDelete,%ProjectTemp%\asms01_CAB\policies\wow64_*
DirDelete,%ProjectTemp%\asms01_CAB\setuppolicies\#9_*
DirDelete,%ProjectTemp%\asms01_CAB\setuppolicies\wow64_*
FileDelete,%ProjectTemp%\asms01_CAB\manifests\#9_*
FileDelete,%ProjectTemp%\asms01_CAB\manifests\wow64_*
End
End
FileCopy,%ProjectTemp%\asms01_CAB\*,%Target_Win%\WinSxS
End
End
Else,Echo,"asms01.cab NOT FOUND",Warn
End
Else,Begin
Require,File,Comctl32.dll
Require,File,GdiPlus.dll,101000
Require,File,VisualCPlusPlus
End
End

[Expand_FileX_File_VisualCPlusPlus]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
If,#8,Equal,NT5x,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
If,#9%SourceArch%,Equal,XPx86,Begin
//--
//ATL.DLL - MFC42.DLL - MFC42U.DLL - MSVCP60.DLL
Set,#5,x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a
//--
If,Not,ExistDir,%Target_Win%\WinSxS\#5,DirMake,%Target_Win%\WinSxS\#5
If,Not,ExistDir,%Target_Win%\WinSxS\Manifests,DirMake,%Target_Win%\WinSxS\Manifests
If,Not,ExistFile,%Target_Win%\WinSxS\#5\ATL.DLL,Begin
CopyOrExpand,%Source_Win%\ASMS\6000\MSFT\VCRTL\ATL.DLL,%Target_Win%\WinSxS\#5
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\#5\ATL.DLL#$q"
End
If,Not,ExistFile,%Target_Win%\WinSxS\#5\MFC42.DLL,Begin
CopyOrExpand,%Source_Win%\ASMS\6000\MSFT\VCRTL\MFC42.DLL,%Target_Win%\WinSxS\#5
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\#5\MFC42.DLL#$q"
End
If,Not,ExistFile,%Target_Win%\WinSxS\#5\MFC42U.DLL,Begin
CopyOrExpand,%Source_Win%\ASMS\6000\MSFT\VCRTL\MFC42U.DLL,%Target_Win%\WinSxS\#5
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\#5\MFC42U.DLL#$q"
End
If,Not,ExistFile,%Target_Win%\WinSxS\#5\MSVCP60.DLL,Begin
CopyOrExpand,%Source_Win%\ASMS\6000\MSFT\VCRTL\MSVCP60.DLL,%Target_Win%\WinSxS\#5
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\#5\MSVCP60.DLL#$q"
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.CAT,Begin
CopyOrExpand,%Source_Win%\ASMS\6000\MSFT\VCRTL\VCRTL.CAT,%Target_Win%\WinSxS\manifests
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\manifests\VCRTL.CAT#$q"
FileRename,%Target_Win%\WinSxS\manifests\VCRTL.CAT,%Target_Win%\WinSxS\manifests\#5.CAT
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.Manifest,Begin
CopyOrExpand,%Source_Win%\ASMS\6000\MSFT\VCRTL\VCRTL.MAN,%Target_Win%\WinSxS\manifests
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\manifests\VCRTL.MAN#$q"
FileRename,%Target_Win%\WinSxS\manifests\VCRTL.MAN,%Target_Win%\WinSxS\manifests\#5.Manifest
End
End
Else,Begin
//--
Set,#5,-
Set,#4,-
Set,#3,-
IniRead,%ProjectDir%\script.project,IniVariables,OSServicePack,#2
//IA64+
If,%SourceArch%,Equal,IA64,Begin
//IA64SP2+
//--NO VisualCPlusPlus-IA64 WinSxS, besides there atl.dll - mfc42.dll - mfc42u.dll - msvcp60.dll at System32 ;)
If,%PluginArch%,Equal,x86,Begin
Set,#5,x86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_6.0.9792.0_x-ww_08A6620A
Set,#4,x86_policy.6.0.Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_x-ww_527A1C68
Set,#3,6.0.9792.0
End
//IA64SP2-
//IA64-
End
If,%SourceArch%,Equal,x64,Begin
//XPx64SP2+
//--NO VisualCPlusPlus-x64 WinSxS, besides there atl.dll - mfc42.dll - mfc42u.dll - msvcp60.dll at System32 ;)
If,%PluginArch%,Equal,x86,Begin
Set,#5,x86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_6.0.9792.0_x-ww_08A6620A
Set,#4,x86_policy.6.0.Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_x-ww_527A1C68
Set,#3,6.0.9792.0
End
//XPx64SP2-
If,#2,Equal,sp0,Begin
//XPx64SP0+
//--NO VisualCPlusPlus-x64 WinSxS, besides there atl.dll - mfc42.dll - mfc42u.dll - msvcp60.dll at System32 ;)
If,%PluginArch%,Equal,x86,Begin
//Only Manifest and #5
Set,#5,x86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_6.0.0.0_x-ww_FF9986D7
Set,#4,-
Set,#3,-
End
//XPx64SP0+
End
End
If,%SourceArch%,Equal,x86,Begin
//W2k3x86+
//W2k3x86SP2+
Set,#5,x86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_6.0.9792.0_x-ww_08A6620A
Set,#4,x86_policy.6.0.Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_x-ww_527A1C68
Set,#3,6.0.9792.0
//W2k3x86SP2-
If,#2,Equal,sp1,Begin
//W2k3x86SP1+
//Only Manifest and #5
Set,#5,x86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_6.0.0.0_x-ww_FF9986D7
Set,#4,-
Set,#3,-
//W2k3x86SP1-
End
//W2k3x86-
End
//--
If,Not,#5,Equal,-,Begin
If,Not,ExistDir,%Target_Win%\WinSxS\#5,DirMake,%Target_Win%\WinSxS\#5
If,Not,ExistDir,%Target_Win%\WinSxS\Manifests,DirMake,%Target_Win%\WinSxS\Manifests
//--
If,Not,ExistFile,%Target_Win%\WinSxS\#5\atl.dll,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q #5\atl.dll"
If,Not,ExistFile,%Target_Win%\WinSxS\#5\atl.dll,Echo,"atl.dll NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\#5\mfc42.dll,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q #5\mfc42.dll"
If,Not,ExistFile,%Target_Win%\WinSxS\#5\mfc42.dll,Echo,"mfc42.dll NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\#5\mfc42u.dll,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q #5\mfc42u.dll"
If,Not,ExistFile,%Target_Win%\WinSxS\#5\mfc42u.dll,Echo,"mfc42u.dll NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\#5\msvcp60.dll,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q #5\msvcp60.dll"
If,Not,ExistFile,%Target_Win%\WinSxS\#5\msvcp60.dll,Echo,"msvcp60.dll NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.CAT,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q manifests\#5.cat"
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.CAT,Echo,"#5.CAT NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.Manifest,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q manifests\#5.manifest"
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.Manifest,Echo,"#5.Manifest NOT Extracted",WARN
End
If,Not,#4,Equal,-,Begin
If,Not,ExistFile,%Target_Win%\WinSxS\policies\#4\#3.policy,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q policies\#4\#3.policy"
If,Not,ExistFile,%Target_Win%\WinSxS\policies\#4\#3.policy,Echo,"#3.policy NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\policies\#4\#3.cat,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q policies\#4\#3.cat"
If,Not,ExistFile,%Target_Win%\WinSxS\policies\#4\#3.cat,Echo,"#3.cat NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\setuppolicies\#4\#3.policy,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q setuppolicies\#4\#3.policy"
If,Not,ExistFile,%Target_Win%\WinSxS\setuppolicies\#4\#3.policy,Echo,"#3.policy NOT Extracted",WARN
End
End
End
//--
End
End

[Expand_FileX_File_Comctl32.dll]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
If,#8,Equal,NT5x,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
If,#9%SourceArch%,Equal,XPx86,Begin
//XPx86 CD always have same file here
//\WinSxS\Manifests\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a.CAT
//\WinSxS\Manifests\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a.Manifest
//\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a\comctl32.dll
//--
Set,#5,x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a
//--
If,Not,ExistDir,%Target_Win%\WinSxS\#5,DirMake,%Target_Win%\WinSxS\#5
If,Not,ExistDir,%Target_Win%\WinSxS\Manifests,DirMake,%Target_Win%\WinSxS\Manifests
If,Not,ExistFile,%Target_Win%\WinSxS\#5\COMCTL32.DLL,Begin
//--
If,Not,ExistFile,%Target_Win%\WinSxS\#5\COMCTL32.DLL,Begin
CopyOrExpand,%Source_Win%\ASMS\6000\MSFT\WINDOWS\COMMON\CONTROLS\COMCTL32.DLL,%Target_Win%\WinSxS\#5
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\#5\COMCTL32.DLL#$q"
End
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.CAT,Begin
CopyOrExpand,%Source_Win%\ASMS\6000\MSFT\WINDOWS\COMMON\CONTROLS\CONTROLS.CAT,%Target_Win%\WinSxS\manifests
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\manifests\CONTROLS.CAT#$q"
FileRename,%Target_Win%\WinSxS\manifests\CONTROLS.CAT,%Target_Win%\WinSxS\manifests\#5.CAT
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.Manifest,Begin
CopyOrExpand,%Source_Win%\ASMS\6000\MSFT\WINDOWS\COMMON\CONTROLS\CONTROLS.MAN,%Target_Win%\WinSxS\manifests
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\manifests\CONTROLS.MAN#$q"
FileRename,%Target_Win%\WinSxS\manifests\CONTROLS.MAN,%Target_Win%\WinSxS\manifests\#5.Manifest
End
End
Else,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OSServicePack,#2
If,%SourceArch%,Equal,IA64,Begin
//IA64+
//IA64SP2+
Set,#5,ia64_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.3959_x-ww_07CC24F5
Set,#4,ia64_policy.6.0.Microsoft.Windows.Common-Controls_6595b64144ccf1df_x-ww_383C48D5
Set,#3,6.0.3790.3959.policy
If,%PluginArch%,Equal,x86,Begin
Set,#5,wow64_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.3959_x-ww_5FA17F4E
Set,#4,wow64_policy.6.0.Microsoft.Windows.Common-Controls_6595b64144ccf1df_x-ww_5C2DC83C
Set,#3,6.0.3790.3959.policy
End
//IA64SP2-
//IA64-
End
If,%SourceArch%,Equal,x64,Begin
//XPx64SP2+
Set,#5,amd64_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.3959_x-ww_0A7B2435
Set,#4,amd64_policy.6.0.Microsoft.Windows.Common-Controls_6595b64144ccf1df_x-ww_BD997995
Set,#3,6.0.3790.3959.policy
If,%PluginArch%,Equal,x86,Begin
Set,#5,wow64_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.3959_x-ww_5FA17F4E
Set,#4,wow64_policy.6.0.Microsoft.Windows.Common-Controls_6595b64144ccf1df_x-ww_5C2DC83C
Set,#3,6.0.3790.3959.policy
End
//XPx64SP2-
If,#2,Equal,sp0,Begin
//XPx64SP0+
Set,#5,amd64_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.1830_x-ww_ACED72AF
Set,#4,amd64_policy.6.0.Microsoft.Windows.Common-Controls_6595b64144ccf1df_x-ww_BD997995
Set,#3,6.0.3790.1830.policy
If,%PluginArch%,Equal,x86,Begin
Set,#5,wow64_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.1830_x-ww_0213CDC8
Set,#4,wow64_policy.6.0.Microsoft.Windows.Common-Controls_6595b64144ccf1df_x-ww_5C2DC83C
Set,#3,6.0.3790.1830.policy
End
//XPx64SP0-
End
End
//If,%SourceArch%,Equal,x86,Set,#5,x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_5.82.3790.3959_x-ww_78FCF8D0
If,%SourceArch%,Equal,x86,Begin
//W2k3x86+
//W2k3x86SP2+
Set,#5,x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.3959_x-ww_D8713E55
Set,#4,x86_policy.6.0.Microsoft.Windows.Common-Controls_6595b64144ccf1df_x-ww_5DDAD775
Set,#3,6.0.3790.3959.policy
//W2k3x86SP2-
If,#2,Equal,sp1,Begin
//W2k3x86SP1+
Set,#5,x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.1830_x-ww_7AE38CCF
Set,#4,x86_policy.6.0.Microsoft.Windows.Common-Controls_6595b64144ccf1df_x-ww_5DDAD775
Set,#3,6.0.3790.1830.policy
//W2k3x86SP1-
End
//W2k3x86-
End
//--
If,Not,ExistDir,%Target_Win%\WinSxS\#5,DirMake,%Target_Win%\WinSxS\#5
If,Not,ExistDir,%Target_Win%\WinSxS\Manifests,DirMake,%Target_Win%\WinSxS\Manifests
//--
If,Not,ExistFile,%Target_Win%\WinSxS\#5\COMCTL32.DLL,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q #5\comctl32.dll"
If,Not,ExistFile,%Target_Win%\WinSxS\#5\COMCTL32.DLL,Echo,"COMCTL32.DLL NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.CAT,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q manifests\#5.cat"
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.CAT,Echo,"#5.CAT NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.Manifest,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q manifests\#5.manifest"
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.Manifest,Echo,"#5.Manifest NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\setuppolicies\#4\#3,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q setuppolicies\#4\#3"
If,Not,ExistFile,%Target_Win%\WinSxS\setuppolicies\#4\#3,Echo,"#3 NOT Extracted",WARN
End
//--
End
End

[Expand_FileX_File_GdiPlus.dll]
// #6 source_sys -- #7 target_sys -- #8 OSx
//--
// #1 XPx86     - NONE=10 - 1000 - 101000
// 10     copies \ASMS\10\ to System32 if not exists/updated (Default) (If updated Source\GDIPLUS.dll copies that file instead of \10\ )
// 1000   copies \ASMS\1000\ to WinSxS
// 101000 copies both to System32 and \ASMS\1000\ to WinSxS
// #1 Not-XPx86 - NONE=10 - 1000 - 101000
// 10     do not winsxs extract if there already exists/updated else winsxs extract (Default)  (If updated Source\GDIPLUS.dll copies that file instead of winsxs extract )
// 1000   extract WinSxS
// 101000 extract WinSxS with ignoring if there already exists/updated at System32
//--
//GdiPlus.dll is a winsxs file Besides on xp32 it is at system32 - and had a set of updates after sourcecd published (which in ASMS\10\ )
//XPx86 \ASMS\1000\                   5.1.3097.0
//XPx86 \ASMS\10\                     5.1.3102.5512
//XPx64-Wow64                         5.2.3790.3959
//WindowsXP-KB975337-x86-ENU          5.2.6001.22319
//WindowsXP-KB975337-x86-ENU.exe /x: .\WindowsXP-KB975337-x86-ENU\I386 /passive
//--> Update Extracts to ASMS\10\ (NOT ASMS\1000\) -> So probably latest version is at ASMS\10\ !! (or not ;))
//ps: to integrate Not-XPx86 asm01.cab may need to be updated else gdiplus.dll put to system32/syswow64 ...
//--
//http://msdn.microsoft.com/en-us/library/ms533798%28v=vs.85%29.aspx
//http://www.microsoft.com/en-us/download/details.aspx?id=18909
//ps: gdiplus.dll does explictly require manifest/WinSxS as pointed by ms ....
//--
//Tested with: MSViewer - SumatraPDF - RegShot2_ru_Unicode - DiskInternals_Linux_Recovery - DiskInternals_Raid2Raid - KeePass1 - RegistryLoaderPE
If,#8,Equal,NT5x,Begin
IniRead,%ProjectDir%\script.project,IniVariables,OS,#9
If,#9%SourceArch%,Equal,XPx86,Begin
//XPx86-
//1000 - 101000
Set,#2,#1
If,#1,Equal,"",Set,#2,10
If,#1,Equal,101000,Set,#2,10
If,#2,Equal,10,Begin
If,Not,ExistFile,%Target_Sys%\GDIPLUS.dll,Begin
If,ExistFile,%Source_Sys%\GDIPLUS.dl?,CopyorExpand,%Source_Sys%\GDIPLUS.dll,%Target_Sys%
End
If,Not,ExistFile,%Target_Sys%\GDIPLUS.dll,Begin
If,ExistFile,%SourceDir%\i386\ASMS\10\MSFT\Windows\GDIPLUS\GDIPLUS.dl?,CopyorExpand,%SourceDir%\i386\ASMS\10\MSFT\Windows\GDIPLUS\GDIPLUS.dll,%Target_Sys%
End
End
If,#1,Equal,1000,Set,#2,1000
If,#1,Equal,101000,Set,#2,1000
If,#2,Equal,1000,Begin
//XPx86+WinSXS1000
Set,#5,x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.0.0_x-ww_8d353f13
//-
If,Not,ExistFile,%Target_Win%\WinSxS\#5\GdiPlus.dll,Begin
If,ExistFile,%Source_Win%\ASMS\1000\MSFT\WINDOWS\GDIPLUS\GDIPLUS.DL?,Begin
If,Not,ExistDir,%Target_Win%\WinSxS\#5,DirMake,%Target_Win%\WinSxS\#5
CopyOrExpand,%Source_Win%\ASMS\1000\MSFT\WINDOWS\GDIPLUS\GDIPLUS.DLL,%Target_Win%\WinSxS\#5
ShellExecute,Hide,attrib.exe,"-R #$qtarget_win%\WinSxS\#5\GDIPLUS.DLL#$q"
End
//-
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.cat,Begin
If,ExistFile,%Source_Win%\ASMS\1000\MSFT\WINDOWS\GDIPLUS\GDIPLUS.CA?,Begin
If,Not,ExistDir,%Target_Win%\WinSxS\Manifests,DirMake,%Target_Win%\WinSxS\Manifests
CopyOrExpand,%Source_Win%\ASMS\1000\MSFT\WINDOWS\GDIPLUS\GDIPLUS.CAT,%Target_Win%\WinSxS\Manifests
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\Manifests\GDIPLUS.CAT#$q"
FileRename,%Target_Win%\WinSxS\Manifests\GDIPLUS.CAT,%Target_Win%\WinSxS\Manifests\#5.CAT
End
End
//-
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.Manifest,Begin
If,ExistFile,%Source_Win%\ASMS\1000\MSFT\WINDOWS\GDIPLUS\GDIPLUS.MA?,Begin
If,Not,ExistDir,%Target_Win%\WinSxS\Manifests,DirMake,%Target_Win%\WinSxS\Manifests
CopyOrExpand,%Source_Win%\ASMS\1000\MSFT\WINDOWS\GDIPLUS\GDIPLUS.MAN,%Target_Win%\WinSxS\Manifests
ShellExecute,Hide,attrib.exe,"-R #$q%Target_Win%\WinSxS\Manifests\GDIPLUS.MAN#$q"
FileRename,%Target_Win%\WinSxS\Manifests\GDIPLUS.MAN,%Target_Win%\WinSxS\Manifests\#5.Manifest
End
End
End
//-
//XPx86-WinSXS1000
End
//XPx86-
End
Else,Begin
//Not-XPx86
//--
Set,#2,#1
If,#1,Equal,"",Set,#2,10
If,#1,Equal,101000,Set,#2,10
If,#2,Equal,10,Begin
If,Not,ExistFile,#7\GdiPlus.dll,Begin
If,%SourceArch%,Equal,x86,Begin
If,ExistFile,#6\GdiPlus.dl?,CopyorExpand,#6\GdiPlus.dll,#7
End
Else,Begin
If,%PluginArch%,Equal,x86,Begin
If,ExistFile,#6\wGdiPlus.dl?,CopyorExpand,#6\wGdiPlus.dll,#7\GdiPlus.dll
End
Else,Begin
If,ExistFile,#6\GdiPlus.dl?,CopyorExpand,#6\GdiPlus.dll,#7
End
End
End
Set,#2,1000
If,ExistFile,#7\GdiPlus.dll,Set,#2,10
End
//--
If,#1,Equal,1000,Set,#2,1000
If,#1,Equal,101000,Set,#2,1000
//--
If,#2,Equal,1000,Begin
//Not-XPx86-WinSxS
IniRead,%ProjectDir%\script.project,IniVariables,OSServicePack,#2
If,%SourceArch%,Equal,IA64,Begin
//IA64SP2+
Set,#5,ia64_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.3790.3959_x-ww_B1ACA47E
Set,#4,ia64_policy.1.0.Microsoft.Windows.GdiPlus_6595b64144ccf1df_x-ww_28E6820C
Set,#3,5.1.3790.3959
//IA64SP2-
If,%PluginArch%,Equal,x86,Begin
Set,#3,x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.3790.3959_x-ww_8251BDDE
Set,#3,x86_policy.1.0.Microsoft.Windows.GdiPlus_6595b64144ccf1df_x-ww_4E8510AC
Set,#3,5.1.3790.3959
End
End
If,%SourceArch%,Equal,x64,Begin
//XPx64SP2+
Set,#5,amd64_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.3790.3959_x-ww_B45BA3BE
Set,#4,amd64_policy.1.0.Microsoft.Windows.GdiPlus_6595b64144ccf1df_x-ww_AE43B2CC
Set,#3,5.1.3790.3959
If,%PluginArch%,Equal,x86,Begin
Set,#5,x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.3790.3959_x-ww_8251BDDE
Set,#4,x86_policy.1.0.Microsoft.Windows.GdiPlus_6595b64144ccf1df_x-ww_4E8510AC
Set,#3,5.1.3790.3959
End
//XPx64SP2-
If,#2,Equal,sp0,Begin
//XPx64SP0+
Set,#3,amd64_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.3790.1830_x-ww_56CDF238
Set,#3,amd64_policy.1.0.Microsoft.Windows.GdiPlus_6595b64144ccf1df_x-ww_AE43B2CC
Set,#3,5.1.3790.1830
If,%PluginArch%,Equal,x86,Begin
Set,#5,x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.3790.1830_x-ww_24C40C58
Set,#4,x86_policy.1.0.Microsoft.Windows.GdiPlus_6595b64144ccf1df_x-ww_4E8510AC
Set,#3,5.1.3790.1830
End
//XPx64SP0-
End
End
If,%SourceArch%,Equal,x86,Begin
//W2k3x86SP2+
Set,#5,x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.3790.3959_x-ww_8251BDDE
Set,#4,x86_policy.1.0.Microsoft.Windows.GdiPlus_6595b64144ccf1df_x-ww_4E8510AC
Set,#3,5.1.3790.3959
//W2k3x86SP2-
If,#2,Equal,sp1,Begin
//W2k3x86SP1+
Set,#5,x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.3790.1830_x-ww_24C40C58
Set,#4,x86_policy.1.0.Microsoft.Windows.GdiPlus_6595b64144ccf1df_x-ww_4E8510AC
Set,#3,5.1.3790.1830
//W2k3x86SP1-
End
End
//--
If,Not,ExistFile,%Target_Win%\WinSxS\#5\GdiPlus.dll,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q #5\GdiPlus.dll"
If,Not,ExistFile,%Target_Win%\WinSxS\#5\GdiPlus.dll,Echo,"GdiPlus.dll NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.CAT,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q manifests\#5.cat"
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.CAT,Echo,"#5.CAT NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.Manifest,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q manifests\#5.manifest"
If,Not,ExistFile,%Target_Win%\WinSxS\manifests\#5.Manifest,Echo,"#5.Manifest NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\policies\#4\#3.policy,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q policies\#4\#3.policy"
If,Not,ExistFile,%Target_Win%\WinSxS\policies\#4\#3.policy,Echo,"#3.policy NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\policies\#4\#3.cat,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q policies\#4\#3.cat"
If,Not,ExistFile,%Target_Win%\WinSxS\policies\#4\#3.policy,Echo,"#3.cat NOT Extracted",WARN
End
If,Not,ExistFile,%Target_Win%\WinSxS\setuppolicies\#4\#3.policy,Begin
ShellExecute,hide,%Tools%\7z.exe,"x #$q%Source_Win%\asms01.cab#$q -y -o#$q%Target_Win%\WinSxS#$q setuppolicies\#4\#3.policy"
If,Not,ExistFile,%Target_Win%\WinSxS\setuppolicies\#4\#3.policy,Echo,"#3.policy NOT Extracted",WARN
End
//Not-XPx86-WinSxS
End
//Not-XPx86
End
End

[Expand_FileX--Require-File]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  Require-File  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[Expand_FileX--Registry_Start]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  Registry Start  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Require,Registry,msxml3.dll

[Expand_FileX1_Registry]
Set,#9,NT5x
IniRead,%ProjectDir%\script.project,IniVariables,NoWarnRegOverWrite,%NoWarnROW%
Run,%Api%,Expand_File_Registry_#1_Center,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_FileX2_Registry]
Set,#9,-
IniRead,%ProjectDir%\script.project,IniVariables,NoWarnRegOverWrite,%NoWarnROW%
Run,%Api%,Expand_File_Registry_#1_Center,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Expand_File_Registry_BrowseForFolder_INFO]
Infamous "Browse For Folder" menu,
Ex: Double Driver (->Backup - Scan Other System) , RunScanner /ac

[Expand_File_Registry_BrowseForFolder_Center]
If,Not,ExistFile,%RegSoftware%,Call,HiveCreate,%RegSoftware%
//--
Set,#8,""
Set,#7,system32
Set,#6,system32
If,Not,%sourcearch%,Equal,x86,Begin
If,%PluginArch%,Equal,x86,Begin
Set,#8,Wow6432Node\
Set,#7,SysWOW64
Set,#6,syswow64
End
End
//-
//If,%OSFamily%,Equal,NT5,Set,#5,1.1
//Else,Set,#5,2.0
//It seems versionvalue always 1.1
Set,#5,1.1
//-
//--
If,ExistRegSection,HKLM,Tmp_Software,Run,%Api%,Expand_File_Registry_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Begin
RegHiveLoad,Tmp_Software,%RegSoftware%
Run,%Api%,Expand_File_Registry_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9
RegHiveUnLoad,Tmp_Software
End

[Expand_File_Registry_BrowseForFolder]
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{13709620-C279-11CE-A49E-444553540000},,"Shell Automation Service"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\#8CLSID\{13709620-C279-11CE-A49E-444553540000}\InProcServer32,,#$pSystemRoot#$p\#6\SHELL32.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{13709620-C279-11CE-A49E-444553540000}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{13709620-C279-11CE-A49E-444553540000}\ProgID,,Shell.Application.1
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{13709620-C279-11CE-A49E-444553540000}\TypeLib,,{50a7e9b0-70ef-11d1-b75a-00a0c90564fe}
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{13709620-C279-11CE-A49E-444553540000}\Version,,#5
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{13709620-C279-11CE-A49E-444553540000}\VersionIndependentProgID,,Shell.Application
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{43A8F463-4222-11d2-B641-006097DF5BD4},,"Shell Name Space ListView"
If,%OSFamily%,Equal,NT5,RegWrite,HKLM,0x2,Tmp_Software\Classes\#8CLSID\{43A8F463-4222-11d2-B641-006097DF5BD4}\InProcServer32,,#$pSystemRoot#$p\#7\shdocvw.dll
//If,Not,%OSFamily%,Equal,NT5,RegWrite,HKLM,0x2,Tmp_Software\Classes\#8CLSID\{43A8F463-4222-11d2-B641-006097DF5BD4}\InProcServer32,,#$pSystemRoot#$p\#7\ieframe.dll
//both vistape and win7pese have ieframe.dll and working properly
If,Not,%OSFamily%,Equal,NT5,RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{43A8F463-4222-11d2-B641-006097DF5BD4}\InProcServer32,,x:\Windows\#7\ieframe.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{43A8F463-4222-11d2-B641-006097DF5BD4}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{603D3800-BD81-11d0-A3A5-00C04FD706EC},,"Background Task Scheduler"
If,%OSFamily%,Equal,NT5,RegWrite,HKLM,0x2,Tmp_Software\Classes\#8CLSID\{603D3800-BD81-11d0-A3A5-00C04FD706EC}\InProcServer32,,#$pSystemRoot#$p\#7\browseui.dll
//--Adding following 603D3800-BD81-11d0-A3A5-00C04FD706EC
//vistape -------- shell32.dll entry (0x2 or 0x1) cause no desktop on vistape ----------  on vistape      value is #$pSystemRoot#$p\#7\browseui.dll (=>value comes from project)
//win7pese ------- shell32.dll entry is correct and working properly -------------------  on win7pese     value is #$pSystemRoot#$p\#7\shell32.dll (=>value comes from project)
//If,Not,%OSFamily%,Equal,NT5,RegWrite,HKLM,0x2,Tmp_Software\Classes\#8CLSID\{603D3800-BD81-11d0-A3A5-00C04FD706EC}\InProcServer32,,#$pSystemRoot#$p\#7\shell32.dll
//If,Not,%OSFamily%,Equal,NT5,RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{603D3800-BD81-11d0-A3A5-00C04FD706EC}\InProcServer32,,x:\Windows\#7\shell32.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8CLSID\{603D3800-BD81-11d0-A3A5-00C04FD706EC}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8Shell.Application,,"Shell Automation Service"
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8Shell.Application\CLSID,,{13709620-C279-11CE-A49E-444553540000}
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8Shell.Application\CurVer,,Shell.Application.1
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8Shell.Application.1,,"Shell Automation Service"
RegWrite,HKLM,0x1,Tmp_Software\Classes\#8Shell.Application.1\CLSID,,{13709620-C279-11CE-A49E-444553540000}

[Expand_File_Registry_msxml3.dll_Center]
If,#9,Equal,NT5x,Begin
If,Not,ExistFile,%RegSoftware%,Call,HiveCreate,%RegSoftware%
If,ExistRegSection,HKLM,Tmp_Software,Begin
Set,%_ML_T%,0
If,Not,%SourceArch%,Equal,x86,If,ExistVar,%PluginArch%,Set,%_ML_T%,1
If,%_ML_T%,Equal,1,Begin
If,%PluginArch%,Equal,x86,Begin
Run,%Api%,Expand_File_Registry_#1_Wow64,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
End
Else,Run,%Api%,Expand_File_Registry_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
Else,Begin
RegHiveLoad,Tmp_Software,%RegSoftware%
Set,%_ML_T%,0
If,Not,%SourceArch%,Equal,x86,If,ExistVar,%PluginArch%,Set,%_ML_T%,1
If,%_ML_T%,Equal,1,Begin
If,%PluginArch%,Equal,x86,Begin
Run,%Api%,Expand_File_Registry_#1_Wow64,#1,#2,#3,#4,#5,#6,#7,#8,#9
End
End
Else,Run,%Api%,Expand_File_Registry_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9
RegHiveUnLoad,Tmp_Software
End
End

[Expand_File_Registry_msxml3.dll]
//RegHiveLoad,Tmp_Software,%RegSoftware%
RegWrite,HKLM,0x1,Tmp_Software\Classes\.xml,PerceivedType,-
RegWrite,HKLM,0x1,Tmp_Software\Classes\.xsl,PerceivedType,-
RegWrite,HKLM,0x1,Tmp_Software\Classes\.xml,,xmlfile
RegWrite,HKLM,0x1,Tmp_Software\Classes\.xml,"Content Type",text/xml
RegWrite,HKLM,0x1,Tmp_Software\Classes\.xsl,,xslfile
RegWrite,HKLM,0x1,Tmp_Software\Classes\.xsl,"Content Type",text/xml
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9},,"SAX#$sXML#$sReader"
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\InProcServer32,,msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\ProgID,,Msxml2.SAXXMLReader
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\VersionIndependentProgID,,Msxml2.SAXXMLReader
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\InProcServer32,,#$pSystemRoot#$p\System32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\SideBySide,RegVersion,3.0
RegWrite,HKLM,0x4,Tmp_Software\Classes\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\SideBySide,RefCount,1
RegWrite,HKLM,0x4,Tmp_Software\Classes\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\SideBySide,Version30RefCount,1
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\VersionList,3.0,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60},,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\InProcServer32,,#$pSystemRoot#$p\System32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\ProgID,,Microsoft.FreeThreadedXMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\Version,,1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\VersionIndependentProgID,,Microsoft.FreeThreadedXMLDOM
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60},,"XSL#$sTemplate"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\ProgID,,Msxml2.XSLTemplate
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\VersionIndependentProgID,,Msxml2.XSLTemplate
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688},,"SAX#$sXML#$sReader#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\ProgID,,Msxml2.SAXXMLReader.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\VersionIndependentProgID,,Msxml2.SAXXMLReader
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE},,"XML#$sSchema#$sCache"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\ProgID,,Msxml2.XMLSchemaCache
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\VersionIndependentProgID,,Msxml2.XMLSchemaCache
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8},,MsxmlIsland
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C},,"MXXMLWriter#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\ProgID,,Msxml2.MXXMLWriter.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\VersionIndependentProgID,,Msxml2.MXXMLWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA},,"SAXAttributes#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\ProgID,,Msxml2.SAXAttributes.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\VersionIndependentProgID,,Msxml2.SAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555},,"XML#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\BrowseInPlace,,""
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\DefaultIcon,,"#$pSystemRoot#$p\system32\msxml3.dll#$c0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\MiscStatus,,2228625
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\ProgID,,xmlfile
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\Version,,1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0},,SAXAttributes
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\ProgID,,Msxml2.SAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\VersionIndependentProgID,,Msxml2.SAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39},,"XML#$sData#$sSource#$sObject"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\ProgID,,Microsoft.XMLDSO.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\Version,,1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\VersionIndependentProgID,,Microsoft.XMLDSO
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{7E3FCEA1-31B4-11D2-AE1F-0080C7337EA1},,"XML#$sViewer#$sMoniker"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{7E3FCEA1-31B4-11D2-AE1F-0080C7337EA1}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{7E3FCEA1-31B4-11D2-AE1F-0080C7337EA1}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923},,"XML#$sScript#$sEngine"
RegWrite,HKLM,0x1,"Tmp_Software\Classes\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\Implemented Categories",,""
RegWrite,HKLM,0x1,"Tmp_Software\Classes\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\Implemented Categories\{F0B7A1A1-9847-11CF-8F20-00805F2CD064}",,""
RegWrite,HKLM,0x1,"Tmp_Software\Classes\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\Implemented Categories\{F0B7A1A2-9847-11CF-8F20-00805F2CD064}",,""
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\OLEScript,,""
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\ProgID,,XML
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3},,"Server#$sXML#$sHTTP#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\ProgID,,Msxml2.ServerXMLHTTP.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\VersionIndependentProgID,,Msxml2.ServerXMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1},,"Server#$sXML#$sHTTP"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\ProgID,,Msxml2.ServerXMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\VersionIndependentProgID,,Msxml2.ServerXMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E},,Msxml
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E}\ProgID,,Msxml
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39},,"XML#$sParser"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\ProgID,,Microsoft.XMLParser.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\Version,,1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\VersionIndependentProgID,,Microsoft.XMLParser
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8},,"XML#$sHTTP#$sRequest"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\ProgID,,Microsoft.XMLHTTP.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\VersionIndependentProgID,,Microsoft.XMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221},,"XML#$sParser"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XMLParser
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XMLParser
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F27-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F27-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F27-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221},,"XML#$sParser#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XMLParser.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XMLParser
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221},,"XML#$sDOM#$sDocument#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.DOMDocument.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.DOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221},,"Free#$sThreaded#$sXML#$sDOM#$sDocument#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.FreeThreadedDOMDocument.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.FreeThreadedDOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221},,"XML#$sSchema#$sCache#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XMLSchemaCache.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XMLSchemaCache
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221},,"XML#$sHTTP#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XMLHTTP.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221},,"XSL#$sTemplate#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XSLTemplate.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XSLTemplate
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F37-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F37-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F37-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221},,"XML#$sData#$sSource#$sObject#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.DSOControl.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.DSOControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F3F-C551-11D3-89B9-0000F81FE221},,"XML#$sMoniker#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F3F-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F3F-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221},,"XML#$sDocument#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\BrowseInPlace,,""
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\DefaultIcon,,"#$pSystemRoot#$p\system32\msxml3.dll#$c0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\MiscStatus,,2228625
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\ProgID,,xmlfile
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F41-C551-11D3-89B9-0000F81FE221},,"XML#$sIsland#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F5078F41-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F41-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F5078F41-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4},,"XML#$sDOM#$sDocument"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\ProgID,,Msxml2.DOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\VersionIndependentProgID,,Msxml2.DOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4},,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\ProgID,,Msxml2.FreeThreadedDOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\VersionIndependentProgID,,Msxml2.FreeThreadedDOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4},,"XML#$sData#$sSource#$sObject"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\ProgID,,Msxml2.DSOControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\VersionIndependentProgID,,Msxml2.DSOControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4},,"XML#$sHTTP"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\ProgID,,Msxml2.XMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\VersionIndependentProgID,,Msxml2.XMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020},,MXXMLWriter
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\InProcServer32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\ProgID,,Msxml2.MXXMLWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\VersionIndependentProgID,,Msxml2.MXXMLWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576},,IVBSAXLexicalHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC},,IVBSAXEntityResolver
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0},,IVBSAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04},,IVBSAXXMLFilter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{24FB3297-302D-4620-BA39-3A732D850558},,IVBSAXDTDHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{24FB3297-302D-4620-BA39-3A732D850558}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{24FB3297-302D-4620-BA39-3A732D850558}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{24FB3297-302D-4620-BA39-3A732D850558}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{24FB3297-302D-4620-BA39-3A732D850558}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60},,IXMLDOMNode
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60},,IXMLDOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60},,IXMLDOMNodeList
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60},,IXMLDOMNamedNodeMap
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60},,IXMLDOMCharacterData
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60},,IXMLDOMAttribute
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60},,IXMLDOMElement
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60},,IXMLDOMText
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60},,IXMLDOMComment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60},,IXMLDOMProcessingInstruction
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60},,IXMLDOMCDATASection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60},,IXMLDOMDocumentType
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60},,IXMLDOMNotation
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60},,IXMLDOMEntity
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60},,IXMLDOMEntityReference
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60},,IXMLDOMImplementation
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60},,IXSLProcessor
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60},,IXSLTemplate
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60},,IXMLDOMDocument2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60},,IXMLDOMDocument3
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9},,IXMLDocument2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9},,IXMLElement2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7},,IServerXMLHTTPRequest2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495},,IServerXMLHTTPRequest
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA},,IVBSAXContentHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39},,IDSOControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{373984C8-B845-449B-91E7-45AC83036ADE},,IXMLDOMSchemaCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{373984C8-B845-449B-91E7-45AC83036ADE}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{373984C8-B845-449B-91E7-45AC83036ADE}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{373984C8-B845-449B-91E7-45AC83036ADE}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{373984C8-B845-449B-91E7-45AC83036ADE}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782},,IXMLDOMDocumentFragment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782},,IXTLRuntime
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782},,IXMLDOMParseError
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782},,XMLDOMDocumentEvents
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020420-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020420-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782},,IXMLDOMParseError2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782},,IXMLDOMParseErrorCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E},,IXMLElement
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D},,IMXWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A},,IXMLDOMSchemaCollection2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaStringCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaItemCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaItem
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A},,ISchema
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaParticle
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaAttribute
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaElement
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaType
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaComplexType
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaAttributeGroup
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaModelGroup
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaAny
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaIdentityConstraint
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaNotation
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E},,IXMLElementCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288},,IVBSAXLocator
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30},,IMXReaderControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F},,IVBSAXXMLReader
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E},,IXMLDOMSelection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD},,IMXNamespacePrefixes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD},,IVBMXNamespaceManager
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD},,IMXXMLFilter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596},,IXMLAttribute
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D963D3FE-173C-4862-9095-B92F66995F52},,IVBSAXErrorHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D963D3FE-173C-4862-9095-B92F66995F52}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D963D3FE-173C-4862-9095-B92F66995F52}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D963D3FE-173C-4862-9095-B92F66995F52}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{D963D3FE-173C-4862-9095-B92F66995F52}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B},,IVBSAXDeclHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8},,IXMLHTTPRequest
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262},,IMXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B},,IXMLDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB},,IMXSchemaDeclHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.FreeThreadedXMLDOM,,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.FreeThreadedXMLDOM\CLSID,,{2933BF91-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.FreeThreadedXMLDOM\CurVer,,Microsoft.FreeThreadedXMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.FreeThreadedXMLDOM.1.0,,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.FreeThreadedXMLDOM.1.0\CLSID,,{2933BF91-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDOM,,"XML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDOM\CLSID,,{2933BF90-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDOM\CurVer,,Microsoft.XMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDOM.1.0,,"XML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDOM.1.0\CLSID,,{2933BF90-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDSO,,"XML#$sData#$sSource#$sObject"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDSO\CLSID,,{550DDA30-0541-11D2-9CA9-0060B0EC3D39}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDSO\CurVer,,Microsoft.XMLDSO.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDSO.1.0,,"XML#$sData#$sSource#$sObject"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLDSO.1.0\CLSID,,{550DDA30-0541-11D2-9CA9-0060B0EC3D39}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLHTTP,,"XML#$sHTTP#$sRequest"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLHTTP\CLSID,,{ED8C108E-4349-11D2-91A4-00C04F7969E8}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLHTTP\CurVer,,Microsoft.XMLHTTP.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLHTTP.1.0,,"XML#$sHTTP#$sRequest"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLHTTP.1.0\CLSID,,{ED8C108E-4349-11D2-91A4-00C04F7969E8}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLParser,,"XML#$sParser"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLParser\CLSID,,{D2423620-51A0-11D2-9CAF-0060B0EC3D39}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLParser\CurVer,,Microsoft.XMLParser.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLParser.1.0,,"XML#$sParser"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Microsoft.XMLParser.1.0\CLSID,,{D2423620-51A0-11D2-9CAF-0060B0EC3D39}
RegWrite,HKLM,0x1,"Tmp_Software\Classes\MIME\Database\Content Type\application/xml",CLSID,{48123BC4-99D9-11D1-A6B3-00C04FD91555}
RegWrite,HKLM,0x1,"Tmp_Software\Classes\MIME\Database\Content Type\application/xml",Extension,.xml
RegWrite,HKLM,0x3,"Tmp_Software\Classes\MIME\Database\Content Type\application/xml",Encoding,08,00,00,00
RegWrite,HKLM,0x1,"Tmp_Software\Classes\MIME\Database\Content Type\text/xml",CLSID,{48123BC4-99D9-11D1-A6B3-00C04FD91555}
RegWrite,HKLM,0x1,"Tmp_Software\Classes\MIME\Database\Content Type\text/xml",Extension,.xml
RegWrite,HKLM,0x3,"Tmp_Software\Classes\MIME\Database\Content Type\text/xml",Encoding,08,00,00,00
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml,,Msxml
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml\CLSID,,{CFC399AF-D876-11D0-9C10-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\MSXML.DOMDocument,,"XML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\MSXML.DOMDocument\CLSID,,{2933BF90-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\MSXML.DOMDocument\CurVer,,Microsoft.XMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\MSXML.FreeThreadedDOMDocument,,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\MSXML.FreeThreadedDOMDocument\CLSID,,{2933BF91-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\MSXML.FreeThreadedDOMDocument\CurVer,,Microsoft.FreeThreadedXMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DOMDocument,,"XML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DOMDocument\CLSID,,{F6D90F11-9C73-11D3-B32E-00C04F990BB4}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DOMDocument\CurVer,,Msxml2.DOMDocument.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DOMDocument.3.0,,"XML#$sDOM#$sDocument#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DOMDocument.3.0\CLSID,,{F5078F32-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DSOControl,,"XML#$sData#$sSource#$sObject"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DSOControl\CLSID,,{F6D90F14-9C73-11D3-B32E-00C04F990BB4}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DSOControl\CurVer,,Msxml2.DSOControl.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DSOControl.3.0,,"XML#$sData#$sSource#$sObject#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.DSOControl.3.0\CLSID,,{F5078F39-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.FreeThreadedDOMDocument,,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.FreeThreadedDOMDocument\CLSID,,{F6D90F12-9C73-11D3-B32E-00C04F990BB4}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.FreeThreadedDOMDocument\CurVer,,Msxml2.FreeThreadedDOMDocument.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.FreeThreadedDOMDocument.3.0,,"Free#$sThreaded#$sXML#$sDOM#$sDocument#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.FreeThreadedDOMDocument.3.0\CLSID,,{F5078F33-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.MXXMLWriter,,MXXMLWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.MXXMLWriter\CLSID,,{FC220AD8-A72A-4EE8-926E-0B7AD152A020}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.MXXMLWriter\CurVer,,Msxml2.MXXMLWriter.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.MXXMLWriter.3.0,,"MXXMLWriter#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.MXXMLWriter.3.0\CLSID,,{3D813DFE-6C91-4A4E-8F41-04346A841D9C}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXAttributes,,SAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXAttributes\CLSID,,{4DD441AD-526D-4A77-9F1B-9841ED802FB0}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXAttributes\CurVer,,Msxml2.SAXAttributes.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXAttributes.3.0,,"SAXAttributes#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXAttributes.3.0\CLSID,,{3E784A01-F3AE-4DC0-9354-9526B9370EBA}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXXMLReader,,"SAX#$sXML#$sReader"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXXMLReader\CLSID,,{079AA557-4A18-424A-8EEE-E39F0A8D41B9}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXXMLReader\CurVer,,Msxml2.SAXXMLReader.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXXMLReader.3.0,,"SAX#$sXML#$sReader#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.SAXXMLReader.3.0\CLSID,,{3124C396-FB13-4836-A6AD-1317F1713688}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.ServerXMLHTTP,,"Server#$sXML#$sHTTP"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.ServerXMLHTTP\CLSID,,{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.ServerXMLHTTP\CurVer,,Msxml2.ServerXMLHTTP.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.ServerXMLHTTP.3.0,,"Server#$sXML#$sHTTP#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.ServerXMLHTTP.3.0\CLSID,,{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLHTTP,,"XML#$sHTTP"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLHTTP\CLSID,,{F6D90F16-9C73-11D3-B32E-00C04F990BB4}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLHTTP\CurVer,,Msxml2.XMLHTTP.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLHTTP.3.0,,"XML#$sHTTP#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLHTTP.3.0\CLSID,,{F5078F35-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLParser,,"XML#$sParser"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLParser\CLSID,,{F5078F19-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLParser\CurVer,,Msxml2.XMLParser.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLParser.3.0,,"XML#$sParser#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLParser.3.0\CLSID,,{F5078F31-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLSchemaCache,,"XML#$sSchema#$sCache"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLSchemaCache\CLSID,,{373984C9-B845-449B-91E7-45AC83036ADE}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLSchemaCache\CurVer,,Msxml2.XMLSchemaCache.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLSchemaCache.3.0,,"XML#$sSchema#$sCache#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XMLSchemaCache.3.0\CLSID,,{F5078F34-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XSLTemplate,,"XSL#$sTemplate"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XSLTemplate\CLSID,,{2933BF94-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XSLTemplate\CurVer,,Msxml2.XSLTemplate.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XSLTemplate.3.0,,"XSL#$sTemplate#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Msxml2.XSLTemplate.3.0\CLSID,,{F5078F36-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\TypeLib\{F5078F18-C551-11D3-89B9-0000F81FE221}\3.0,,"Microsoft#$sXML#$c#$sv3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\TypeLib\{F5078F18-C551-11D3-89B9-0000F81FE221}\3.0\0\win32,,#$pSystemRoot#$p\system32\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\TypeLib\{F5078F18-C551-11D3-89B9-0000F81FE221}\3.0\FLAGS,,0
RegWrite,HKLM,0x1,Tmp_Software\Classes\XML,,"XML#$sScript#$sEngine"
RegWrite,HKLM,0x1,Tmp_Software\Classes\XML\CLSID,,{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}
RegWrite,HKLM,0x1,Tmp_Software\Classes\XML\OLEScript,,""
RegWrite,HKLM,0x1,Tmp_Software\Classes\xmlfile,,"XML#$sDocument"
RegWrite,HKLM,0x3,Tmp_Software\Classes\xmlfile,EditFlags,00,00,01,00
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\xmlfile,FriendlyTypeName,"@#$pSystemRoot#$p\system32\msxml3r.dll#$c-1"
RegWrite,HKLM,0x1,Tmp_Software\Classes\xmlfile\BrowseInPlace,,""
RegWrite,HKLM,0x1,Tmp_Software\Classes\xmlfile\CLSID,,{48123BC4-99D9-11D1-A6B3-00C04FD91555}
Set,#8,""
If,ExistRegKey,HKLM,Tmp_Software\Classes\xmlfile\DefaultIcon,"",RegRead,HKLM,Tmp_Software\Classes\xmlfile\DefaultIcon,"",#8
If,%NoWarnROW%,Equal,True,System,ERROROFF
If,#8,Equal,"",RegWrite,HKLM,0x2,Tmp_Software\Classes\xmlfile\DefaultIcon,,"#$pSystemRoot#$p\system32\msxml3.dll#$c0"
//RegWrite ! Overwrote existing key ""%SystemDrive%\GenaPrograms\Internet Explorer\iexplore.exe" -nohome" with different data
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x1,Tmp_Software\Classes\xmlfile\shell\Open\command,,"#$qiexplore.exe#$q#$s-nohome"
//RegWrite ! Overwrote existing key ""file:%1",,-1,,,," with different data
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x1,Tmp_Software\Classes\xmlfile\shell\Open\ddeexec,,"#$qfile:#$p1#$q#$c#$c-1#$c#$c#$c#$c#$c"
RegWrite,HKLM,0x1,Tmp_Software\Classes\xmlfile\shell\Open\ddeexec\application,,IExplore
RegWrite,HKLM,0x1,Tmp_Software\Classes\xmlfile\shell\Open\ddeexec\topic,,WWW_OpenURL
RegWrite,HKLM,0x1,Tmp_Software\Classes\xslfile,,"XSL#$sStylesheet"
RegWrite,HKLM,0x3,Tmp_Software\Classes\xslfile,EditFlags,00,00,01,00
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\xslfile,FriendlyTypeName,"@#$pSystemRoot#$p\system32\msxml3r.dll#$c-2"
RegWrite,HKLM,0x1,Tmp_Software\Classes\xslfile\BrowseInPlace,,""
RegWrite,HKLM,0x1,Tmp_Software\Classes\xslfile\CLSID,,{48123BC4-99D9-11D1-A6B3-00C04FD91555}
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\xslfile\DefaultIcon,,"#$pSystemRoot#$p\system32\msxml3.dll#$c1"
//RegWrite ! Overwrote existing key ""%programfiles%\Internet Explorer\iexplore.exe" -nohome" with different data
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x1,Tmp_Software\Classes\xslfile\shell\Open\command,,"#$qiexplore.exe#$q#$s-nohome"
//RegWrite ! Overwrote existing key ""file:%1",,-1,,,," with different data
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x1,Tmp_Software\Classes\xslfile\shell\Open\ddeexec,,"#$qfile:#$p1#$q#$c#$c-1#$c#$c#$c#$c#$c"
RegWrite,HKLM,0x1,Tmp_Software\Classes\xslfile\shell\Open\ddeexec\application,,IExplore
RegWrite,HKLM,0x1,Tmp_Software\Classes\xslfile\shell\Open\ddeexec\topic,,WWW_OpenURL
//RegHiveUnLoad,Tmp_Software

[Expand_File_Registry_msxml3.dll_WOW64]
//RegHiveLoad,Tmp_Software,%RegSoftware%
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\.xml,PerceivedType,-
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\.xsl,PerceivedType,-
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\.xml,,xmlfile
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\.xml,"Content Type",text/xml
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\.xsl,,xslfile
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\.xsl,"Content Type",text/xml
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9},,"SAX#$sXML#$sReader"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\ProgID,,Msxml2.SAXXMLReader
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{079AA557-4A18-424A-8EEE-E39F0A8D41B9}\VersionIndependentProgID,,Msxml2.SAXXMLReader
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\SideBySide,RegVersion,3.0
RegWrite,HKLM,0x4,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\SideBySide,RefCount,1
RegWrite,HKLM,0x4,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\SideBySide,Version30RefCount,1
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\VersionList,3.0,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60},,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\ProgID,,Microsoft.FreeThreadedXMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\Version,,1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF91-7B36-11D2-B20E-00C04F983E60}\VersionIndependentProgID,,Microsoft.FreeThreadedXMLDOM
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60},,"XSL#$sTemplate"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\ProgID,,Msxml2.XSLTemplate
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{2933BF94-7B36-11D2-B20E-00C04F983E60}\VersionIndependentProgID,,Msxml2.XSLTemplate
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688},,"SAX#$sXML#$sReader#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\ProgID,,Msxml2.SAXXMLReader.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3124C396-FB13-4836-A6AD-1317F1713688}\VersionIndependentProgID,,Msxml2.SAXXMLReader
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE},,"XML#$sSchema#$sCache"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\ProgID,,Msxml2.XMLSchemaCache
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{373984C9-B845-449B-91E7-45AC83036ADE}\VersionIndependentProgID,,Msxml2.XMLSchemaCache
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8},,MsxmlIsland
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C},,"MXXMLWriter#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\ProgID,,Msxml2.MXXMLWriter.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3D813DFE-6C91-4A4E-8F41-04346A841D9C}\VersionIndependentProgID,,Msxml2.MXXMLWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA},,"SAXAttributes#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\ProgID,,Msxml2.SAXAttributes.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{3E784A01-F3AE-4DC0-9354-9526B9370EBA}\VersionIndependentProgID,,Msxml2.SAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555},,"XML#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\BrowseInPlace,,""
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\DefaultIcon,,"#$pSystemRoot#$p\SysWow64\msxml3.dll#$c0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\MiscStatus,,2228625
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\ProgID,,xmlfile
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{48123BC4-99D9-11D1-A6B3-00C04FD91555}\Version,,1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0},,SAXAttributes
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\ProgID,,Msxml2.SAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{4DD441AD-526D-4A77-9F1B-9841ED802FB0}\VersionIndependentProgID,,Msxml2.SAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39},,"XML#$sData#$sSource#$sObject"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\ProgID,,Microsoft.XMLDSO.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\Version,,1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{550DDA30-0541-11D2-9CA9-0060B0EC3D39}\VersionIndependentProgID,,Microsoft.XMLDSO
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{7E3FCEA1-31B4-11D2-AE1F-0080C7337EA1},,"XML#$sViewer#$sMoniker"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{7E3FCEA1-31B4-11D2-AE1F-0080C7337EA1}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{7E3FCEA1-31B4-11D2-AE1F-0080C7337EA1}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923},,"XML#$sScript#$sEngine"
RegWrite,HKLM,0x1,"Tmp_Software\Classes\Wow6432Node\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\Implemented Categories",,""
RegWrite,HKLM,0x1,"Tmp_Software\Classes\Wow6432Node\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\Implemented Categories\{F0B7A1A1-9847-11CF-8F20-00805F2CD064}",,""
RegWrite,HKLM,0x1,"Tmp_Software\Classes\Wow6432Node\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\Implemented Categories\{F0B7A1A2-9847-11CF-8F20-00805F2CD064}",,""
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\OLEScript,,""
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}\ProgID,,XML
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3},,"Server#$sXML#$sHTTP#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\ProgID,,Msxml2.ServerXMLHTTP.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}\VersionIndependentProgID,,Msxml2.ServerXMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1},,"Server#$sXML#$sHTTP"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\ProgID,,Msxml2.ServerXMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}\VersionIndependentProgID,,Msxml2.ServerXMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E},,Msxml
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E}\ProgID,,Msxml
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{CFC399AF-D876-11D0-9C10-00C04FC99C8E}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39},,"XML#$sParser"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\ProgID,,Microsoft.XMLParser.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\Version,,1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{D2423620-51A0-11D2-9CAF-0060B0EC3D39}\VersionIndependentProgID,,Microsoft.XMLParser
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8},,"XML#$sHTTP#$sRequest"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\ProgID,,Microsoft.XMLHTTP.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\TypeLib,,{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{ED8C108E-4349-11D2-91A4-00C04F7969E8}\VersionIndependentProgID,,Microsoft.XMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221},,"XML#$sParser"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XMLParser
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F19-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XMLParser
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F27-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F27-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F27-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221},,"XML#$sParser#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XMLParser.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XMLParser
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221},,"XML#$sDOM#$sDocument#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.DOMDocument.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F32-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.DOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221},,"Free#$sThreaded#$sXML#$sDOM#$sDocument#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.FreeThreadedDOMDocument.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F33-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.FreeThreadedDOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221},,"XML#$sSchema#$sCache#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XMLSchemaCache.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F34-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XMLSchemaCache
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221},,"XML#$sHTTP#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XMLHTTP.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F35-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221},,"XSL#$sTemplate#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.XSLTemplate.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F36-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.XSLTemplate
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F37-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F37-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F37-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221},,"XML#$sData#$sSource#$sObject#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\ProgID,,Msxml2.DSOControl.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F39-C551-11D3-89B9-0000F81FE221}\VersionIndependentProgID,,Msxml2.DSOControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F3F-C551-11D3-89B9-0000F81FE221},,"XML#$sMoniker#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F3F-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F3F-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221},,"XML#$sDocument#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\BrowseInPlace,,""
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\DefaultIcon,,"#$pSystemRoot#$p\SysWow64\msxml3.dll#$c0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\MiscStatus,,2228625
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\ProgID,,xmlfile
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F40-C551-11D3-89B9-0000F81FE221}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F41-C551-11D3-89B9-0000F81FE221},,"XML#$sIsland#$s3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F41-C551-11D3-89B9-0000F81FE221}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F41-C551-11D3-89B9-0000F81FE221}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F5078F41-C551-11D3-89B9-0000F81FE221}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4},,"XML#$sDOM#$sDocument"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\ProgID,,Msxml2.DOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F11-9C73-11D3-B32E-00C04F990BB4}\VersionIndependentProgID,,Msxml2.DOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4},,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\ProgID,,Msxml2.FreeThreadedDOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F12-9C73-11D3-B32E-00C04F990BB4}\VersionIndependentProgID,,Msxml2.FreeThreadedDOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4},,"XML#$sData#$sSource#$sObject"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\ProgID,,Msxml2.DSOControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F14-9C73-11D3-B32E-00C04F990BB4}\VersionIndependentProgID,,Msxml2.DSOControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4},,"XML#$sHTTP"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\InProcServer32,ThreadingModel,Apartment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\ProgID,,Msxml2.XMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{F6D90F16-9C73-11D3-B32E-00C04F990BB4}\VersionIndependentProgID,,Msxml2.XMLHTTP
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020},,MXXMLWriter
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\InProcServer32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\InProcServer32,ThreadingModel,Both
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\ProgID,,Msxml2.MXXMLWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\Version,,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\CLSID\{FC220AD8-A72A-4EE8-926E-0B7AD152A020}\VersionIndependentProgID,,Msxml2.MXXMLWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576},,IVBSAXLexicalHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{032AAC35-8C0E-4D9D-979F-E3B702935576}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC},,IVBSAXEntityResolver
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{0C05D096-F45B-4ACA-AD1A-AA0BC25518DC}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0},,IVBSAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{10DC0586-132B-4CAC-8BB3-DB00AC8B7EE0}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04},,IVBSAXXMLFilter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{1299EB1B-5B88-433E-82DE-82CA75AD4E04}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{24FB3297-302D-4620-BA39-3A732D850558},,IVBSAXDTDHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{24FB3297-302D-4620-BA39-3A732D850558}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{24FB3297-302D-4620-BA39-3A732D850558}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{24FB3297-302D-4620-BA39-3A732D850558}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{24FB3297-302D-4620-BA39-3A732D850558}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60},,IXMLDOMNode
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF80-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60},,IXMLDOMDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF81-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60},,IXMLDOMNodeList
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF82-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60},,IXMLDOMNamedNodeMap
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF83-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60},,IXMLDOMCharacterData
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF84-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60},,IXMLDOMAttribute
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF85-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60},,IXMLDOMElement
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF86-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60},,IXMLDOMText
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF87-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60},,IXMLDOMComment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF88-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60},,IXMLDOMProcessingInstruction
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF89-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60},,IXMLDOMCDATASection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8A-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60},,IXMLDOMDocumentType
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8B-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60},,IXMLDOMNotation
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8C-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60},,IXMLDOMEntity
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8D-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60},,IXMLDOMEntityReference
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8E-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60},,IXMLDOMImplementation
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF8F-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60},,IXSLProcessor
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF92-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60},,IXSLTemplate
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF93-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60},,IXMLDOMDocument2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF95-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60},,IXMLDOMDocument3
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2933BF96-7B36-11D2-B20E-00C04F983E60}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9},,IXMLDocument2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9},,IXMLElement2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2B8DE2FF-8D2D-11D1-B2FC-00C04FD915A9}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7},,IServerXMLHTTPRequest2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E01311B-C322-4B0A-BD77-B90CFDC8DCE7}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495},,IServerXMLHTTPRequest
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2E9196BF-13BA-4DD4-91CA-6C571F281495}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA},,IVBSAXContentHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{2ED7290A-4DD5-4B46-BB26-4E4155E77FAA}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39},,IDSOControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{310AFA62-0575-11D2-9CA9-0060B0EC3D39}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{373984C8-B845-449B-91E7-45AC83036ADE},,IXMLDOMSchemaCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{373984C8-B845-449B-91E7-45AC83036ADE}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{373984C8-B845-449B-91E7-45AC83036ADE}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{373984C8-B845-449B-91E7-45AC83036ADE}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{373984C8-B845-449B-91E7-45AC83036ADE}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782},,IXMLDOMDocumentFragment
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA413-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782},,IXTLRuntime
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA425-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782},,IXMLDOMParseError
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA426-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782},,XMLDOMDocumentEvents
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020420-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020420-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA427-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782},,IXMLDOMParseError2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA428-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782},,IXMLDOMParseErrorCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3EFAA429-272F-11D2-836F-0000F87A7782}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E},,IXMLElement
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{3F7F31AC-E15F-11D0-9C25-00C04FC99C8E}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D},,IMXWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{4D7FF4BA-1565-4EA8-94E1-6E724A46F98D}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A},,IXMLDOMSchemaCollection2
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B0-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaStringCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B1-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaItemCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B2-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaItem
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B3-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A},,ISchema
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B4-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaParticle
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B5-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaAttribute
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B6-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaElement
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B7-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaType
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B8-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaComplexType
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08B9-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaAttributeGroup
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BA-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaModelGroup
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BB-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaAny
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BC-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaIdentityConstraint
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BD-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A},,ISchemaNotation
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{50EA08BE-DD1B-4664-9A50-C2F40F4BD79A}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E},,IXMLElementCollection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{65725580-9B5D-11D0-9BFE-00C04FC99C8E}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288},,IVBSAXLocator
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{796E7AC5-5AA2-4EFF-ACAD-3FAAF01A3288}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30},,IMXReaderControl
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{808F4E35-8D5A-4FBE-8466-33A41279ED30}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F},,IVBSAXXMLReader
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{8C033CAA-6CD6-4F73-B728-4531AF74945F}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E},,IXMLDOMSelection
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{AA634FC7-5888-44A7-A257-3A47150D3A0E}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD},,IMXNamespacePrefixes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F4-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD},,IVBMXNamespaceManager
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F5-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD},,IMXXMLFilter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{C90352F7-643C-4FBC-BB23-E996EB2D51FD}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596},,IXMLAttribute
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D4D4A0FC-3B73-11D1-B2B4-00C04FB92596}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D963D3FE-173C-4862-9095-B92F66995F52},,IVBSAXErrorHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D963D3FE-173C-4862-9095-B92F66995F52}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D963D3FE-173C-4862-9095-B92F66995F52}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D963D3FE-173C-4862-9095-B92F66995F52}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{D963D3FE-173C-4862-9095-B92F66995F52}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B},,IVBSAXDeclHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{E8917260-7579-4BE1-B5DD-7AFBFA6F077B}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8},,IXMLHTTPRequest
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{ED8C108D-4349-11D2-91A4-00C04F7969E8}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262},,IMXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F10D27CC-3EC0-415C-8ED8-77AB1C5E7262}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B},,IXMLDocument
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{F52E2B61-18A1-11D1-B105-00805F49916B}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB},,IMXSchemaDeclHandler
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB}\ProxyStubClsid,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB}\ProxyStubClsid32,,{00020424-0000-0000-C000-000000000046}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB}\TypeLib,,{F5078F18-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Interface\{FA4BB38C-FAF9-4CCA-9302-D1DD0FE520DB}\TypeLib,Version,3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.FreeThreadedXMLDOM,,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.FreeThreadedXMLDOM\CLSID,,{2933BF91-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.FreeThreadedXMLDOM\CurVer,,Microsoft.FreeThreadedXMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.FreeThreadedXMLDOM.1.0,,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.FreeThreadedXMLDOM.1.0\CLSID,,{2933BF91-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDOM,,"XML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDOM\CLSID,,{2933BF90-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDOM\CurVer,,Microsoft.XMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDOM.1.0,,"XML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDOM.1.0\CLSID,,{2933BF90-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDSO,,"XML#$sData#$sSource#$sObject"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDSO\CLSID,,{550DDA30-0541-11D2-9CA9-0060B0EC3D39}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDSO\CurVer,,Microsoft.XMLDSO.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDSO.1.0,,"XML#$sData#$sSource#$sObject"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLDSO.1.0\CLSID,,{550DDA30-0541-11D2-9CA9-0060B0EC3D39}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLHTTP,,"XML#$sHTTP#$sRequest"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLHTTP\CLSID,,{ED8C108E-4349-11D2-91A4-00C04F7969E8}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLHTTP\CurVer,,Microsoft.XMLHTTP.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLHTTP.1.0,,"XML#$sHTTP#$sRequest"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLHTTP.1.0\CLSID,,{ED8C108E-4349-11D2-91A4-00C04F7969E8}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLParser,,"XML#$sParser"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLParser\CLSID,,{D2423620-51A0-11D2-9CAF-0060B0EC3D39}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLParser\CurVer,,Microsoft.XMLParser.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLParser.1.0,,"XML#$sParser"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Microsoft.XMLParser.1.0\CLSID,,{D2423620-51A0-11D2-9CAF-0060B0EC3D39}
//RegWrite,HKLM,0x1,"Tmp_Software\Classes\MIME\Database\Content Type\application/xml",CLSID,{48123BC4-99D9-11D1-A6B3-00C04FD91555}
//RegWrite,HKLM,0x1,"Tmp_Software\Classes\MIME\Database\Content Type\application/xml",Extension,.xml
//RegWrite,HKLM,0x3,"Tmp_Software\Classes\MIME\Database\Content Type\application/xml",Encoding,08,00,00,00
//RegWrite,HKLM,0x1,"Tmp_Software\Classes\MIME\Database\Content Type\text/xml",CLSID,{48123BC4-99D9-11D1-A6B3-00C04FD91555}
//RegWrite,HKLM,0x1,"Tmp_Software\Classes\MIME\Database\Content Type\text/xml",Extension,.xml
//RegWrite,HKLM,0x3,"Tmp_Software\Classes\MIME\Database\Content Type\text/xml",Encoding,08,00,00,00
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml,,Msxml
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml\CLSID,,{CFC399AF-D876-11D0-9C10-00C04FC99C8E}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\MSXML.DOMDocument,,"XML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\MSXML.DOMDocument\CLSID,,{2933BF90-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\MSXML.DOMDocument\CurVer,,Microsoft.XMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\MSXML.FreeThreadedDOMDocument,,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\MSXML.FreeThreadedDOMDocument\CLSID,,{2933BF91-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\MSXML.FreeThreadedDOMDocument\CurVer,,Microsoft.FreeThreadedXMLDOM.1.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DOMDocument,,"XML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DOMDocument\CLSID,,{F6D90F11-9C73-11D3-B32E-00C04F990BB4}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DOMDocument\CurVer,,Msxml2.DOMDocument.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DOMDocument.3.0,,"XML#$sDOM#$sDocument#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DOMDocument.3.0\CLSID,,{F5078F32-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DSOControl,,"XML#$sData#$sSource#$sObject"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DSOControl\CLSID,,{F6D90F14-9C73-11D3-B32E-00C04F990BB4}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DSOControl\CurVer,,Msxml2.DSOControl.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DSOControl.3.0,,"XML#$sData#$sSource#$sObject#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.DSOControl.3.0\CLSID,,{F5078F39-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.FreeThreadedDOMDocument,,"Free#$sThreaded#$sXML#$sDOM#$sDocument"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.FreeThreadedDOMDocument\CLSID,,{F6D90F12-9C73-11D3-B32E-00C04F990BB4}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.FreeThreadedDOMDocument\CurVer,,Msxml2.FreeThreadedDOMDocument.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.FreeThreadedDOMDocument.3.0,,"Free#$sThreaded#$sXML#$sDOM#$sDocument#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.FreeThreadedDOMDocument.3.0\CLSID,,{F5078F33-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.MXXMLWriter,,MXXMLWriter
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.MXXMLWriter\CLSID,,{FC220AD8-A72A-4EE8-926E-0B7AD152A020}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.MXXMLWriter\CurVer,,Msxml2.MXXMLWriter.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.MXXMLWriter.3.0,,"MXXMLWriter#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.MXXMLWriter.3.0\CLSID,,{3D813DFE-6C91-4A4E-8F41-04346A841D9C}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXAttributes,,SAXAttributes
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXAttributes\CLSID,,{4DD441AD-526D-4A77-9F1B-9841ED802FB0}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXAttributes\CurVer,,Msxml2.SAXAttributes.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXAttributes.3.0,,"SAXAttributes#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXAttributes.3.0\CLSID,,{3E784A01-F3AE-4DC0-9354-9526B9370EBA}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXXMLReader,,"SAX#$sXML#$sReader"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXXMLReader\CLSID,,{079AA557-4A18-424A-8EEE-E39F0A8D41B9}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXXMLReader\CurVer,,Msxml2.SAXXMLReader.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXXMLReader.3.0,,"SAX#$sXML#$sReader#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.SAXXMLReader.3.0\CLSID,,{3124C396-FB13-4836-A6AD-1317F1713688}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.ServerXMLHTTP,,"Server#$sXML#$sHTTP"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.ServerXMLHTTP\CLSID,,{AFBA6B42-5692-48EA-8141-DC517DCF0EF1}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.ServerXMLHTTP\CurVer,,Msxml2.ServerXMLHTTP.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.ServerXMLHTTP.3.0,,"Server#$sXML#$sHTTP#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.ServerXMLHTTP.3.0\CLSID,,{AFB40FFD-B609-40A3-9828-F88BBE11E4E3}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLHTTP,,"XML#$sHTTP"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLHTTP\CLSID,,{F6D90F16-9C73-11D3-B32E-00C04F990BB4}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLHTTP\CurVer,,Msxml2.XMLHTTP.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLHTTP.3.0,,"XML#$sHTTP#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLHTTP.3.0\CLSID,,{F5078F35-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLParser,,"XML#$sParser"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLParser\CLSID,,{F5078F19-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLParser\CurVer,,Msxml2.XMLParser.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLParser.3.0,,"XML#$sParser#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLParser.3.0\CLSID,,{F5078F31-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLSchemaCache,,"XML#$sSchema#$sCache"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLSchemaCache\CLSID,,{373984C9-B845-449B-91E7-45AC83036ADE}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLSchemaCache\CurVer,,Msxml2.XMLSchemaCache.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLSchemaCache.3.0,,"XML#$sSchema#$sCache#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XMLSchemaCache.3.0\CLSID,,{F5078F34-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XSLTemplate,,"XSL#$sTemplate"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XSLTemplate\CLSID,,{2933BF94-7B36-11D2-B20E-00C04F983E60}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XSLTemplate\CurVer,,Msxml2.XSLTemplate.3.0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XSLTemplate.3.0,,"XSL#$sTemplate#$s3.0"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\Msxml2.XSLTemplate.3.0\CLSID,,{F5078F36-C551-11D3-89B9-0000F81FE221}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\TypeLib\{F5078F18-C551-11D3-89B9-0000F81FE221}\3.0,,"Microsoft#$sXML#$c#$sv3.0"
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\TypeLib\{F5078F18-C551-11D3-89B9-0000F81FE221}\3.0\0\win32,,#$pSystemRoot#$p\SysWow64\msxml3.dll
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\TypeLib\{F5078F18-C551-11D3-89B9-0000F81FE221}\3.0\FLAGS,,0
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\XML,,"XML#$sScript#$sEngine"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\XML\CLSID,,{989D1DC0-B162-11D1-B6EC-D27DDCF9A923}
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\XML\OLEScript,,""
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xmlfile,,"XML#$sDocument"
RegWrite,HKLM,0x3,Tmp_Software\Classes\Wow6432Node\xmlfile,EditFlags,00,00,01,00
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\xmlfile,FriendlyTypeName,"@#$pSystemRoot#$p\system32\msxml3r.dll#$c-1"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xmlfile\BrowseInPlace,,""
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xmlfile\CLSID,,{48123BC4-99D9-11D1-A6B3-00C04FD91555}
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\xmlfile\DefaultIcon,,"#$q#$p1#$q"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xmlfile\shell\Open\command,,"#$qiexplore.exe#$q#$s-nohome"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xmlfile\shell\Open\ddeexec,,"#$qfile:#$p1#$q#$c#$c-1#$c#$c#$c#$c#$c"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xmlfile\shell\Open\ddeexec\application,,IExplore
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xmlfile\shell\Open\ddeexec\topic,,WWW_OpenURL
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xslfile,,"XSL#$sStylesheet"
RegWrite,HKLM,0x3,Tmp_Software\Classes\Wow6432Node\xslfile,EditFlags,00,00,01,00
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\xslfile,FriendlyTypeName,"@#$pSystemRoot#$p\system32\msxml3r.dll#$c-2"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xslfile\BrowseInPlace,,""
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xslfile\CLSID,,{48123BC4-99D9-11D1-A6B3-00C04FD91555}
If,%NoWarnROW%,Equal,True,System,ERROROFF
RegWrite,HKLM,0x2,Tmp_Software\Classes\Wow6432Node\xslfile\DefaultIcon,,"#$pSystemRoot#$p\SysWow64\msxml3.dll#$c1"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xslfile\shell\Open\command,,"#$qiexplore.exe#$q#$s-nohome"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xslfile\shell\Open\ddeexec,,"#$qfile:#$p1#$q#$c#$c-1#$c#$c#$c#$c#$c"
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xslfile\shell\Open\ddeexec\application,,IExplore
RegWrite,HKLM,0x1,Tmp_Software\Classes\Wow6432Node\xslfile\shell\Open\ddeexec\topic,,WWW_OpenURL
//RegHiveUnLoad,Tmp_Software

[Expand_File_Registry_fltmgr.sys_Center]
//Require,Registry,fltmgr.sys
If,Not,ExistFile,%RegSystem%,Call,HiveCreate,%RegSystem%
//-
If,%OSFamily%,Equal,NT5,Begin
If,ExistRegSection,HKLM,Tmp_System,Run,%Api%,Expand_File_Registry_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Begin
RegHiveLoad,Tmp_System,%RegSystem%
Run,%Api%,Expand_File_Registry_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9
RegHiveUnLoad,Tmp_System
End
End

[Expand_File_Registry_fltmgr.sys]
//RegHiveLoad,Tmp_System,%RegSystem%
RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Services\FltMgr,Type,2
RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Services\FltMgr,Start,0
RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Services\FltMgr,ErrorControl,1
// RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Services\FltMgr,Tag,4
RegWrite,HKLM,0x2,Tmp_System\ControlSet001\Services\FltMgr,ImagePath,system32\DRIVERS\fltmgr.sys
RegWrite,HKLM,0x1,Tmp_System\ControlSet001\Services\FltMgr,DisplayName,FltMgr
RegWrite,HKLM,0x1,Tmp_System\ControlSet001\Services\FltMgr,Group,"FSFilter Infrastructure"
RegWrite,HKLM,0x1,Tmp_System\ControlSet001\Services\FltMgr,Description,"File System Filter Manager Driver"
RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Services\FltMgr,AttachWhenLoaded,0
RegWrite,HKLM,0x1,Tmp_System\ControlSet001\Services\FltMgr\Enum,0,Root\LEGACY_FLTMGR\0000
RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Services\FltMgr\Enum,Count,1
RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Services\FltMgr\Enum,NextInstance,1
RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Enum\Root\LEGACY_FLTMGR,NextInstance,1
RegWrite,HKLM,0x1,Tmp_System\ControlSet001\Enum\Root\LEGACY_FLTMGR\0000,Service,FltMgr
RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Enum\Root\LEGACY_FLTMGR\0000,Legacy,1
RegWrite,HKLM,0x4,Tmp_System\ControlSet001\Enum\Root\LEGACY_FLTMGR\0000,ConfigFlags,0
RegWrite,HKLM,0x1,Tmp_System\ControlSet001\Enum\Root\LEGACY_FLTMGR\0000,Class,LegacyDriver
RegWrite,HKLM,0x1,Tmp_System\ControlSet001\Enum\Root\LEGACY_FLTMGR\0000,ClassGUID,{8ECC055D-047F-11D1-A537-0000F8753ED1}
RegWrite,HKLM,0x1,Tmp_System\ControlSet001\Enum\Root\LEGACY_FLTMGR\0000,DeviceDesc,FltMgr
RegWrite,HKLM,0x1,Tmp_System\ControlSet001\Enum\Root\LEGACY_FLTMGR\0000\Control,ActiveService,FltMgr
//RegHiveUnLoad,Tmp_System

[Expand_FileX--Registry_Finish]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  Registry Finish  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[Expand_FileXEND]
// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  Require  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[Add_Post_Config1]

[Add_Post_Config2]
//AddPostConfig,%ProgramTitle%,%ProgramExe%,%AutoStartParameters%,%AutoStartMode%
If,#4,Equal,,Set,#4,wait
If,#4,Equal,1,Set,#4,wait
If,#4,Equal,2,Set,#4,nowait
If,#4,Equal,3,Set,#4,hidewait
If,#4,Equal,4,Set,#4,hidenowait
//program patch
If,#2,Equal,,Set,#2,%PE_Programs%\%programFolder%\%ProgramExe%
If,Not,#2,Equal,,StrFormat,path,#2,%CPath%
If,Not,#2,Equal,,If,%CPath%,Equal,,Set,#2,%PE_Programs%\%programFolder%\#2
//
If,#1,Equal,,Set,#1,%ProgramTitle%
//
IniWriteTextLine,%PE_CFG%,postconfig,"#4|#1|#2#$s#3"

[Add_Auto_Run1]
If,Not,ExistVar,%AtCD%,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromX
Run,%API%,AddShortcut1Full,AutoStart,,#2,#1,,#3,,#4

[Add_Auto_Run2]
//AddAutoRun,%ProgramTitle%,%ProgramExe%,%AutoStartParameters%,%AutoStartMode%
If,#4,Equal,,Set,#4,wait
If,#4,Equal,1,Set,#4,wait
If,#4,Equal,2,Set,#4,nowait
If,#4,Equal,3,Set,#4,hidewait
If,#4,Equal,4,Set,#4,hidenowait
//program patch
If,#2,Equal,,Set,#2,%PE_Programs%\%programFolder%\%ProgramExe%
If,Not,#2,Equal,,StrFormat,path,#2,%CPath%
If,Not,#2,Equal,,If,%CPath%,Equal,,Set,#2,%PE_Programs%\%programFolder%\#2
//
If,#1,Equal,,Set,#1,%ProgramTitle%
//
IniWriteTextLine,%PE_CFG%,autorun,"#4|#1|#2#$s#3"

[Read_ENV1]
If,ExistSection,%ProjectDir%\script.project,SetReadEnv,Run,%ProjectDir%\script.project,SetReadEnv,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%Api%,Read_ENV1_ProjectInfo,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Read_ENV1_ProjectInfo]
If,#1,Equal,SourceType,Begin
If,#2,Equal,,IniRead,%ProjectInfo%,OS,Type,%SourceType%
Else,IniRead,%ProjectInfo%,OS,Type,%#2%
End
If,#1,Equal,Shell,Begin
If,#2,Equal,,IniRead,%ProjectDir%\script.project,IniVariables,Shell,%Shell%
Else,IniRead,%ProjectDir%\script.project,IniVariables,Shell,%#2%
End

[Read_ENV_INFO]
//TO Project Admins:
//1) Standart list of ReadEnv is at [Read_ENV2_ProjectInfo] check to keep backward compatibility when required....
//2) IF you want to disable ReadEnv via permanent variables, put an empty [SetReadEnv] section to script.project

[Read_ENV2]
If,ExistSection,%ProjectDir%\script.project,SetReadEnv,Run,%ProjectDir%\script.project,SetReadEnv,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%Api%,Read_ENV2_ProjectInfo,#1,#2,#3,#4,#5,#6,#7,#8,#9

[Read_ENV2_ProjectInfo]
Set,%_ML_Temp%,""
If,ExistSection,%ProjectDir%\script.project,IniVariables,IniRead,%ProjectDir%\script.project,IniVariables,OsType,%_ML_Temp%
If,Not,%_ML_Temp%,Equal,"",Set,%OsType%,%_ML_Temp%
If,Not,#1,Equal,,Begin
If,#2,Equal,,IniRead,%ProjectInfo%,%OsType%Info,#1,%#1%
Else,IniRead,%ProjectInfo%,%OsType%Info,#1,%#2%
End
Else,Begin
IniRead,%ProjectInfo%,%OsType%Info,SourceType,%SourceType%
If,%SourceType%,Equal,,Run,%API%,Read_ENV2_NotConfigured
IniRead,%ProjectInfo%,%OsType%Info,Language,%DistLang%
IniRead,%ProjectInfo%,%OsType%Info,SourceDir,%SDIR%
IniRead,%ProjectInfo%,%OsType%Info,WimTools,%WimTools%
IniRead,%ProjectInfo%,%OsType%Info,SystemFiles,%SystemFiles%
If,%WimTools%,Equal,ImageX,IniRead,%ProjectInfo%,%OsType%Info,ImageX,%IMAGEX%
If,%WimTools%,Equal,WimUtil,IniRead,%ProjectInfo%,%OsType%Info,WimUtil,%WIMUTIL%
IniRead,%ProjectInfo%,%OsType%Info,BuildModel,%BuildModel%
IniRead,%ProjectInfo%,%OsType%Info,Shell,%Shell%
IniRead,%ProjectInfo%,%OsType%Info,ScreenResolution,%ScreenResolution%
IniRead,%ProjectInfo%,%OsType%Info,Locale,%Locale%
IniRead,%ProjectInfo%,%OsType%Info,SysType,%SysType%
IniRead,%ProjectInfo%,%OsType%Info,GrubSkin,%GrubSkin%
IniRead,%ProjectInfo%,%OsType%Info,ForceAllToRam,%ForceAllToRam%
IniRead,%ProjectInfo%,%OsType%Info,Drivers,%Drivers%
IniRead,%ProjectInfo%,%OsType%Info,IsoLinuxMode,%IsoLinuxMode%
IniRead,%ProjectInfo%,%OsType%Info,DllSrc,%DllSrc%
IniRead,%ProjectInfo%,%OsType%Info,WAIKDir,%WAIKDir%
IniRead,%ProjectInfo%,%OsType%Info,BootManager,%BootManager%
IniRead,%ProjectInfo%,%OsType%Info,Type,%Type%
End

[Read_ENV2_NotConfigured]
Message,"Please run PreConfig script. Exiting...",ERROR
Exit,Exiting..

[AddShortcut%_ML_Shortcut_TYPE%]
If,Not,ExistVar,%_ML_Shortcut_TYPE%,Set,%_ML_Shortcut_TYPE%,%API_Type%,Global
Run,%API%,AddShortcut%_ML_Shortcut_TYPE%,#1,#2,#3,#4,#5,#6,#7,#8,#9

[AddShortcut2]
//===>  Add_Shortcut,[Type],[StartMenuFolder],[(Full)FileName],[Title],[Work Folder],[Parameters],[(path)IconFile(#$cIconIndex)],[StartMode=1, 2, or 3][#$cIconIndex],[ToolTip Comment]
Echo,"Create ShortCut  #1  "
IniRead,%API%,IniVariablesApi,_ML_SHToRoot,%_ML_SHToRoot%
IniRead,%API%,IniVariablesApi,_ML_SubFoldersToRoot,%_ML_SubFoldersToRoot%
If,#1,Equal,AutoStart,Set,#1,Autorun
If,#2,Equal,QuickLaunch,Set,#1,QuickLaunch
If,#1,Equal,,Set,#1,StartMenu
If,#1,Equal,EditWith,Begin
If,#2,Equal,,Set,#2,"Edit with"
End
Else,Begin
// if no folder defined use the scriptfolder
If,#2,Equal,,Begin
StrFormat,POS,%ScriptDir%,\App,%Pos%
StrFormat,LTRIM,%ScriptDir%,%Pos%,#2
StrFormat,Replace,#2,App,"",#2
StrFormat,POS,#2,\,%Pos%
StrFormat,LTRIM,#2,%Pos%,#2
End
End
If,#3,Equal,,Set,#3,%PE_Programs%\%ProgramFolder%\%ProgramEXE%
If,#4,Equal,,Set,#4,%ProgramTitle%
//If,#5,Equal,,StrFormat,path,#3,#5
If,Not,#6,Equal,,StrFormat,Replace,#6,###$q,##$q,#6
If,Not,#7,Equal,,Begin
StrFormat,path,#7,%SHC_Icon_Path%
StrFormat,filename,#7,%SHC_Icon_FileName%
If,%SHC_Icon_Path%,Equal,,StrFormat,path,#3,%SHC_Icon_Path%
Set,#7,%SHC_Icon_Path%%SHC_Icon_FileName%
End
If,#1,Equal,StartMenu,If,%_ML_SubFoldersToRoot%,Equal,Truely,StrFormat,Filename,#2,#2
If,#1,Equal,StartMenu,Begin
If,Not,%_ML_SHToRoot%,Equal,,Begin
StrFormat,Left,#2,3,%_ML_parTwoLeftThreeResult%
If,%_ML_parTwoLeftThreeResult%,Equal,..\,StrFormat,LTrim,#2,3,#2
StrFormat,Left,#2,2,%_ML_parTwoLeftTwoResult%
If,%_ML_parTwoLeftTwoResult%,Equal,..,StrFormat,LTrim,#2,2,#2
If,%_ML_parTwoLeftTwoResult%,Equal,.\,StrFormat,LTrim,#2,2,#2
StrFormat,Left,#2,1,%_ML_parTwoLeftOneResult%
If,%_ML_parTwoLeftOneResult%,Equal,.,StrFormat,LTrim,#2,1,#2
Set,#2,..\#2
End
End
//this makes all with no folder --> explorer shell to programs -- bsexplorer to root If,Not,%_ML_SHToRoot%,Equal,,If,#1,Equal,StartMenu,Set,#1,""
If,#1,Equal,StartMenu,Set,#1,#2
If,#1,Equal,EditWith,Run,%API%,RegAdd_boot_%_ML_RegAddBootMethod%,HKLM,0x2,Software\Classes\*\shell\#2#$s#4\command,,"#3 #$q#$p1#$q"
Else,Begin
If,#1,Equal,Autorun,Run,%API%,Add_Auto_Run%API_TYPE%,#4,#3,#6,2
Else,IniWriteTextLine,%PE_CFG%,shortcut,"#1|#4|#3|#7|#6"
End

[AddShortcut2_decisionscript]
//this makes all with no folder --> explorer shell to programs -- bsexplorer to root If,Not,%_ML_SHToRoot%,Equal,,If,#1,Equal,StartMenu,Set,#1,""
If,#1,Equal,EditWith,Run,%API%,RegAdd_boot_%_ML_RegAddBootMethod%,HKLM,0x2,Software\Classes\*\shell\#2#$s#4\command,,"#3 #$q#$p1#$q"
Else,Begin
//If,#1,Equal,StartMenu,Set,#1,#2
If,#1,Equal,Autorun,Run,%API%,Add_Auto_Run%API_TYPE%,#4,#3,#6,2
Else,Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9
//Else,IniWriteTextLine,%PE_CFG%,shortcut,"#1|#4|#3|#7|#6"
End

[AddShortcut2_Old_20100315]
//following 5 lines are previous lines from Marcus that comes before If,#1,Equal,StartMenu,Set,#1,#2
// if the checkbox in the ML gui was set remove StarMenu so the rest of the script
// will not place the path in #1
//If,Not,%_ML_SHToRoot%,Equal,,begin
//If,#1,Equal,StartMenu,Set,#1,""
//end

[AddShortcutNO]
Echo,"Setting: No Add_Shortcut",Warn

[AddShortcutNOWarn]
Echo,"Setting: No Add_Shortcut"

[AddShortcut1_Info]
//===>  Add_Shortcut,[Type],[StartMenuFolder],[(Full)FileName],[Title],[Work Folder],[Parameters],[(path)IconFile(#$cIconIndex)],[StartMode=1, 2, or 3][#$cIconIndex],[ToolTip Comment]

[AddShortcut1]
If,Not,ExistVar,%AtCD%,AddVariables,%ProjectDir%\Script.Project,VariablesRunFromX
If,.%AtCD%.#1#3#4#5#6#7#8#9.,Equal,.False.StartMenu.,Run,%API%,AddShortcut1Q-#1,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Run,%API%,AddShortcut1Full,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1Full]
echo,"Create ShortCut  #1"
If,.%AtCD%.#1#3#4#5#6#7#8#9.,Equal,.False.Desktop.,Run,%API%,AddShortcut1Q-#1,#1,#2,#3,#4,#5,"#6",#7,#8,#9
Else,Begin
Set,%PE_Programs_previous%,%PE_Programs%
If,#1,Equal,EditWith,Run,%API%,AddShortcut1_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Begin
If,%AtCD%,Equal,True,Begin
If,Not,ExistVar,%include_Folder%,Begin
IniRead,%ProjectInfo%,String,ProgramFiles,%ProgDir%
Set,%include_Folder%,%ProgDir%
End
Set,%PE_Programs%,!!CDDrive!!\%include_Folder%
End
If,#3,Equal,,Set,#3,%PE_Programs%\%programFolder%\%programExe%
Else,Begin
StrFormat,path,#3,%CPath%
If,%AtCD%,Equal,True,StrFormat,Replace,%CPath%,%PE_Programs_previous%,%PE_Programs%,%CPath%
StrFormat,filename,#3,%CFilename%
If,%CPath%,Equal,,Set,#3,%PE_Programs%\%programFolder%\%CFilename%
Else,Set,#3,%CPath%%CFilename%
If,#4,Equal,,If,Not,#3,Equal,%PE_Programs%\%programFolder%\%programExe%,StrFormat,RTrim,%CFilename%,4,#4
End
If,#5,Equal,,StrFormat,path,#3,#5
StrFormat,CTRIM,#5,\,#5
If,%AtCD%,Equal,True,StrFormat,Replace,#5,%PE_Programs_previous%,%PE_Programs%,#5
If,#4,Equal,,Set,#4,%ProgramTitle%
If,Not,.#7#8#9.,Equal,..,Run,%API%,ShortcutOptions1,#1,#2,#3,#4,#5,"#6",#7,#8,#9
Else,Run,%API%,ShcMode1_%Shc_Mode%,#1,#2,#3,#4,#5,"#6",#7,#8,#9
End
Set,%PE_Programs%,%PE_Programs_previous%
End

[AddShortcut1Q-StartMenu]
If,#2,Equal,,Begin
StrFormat,POS,%ScriptDir%,\App,%Pos%
StrFormat,LTRIM,%ScriptDir%,%Pos%,#2
StrFormat,Replace,#2,App,"",#2
StrFormat,POS,#2,\,%Pos%
StrFormat,LTRIM,#2,%Pos%,#2
End
IniRead,%API%,IniVariablesApi,_ML_SubFoldersToRoot,%_ML_SubFoldersToRoot%
If,%_ML_SubFoldersToRoot%,Equal,Truely,StrFormat,Filename,#2,#2
IniRead,%API%,IniVariablesApi,_ML_NoShortcutSubfolders,%_ML_NoShortcutSubfolders%
If,%_ML_NoShortcutSubfolders%,Equal,nosubfolders,Set,#2,""
IniRead,%API%,IniVariablesApi,_ML_SHToRoot,%_ML_SHToRoot%
If,Not,%_ML_SHToRoot%,Equal,,Begin
StrFormat,Left,#2,3,%_ML_parTwoLeftThreeResult%
If,%_ML_parTwoLeftThreeResult%,Equal,..\,StrFormat,LTrim,#2,3,#2
StrFormat,Left,#2,2,%_ML_parTwoLeftTwoResult%
If,%_ML_parTwoLeftTwoResult%,Equal,..,StrFormat,LTrim,#2,2,#2
If,%_ML_parTwoLeftTwoResult%,Equal,.\,StrFormat,LTrim,#2,2,#2
StrFormat,Left,#2,1,%_ML_parTwoLeftOneResult%
If,%_ML_parTwoLeftOneResult%,Equal,.,StrFormat,LTrim,#2,1,#2
End
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,%_ML_SHToRoot%#2,%PE_Programs%\%programFolder%\%programExe%,%ProgramTitle%,%PE_Programs%\%programFolder%,#6,#7,#8,#9

[AddShortcut1Q-Desktop]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,%PE_Programs%\%programFolder%\%programExe%,%ProgramTitle%,%PE_Programs%\%programFolder%,#6,#7,#8,#9

[AddShortcut1_]
If,#2,Equal,,Begin
StrFormat,POS,%ScriptDir%,\App,%Pos%
StrFormat,LTRIM,%ScriptDir%,%Pos%,#2
StrFormat,Replace,#2,App,"",#2
StrFormat,POS,#2,\,%Pos%
StrFormat,LTRIM,#2,%Pos%,#2
End
IniRead,%API%,IniVariablesApi,_ML_SubFoldersToRoot,%_ML_SubFoldersToRoot%
If,%_ML_SubFoldersToRoot%,Equal,Truely,StrFormat,Filename,#2,#2
IniRead,%API%,IniVariablesApi,_ML_NoShortcutSubfolders,%_ML_NoShortcutSubfolders%
If,%_ML_NoShortcutSubfolders%,Equal,nosubfolders,Set,#2,""
IniRead,%API%,IniVariablesApi,_ML_SHToRoot,%_ML_SHToRoot%
If,Not,%_ML_SHToRoot%,Equal,,Begin
StrFormat,Left,#2,3,%_ML_parTwoLeftThreeResult%
If,%_ML_parTwoLeftThreeResult%,Equal,..\,StrFormat,LTrim,#2,3,#2
StrFormat,Left,#2,2,%_ML_parTwoLeftTwoResult%
If,%_ML_parTwoLeftTwoResult%,Equal,..,StrFormat,LTrim,#2,2,#2
If,%_ML_parTwoLeftTwoResult%,Equal,.\,StrFormat,LTrim,#2,2,#2
StrFormat,Left,#2,1,%_ML_parTwoLeftOneResult%
If,%_ML_parTwoLeftOneResult%,Equal,.,StrFormat,LTrim,#2,1,#2
End
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,%_ML_SHToRoot%#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_StartMenu]
If,#2,Equal,,Begin
StrFormat,POS,%ScriptDir%,\App,%Pos%
StrFormat,LTRIM,%ScriptDir%,%Pos%,#2
StrFormat,Replace,#2,App,"",#2
StrFormat,POS,#2,\,%Pos%
StrFormat,LTRIM,#2,%Pos%,#2
End
IniRead,%API%,IniVariablesApi,_ML_SubFoldersToRoot,%_ML_SubFoldersToRoot%
If,%_ML_SubFoldersToRoot%,Equal,Truely,StrFormat,Filename,#2,#2
IniRead,%API%,IniVariablesApi,_ML_NoShortcutSubfolders,%_ML_NoShortcutSubfolders%
If,%_ML_NoShortcutSubfolders%,Equal,nosubfolders,Set,#2,""
IniRead,%API%,IniVariablesApi,_ML_SHToRoot,%_ML_SHToRoot%
If,Not,%_ML_SHToRoot%,Equal,,Begin
StrFormat,Left,#2,3,%_ML_parTwoLeftThreeResult%
If,%_ML_parTwoLeftThreeResult%,Equal,..\,StrFormat,LTrim,#2,3,#2
StrFormat,Left,#2,2,%_ML_parTwoLeftTwoResult%
If,%_ML_parTwoLeftTwoResult%,Equal,..,StrFormat,LTrim,#2,2,#2
If,%_ML_parTwoLeftTwoResult%,Equal,.\,StrFormat,LTrim,#2,2,#2
StrFormat,Left,#2,1,%_ML_parTwoLeftOneResult%
If,%_ML_parTwoLeftOneResult%,Equal,.,StrFormat,LTrim,#2,1,#2
End
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_Desktop]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_StartMenuRoot]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_QuickLaunch]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_AutoRun]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_AutoStart]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_SystemTools]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_Accessories]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_AdministrativeTools]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_SendTo]
Run,%ShortcutDecisionScript%,Add-Shortcut,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[ShcMode1_0]
Run,%API%,IsOnCD1,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[ShcMode1_1]
StrFormat,ext,#3,%_Ext%
StrFormat,RIGHT,#$p%_Ext%#$p,1,%Var%
If,%Var%,Equal,%,Begin
If,Not,%_Ext%,Equal,.exe,Message,"In Api Interface [Force Icon] is enabled. #$xIn this mode you should specify which icon and index use (when file is not an exe).#$x#$xExample for .bat file add in section Variables (in #$pScriptFile#$p or Script.project):#$x #$x#$p.bat#$p=##$pSystemRoot##$p\System32\shell32.dll##$c071",Information,10
Run,%API%,IsOnCD1,#1,#2,#3,#4,#5,"#6","#3#$c0",#8,#9
End
Else,Run,%API%,ShortcutIcon1,#1,#2,#3,#4,#5,"#6",%%_Ext%%,#8,#9

[IsOnCD1]
Run,%API%,AddShortcut1_#1,#1,#2,#3,#4,#5,"#6",#7,#8,#9
If,%AtCD%,Equal,True,Set,%PE_Programs%,#$pSystemDrive#$p\%include_Folder%

[ShortcutOptions1]
If,Not,#7,Equal,,Run,%API%,ShortcutIcon1,#1,#2,#3,#4,#5,"#6",#7,#8,#9
Else,Run,%API%,ShcMode1_%Shc_Mode%,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[ShortcutIcon1]
StrFormat,path,#7,%Icon_Path%
If,%Icon_Path%,Equal,,Begin
StrFormat,path,#3,%Icon_Path%
StrFormat,Replace,#7,#7,%Icon_Path%#7,#7
End
Run,%API%,IsOnCD1,#1,#2,#3,#4,#5,"#6",#7,#8,#9

[AddShortcut1_EditWith]
If,#2,Equal,,Set,#2,"Edit with"
If,#3,Equal,,Set,#3,%PE_Programs%\%programFolder%\%programExe%
Else,Begin
StrFormat,path,#3,%CPath%
StrFormat,filename,#3,%CFilename%
If,%CPath%,Equal,,Set,#3,%PE_Programs%\%programFolder%\%CFilename%
If,#4,Equal,,If,Not,#3,Equal,%PE_Programs%\%programFolder%\%programExe%,StrFormat,RTrim,%CFilename%,4,#4
End
If,#4,Equal,,Set,#4,%ProgramTitle%
Run,%API%,RegAdd_boot_%_ML_RegAddBootMethod%,HKLM,0x2,Software\Classes\*\shell\#2#$s#4\command,,"#3 #$q#$p1#$q"

[AddShortcut98]
//===>  Add_Shortcut,[Type],[Folder],[Title],[FullFileName],[Work Folder],[Parameters],[IconFile( .ico .exe)],[IconIndex],[StartMode(1, 2, 3, or 4)]
echo,"Create ShortCut  #1  "
Set,%QL95%,HKEY_LOCAL_MACHINE\Software\EustaceSoft\QuickLaunch
//Set,%QL98%,"%Target_Win%\Application Data\Microsoft\Internet Explorer\Quick Launch"
Set,%QL98%,"X:\LiveW98\Application Data\Microsoft\Internet Explorer\Quick Launch"
set,%startmenudefault%,\Programs
set,%autostartdefault%,\%startmenudefault%\StartUP
set,%IconIdex%,"; IconIndex: "
set,%IconFilename%,"; IconFilename: "
set,%Parameters%,"; Parameters: "
If,#3,Equal,,StrFormat,filename,%ProgramTitle%,#3
If,#4,Equal,,StrFormat,filename,%ProgramEXE%,#4
If,#5,Equal,,StrFormat,path,%PE_Programs%\%ProgramFolder%\,#5
If,#6,Equal,,StrFormat,filename,****,#6
If,#7,Equal,,StrFormat,filename,****,#7
If,#8,Equal,,StrFormat,filename,****,#8
run,%API%,AddShortcut98_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9  +
TXTReplace,%ProjectTemp%\INNO.ISS,"\\","\"
TXTReplace,%ProjectTemp%\INNO.ISS,"%IconIdex%#$q****#$q"," "
TXTReplace,%ProjectTemp%\INNO.ISS,"%IconFilename%#$q****#$q"," "
TXTReplace,%ProjectTemp%\INNO.ISS,"%Parameters%#$q****#$q"," "

[AddShortcut98_]
run,%API%,AddShortcut98_StartMenu,#1,#2,#3,#4,#5,#6,#7,#8,#9  +

[AddShortcut98_Desktop]
If,Not,--#8--,Equal,--,set,#8,"%IconIdex%#$q#8#$q"
If,Not,--#7--,Equal,--,set,#7,"%IconFilename%#$q#7#$q"
If,Not,--#6--,Equal,--,set,#6,"%Parameters%#$q#6#$q"
//If,Not,--#5--,Equal,--,set,#5,#5
//If,Not,--#4--,Equal,--,set,#4,#4
//If,Not,--#3--,Equal,--,set,#3,#3
If,Not,--#2--,Equal,--,set,#2,\#2\
IniAddSection,%ProjectTemp%\INNO.ISS,Icons
IniWriteTextLine,%ProjectTemp%\INNO.ISS,Icons,"Name: #$q%desktop_dir%#2#3#$q; Filename: #$q#5\#4#$q; WorkingDir: #$q#5#$q#6#7#8"

[AddShortcut98_StartMenu]
If,Not,--#8--,Equal,--,set,#8,"%IconIdex%#$q#8#$q"
If,Not,--#7--,Equal,--,set,#7,"%IconFilename%#$q#7#$q"
If,Not,--#6--,Equal,--,set,#6,"%Parameters%#$q#6#$q"
//If,Not,--#5--,Equal,--,set,#5,#5
//If,Not,--#4--,Equal,--,set,#4,#4
//If,Not,--#3--,Equal,--,set,#3,#3
If,Not,--#2--,Equal,--,set,#2,\#2\
IniWriteTextLine,%ProjectTemp%\INNO.ISS,Icons,"Name: #$q%startmenu_dir%%startmenudefault%#2#3#$q; Filename: #$q#5\#4#$q; WorkingDir: #$q#5#$q#6#7#8"

[AddShortcut98_AutoStart]
If,Not,--#8--,Equal,--,set,#8,"%IconIdex%#$q#8#$q"
If,Not,--#7--,Equal,--,set,#7,"%IconFilename%#$q#7#$q"
If,Not,--#6--,Equal,--,set,#6,"%Parameters%#$q#6#$q"
//If,Not,--#5--,Equal,--,set,#5,#5
//If,Not,--#4--,Equal,--,set,#4,#4
//If,Not,--#3--,Equal,--,set,#3,#3
If,Not,--#2--,Equal,--,set,#2,\#2\
IniWriteTextLine,%ProjectTemp%\INNO.ISS,Icons,"Name: #$q%startmenu_dir%%autostartdefault%#2#3#$q; Filename: #$q#5\#4#$q; WorkingDir: #$q#5#$q#6#7#8"

[AddShortcut98_QuickLaunch]
If,Not,ExistFile,%Target_Sys%\ql95.exe,Run,%API%,QL98
If,ExistFile,%Target_Sys%\ql95.exe,Run,%API%,QL95

[QL98]
If,#3,Equal,,StrFormat,filename,%ProgramTitle%,#3
If,#4,Equal,,StrFormat,filename,%ProgramEXE%,#4
If,#5,Equal,,StrFormat,path,%PE_Programs%\%ProgramFolder%\,#5
If,#6,Equal,,StrFormat,filename,****,#6
If,#7,Equal,,StrFormat,filename,****,#7
If,#8,Equal,,StrFormat,filename,****,#8
If,Not,--#8--,Equal,--,set,#8,"%IconIdex%#$q#8#$q"
If,Not,--#7--,Equal,--,set,#7,"%IconFilename%#$q#7#$q"
If,Not,--#6--,Equal,--,set,#6,"%Parameters%#$q#6#$q"
//If,Not,--#5--,Equal,--,set,#5,#5
//If,Not,--#4--,Equal,--,set,#4,#4
//If,Not,--#3--,Equal,--,set,#3,#3
If,Not,--#2--,Equal,--,set,#2,\#2\
IniWriteTextLine,%ProjectTemp%\INNO.ISS,Icons,"Name: #$q%ql98%#2#3#$q; Filename: #$q#5\#4#$q; WorkingDir: #$q#5#$q#6#7#8"

[QL95]
IniAddSection,%APP_TMP%\01-ql95.REG,%QL95%\%ProgramEXE%
IniWrite,%APP_TMP%\01-ql95.REG,%QL95%\%ProgramEXE%,#$qExec#$q,"#$q%PE_ProgramsDBSlash%\\%ProgramFolder%\\%ProgramEXE%#$q"
IniWrite,%APP_TMP%\01-ql95.REG,%QL95%\%ProgramEXE%,#$qDir#$q,"#$q%PE_ProgramsDBSlash%\\%ProgramFolder%\\#$q"
IniWrite,%APP_TMP%\01-ql95.REG,%QL95%\%ProgramEXE%,#$qTip#$q,"#$qLaunch %ProgramTitle%#$q"

[AddShortcut_Dock]
//[Software\RocketDock\Icons]
//0-FileName=Icons\PENetcfg.png
//0-FileName2=
//0-Title=PENetwork
//0-Command=#$psystemdrive#$p\Program Files\PENetwork\PENetwork.exe
//0-Arguments=
//0-WorkingDirectory=
//0-ShowCmd=0
//0-OpenRunning=0
//0-IsSeparator=0
//0-UseContext=0
//0-DockletFile=
//count=13

[UnMountWim]
ReadEnv,WimTools
// %_ML_UnMount% - unmount with configured wim tools (ex: using extractedwim source no need unmount)
If,ExistSection,%ProjectDir%\script.project,IniVariables,IniRead,%ProjectDir%\script.project,IniVariables,_ML_UnMount,%_ML_UnMount%
If,Not,%_ML_UnMount%,Equal,No,Begin
Echo,"Please wait: UnMounting WIM files..."
If,%WimTools%,Equal,ImageX,Run,%API%,UnMountImagex
If,%WimTools%,Equal,WimUtil,Run,%API%,UnMountWimutil
If,%WimTools%,Equal,Dism,Run,%API%,UnMountDISM
End

[UnMountWimutil]
If,ExistDir,%BootSRC%\Windows,ShellExecute,Hide,%wimutil%,"/unmount #$q%BootSRC%#$q"
If,ExistDir,%InstallSRC%\Windows,ShellExecute,Hide,%wimutil%,"/unmount #$q%InstallSRC%#$q"

[UnMountImagex]
If,ExistDir,%BootSRC%\Windows,ShellExecute,Hide,%imagex%,"/unmount #$q%BootSRC%#$q"
If,ExistDir,%InstallSRC%\Windows,ShellExecute,Hide,%imagex%,"/unmount #$q%InstallSRC%#$q"

[UnMountDISM]
StrFormat,SHORTPATH,"%BootSRC%","%BSRC%"
StrFormat,SHORTPATH,"%InstallSRC%","%ISRC%"
If,ExistDir,"%Boot_Win%",ShellExecute,Hide,"%IMAGEX%","/Unmount-Wim /MountDir:%BSRC% /discard"
If,ExistDir,"%Source_Win%",ShellExecute,Hide,"%IMAGEX%","/Unmount-Wim /MountDir:%ISRC% /discard"

[Clean_2]
Run,%API%,Clean_2%CBClean_TYPE%,#1
If,ExistSection,%ProjectDir%\script.project,IniVariables,IniRead,%ProjectDir%\script.project,IniVariables,_ML_Exit_Plugin,%_ML_Exit_Plugin%
If,ExistFile,%_ML_Exit_Plugin%,Exec,%_ML_Exit_Plugin%,Clean,#1
IniDelete,%API%,Main,Interface

[Clean_21]
// ask to unmount if selected, else just unmount
ReadENV
If,#1,Equal,DONE,Begin
If,%CBClean1%,Equal,True,Begin
If,QUESTION,"Build successful.#$x#$x#$sUnmount Wim ?",10,True,Run,%API%,UnMountWim
End
Else,Run,%API%,UnMountWim
End
If,#1,Equal,STOP,Begin
If,%CBClean3%,Equal,True,Begin
If,QUESTION,"Build stopped by user.#$x#$x#$sUnmount Wim ?",10,True,Run,%API%,UnMountWim
End
Else,Run,%API%,UnMountWim
End
If,#1,Equal,ERROR,Begin
If,%CBClean5%,Equal,True,Begin
If,QUESTION,"Build stopped due to an error.#$x#$x#$sUnmount Wim ?",10,True,Run,%API%,UnMountWim
End
Else,Run,%API%,UnMountWim
End
If,#1,Equal,COMMAND,Begin
If,%CBClean7%,Equal,True,Begin
If,QUESTION,"Build stopped by script command.#$x#$x#$sUnmount Wim ?",10,True,Run,%API%,UnMountWim
End
Else,Run,%API%,UnMountWim
End
If,#1,Equal,EXCEPTION,Begin
If,%CBClean9%,Equal,True,Begin
If,QUESTION,"Build stopped by exception.#$x#$x#$sUnmount Wim ?",10,True,Run,%API%,UnMountWim
End
Else,Run,%API%,UnMountWim
End

[Clean_22]
// if selected unmount and inform
ReadENV
If,#1,Equal,DONE,Begin
If,%CBClean1%,Equal,True,Begin
Run,%API%,UnMountWim
MESSAGE,"Build successful.",Information,2
End
Else,Run,%API%,UnMountWim
End
If,#1,Equal,STOP,Begin
If,%CBClean3%,Equal,True,Begin
Run,%API%,UnMountWim
MESSAGE,"Build stopped by user.",Information
End
Else,Run,%API%,UnMountWim
End
If,#1,Equal,ERROR,Begin
If,%CBClean5%,Equal,True,Begin
Run,%API%,UnMountWim
MESSAGE,"Build stopped due to an error.",Information
End
Else,Run,%API%,UnMountWim
End
If,#1,Equal,COMMAND,Begin
If,%CBClean7%,Equal,True,Begin
Run,%API%,UnMountWim
MESSAGE,"Build stopped by script command.",Information
End
Else,Run,%API%,UnMountWim
End
If,#1,Equal,EXCEPTION,Begin
If,%CBClean9%,Equal,True,Begin
Run,%API%,UnMountWim
MESSAGE,"Build stopped by exception.",Information
End
Else,Run,%API%,UnMountWim
End

[Clean_23]
// if selected inform
// ReadENV
If,#1,Equal,DONE,Begin
If,%CBClean1%,Equal,True,MESSAGE,"Build successful.",Information,2
End
If,#1,Equal,STOP,Begin
If,%CBClean3%,Equal,True,MESSAGE,"Build stopped by user.",Information
End
If,#1,Equal,ERROR,Begin
If,%CBClean5%,Equal,True,MESSAGE,"Build stopped due to an error.",Information
End
If,#1,Equal,COMMAND,Begin
If,%CBClean7%,Equal,True,MESSAGE,"Build stopped by script command.",Information
End
If,#1,Equal,EXCEPTION,Begin
If,%CBClean9%,Equal,True,MESSAGE,"Build stopped by exception.",Information
End

[Clean_1]
If,%CBClean0%,Equal,True,Begin
If,#1,Equal,DONE,Begin
If,%CBClean1%,Equal,True,Message,"Build sucessfull.",Information,2
End
If,#1,Equal,STOP,Begin
If,%CBClean3%,Equal,True,Message,"Build stopped by user.",Information
End
If,#1,Equal,ERROR,Begin
If,%CBClean5%,Equal,True,Message,"Build stopped due to an error.",Information
End
If,#1,Equal,COMMAND,Begin
If,%CBClean7%,Equal,True,Message,"Build stopped by script command.",Information
End
If,#1,Equal,EXCEPTION,Begin
If,%CBClean9%,Equal,True,Message,"Build stopped by exception.",Information
End
End
If,ExistSection,%ProjectDir%\script.project,IniVariables,IniRead,%ProjectDir%\script.project,IniVariables,_ML_Exit_Plugin,%_ML_Exit_Plugin%
If,ExistFile,%_ML_Exit_Plugin%,Exec,%_ML_Exit_Plugin%,Clean,#1
IniDelete,%API%,Main,Interface

[Clean]
Run,%API%,Clean_%API_TYPE%,#1
IniDelete,%API%,Main,Interface

[_ScriptInterface]
// Parent Command for Interface Operations
Set,%_ML_INTAu3%,%ProjectTemp%\Macro_Library\Change_INI_Value003.au3
If,Not,ExistFile,%_ML_INTAu3%,Run,%API%,Extract_Change_INI_Value_AU3
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Run,%API%,Download_AutoIT_AU3381
Run,%API%,_ScriptInterface_#1,#1,#2,#3,#4,#5,#6,#7,#8,#9

[_ScriptInterface_Read]
If,#3,Equal,,Set,#3,%ScriptFile%
If,Not,#4,Equal,,Set,#9,#4
Else,Begin
IniRead,#3,Main,Interface,#9
If,#9,Equal,,Set,#9,Interface
End
Run,%API%,_ScriptInterface_Read_#2,#1,#2,#3,#4,#5,#6,#7,#8,#9

[_ScriptInterface_Read_Position]
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_INTAu3%#$q /READ #$q#3#$q #$q#9#$q #$q#5#$q #$q#7#$q #$q%ProjectTemp%\ML_Interface_Read.ini#$q"
Run,%API%,_ScriptInterface_Read_Final,#1,#2,#3,#4,#5,#6,#7,#8,#9

[_ScriptInterface_Read_Value]
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_INTAu3%#$q /WBValueRead #$q#3#$q #$q#9#$q #$q#5#$q #$q%ProjectTemp%\ML_Interface_Read.ini#$q"
Run,%API%,_ScriptInterface_Read_Final,#1,#2,#3,#4,#5,#6,#7,#8,#9

[_ScriptInterface_Read_State]
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_INTAu3%#$q /READ #$q#3#$q #$q#9#$q #$q#5#$q #$q2#$q #$q%ProjectTemp%\ML_Interface_Read.ini#$q"
Run,%API%,_ScriptInterface_Read_Final,#1,#2,#3,#4,#5,#6,#7,#8,#9

[_ScriptInterface_Read_Final]
IniRead,%ProjectTemp%\ML_Interface_Read.ini,READ,Value,#8
StrFormat,Replace,#8,",",#$c,#8
StrFormat,CTRIM,#6,#$p,#7
Set,%#7%,#8

[_ScriptInterface_Write]
If,#3,Equal,,Set,#3,%ScriptFile%
If,Not,#4,Equal,,Set,#9,#4
Else,Begin
IniRead,#3,Main,Interface,#9
If,#9,Equal,,Set,#9,Interface
End
Run,%API%,_ScriptInterface_Write_#2,#1,#2,#3,#4,#5,#6,#7,#8,#9

[_ScriptInterface_Write_Position]
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_INTAu3%#$q #$q#3#$q #$q#9#$q #$q#5#$q #$q#7#$q #$q/v=#6#$q"

[_ScriptInterface_Write_Value]
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_INTAu3%#$q /WBValueWrite #$q#3#$q #$q#9#$q #$q#5#$q #$q/v=#6#$q"

[_ScriptInterface_Write_State]
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%_ML_INTAu3%#$q #$q#3#$q #$q#9#$q #$q#5#$q #$q2#$q #$q/v=#6#$q"

[Add_Pin_Process2]
If,#1,Equal,RecentPrograms,Run,%Api%,Add_Pin_Process2_RecentPrograms,#1,#2,#3,#4,#5,#6,#7,#8,#9
Else,Begin
If,-#1-,Equal,--,Set,#1,StartMenu
If,Not,#1,Equal,Taskbar,If,Not,#1,Equal,StartMenu,Halt,"Can Pin only to TaskBar or Start Menu!"
//--
If,#2,EQUAL,Auto,Set,#2,
If,-#2-,EQUAL,--,Begin
Run,%Api%,Add_Pin2_Pin_FindPlace,#1
Set,#2,%_ML_Add_Pin2_freepos%
End
//--
If,#2,Bigger,9,Echo,"Pin index value can not be bigger than 9 - Pin not added",WARN
Else,Begin
If,#2,Smaller,0,Halt,"Pin index value must be between 0 and 9"
//--
If,-#3-,Equal,--,Begin
If,Not,ExistVar,%ProgramFolder%,Echo,"Pin Can not be added - #$pProgramFolder#$p NOT defined",WARN
Else,Begin
If,Not,ExistVar,%ProgramEXE%,Echo,"Pin Can not be added - #$pProgramEXE#$p NOT defined",WARN
Else,Set,#3,%PE_Programs%\%ProgramFolder%\%ProgramEXE%
End
End
//--
If,Not,-#3-,Equal,--,Begin
Set,%_ML_Add_Pin2_Read%,
IniRead,%PECfg%,PINTOOL,#1#2,%_ML_Add_Pin2_Read%
If,Not,-%_ML_Add_Pin2_Read%-,Equal,--,Echo,"Pin Overwriting previous value #1#2=%_ML_Add_Pin2_Read%",Warn
//--
StrFormat,Replace,#8,#$c,|,%_ML_AddPin2_hotkey%
If,#8,Equal,%_ML_AddPin2_hotkey%,Set,#8,#8|
Else,StrFormat,Replace,#8,#$c,|,#8
StrFormat,Replace,#7,#$c,|,%_ML_AddPin2_iconindex%
If,#7,Equal,%_ML_AddPin2_iconindex%,Set,#7,#7|
Else,StrFormat,Replace,#7,#$c,|,#7
//--
If,-#4-,Equal,--,If,ExistVar,%ProgramTitle%,Set,#4,%ProgramTitle%
//--
IniWrite,%PECfg%,PINTOOL,#1#2,#3|#4|#5|#7|#8||#6
If,Not,-#9-,Equal,--,IniWrite,%PECfg%,PINTOOL,#1#2_Description,#9
End
Else,Echo,"Pin Parameter missing - Nothing to Pin",WARN
//--
End
End

[Add_Pin2_Pin_FindPlace]
Set,%_ML_Add_Pin2_Count%,0
Loop,%Api%,Add_Pin2_Pin_Read_Items,0,9,#1

[Add_Pin2_Pin_Read_Items]
IniRead,%PECfg%,PINTOOL,#1%_ML_Add_Pin2_Count%,%_ML_Add_Pin2_lnk%
// search for first free slot to place
If,-%_ML_Add_Pin2_lnk%-,EQUAL,--,begin
set,%_ML_Add_Pin2_freepos%,%_ML_Add_Pin2_Count%
Loop,BREAK
end
else,begin
StrFormat,INC,%_ML_Add_Pin2_Count%,1
end
// no free slots use 0 or 9 !? - for me it doesn't matter
If,%_ML_Add_Pin2_Count%,EQUAL,10,begin
set,%_ML_Add_Pin2_freepos%,9
loop,break
end

[Add_Pin_Process2_RecentPrograms]
//Add_Pin,RecentPrograms,,$Start_Menu\Programs\Network\PENetwork.lnk
StrFormat,LEFT,#3,21,#8
StrFormat,LEFT,#3,9,#9
If,Not,#8,Equal,"$Start_Menu\Programs\",If,Not,#9,Equal,"$Desktop\",Echo,"Pin RecentPrograms Can not be added - $Start_Menu\Programs\ or $Desktop\ NOT defined in FileName",WARN
Else,Begin
If,Not,ExistFile,%ProjectTemp%\Macro_Library\RecentPrograms_006.au3,Begin
If,Not,ExistDir,%ProjectTemp%\Macro_Library,DirMake,%ProjectTemp%\Macro_Library
ExtractFile,%Api%,Folder,RecentPrograms_006.au3,%ProjectTemp%\Macro_Library
End
If,#8,Equal,"$Start_Menu\Programs\",Begin
// if no StartMenuFolder defined use the scriptfolder
StrFormat,POS,#3,\\,%Pos%
If,%Pos%,Bigger,1,Begin
StrFormat,POS,%ScriptDir%,\App,%Pos%
StrFormat,LTRIM,%ScriptDir%,%Pos%,#2
StrFormat,Replace,#2,App,"",#2
StrFormat,POS,#2,\,%Pos%
StrFormat,LTRIM,#2,%Pos%,#2
StrFormat,Replace,#3,\\,\#2\,#3
End
// if StartMenuFolder=. use Start Menu\Programs\link (Not Start Menu\Programs\.\link)
StrFormat,POS,#3,\.\,%Pos%
If,%Pos%,Bigger,1,StrFormat,Replace,#3,\.\,\,#3
End
//IniWrite,%PECfg%,PINTOOL,RecentPrograms_#2=#3 - RecentPrograms built at the end of the build (before postconfig) or at startup by adding RecentPrograms to PinTool.exe
//RegHiveLoad,Tmp_Default,%RegDefault%
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$q%ProjectTemp%\Macro_Library\RecentPrograms_006.au3#$q #$q%TargetDir%#$q #$q%RegDefault%#$q #$q#3#$q"
//RegHiveUnLoad,Tmp_Default
End

[Add_Pin_Process1]

[Interface]
pButton3=Options,0,8,384,193,127,30,Set_InterfaceOptions,True,True,_Set_InterfaceOptions_,True
pWebLabel2=Add_Shortcut,1,10,14,96,74,18,http://TheOven.org/index.php?topic=50
pWebLabel5="WB Help Manual",0,10,50,367,77,18,http://www.paraglidernc.com/winbuilder/Help/
pButton4="Help by Paraglider",0,8,48,396,115,25,Load_Help,0,True,False,_Load_Help_,True,"__Open WinBuilder.chm (download it to %BaseDir% if not exist)"
pCheckBox1=pCheckBox1,0,3,172,395,16,18,False,"__Force to download"
pWebLabel7=ChangeInterface,1,10,14,165,72,18,http://TheOven.org/index.php?topic=140
pWebLabel9="Macro Library Home",1,10,8,9,95,18,http://TheOven.org/index.php?board=14
MLLog_Bevel=Bevel,0,12,386,229,131,30
MLLog_On_TextLabel="Log: ON",0,1,390,234,58,18,8,Normal
MLLog_OF_TextLabel="Log: OFF",0,1,390,234,58,18,8,Normal
MLLog_On_Button=On,0,8,450,234,20,20,MLLog_Enable
MLLog_OF_Button=Off,0,8,450,234,20,20,MLLog_Disable
MLLog_Read_Button=Log,0,8,475,234,36,20,MLLog_Read
ML_Operate_Button=co,0,8,513,200,18,18,ML_Operate,_ML_Operate_,False,"__Get ML Operational - If you do not see 'Macro Library' Wand click 'co' and restart builder"
ML_InfoWand_TextLabel="Check 'Macro Library' Wand to get Full List :>",1,1,15,252,220,18,8,Normal
pWebLabel10=Call,1,10,115,96,200,18,http://TheOven.org/index.php?topic=45
pWebLabel11=Require_FileQ,1,10,14,111,67,18,http://TheOven.org/index.php?topic=43
pWebLabel12="Require,Font Drivers Inf",1,10,14,182,63,18,http://TheOven.org/index.php?topic=42
pWebLabel13="Require,HighVersion",0,10,177,146,97,18,http://TheOven.org/index.php?topic=41
pWebLabel14=Add_Pin,0,10,188,126,39,18,http://TheOven.org/index.php?topic=37
pTextLabel1="Popular Macro Library Commands:",1,1,8,70,225,18,10,Bold
pTextLabel2="Advanced Options:",0,1,383,69,111,18,8,Bold
pBevel1=pBevel1,0,12,292,65,244,273
pButton_Show_Second_Gui=a,1,8,520,237,16,16,Second_Gui,True,True,False,_Second_Gui_,True
pButton_Show_First_Gui="<--- Back Basic Menu",0,8,195,1,146,33,First_Gui,True,True,False,_First_Gui_,True
pWebLabel15="Require,File",1,10,14,129,200,18,http://TheOven.org/index.php?topic=454
pWebLabel16="RunFrom,...",1,10,14,210,103,18,http://TheOven.org/index.php?topic=452
pWebLabel17="Add Url",1,10,13,229,42,18,http://TheOven.org/index.php?topic=474.0
pWebLabel18="Call,Upload X",0,10,115,116,63,18,http://TheOven.org/index.php?topic=475.0
Button_RevChange=R=0,0,8,490,112,30,25,Revision_Change,0
TextLabel_REVISION_Z="REVISION 0",0,1,188,33,155,34,18,Bold
Button_Download=,1,8,403,21,24,24,DownloadXXX,DoubleJDesignRavenna3dArrowDown0016016.bmp,False,False,_DownloadXXX_,False,"__DOWNLOAD NEW Plugin"
Button_Upload=,0,8,403,-1,24,24,UploadXXX_Gena,BokehliciaCaptivaSoftwareupload0016016.bmp,False,False,_UploadXXX_Gena_,False,"__UPLOAD Plugin Gena (Admins Only)"
Button_Upload_SE=,0,8,427,-1,24,24,UploadXXX_SE,BokehliciaCaptivaSoftwareupload0016016.bmp,False,False,_UploadXXX_SE_,False,"__UPLOAD Plugin SE (Admins Only)"
Button_Upload_SE_Gena=,0,8,351,-1,52,46,UploadXXX_SE_Gena,BokehliciaCaptivaSoftwareupload0016016.bmp,False,False,_UploadXXX_SE_Gena_,False,"__UPLOAD Plugin Gena and SE (Admins Only)"
Button_CompareEdit=,0,8,456,-1,24,24,CompareEditXXX,AmperossQetto2Move0016016.bmp,False,False,_CompareEditXXX_,False,"__DOWNLOAD and Compare with an Editor"
Button_EditFTP="Edit Tee Error",0,8,382,116,80,25,P_Interface_Upload_Tee_Error,0,False,False,_P_Interface_Upload_Tee_Error_,False
Button_RevisionInc="ML Revision Increase",0,8,382,85,107,25,Plugin_RevisionInc,0,False,False,_Plugin_RevisionInc_,False,"__Increase Revision number with Description"
TextLabel_VerRev=v43.r93,1,1,114,5,76,28,12,Bold
Button_RCheckPlugin="'Revision Check' Plugin Menu -->",0,8,359,148,172,35,P_Interface_RevisionCheckPlugin,0,False,False,_P_Interface_RevisionCheckPlugin_,False
Button_ML_BackupDesktop="Desktop ML Backup",0,8,314,307,104,25,P_B_ML_BackupDesktop,0,False,False,_P_B_ML_BackupDesktop_,False,"__Backup ML to Desktop (Helps Development)"
Button_ML_BackupDesktop_Web="Desktop ML Web",0,8,427,307,96,25,P_B_ML_BackupDesktop_Web,0,False,False,_P_B_ML_BackupDesktop_Web_,False,"__Get ML from Web to Desktop (Helps Development)"
Button_HostOS_RC_Path_NoCarriage="Host->Right Click->Path",0,8,296,392,140,25,P_HostOS_RC_Path_NoCarriage,0,False,False,_P_HostOS_RC_Path_NoCarriage_,False
Button_HostOS_RC_Path_NoCarriage_R=R,0,8,474,391,25,25,P_HostOS_RC_Path_NoCarriage_R,0,False,False,_P_HostOS_RC_Path_NoCarriage_R_,False,"__Remove 'Host->Right Click->Path'"
Button_HostOS_RC_Path_UX="Host->Right Click->UploadX Path ",0,8,295,341,173,25,P_HostOS_RC_Path_NoCarriage_UploadXQ,0,False,False,_P_HostOS_RC_Path_NoCarriage_UploadXQ_,False
Button_HostOS_RC_Path_UX_R=R,0,8,474,340,25,25,P_HostOS_RC_Path_NoCarriage_UploadXQ_R,0,False,False,_P_HostOS_RC_Path_NoCarriage_UploadXQ_R_,False,"__Remove 'Host->Right Click->UploadX Path '"
Button_HostOS_RC_Path_Link="Host->Right Click->CreateLink ",0,8,295,366,173,25,P_HostOS_RC_Path_NoCarriage_CreateLink,0,False,False,_P_HostOS_RC_Path_NoCarriage_CreateLink_,False
Button_HostOS_RC_Path_Link_R=R,0,8,474,364,25,25,P_HostOS_RC_Path_NoCarriage_CreateLink_R,0,False,False,_P_HostOS_RC_Path_NoCarriage_CreateLink_R_,False,"__Remove 'Host->Right Click->CreateLink'"
NewCodeBox_Button="New CodeBox",1,8,16,38,80,25,P_NewCodeBox_B,0,False,False,_P_NewCodeBox_B_,False
NewCodeBox_P_CheckBox=Plugin,0,3,97,43,49,18,False
NewCodeBox_Bevel=pBevel2,0,12,13,35,136,31
Edit_ML_Button=,0,8,314,83,30,30,Edit_ML_P_B,Oxygen-Icons_0_016016.bmp,False,False,_Edit_ML_P_B_,False,"__Open 'Macro Library' Plugin with Notepad"

[Edit_ML_P_B]
Call,StartDocNotePad,%ScriptFile%

[P_B_ML_BackupDesktop]
Call,HostDesktopDir
StrFormat,Date,%_ML_MyDate%,yyyymmddhhnnss
IniRead,%ScriptFile%,Main,Version,%_ML_V%
IniRead,%ScriptFile%,Main,Revision,%_ML_R%
StrFormat,FileName,%ScriptFile%,%ScriptFileFN%
StrFormat,RTrim,%ScriptFileFN%,7,%ScriptFileFN_NoExt%
FileCopy,%ScriptFile%,%HostDesktopDir%\%ScriptFileFN_NoExt%_v%_ML_V%_r%_ML_R%_%_ML_MyDate%.Script
//Call,SendKey,F5 -> In future ;) - To refresh desktop - sometimes new files not seen on desktop - Or maybe Call,HostRefresh

[P_B_ML_BackupDesktop_Web]
Call,HostDesktopDir
IniRead,%ScriptFile%,Main,Web1,%Web%
StrFormat,FileName,%ScriptFile%,%ScriptFileFN%
StrFormat,RTrim,%ScriptFileFN%,7,%ScriptFileFN_NoExt%
//-
Call,Download,%ProjectTemp%\%ScriptFileFN%,%Web%
//-
IniRead,%ProjectTemp%\%ScriptFileFN%,Main,Version,%_ML_V%
IniRead,%ProjectTemp%\%ScriptFileFN%,Main,Revision,%_ML_R%
//-
FileCopy,%ProjectTemp%\%ScriptFileFN%,%HostDesktopDir%\%ScriptFileFN_NoExt%_v%_ML_V%_r%_ML_R%.Script

[P_HostOS_RC_Path_NoCarriage]
//http://www.askvg.com/registry-tweak-to-add-copy-as-path-option-in-files-and-folders-context-menu-in-windows/
//Copy as Path Option_NoCarriage
//Very Useful with Call,Upload with Codebox ;)
RegWrite,HKLM,0x1,"Software\Classes\*\shell\Copy as Path\command",,"cmd.exe /c (echo.|set /p=#$q#$q#$p1#$q#$q) | clip"

[P_HostOS_RC_Path_NoCarriage_R]
System,FILEREDIRECT,OFF
ShellExecute,Hide,Reg.exe,"Delete #$qHKCR\*\shell\Copy as Path#$q /f"
System,FILEREDIRECT,ON
//If,ExistRegSection,"Software\Classes\*\shell\Copy as Path",RegDelete,"Software\Classes\*\shell\Copy as Path"

[P_HostOS_RC_Path_NoCarriage_UploadXQ]
RegWrite,HKLM,0x1,"Software\Classes\*\shell\Copy as Path UploadXQ\command",,"cmd.exe /c (echo.|set /p=Call,UploadXQ,#$q#$p1#$q)|clip"

[P_HostOS_RC_Path_NoCarriage_UploadXQ_R]
System,FILEREDIRECT,OFF
ShellExecute,Hide,Reg.exe,"Delete #$qHKCR\*\shell\Copy as Path UploadXQ#$q /f"
System,FILEREDIRECT,ON
//If,ExistRegSection,"Software\Classes\*\shell\Copy as Path UploadXQ",RegDelete,"Software\Classes\*\shell\Copy as Path UploadXQ"

[P_HostOS_RC_Path_NoCarriage_CreateLink]
RegWrite,HKLM,0x1,"Software\Classes\*\shell\Copy as Path CreateLink\command",,"cmd.exe /c (echo.|set /p=Call,CreateLink,#$q#$p1#$q,PluginFolder)|clip"

[P_HostOS_RC_Path_NoCarriage_CreateLink_R]
System,FILEREDIRECT,OFF
ShellExecute,Hide,Reg.exe,"Delete #$qHKCR\*\shell\Copy as Path CreateLink#$q /f"
System,FILEREDIRECT,ON

[P_Interface]
IniWrite,%ScriptFile%,Main,Interface,Interface
System,REFRESHINTERFACE

[P_Interface_Upload_Tee_Error]
IniWrite,%ScriptFile%,Main,Interface,Interface_Upload_Tee_Error
System,REFRESHINTERFACE

[P_Interface_RevisionCheckPlugin]
IniWrite,%ScriptFile%,Main,Interface,Interface_RevisionCheckPlugin
System,REFRESHINTERFACE

[Interface_RevisionCheckPlugin]
pButton1="<-- Back to Interface",1,8,0,0,144,34,P_Interface,0,False,False,_P_Interface_,False
pButton2="Edit 'Revision Check' Plugin",1,8,304,108,159,25,P_RevisionCheckPlugin_Edit,0,False,False,_P_RevisionCheckPlugin_Edit_,False,"__To Check Things Manually :)"
pButton3="Update 'Revision Check' Plugin",1,8,54,80,155,66,P_RevisionCheckPlugin_Update,0,False,False,_P_RevisionCheckPlugin_Update_,False,"__Add New Version Revision Info Automatically"
pButton4="Upload New 'Revision Check' Plugin to Gena and SE Servers",1,8,80,153,343,57,P_RevisionCheckPlugin_Upload,BokehliciaCaptivaSoftwareupload0016016.bmp,False,False,_P_RevisionCheckPlugin_Upload_,False,"__Time to upload to Servers"

[P_RevisionCheckPlugin_Find]
Set,%_ML_T_RC%,""
//SE
If,ExistFile,"%ProjectDir%\Build\Revision Check.script",Set,%_ML_T_RC%,"%ProjectDir%\Build\Revision Check.script"
//Gena
If,%_ML_T_RC%,Equal,"",If,ExistFile,"%ProjectDir%\Basic\Revision Check.script",Set,%_ML_T_RC%,"%ProjectDir%\Basic\Revision Check.script"

[P_RevisionCheckPlugin_Edit]
Run,%Api%,P_RevisionCheckPlugin_Find
If,Not,%_ML_T_RC%,Equal,"",Begin
//Make Level 1 - during update and upload Level goes back to 0 Automatically
IniWrite,%_ML_T_RC%,Main,Level,1
Call,StartDocNotePad,%_ML_T_RC%
//Call,StartDoc,%_ML_T_RC%
End

[P_RevisionCheckPlugin_Update]
Run,%Api%,P_RevisionCheckPlugin_Find
If,Not,%_ML_T_RC%,Equal,"",Begin
//-
IniWrite,%_ML_T_RC%,Main,Level,0
//-
IniRead,%Api%,Main,Version,%_ML_T%
IniWrite,%_ML_T_RC%,IniVariables,MLVersionServer,%_ML_T%
//-
IniRead,%Api%,Main,Revision,%_ML_T%
IniWrite,%_ML_T_RC%,IniVariables,MLRevisionServer,%_ML_T%
//---
//---
//---
If,ExistFile,"%ProjectDir%\Components\Core\1 System\Network\xnetwork.script",Begin
Set,%_ML_T_XN%,"%ProjectDir%\Components\Core\1 System\Network\xnetwork.script"
//-
IniRead,%_ML_T_XN%,Main,Version,%_ML_T%
IniWrite,%_ML_T_RC%,IniVariables,xnetworkVersionServer,%_ML_T%
//-
IniRead,%_ML_T_XN%,Main,Revision,%_ML_T%
IniWrite,%_ML_T_RC%,IniVariables,xnetworkRevisionServer,%_ML_T%
//-
End
End

[P_RevisionCheckPlugin_Upload]
Run,%Api%,P_RevisionCheckPlugin_Find
Exec,%_ML_T_RC%,UploadXXX

[Interface_Upload_Tee_Error]
pButton1="Back to Interface",1,8,0,0,97,25,P_Interface,0,False,False
pButton2=Edit,1,8,161,0,80,25,Edit_Upload_Tee_Error,0,False,False
pTextFile1=Upload_Tee_Error.cmd,1,6,10,34,518,266

[Edit_Upload_Tee_Error]
If,ExistDir,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F,Shellexecute,Hide,cmd.exe,"/C rd /s /q #$q%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F#$q"
If,ExistDir,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F,Call,DirDelete,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F
If,ExistDir,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F,Call,Echo,"ERROR: Directory Not Deleted - Halt",Warn,,MessageError,5,Halt
DirMake,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F
ExtractFile,%ScriptFile%,InterfaceEncoded,Upload_Tee_Error.cmd,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F
//Call,OpenDir,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error.cmd
//Call,Start,,%ProgramEXE%,,%ProjectTemp%\Upload_Tee_Error.cmd
Echo,"Close Editor. Waiting......."
System,FILEREDIRECT,OFF
ShellExecute,Open,notepad.exe,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F\Upload_Tee_Error.cmd,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F
System,FILEREDIRECT,ON
Encode,%ScriptFile%,InterfaceEncoded,%ProjectTemp%\TempExtractFolder\Upload_Tee_Error_F\Upload_Tee_Error.cmd
System,RefreshInterface

[DownloadXXX]
Call,DownloadX
If,ExistFile,%API%,AddVariables,%API%,ApiVar,GLOBAL

[UploadXXX_Gena]
Call,UploadXQ

[UploadXXX_SE]
Call,UploadXMultiQ,,%ProjectDir%\Utils\WebRoots_SE.Script||WebRoot

[UploadXXX_SE_Gena]
Call,UploadXMultiQ,,%ProjectDir%\Utils\WebRoots_SE.Script||WebRoot,||Web1

[CompareEditXXX]
Call,CompareEdit

[Settings_Default]
//Stupid Winbuilder bug - deletes [Main] Interface=entry during build
//IniWrite,%ScriptFile%,Main,Interface,Interface
IniDelete,%ScriptFile%,Main,Interface
Run,%ScriptFile%,First_Gui

[Plugin_RevisionInc]
IniRead,%ScriptFile%,Main,Version,%_ML_T%
IniRead,%ScriptFile%,Main,Revision,%_ML_T1%
StrFormat,Inc,%_ML_T1%,1
IniWrite,%ScriptFile%,Main,Revision,%_ML_T1%
IniWrite,%ScriptFile%,Main,Description,"(v%_ML_T%.%_ML_T1%) Macro Library (ML) contains Macros(=Commands) which helps creating Plugins and Projects easier."
Set,%TextLabel_VerRev%,v%_ML_T%.r%_ML_T1%,Permanent
//Refresh Interface don't work with Description and Title ;) Here just to be sure
System,RefreshInterface

[Interface_1]
pBevel1=pBevel1,1,12,0,20,285,266
pBevel2=pBevel2,1,12,286,20,256,70
pBevel3=pBevel3,1,12,286,88,256,63
pButton1=Save,1,8,423,289,118,31,Save_ApiConfig,True
pButton2=Back,1,8,291,288,118,31,Set_InterfaceDefault,True
pCheckBox1="Force All Programs Shortcut to StartMenu Root",1,3,5,85,204,30,False
pScrollBox1="1 - Source_Sys",1,4,297,66,236,21,"1 - Source_Sys","2 - Same 1 but use 7z rather CopyorExpand","3 - Source_Sys first then  from Source_MUI","4 - Source_Mui first then  from Source_Sys","5 - Same 3 but use 7z rather CopyorExpand","6 - Same 4 but use 7z rather CopyorExpand"
pfilebox1=,1,13,292,118,241,30,dir
pCheckBox2="Yes, copy Mui Files if they exist from :",1,3,296,43,217,18,False
pCheckBox4="Enable Api Menu",1,3,5,53,124,18,True
pCheckBox7="Enable OnBuildExit and inform me when :",1,3,291,158,16,18,False
pCheckBox10="Warn when Set Api",1,3,149,55,118,18,False
pCheckBox14="The build was successfully (DONE)",1,3,294,180,200,18,True
pCheckBox15="The user aborted the build (STOP)",1,3,294,199,200,18,True
pCheckBox16="A plugin command failed (ERROR)",1,3,294,218,200,18,True
pCheckBox17="A command aborted the build (COMMAND)",1,3,294,237,234,18,True
pCheckBox18="A syntax error aborted the build (EXCEPTION)",1,3,294,256,247,18,True
pTextLabel1="       Enable OnBuildExit  and  Inform me   when  :",1,1,290,158,238,20,8,Normal
pCheckBox19="Force Icon in Add_Shortcut",1,3,6,231,200,18,False
pCheckBox_ML_SubFoldersToRoot="Force All Programs Shortcut Subfolder to its root",1,3,5,119,204,30,False
pCheckBox_ML_NoShortcutSubfolders="Force All Programs Shortcut without subfolders",1,3,5,153,204,30,False
pCheckBox_reqfile_NowarnPreserveNodebugwarn="require_file NOWARN,PRESERVE -> NO Debug Warn",1,3,3,253,278,18,False
pTextLabel2=Configuration:,1,1,30,26,95,18,10,Bold
pTextLabel3="MUI Files:",1,1,312,22,64,18,10,Bold
pTextLabel4="Folder Source for MUI Files",1,1,314,97,132,18,8,Normal
pBevel4=pBevel4,1,12,287,155,259,125

[Interface_2]
pButton1=Save,1,8,423,285,118,31,Save_ApiConfig,True,True,_Save_ApiConfig_,True
pButton2=Back,1,8,295,285,118,31,Set_InterfaceDefault,True,True,_Set_InterfaceDefault_,True
pCheckBox1="Force All Programs Shortcut to StartMenu Root (Explorer Shell Only)",1,3,5,85,204,30,False
pCheckBox4="Enable Api Menu",1,3,6,53,124,18,True
pCheckBox10="Warn when Set Api",1,3,143,53,117,18,False
pCheckBox14="The build was successfully (DONE)",1,3,294,177,200,18,False
pCheckBox15="The user aborted the build (STOP)",1,3,294,196,200,18,True
pCheckBox16="A plugin command failed (ERROR)",1,3,294,215,200,18,True
pCheckBox17="A command aborted the build (COMMAND)",1,3,294,234,234,18,True
pCheckBox18="A syntax error aborted the build (EXCEPTION)",1,3,294,253,247,18,True
pTextLabel1=" OnBuildExit:  Unmount Wim and Inform me  when  :",1,1,291,147,257,23,8,Normal
pRadioGroup1="Clean Mode",1,14,301,11,245,130,"Ask to UnMount","Unmount and Message","No UnMount, Message only",1
pCheckBox_ML_SubFoldersToRoot="Force All Programs Shortcut Subfolder to its root",1,3,5,119,204,30,False
pBevel1=pBevel1,1,12,3,17,264,238
pTextLabel2=Configuration:,1,1,27,22,97,18,10,Bold
pBevel2=pBevel2,1,12,287,144,265,132

[Revision_Change]
IniWrite,%ScriptFile%,Main,Revision,0
IniWrite,%ScriptFile%,Main,Title,ML REVISION 0
Visible,%TextLabel_REVISION_Z%,True,PERMANENT
System,RefreshInterface

[Second_Gui]
System,CURSOR,Wait
Run,%ScriptFile%,Show-Hide-First_Gui,False
Run,%ScriptFile%,Show-Hide-Second_Gui,True
Visible,%MLLog_On_TextLabel%,False,PERMANENT
Visible,%MLLog_OF_Button%,False,PERMANENT
System,RefreshInterface
System,CURSOR,Normal

[First_Gui]
System,CURSOR,Wait
Run,%ScriptFile%,Show-Hide-Second_Gui,False
Run,%ScriptFile%,Show-Hide-First_Gui,True
System,RefreshInterface
System,CURSOR,Normal

[Show-Hide-Second_Gui]
Visible,%pTextLabel2%,#1,PERMANENT
Visible,%ML_Operate_Button%,#1,PERMANENT
Visible,%pButton3%,#1,PERMANENT
Visible,%pBevel1%,#1,PERMANENT
Visible,%Button_RevChange%,#1,PERMANENT
Visible,%MLLog_Bevel%,#1,PERMANENT
Visible,%MLLog_On_TextLabel%,#1,PERMANENT
Visible,%MLLog_OF_TextLabel%,#1,PERMANENT
Visible,%MLLog_On_Button%,#1,PERMANENT
Visible,%MLLog_OF_Button%,#1,PERMANENT
Visible,%MLLog_Read_Button%,#1,PERMANENT
Visible,%ML_Operate_Button%,#1,PERMANENT
Visible,%Edit_ML_Button%,#1,PERMANENT
Visible,%Button_Upload%,#1,PERMANENT
Visible,%Button_Upload_SE%,#1,PERMANENT
Visible,%Button_Upload_SE_Gena%,#1,PERMANENT
Visible,%Button_CompareEdit%,#1,PERMANENT
Visible,%Button_EditFTP%,#1,PERMANENT
Visible,%Button_RevisionInc%,#1,PERMANENT
Visible,%Button_CompareSrv_WM2%,#1,PERMANENT
Visible,%Button_CompareSrv_BC3%,#1,PERMANENT
Visible,%Button_RCheckPlugin%,#1,PERMANENT
Visible,%Button_ML_BackupDesktop%,#1,PERMANENT
Visible,%Button_ML_BackupDesktop_Web%,#1,PERMANENT
Visible,%Button_HostOS_RC_Path_NoCarriage%,#1,PERMANENT
Visible,%Button_HostOS_RC_Path_NoCarriage_R%,#1,PERMANENT
Visible,%Button_HostOS_RC_Path_UX%,#1,PERMANENT
Visible,%Button_HostOS_RC_Path_UX_R%,#1,PERMANENT
Visible,%Button_HostOS_RC_Path_Link%,#1,PERMANENT
Visible,%Button_HostOS_RC_Path_Link_R%,#1,PERMANENT
Visible,%pWebLabel18%,#1,PERMANENT
//-
Visible,%NewCodeBox_P_CheckBox%,#1,PERMANENT
Visible,%NewCodeBox_Bevel%,#1,PERMANENT
Set,%NewCodeBox_P_CheckBox%,False,PERMANENT
//--
IniRead,%ScriptFile%,Main,Version,%_ML_T%
IniRead,%ScriptFile%,Main,Revision,%_ML_T1%
Set,%TextLabel_VerRev%,v%_ML_T%.r%_ML_T1%,Permanent
//--
Visible,%pButton_Show_First_Gui%,#1,PERMANENT

[Show-Hide-First_Gui]
//--
Visible,%pButton_Show_Second_Gui%,#1,PERMANENT

[MLLog_Process]
If,Not,ExistDir,%ProjectTemp%,Dirmake,%ProjectTemp%
If,Not,ExistFile,%ProjectTemp%\Macro_Library_Log.ini,FileCreateBlank,%ProjectTemp%\Macro_Library_Log.ini
IniRead,%ProjectTemp%\Macro_Library_Log.ini,Counter,ALLSections,%_ML_Log_CountVarA%
If,%_ML_Log_CountVarA%,Equal,,Set,%_ML_Log_CountVarA%,1
Else,StrFormat,Inc,%_ML_Log_CountVarA%,1
IniWrite,%ProjectTemp%\Macro_Library_Log.ini,Counter,ALLSections,%_ML_Log_CountVarA%
IniRead,%ProjectTemp%\Macro_Library_Log.ini,Counter,#1,%_ML_Log_CountVar%
If,%_ML_Log_CountVar%,Equal,,Set,%_ML_Log_CountVar%,1
Else,StrFormat,Inc,%_ML_Log_CountVar%,1
IniWrite,%ProjectTemp%\Macro_Library_Log.ini,Counter,#1,%_ML_Log_CountVar%

[MLLog_Prepare]
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Message,"AutoIT v3.3.8.1 not exists %Tools%\x86\AU3381.exe",Error
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Exit,"AutoIT v3.3.8.1 not exists %Tools%\x86\AU3381.exe"
If,Not,ExistDir,%ProjectTemp%,Dirmake,%ProjectTemp%
If,ExistFile,%ProjectTemp%\Macro_Library_Convertor.au3,Shellexecute,Hide,cmd.exe,"/C del /q /f #$q%ProjectTemp%\Macro_Library_Convertor.au3#$q&del /q /f /A:R /A:H /A:S /A:A #$q%ProjectTemp%\Macro_Library_Convertor.au3#$q"
If,ExistFile,%ProjectTemp%\Macro_Library_Convertor.au3,Shellexecute,Hide,cmd.exe,"/C del /q /f #$q%ProjectTemp%\Macro_Library_Convertor.au3#$q&del /q /f /A:R /A:H /A:S /A:A #$q%ProjectTemp%\Macro_Library_Convertor.au3#$q"
If,ExistFile,%ProjectTemp%\Macro_Library_Convertor.au3,FileDelete,%ProjectTemp%\Macro_Library_Convertor.au3
If,ExistFile,%ProjectTemp%\Macro_Library_Convertor.au3,Message,"%ProjectTemp%\Macro_Library_Convertor.au3 NOT DELETED",Error
If,ExistFile,%ProjectTemp%\Macro_Library_Convertor.au3,Exit,"%ProjectTemp%\Macro_Library_Convertor.au3 NOT DELETED"
ExtractFile,%ScriptFile%,Folder,Macro_Library_Convertor.au3,%ProjectTemp%

[MLLog_Enable]
Run,%Api%,MLLog_Prepare
Visible,%MLLog_On_TextLabel%,True,Permanent
Visible,%MLLog_OF_TextLabel%,False,Permanent
Visible,%MLLog_OF_Button%,True,Permanent
Visible,%MLLog_On_Button%,False,Permanent
//autoit3.exe "/AutoIt3ExecuteScript" "Macro_Library_Convertor.au3" "Macro_Library.script"
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$qMacro_Library_Convertor.au3#$q #$q%API%#$q",%ProjectTemp%
//writing main title is not a good idea since refreshinterface can not refresh title -> cause misunderstanding if log enabled or not...
//IniWrite,%Api%,Main,Title,"Macro_Library DEBUG"
System,RefreshInterface

[MLLog_Disable]
Run,%Api%,MLLog_Prepare
Visible,%MLLog_On_TextLabel%,False,Permanent
Visible,%MLLog_OF_TextLabel%,True,Permanent
Visible,%MLLog_OF_Button%,False,Permanent
Visible,%MLLog_On_Button%,True,Permanent
//autoit3.exe "/AutoIt3ExecuteScript" "Macro_Library_Convertor.au3" "Macro_Library.script" /Remove
ShellExecute,Open,%Tools%\x86\AU3381.exe,"#$q/AutoIt3ExecuteScript#$q #$qMacro_Library_Convertor.au3#$q #$q%API%#$q /Remove",%ProjectTemp%
//writing main title is not a good idea since refreshinterface can not refresh title -> cause misunderstanding if log enabled or not...
//IniWrite,%Api%,Main,Title,"Macro_Library"
System,RefreshInterface

[MLLog_Read]
If,ExistFile,%ProjectTemp%\Macro_Library_Log.ini,Begin
System,FILEREDIRECT,OFF
ShellExecuteex,Hide,cmd.exe,"/C #$q%ProjectTemp%\Macro_Library_Log.ini#$q",%ProjectTemp%
System,FILEREDIRECT,ON
End
Else,Begin
Message,"%ProjectTemp%\Macro_Library_Log.ini Not found. #$x#$x You must first make Log Enabled Build.",Error
Echo,"%ProjectTemp%\Macro_Library_Log.ini Not found. - You must first make Log Enabled Build.",Warn
End

[Extract_Change_INI_Value_AU3]
If,Not,ExistDir,%ProjectTemp%\Macro_Library,DirMake,%ProjectTemp%\Macro_Library
ExtractFile,%API%,Folder,Change_INI_Value003.au3,%ProjectTemp%\Macro_Library

[Download_AutoIT_AU3381]
If,Not,ExistDir,%Tools%\x86,DirMake,%Tools%\x86
If,ExistFile,%ProjectDir%\Utils\AutoIT_3381_File.Script,Begin
Run,%ProjectDir%\Utils\AutoIT_3381_File.Script,Extract_AU3381_Mini,%ProjectDir%\Utils\AutoIT_3381_File.Script
FileCopy,%ProjectTemp%\AU3381\x86\AU3381.exe,%Tools%\x86
End
If,Not,Existfile,%Tools%\x86\AU3381.exe,Begin
If,Not,ExistFile,%ProjectDir%\Utils\AutoIT_3381_File.Script,Begin
Call,Download,%ProjectDir%\Utils\AutoIT_3381_File.Script,http://gena.cwcodes.net/Projects/Gena/Utils/AutoIT_3381_File.Script
If,ExistFile,%ProjectDir%\Utils\AutoIT_3381_File.Script,Begin
Run,%ProjectDir%\Utils\AutoIT_3381_File.Script,Extract_AU3381_Mini,%ProjectDir%\Utils\AutoIT_3381_File.Script
FileCopy,%ProjectTemp%\AU3381\x86\AU3381.exe,%Tools%\x86
End
End
End
If,Not,Existfile,%Tools%\x86\AU3381.exe,Begin
If,Not,ExistFile,%ProjectDir%\Utils\AutoIT_3381_File.Script,Begin
Call,Download,%ProjectDir%\Utils\AutoIT_3381_File.Script,http://yomi.cwcodes.net/Yomi/Utils/AutoIT_3381_File.Script
If,ExistFile,%ProjectDir%\Utils\AutoIT_3381_File.Script,Begin
Run,%ProjectDir%\Utils\AutoIT_3381_File.Script,Extract_AU3381_Mini,%ProjectDir%\Utils\AutoIT_3381_File.Script
FileCopy,%ProjectTemp%\AU3381\x86\AU3381.exe,%Tools%\x86
End
End
End
//--
If,Not,Existfile,%Tools%\x86\AU3381.exe,Begin
If,Not,ExistFile,%ProjectDir%\Utils\AutoIT_3381_File.Script,Begin
//If there is no AutoIT_3381_File  Plugin at this point than you can not download AutoIT_3381_File Plugin
If,ExistFile,%ProjectDir%\Utils\AutoIT_3381_File.Script,Begin
//If there is no x86\AU3381.exe at this point than 99 percent AV deletes
Echo,"AutoIT v3.3.8.1 - Your Antivirus Deletes AU3381.exe - False Positive",Warn
Echo,"AutoIT HomePage https://www.autoitscript.com",Warn
Echo,"AutoIT v3.3.8.1 official can be found at: autoit-v3.3.8.1.zip - https://www.autoitscript.com/autoit3/files/archive/autoit/ ",Warn
Run,%ProjectDir%\Utils\AutoIT_3381_File.Script,Extract_AU3381_Mini,%ProjectDir%\Utils\AutoIT_3381_File.Script
FileCopy,%ProjectTemp%\AU3381\x86\AU3381.exe,%Tools%\x86
End
End
End
//--
//WebGet,http://gena.cwcodes.net/Projects/Tools/Gena/x86/AU3381.exe,%Tools%\x86\AU3381.exe
If,ExistFile,%Tools%\x86\AU3381.exe,Begin
Retrieve,MD5,%Tools%\x86\AU3381.exe,%_ML_AU3381MD5%
If,Not,%_ML_AU3381MD5%,Equal,71D8F6D5DC35517275BC38EBCC815F9F,FileDelete,%Tools%\x86\AU3381.exe
End
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Message,"AutoIT v3.3.8.1 not exists %Tools%\x86\AU3381.exe",Error
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Halt,"AutoIT v3.3.8.1 not exists %Tools%\x86\AU3381.exe"
If,Not,ExistFile,%Tools%\x86\AU3381.exe,Exit,"AutoIT v3.3.8.1 not exists %Tools%\x86\AU3381.exe"

[ML_Operate]
AddVariables,%API%,ApiVar,GLOBAL

[P_NewCodeBox_B]
If,%NewCodeBox_P_CheckBox%,Equal,True,Call,CreateCodeBox,,Plugin
Else,Call,CreateCodeBox,,Simple

[Cache_SCD_Info_Additional_Plugin]
//IniRead,%ScriptFile%,Main,Selected,%t%
//If,%t%,Equal,True,Begi-n
Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
//Exception: Settings that does NOT effect cache - Start
StrFormat,FileName,%ScriptFile%,%t%
Call,FileDelete,%ProjectTemp%\%t%
FileCopy,%ScriptFile%,%ProjectTemp%
IniDelete,%ProjectTemp%\%t%,Main,Interface
IniDelete,%ProjectTemp%\%t%,Main,InterfaceList
IniDeleteSection,%ProjectTemp%\%t%,Interface
IniDeleteSection,%ProjectTemp%\%t%,Interface_Upload_Tee_Error
IniDeleteSection,%ProjectTemp%\%t%,Interface_RevisionCheckPlugin
Retrieve,MD5,%ProjectTemp%\%t%,%t2%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%,%t2%
Call,FileDelete,%ProjectTemp%\%t%
//Exception: Settings that does NOT effect cache - Finish
//-
Echo,"Cache_SCD_Info_Additional_Plugin - Finish - %Plugin_FName%"
//En-d

[Cache_SCD_Info_Additional_Plugin_ML]
Echo,"Cache_SCD_Info_Additional_Plugin - Start"
Call,AddInterface,%ScriptFile%,Interface
//Section used by "Basic PluginCache"
If,Not,#1-,Equal,-,Set,%SFName%,#1
If,Not,ExistVar,%SFName%,Set,%SFName%,Test
//-
StrFormat,FileName,%ScriptFile%,%Plugin_FName%
StrFormat,RTRIM,%Plugin_FName%,7,%Plugin_FName%
Echo,"Cache_SCD_Info_Additional_Plugin - Start - %Plugin_FName%"
//-
StrFormat,PATH,%ScriptFile%,%PluginPath%
StrFormat,Replace,%PluginPath%,%BaseDir%,"",%PluginPathShort%
// When link: [Projects\Yomi\Build\] -- When Direct  [\Projects\Gena\Basic\]
StrFormat,CTRIM,%PluginPathShort%,"\",%PluginPathShort%
Set,%PluginPathShort%,\%PluginPathShort%
StrFormat,SPLIT,%PluginPathShort%,\,2,%PluginPathShort1%
StrFormat,SPLIT,%PluginPathShort%,\,3,%PluginPathShort2%
StrFormat,Replace,%PluginPath%,%BaseDir%\%PluginPathShort1%\%PluginPathShort2%\,"",%PluginPath_Sub%
Set,%Plugin_FName_Sub%,%PluginPath_Sub%%Plugin_FName%
//-
If,Not,ExistFile,%ProjectTemp%\%SFName%_Unique.ini,FileCreateBlank,%ProjectTemp%\%SFName%_Unique.ini
//-

[Cache_SCD_Info_Additional_Plugin_EXAMPLES******INFO]
Template -------------> Start with Template if required on a new plugin :)
Mouse_Tordex Wheel ---> Example with Provide Folder via %ProvideFiles%
Shell_PECMD ----------> Example with Provide File via %ProvideFiles%
0-Shell Loader -------> Example with Provide File via %ProvideFiles% following options on plugin
****
***Further_SPECICAL_CASES:
1-files --------------> Selected not checked + example for ignore checkbox
Macro_Library --------> Selected not checked + example for ignore Interface
//-----
Fonts Other ----------> Example to workaround filebox bug with Gena -- Tip: better not use filebox -> See Mouse_Tordex Wheel + Shell_PECMD
5 BootsectorPE -------> Example to workaround filebox bug with Gena -- Tip: better not use filebox -> See Mouse_Tordex Wheel + Shell_PECMD

[Cache_SCD_Info_Additional_Plugin_EXAMPLE_Template]
IniRead,%ScriptFile%,Main,Selected,%t%
If,%t%,Equal,True,Begin
Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
//..........
//-
Echo,"Cache_SCD_Info_Additional_Plugin - Finish - %Plugin_FName%"
End

[Cache_SCD_Info_Additional_Plugin_EXAMPLE_Mouse_Tordex Wheel]
IniRead,%ScriptFile%,Main,Selected,%t%
If,%t%,Equal,True,Begin
Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
Call,RetrieveFolderUniqueID,%ProvideFiles%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_ProvideFiles_RetrieveFolderUniqueID,%RetrieveFolderUniqueID%
If,%RetrieveFolderUniqueID%,Equal,1,IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_ProvideFiles_RetrieveFolderUniqueID,"%RetrieveFolderUniqueID% : Directory Not Exists"
If,%RetrieveFolderUniqueID%,Equal,2,IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_ProvideFiles_RetrieveFolderUniqueID,"%RetrieveFolderUniqueID% : Directory exists but empty"
//-
Echo,"Cache_SCD_Info_Additional_Plugin - Finish - %Plugin_FName%"
End

[Cache_SCD_Info_Additional_Plugin_EXAMPLE_Shell_PECMD]
IniRead,%ScriptFile%,Main,Selected,%t%
If,%t%,Equal,True,Begin
Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_PECMD_Provided_CheckBox,%PECMD_Provided_CheckBox%
If,%PECMD_Provided_CheckBox%,Equal,True,Begin
Set,%t%,0
If,ExistFile,%ProvideFiles%\x86\PECMD.EXE,Retrieve,MD5,%ProvideFiles%\x86\PECMD.EXE,%t%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_PECMD_Provided_CheckBox|x86_PECMD.EXE,%t%
//-
Set,%t%,0
If,ExistFile,%ProvideFiles%\x86\PECMD.INI,Retrieve,MD5,%ProvideFiles%\x86\PECMD.INI,%t%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_PECMD_Provided_CheckBox|x86_PECMD.INI,%t%
//-
Set,%t%,0
If,ExistFile,%ProvideFiles%\x64\PECMD.EXE,Retrieve,MD5,%ProvideFiles%\x64\PECMD.EXE,%t%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_PECMD_Provided_CheckBox|x64_PECMD.EXE,%t%
//-
Set,%t%,0
If,ExistFile,%ProvideFiles%\x64\PECMD.INI,Retrieve,MD5,%ProvideFiles%\x64\PECMD.INI,%t%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_PECMD_Provided_CheckBox|x64_PECMD.INI,%t%
End
//-
Echo,"Cache_SCD_Info_Additional_Plugin - Finish - %Plugin_FName%"
End

[Cache_SCD_Info_Additional_Plugin_EXAMPLE_0-Shell Loader]
IniRead,%ScriptFile%,Main,Selected,%t%
If,%t%,Equal,True,Begi-n
Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_RadioGroup_ShellLoader,%RadioGroup_ShellLoader%
If,%RadioGroup_ShellLoader%,Equal,0,IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_RadioGroup_ShellLoader,%RadioGroup_ShellLoader%_|_Pecmd
If,%RadioGroup_ShellLoader%,Equal,1,IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_RadioGroup_ShellLoader,%RadioGroup_ShellLoader%_|_PeShell
If,%RadioGroup_ShellLoader%,Equal,2,IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_RadioGroup_ShellLoader,"%RadioGroup_ShellLoader%_|_Custom Pecmd"
If,%RadioGroup_ShellLoader%,Equal,2,Begin
Set,%t%,0
If,ExistFile,%PecmdIniDir%\Pecmd.ini, Retrieve,MD5,%PecmdIniDir%\Pecmd.ini,%t%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_RadioGroup_ShellLoader_Pecmd.ini,%RadioGroup_ShellLoader%_|_%t%
End
//-
Echo,"Cache_SCD_Info_Additional_Plugin - Finish - %Plugin_FName%"
End

[Cache_SCD_Info_Additional_Plugin_EXAMPLE_1-files]
//IniRead,%ScriptFile%,Main,Selected,%t%
//If,%t%,Equal,True,Begi-n
Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
//Exception: Settings that does NOT effect cache - Start
StrFormat,FileName,%ScriptFile%,%t%
Call,FileDelete,%ProjectTemp%\%t%
FileCopy,%ScriptFile%,%ProjectTemp%
IniDelete,%ProjectTemp%\%t%,Interface,Cache_CheckBox
IniDelete,%ProjectTemp%\%t%,Interface,Cache_Keep_NumberBox
IniDelete,%ProjectTemp%\%t%,Interface,Cache_Keep_CheckBox
TxtReplace,%ProjectTemp%\%t%,"//Set,#$pDebug_Developer_CacheMechanism#$p,1","//---Set,#$pDebug_Developer_CacheMechanism#$p,1"
TxtReplace,%ProjectTemp%\%t%,"Set,#$pDebug_Developer_CacheMechanism#$p,1","//Set,#$pDebug_Developer_CacheMechanism#$p,1"
TxtReplace,%ProjectTemp%\%t%,"//---//Set,#$pDebug_Developer_CacheMechanism#$p,1","//Set,#$pDebug_Developer_CacheMechanism#$p,1"
TxtReplace,%ProjectTemp%\%t%,"//---Set,#$pDebug_Developer_CacheMechanism#$p,1","//Set,#$pDebug_Developer_CacheMechanism#$p,1"
//-
Retrieve,MD5,%ProjectTemp%\%t%,%t2%
Call,FileDelete,%ProjectTemp%\%t%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%,%t2%
//IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique_Special,%SCDSub%%SFName%,%t2%
//Exception: Settings that does NOT effect cache - Finish
//-
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_Custom_CheckBox,%Custom_CheckBox%
If,%Custom_CheckBox%,Equal,True,Begin
Call,RetrieveFolderUniqueID,%Custom_FileBox%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_Custom_CheckBox_True_RetrieveFolderUniqueID,%RetrieveFolderUniqueID%
If,%RetrieveFolderUniqueID%,Equal,1,IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_Custom_CheckBox_True_RetrieveFolderUniqueID,"%RetrieveFolderUniqueID% : Directory Not Exists"
If,%RetrieveFolderUniqueID%,Equal,2,IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_Custom_CheckBox_True_RetrieveFolderUniqueID,"%RetrieveFolderUniqueID% : Directory exists but empty"
End
//-
Echo,"Cache_SCD_Info_Additional_Plugin - Finish - %Plugin_FName%"
//En-d

[Cache_SCD_Info_Additional_Plugin_EXAMPLE_Macro_Library]
//IniRead,%ScriptFile%,Main,Selected,%t%
//If,%t%,Equal,True,Begi-n
Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
//Exception: Settings that does NOT effect cache - Start
StrFormat,FileName,%ScriptFile%,%t%
Call,FileDelete,%ProjectTemp%\%t%
FileCopy,%ScriptFile%,%ProjectTemp%
IniDelete,%ProjectTemp%\%t%,Main,Interface
IniDelete,%ProjectTemp%\%t%,Main,InterfaceList
IniDeleteSection,%ProjectTemp%\%t%,Interface
IniDeleteSection,%ProjectTemp%\%t%,Interface_Upload_Tee_Error
IniDeleteSection,%ProjectTemp%\%t%,Interface_RevisionCheckPlugin
Retrieve,MD5,%ProjectTemp%\%t%,%t2%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%,%t2%
Call,FileDelete,%ProjectTemp%\%t%
//Exception: Settings that does NOT effect cache - Finish
//-
Echo,"Cache_SCD_Info_Additional_Plugin - Finish - %Plugin_FName%"
//En-d

[Cache_SCD_Info_Additional_Plugin_EXAMPLE_Fonts Other]
IniRead,%ScriptFile%,Main,Selected,%t%
If,%t%,Equal,True,Begin
Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
If,%pCheck_Font%,Equal,True,Begin
If,Not,%pFontSrcBox%-,Equal,-,Begin
Set,%pFontSrcBoxV%,%pFontSrcBox%
//Workaround till Galapo fix Call,AddInterface (which is another workaround for bug of winbuilder) - Start ---------
Call,FileCreateBlank,%ProjectTemp%\workaround.ini,OverWrite
IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"IniWrite,#$pProjectTemp#$p\workaround.ini,Test,pFontSrcBoxV,#$ppFontSrcBoxV#$p"
//-
IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"Set,#$ppFontSrcBoxV#$p,#$pt2#$p"
//Access violation at address 0047F6F5 in module .....exe . Read of address 0000013C: Set,%pFontSrcBox%,%t% ---> IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"Set,#$ppFontSrcBox#$p,#$pt#$p"
//Access violation at address 0047F6F5 in module .....exe . Read of address 0000013C: Set,%pFontSrcBox%,%t% ---> Always avoid setting new variable to one at Interface etc.......
IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"Set,#$pt2#$p,#$q%pFontSrcBox%#$q"
//-
Run,%ProjectTemp%\workaround.ini,Process
//Workaround till Galapo fix Call,AddInterface (which is another workaround for bug of winbuilder) - Finish ---------
//-
Call,RetrieveFolderUniqueID,%pFontSrcBoxV%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_pFontSrcBox_RetrieveFolderUniqueID,%RetrieveFolderUniqueID%
If,%RetrieveFolderUniqueID%,Equal,1,IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_pFontSrcBox_RetrieveFolderUniqueID,"%RetrieveFolderUniqueID% : Directory Not Exists"
If,%RetrieveFolderUniqueID%,Equal,2,IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_pFontSrcBox_RetrieveFolderUniqueID,"%RetrieveFolderUniqueID% : Directory exists but empty"
//-
End
End
//-
Echo,"Cache_SCD_Info_Additional_Plugin - Finish - %Plugin_FName%"
End

[Cache_SCD_Info_Additional_Plugin_EXAMPLE_5 BootsectorPE]
IniRead,%ScriptFile%,Main,Selected,%t%
If,%t%,Equal,True,Begin
Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
//-
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_pRadioButton1,%pRadioButton1%_bootsect
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_pRadioButton2,%pRadioButton2%_grub4dos
//-
If,%pRadioButton2%,Equal,True,Begin
If,Not,%pFileBox1%-,Equal,-,Begin
Set,%pFileBox1V%,%pFileBox1%
//Workaround till Galapo fix Call,AddInterface (which is another workaround for bug of winbuilder) - Start ---------
Call,FileCreateBlank,%ProjectTemp%\workaround.ini,OverWrite
IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"IniWrite,#$pProjectTemp#$p\workaround.ini,Test,pFileBox1V,#$ppFileBox1V#$p"
//-
IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"Set,#$ppFileBox1V#$p,#$pt1#$p"
//Access violation at address 0047F6F5 in module .....exe . Read of address 0000013C: Set,%pFileBox1%,%t% ---> IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"Set,#$ppFileBox1#$p,#$pt#$p"
//Access violation at address 0047F6F5 in module .....exe . Read of address 0000013C: Set,%pFileBox1%,%t% ---> Always avoid setting new variable to one at Interface etc.......
IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"Set,#$pt1#$p,#$q%pFileBox1%#$q"
//-
Run,%ProjectTemp%\workaround.ini,Process
//-
Set,%t%,0
If,ExistFile,%pFileBox1V%,Retrieve,MD5,%pFileBox1V%,%t%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_pFileBox1,additional_menu.lst_%t%
End
//-
If,Not,%pFileBox2%-,Equal,-,Begin
Set,%pFileBox2V%,%pFileBox2%
//Workaround till Galapo fix Call,AddInterface (which is another workaround for bug of winbuilder) - Start ---------
Call,FileCreateBlank,%ProjectTemp%\workaround.ini,OverWrite
IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"IniWrite,#$pProjectTemp#$p\workaround.ini,Test,pFileBox2V,#$ppFileBox2V#$p"
//-
IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"Set,#$ppFileBox2V#$p,#$pt2#$p"
//Access violation at address 0047F6F5 in module .....exe . Read of address 0000013C: Set,%pFileBox2%,%t% ---> IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"Set,#$ppFileBox2#$p,#$pt#$p"
//Access violation at address 0047F6F5 in module .....exe . Read of address 0000013C: Set,%pFileBox2%,%t% ---> Always avoid setting new variable to one at Interface etc.......
IniWriteTextLine,%ProjectTemp%\workaround.ini,Process,"Set,#$pt2#$p,#$q%pFileBox2%#$q"
//-
Run,%ProjectTemp%\workaround.ini,Process
//Workaround till Galapo fix Call,AddInterface (which is another workaround for bug of winbuilder) - Finish ---------
//-
Set,%t%,0
If,ExistFile,%pFileBox2V%,Retrieve,MD5,%pFileBox2V%,%t%
IniWrite,%ProjectTemp%\%SFName%_Unique.ini,Unique,%Plugin_FName_Sub%_|_pFileBox2,grldr_%t%
End
End
//-
Echo,"Cache_SCD_Info_Additional_Plugin - Finish - %Plugin_FName%"
End

[Web]
Web1=http://w7pese.cwcodes.net/Projects/Win7PESE/Build/Macro_Library.script
Web2=http://w8pese.cwcodes.net/Projects/Win8PESE/Build/Macro_Library.script
Web3=http://win81se.cwcodes.net/Projects/Win8.1SE/Build/Macro_Library.script
Web4=http://win10se.cwcodes.net/Projects/Win10PESE/Build/Macro_Library.script

[WebRootSub]
WebRoot1=w7pese.cwcodes.net
WebRoot2=w8pese.cwcodes.net
WebRoot3=win81se.cwcodes.net
WebRoot4=win10se.cwcodes.net
WebRootSub1=Projects/Win7PESE
WebRootSub2=Projects/Win8PESE
WebRootSub3=Projects/Win8.1SE
WebRootSub4=Projects/Win10PESE

[AuthorEncoded]
Library4848.ico=6053,8071
Logo=Library4848.ico

[EncodedFile-AuthorEncoded-Library4848.ico]
lines=1
[encoded data, 8075 characters]

[InterfaceEncoded]
Oxygen-Icons_0_016016.bmp=710,947
DoubleJDesignRavenna3dArrowDown0016016.bmp=622,830
BokehliciaCaptivaSoftwareupload0016016.bmp=676,902
AmperossQetto2Move0016016.bmp=893,1191
Upload_Tee_Error.cmd=1237,1650

[EncodedFolders]
Folder
InterfaceEncoded
src

[Folder]
Macro_Library_Convertor.au3=1546,2062
Change_INI_Value003.au3=2991,3988
FileDirDeleteX_001.au3=3441,4588
DirCopy_002.au3=3923,5231
RecentPrograms_006.au3=1901,2535
RegMultiSZ_001.au3=753,1004
HostWindowsDir_001.au3=405,540
FileByteCheck.au3=427,570
tee.exe=2516,3355
GetExeArch_001.exe=3197,4263
log_30000000_ssr_ChangerSaveLog.cmd=1014,1352
SHDirMove.exe=6741,8988

[src]
SHDirMove.pb=2903,3871

[EncodedFile-InterfaceEncoded-Oxygen-Icons_0_016016.bmp]
lines=0
0=eJylk11IU2Ecxi3qJkIyjGA3qTMmdtEgUvAiygSFsAsJQRIE6y68iMRid+lNF2H2QRcFslhhJiTOQVp0tpJtoUiNyuNQK2Jfbu187Xzs++m8b062cBD0wsM5vOf9Pef5///ntHYO7amgq0lXg64Duqp07aqoofunt54XLwD/rUwmg0gkUlaxWAz5fB7leHImnU5TZbNZqlwuRxmy52e/wG63l/UgfCqVAru6CpvtKRRFLeX9q3A5nWU9CryiKOgeGkbfpAvPFpbhX9uAKIoIBoOYn5uDlEjs6EH4ZDJJNeP7hr6pBZiHH8M0s4Fbd+7C4XDA5/PBybzFB68Xs7OlHsX8900O/VYHjEYjDl0dg/nFR9weHQXDMLSXJEsw8BPRaLSE1zRNlwpZ1XCDldF+bRh1xnpUjUzg7IQHVqsVKysrILMivSFMMa+qKq0/mdSwKScx4pfRcXkAtaYGVI7N4+JzF609FArtyBNWlmXqQ+sQNVi+Cmi90IMjx45j/yMvrr90wu12057+zRNWkqQSD19cxcBSBC1t7TCYm1H55BPuv1oAy7IIBAIlfCIh6b4CvRY8SE/ehGT0Muswn2zGwaYzODzJYtqzTHtRmAHhJUkEz3PU40+OBK2J+IxviOiYWoSpsRH7Tp3H0el1ON+9pxkLvCDwiMd/UQ9BEKhfIYuiyLB85nDigR01tbXYe64fLeMMwuHwNs9xcf0/iVIPcs/z/FYWkeYRdfUsxlFveQiDwYDdnTfR3W/b5snZnbiE/s2SWkiOmCihzcOhrvceqqtfo6trifJknmQm/6IfgTAuXWExOLimv0/Db8YwheR4nJP0r6hMT83T9UzOzyuON4g3MDQDIr2k3AKGUTACQBkLhM5nwi6/K8vLh4EJAIwhCu0OuYbLAQAAAAIAAAAzAAAAbwIAAAAAAAABAAAAAAAAAAAAAAA

[EncodedFile-InterfaceEncoded-DoubleJDesignRavenna3dArrowDown0016016.bmp]
lines=0
0=eJzNk09Ik2Ecxw06BF2KqG5ih1EgYZZu7+v7vnu3d++2MpelRFHgQZEaJLVIXSxrW4Wauf7Nwha2rQ7dOgT9IQT1EkQHi+hSHfRSUZrMcp389PjSoUib3vrB9/I8fD78fr+Hxwi0LS+yyi6ySWSVyGqRZUUl1rnr1/3vBfy3+TTxkabuAzx4dp+lsu/G31LRXIrjaCmeVjtfpj4v2jH+YQwpWIYc3orctgUptJkT/UcWxc/1rLXYqYpKqGcklEglcns5DuF48uLhPx2TUxOYIRWlU8PZraOdU1GjMsop4RO9+DucfM1NzuvIfctR3Wai9hq4rvrREybOCy608xpqrAqlQzhObiOSbv2Ln8nPsDvsZ33dSoob1mE7XIIsetAvCUePG63TiRpXUE47rJ0MvRz8wzH9fZqR0SHSj1LUhn2s8a6gMi7hTm7HddmLftHA2aVT2mJjY3Mx7naJ/I/8vHN0Zc5avKNLw+gP4O7bgeuKD73XQyDqI5QM8ur96IJ7jKUiFi8nDDwDezBuCsf1amsnA4Opgm8Y7jtu8UrSj3lnL+btOjypXRg3dpIdThfkjyWCFu9M1eC7tx/vXeFIC8etWjKL4IPdTRZfFqtAvua1PJ5sPWamnuxIpiD/9Plj4ukIh3oaqGk3KG+0sWHfWhp7DvJm7PWS/9FcZmdnF+R+AlbU23p4nNNyyS9Nykn1ckktzkzPC0osS83LSzROcSwqyi93yS/PMzAwNAMivaTcAoZRMPxAGQuEZmPCLu9y8YwcAxMAHjMRfb+2diEBAAAAAgAAAEQAAAAGAgAAAAAAAAEAAAAAAAAAAAAAAA

[EncodedFile-InterfaceEncoded-BokehliciaCaptivaSoftwareupload0016016.bmp]
lines=0
0=eJytU21LWmEYbrAfsP0De4H2pRcqRq+0RllUZkav1O+YIH2JPvUhKKJfUE3aaCNQQR3pYWDTPCpBMKUxSczjZDB0Q8UPV/d9L0tdg33YAxfn5nq5n+c85z4vDa8e18l6TnhGeEJ4SnhUpxP+xa1euQD8V5RKJeTzeeRyOWSzWQHXzLH2t1yxWEQikYDb7cXu7iHW1/exuron4Jo51tjD3tqsw3GC+fn36O39hJ6eh8Eae9hb2SMYjGB42Iu+Pv8/gb2cKb+v2fwGAwOBGvhpTzfhg9S1utn8FuW7MplOMDQUwMhIgHrfY3Mzio2Nz1Uce9jLGc5mMhni/WhuPoROt4/6+td3ODpKwGqNV3HsYS9nOBuLfUFLyzG6ulzEnVXB4/kOpzPzB89eznD24iKKxkar9NPrg7fwYG7OBp/vGxRFw+ysDaOjnjudvZzhbDR6iY4OO/V0YHJSxdiYiq2trygUSri+zuLq6ofU29tx0djT2WmTDGdTqbRw3d1O+jYfMTGhYno6TL1zKC+uTaawaDrdHtrajiWjaWn5BgsLfhgMIZoPL6amQlKvrJzT/gUkkwUsL58Lx2hoOJAnZ8rzbLF4YTSG6d18dAY3nfMUg4MK7RmULGu/oUqea4tFqZi/JGZmwnJGgyEg8zU+fip3otcrdJcRusMQ2tt5vl3iVdVU1T9gt6exuMi+exiNZ2htfYempgNBf78LS0sRsPehf1DTfoq2sxPH2tolnTEm4Jo51tLpX1XZG70Y6I54nNNyys9OzcjJTM5MdE4sKMksSwzOTyspTyxKLS3IyU9MMTAwNAMivaTcAoZRMPxAGQuEtmHCLs9kcFmVgQkAJ9URXc7wHxQBAAAAAgAAAEQAAAA8AgAAAAAAAAEAAAAAAAAAAAAAAA

[EncodedFile-InterfaceEncoded-AmperossQetto2Move0016016.bmp]
lines=0
0=eJxtk1lIVFEYxw16agEVzTRncRtt0cx0NCu0QlsgyyCih7Cgh6KFNgQzSsqnFohUEm3FlqmsVGxxxoxSyYkpTcctsiKXtCZ1mPXee878++5o4YMf/DjfnXN+//sdmLt2s3amj7e0RAzhO8kMH7XPv/KfPcF0NXd7RXRg3ufCoDMD+nkFQ8Z5BYOTDBmDCgYNgXlfCudsq4yZzg3I7ToSfMHmVJQBilLi6pT1X097IZdsroBc87GpblB+zwHVNUBJ50JLBAQUSVhQIkJB/X+KBYQWCd4s1XUgKL/3kOz6HTYpQ4scbq9fLsL/ooAV50ahueKE8oYI1TWBoLVcgLKMKJWf6T1XHILv8WaVothyMlwHqG+KmHVJxKHbFnjs49j5zAnf2xyqexLC74hewm6JdE6AmjLDH1BGseVU2E17VeRjIIBmPFhhASQnnneK0Fy2IYaIKHEi9C6DXxmDWscQeY+yKkREPpLfaa+JuO/Wh5C/9bEd4C7INWyxw/bbCmnUiuZeK9bpHDhfY0FkuQvKSo6ohxKiqoCIu+76qEp3XUQtkFDL0DYm2x4863bjdAdwthfY0QKsMYjgYNDTAQVlqJ9yLHwBaB66DdFPhbol9TRLDUPsS4bWMQ+sYw6kVjuwhmbaXzuOvTVWVJtpPkqpbx/DYp0b0a+AmGrBsKhWMMS+AWL1dDcipZGhctiDHSYRbRY3OSIhYdwlYaI4cppdCGsAFr8Q6uNeiU/iacalrxkSyI1ropxGCXEtDGs/cmxq50hrlvCkx+G9W/F3DzQNDLITpxerEhrFE0ntwLK3DInvGLTvGZI/0BytHInka0wce9tpDo+E0gEPwuncUkJ2ljeJuUlGzNcamS3pA8iVkEJO6ieOVR2EmXpaN3Zz7PviQbyJPMrXfgSSjcy+2mQPlv+DaR3CrrSvQGon0caxmry0Lo508tJ7KIf6BLqHvLeyC0j/RpiFnKnfQEa3sDujj1syR4CMn0AmsZ76DSMTvfe3X8C6Pv4n0yzsme4bzO6yB2f1s6NZ/VyX9YPVZU+yhcjqlx5kD9FetyNkqvMXP3mcf3ick3XMLUgtyi8uDkwtKck38s0vSzUwMDQDIr2k3AKGUTDMgRkLhFZixi4vra37hIEJABkJC8Gkai7oAQAAAAIAAAA3AAAAIgMAAAAAAAABAAAAAAAAAAAAAAA

[EncodedFile-Folder-Change_INI_Value003.au3]
lines=0
0=eJztWm1PG0kS/gwS/6EzIYmtGPDYBmXjOIoBsxodIcj2Bt3lfNZgt2GEmbHGY4JX6H72ft7q95fpmZAcq12dNlKgp7u6+unqqurqKp6fJcM0XAeTJN7abP8XPY/iyXw1xehdN4X+3XDVfA8DF2mUZThGl2t0OF/h02iGtza3Np9PlqgdxLMkvQ2ziLDY2gxXWRJlzV18j9Hdwe7BbnPXJ71NdIfTJRC9RY2679f3m3VCvtFGHfYPkUWw+IIRnZO314WvIGv27vFkleHBJI0WmYe8o+swvsLj4CwYfw4BGkEM3UGc4XQWTjDqzfEtjrPl7lJMkWPQXgzxfXaY3PvQJv/37jrRMgvjy9W8Vqsh6EHd+CZMQ8+EekgXe0LEewbLH8Jfht1A38fh9IlQ93vd4x+XNgHC2I2HeJntRnHklPN5snxaKROGP4TajdiF+QmFrHN8UtTPJ2DG7R3t39bmeBDe4SCOKlXUPsNf0QyH2SrFSxSmGIXTKZ7mpvw8Ty7DOdoeJKt0gk+iOa7BB54QlwCtf+A1/DwP0wx+AUsKhDVhHTX9Z5yNz9Nkgpdw2gi8QzBD20cfj0+Ds96X+gi9Q/toeA1eaNxL0ySteB+j5TKKr9ACdPwWw9aXz7zq1ubga5RNrtVUfwTyPwqXRPBEX4mKbeR4HzyKN5mq7RNwSi6NERtk+9ZHmmwE5KD3tlgvkQt0n61uL3FakaP7oyodZkLS5x2MKAy+IaXQ3tNjyy++P+IyMA/Ld0CinuyPAUX5w9AY2kyvK1V+qB8wOT/zLC/SpOAkzV00HLsgpvNnSralMPXm8KPNLgiKrQSWXwir4YTVLFXGllLGP0j0za3NXjxllksIgB3ZUu8ebrRlRdtklbgGc42zJEOzZBWDc0QvdS9ElwJvhY7xHFZHXOhkiDkXy+OgT6nd59OlAPAJ7Gw7YD0JgUu3rGNk3DV8MJCdJsmC0BJChkISQvcZuGj4VcjINzd6ojYpeYDUghnZpfCi0M2uHjTmzUqJY65SQbhOTkn1Bq+f0VU/HPVPTxwiFkuTxYRzJ2IcrhekSTWWK6wgveSaNh6cnwbD8efu6S+9isBOmQovrp2HMIQ6ahMy4cYpq/ecJ3HmTkc+j2JMtQ90TwIlJsCmUS6aZ/XB0qRr5Su1vmMVqeNECGSjpH1xOB7+8xw2ypg0R2Wmow4gAxaSqdBbztdvCQ3dUDqqgUxgJ4MML9COT2kMUIMsBdDk5+JiIFBtB6MaelNl1NZqnscwHiVxFsXwEODqTQkZtz6+6t0v+ngxhzikoumB96W+89PIg4ZXRe/el/DSV9wOWJ9uTMJuNohHpB0GzO9RBW4+tk4IXkofWlIfNNX7WyH+BIWQoEoUo/A4n0Jn3P5DsBppaiWUpyGVh/rCv7Xn/9+d8PtNVz2qCk14VSUxRjuIq0I+8Kk8Ji6pOjrl2Z0mE3LJHqXwdsPjk2Q+xak8n1M8y0SQUeN9QQy/Vaf3b5BrvQaHXAWgfpXFKBY/JvMuKJQevBg0WjB0HKVsyCZhr2d+wOSmNaxLKAE/fi3CeOV5r8jPVxydvjmNzCcYgIoC5dyiq+sCIqH7DgzDNLp1cC+hdq0D5EJHADMIm2qBJnn6QIXfdAY01PSCyPcrfQ9kiRmhqfiQ6fSPxElmyCunGWEXsSjlMbRQD73sqMc+IPJq9BW1YZunshhrrvQecrKKlo1zVPP4QQI125rO0nEw5kSexWGhLTmZsfDVxkGV5jgUx+86LCOc5gIhDopAOlnFE8vbs9cZOSHeVC82ywOz3hpqVgm1iKhZL5E5i6ZrqAEkIANo+cyt93G2SmP0RhL5NdSqof0aOgBnXkM/ASVM8ps6ta+oIVp69uyZMdhiqi88negf4IzJxxceh4qAbhuhdqfzXt+8koj5biAJM9KsKucXnI0Hwb96qmOwmEeZuqXIlzazRtSGWyifwDWQUhJzeY38Ecxnb2vLOAQR1WQ+URjMiOozo6BhCyXi+Mhdfng6Hn4adk/Hwdlg2K/k5ks3t0FvBzFzDzWImvXJpW71KouUxv66ww4ob4Hi1nPi5nYrzJTboGK7w9jy02T9uRPUDkudoHydzkDx4/DW9TaVh8loxzAOO+ZfnNjFgN8Jehzk1jfP5em01WCLyuVZ1kVtvlnNBz76fDhwYEDpdBg5GqpUXLo21IaCagmWc1FCNbMy0hRArSRMdtdbkHmmp9+9IFCJwu3ddcTVKhnUvy1KviQjGRddofpynPtrWNfh3XVG7ou6YKGC+cQLcYUvEbMWwLcRiz5CdMdzbhIij5rMJYipktioXoiR4H+Zj2wsJizCqQIlfHDU5St7yOMrQ2hYRlfzqt8AZ/ZKCFIoQot1spxySl1U6ml7OoaS2O3qcknbutqyxPLGxTVJbhobys+jZ7cdMAEwBytc3gXgIj4rsJ1VkINs4lO4mYJsf1xe0VcLrATNYZTRpKtHR1nMBN2HyX3FP9BIWJNqFb3UrTXpbJan3HnkP6AtLM18BxN5l4qKD1F3K8KBobEZ7ZAda4Um0AHie7VBr7a9SPEsuqcfwPP5hGbQ3r5Fe3ypc3hWkCYJheCTOHAEgcE1OsewdpyFV9iakZ/A7lFCwlfbQb/F+AZV7nAazW/xrxCIrJMb1KbBDyWE237Jce6gazzFMxQB62myXIcQ/E7DmwgJgnAaGaxuwnUc3ojhFRCs42gZ8Wd095dm843/fdW9er3JC3xSKo+u7tFzkR20queL8ulfAUyDghFH0/Eu5+FfBVqTQfM0bejcrnmL9HPMDPKTgf6fMLfE2dKKrXKRhrnkSpot47qua08As0zEK16D7uce4GfvNI01mPFJSGtPL5g8TPpz14RhurLoZZipwTEyHxua69L3WFJ3ExQFxTcxLHyYXYfTwxXbh6kx05fxzu58LsRC+cgIcp94KO0YVJYtv4aWkzDCIpoz82lwb2ipp8X1NreCCEuwMpOSFI+2LwqkEMkbBkSYsgZCsihb/Y1rcU1+5Yu32OJAry/MphMlczxOCoTNUgL2gFCevAbaZTlXDZKsrq58EQjUVLI1X5FkuUcahyiZPOqZ40o95B8634RErrAog81/YeC4KF4ib+QpfA0XPprfGB+HWVjjbVHuo69b+cVf6zXS6PX7n/qaMQqa0LSbkpeXzpw8l4Gpq2qoPaVYVo6jgCkfQDFwTOMj1k9B0QERfOXVUmobGZBzHOG191B/aDw0H1oPvv/gNx/81gPI+8GTQb58ZWkbAQ9F0uJE7A+eli0qyI+RZj60Y3Fu7rWZz5u6XqRGAtXOoDomFGdSy4iVzZbgVI7DyepR88uwGIlGlxjF+efvMCu3SZWf5kVeUOvhHvBl/kFfp4nLFx3PzLGYXL45v+N9E7tkKgzE89SGpN4W7cNhPSQ1eXpSmCvibLlp5QpGIeoY7qCgbDQwX+xOE9kOrdLRQG1RGaFVIRIOxlEfKiwQmfKzMWw9omJUxkL8NQ0XWtWqENpzLdM1/GypzeqUxcbqpLK1oyhvY04un+Fcz711qYw6L66F6l5v82vtoFUjb0w1lV+CIkmvLkzt8Wrc+zX9KrP+Yof+bQ9t1OVTXT2V7buHxClayoLtfuxMNRNSR5aZp1Don1t/MRjYOWc1R2Tw8xeoNZ/KmBcJXqsCYFxxm44+mdZtX335jzd6RW1I1YuD5ck8CTNRXhB5aN+ITvVNGV8yH24tVlYjklb2A3wN/0mTmcimEqUwZeK63Do8n2StJrJLTDll2GnSvEPNspSpQV81Ii3pYN2VHWMhFkroJR5ZLimp8WhrPLLOo7t9NUOr9Rj3Au1p57qcj0ErB2vLxSgctVn3cbQEtV1XcrQaSx71Sdeb52zl4kzz/h167waweJwTd85IzEtPjff084wPS8wpTTUwMNZLLDVmGAUjAsgaQugIbuzyhkvf7WdgAgB3vAr5+pOy8QEAAAACAAAAMwAAAFgLAAAAAAAAAQAAAAAAAAAAAAAA

[EncodedFile-Folder-Macro_Library_Convertor.au3]
lines=0
0=eJy1WG1v2zYQ/uwA+Q+s6qQW6gyxO/RLXpDEL6kDOw1kb/lgGIJi0TExWTQkao2HYb99dyQlUZZsL8P2pVbI491zd8/dkf34yCeRtxnMeXh8dPEX+cjCeZD4lFzeRrD+k5d8uT4+gq3niAnqE8HJXZDQIVvQ46PBgtQ7o+5w8Nibns/IJWmRyZKCotoofr3jb43W1yaxelHEow8WfI1YHLPwlay9yFtRQaP4g2WDdO+NieOjXugPFmjrPuAvXkDqY55Ec9pnASVXuaHWzJS57XZdXAaJSZSUMV0DptvQJ2MRgeVBCL+NbL89A1AOXfHfqWWTy2tyLvEXtPa9IKZoERQjFMAai7hhgLNB6ny/449ckAVPAIdFTk3HKrzH5TEVtwIQv5h2QM+ZM/6GERv/YGK+lHjuq0RRbceLKXhnwWc1KjO+pwCMxSSinn/Gw2BDFrCqkqPxaX3jd+mLN7Ggq53Kvr1L2ZL5PiSnpAwip+Jh8uIpogv2Bpmx/rTy1YdktXbHdC4YD2MklRYDC9ORx8KZTE+26KIRazoIgaoLb06rt3/1Iua9BDSu3r5NxJJHvXDOfeofMLBXSm/2eeBD5ewwtmZuly52bgLWHXtPgwPY3NYhgXa1wBIKhkeb/cGr3h0Nh/zVfYr4nMY7PE5FKDSVvVp64SE7XRYfEnGgQMx9k3IDx+2z0HcfNMGAX4OQ4YmtKtZJwsZwAnEf/3LX7fVP8E+kNTawkiroTZaV9pgqS9YUUaku59B1APlolOTAQhPNbHkIZ238KTpW26qW06syrqxtweTQZfz156ZlNUuSthkpqXhIF0JvQiMGF6YtgJaxHEJ1ZslWn5/DRYynO+GuHE/HR66bLk64XCrGunxERfiGYqPZ37Rl78GOiCNLyR/q3hAGZQWoBDkAMFX2Qa5Yy9D0QXl9AEGACcorUMMow4zc9ybpXFKpxn/Xz+MKO9P6AKbbF4SIjDJOVnQSHYfa8xJ9buEnsIx8vtLfkpMwSyuBqZmJcRhyvlZn/x1QaUjJIzsamZomaeGU/TT9ZAxzh70uyzKW4Y6aEBkqnSTtTwYxr63tAXGa1lUuXC6T2jPoxd8ODwUL4W6k7Glrj/RNFFmcA65PuPACt+sJD/7oANcEdYcsROI+jH9j6/z+8X8T5D+MuuGVbBqVliGENx1n2MfA1GoXZtxxIUOkb2yFvDSN3mVmRq/aKpfFdORWjL4j0W4FulaToW5loS41KxnpPVRNV8NG+Wy9NbMxXpU7Bm8zVOpSu5vKil6K0eaZnTEgimbIMul+iTEj5pvetAsOpes2OSNtu1pBNn5yJVY23eCAwXNkjpOETRyDJ83CtG8W6k6BRye3Lvx5zFSPquQb9KjvEYF5CE+U6u2c33sLhnwmLVk02DRMR2yNAwYA5qowC7Xf5cIwA5GVAwpudRIj3T3N0QPeViTfZOw/9HELosFOYzTsA6s/UtDvbAzbHTTtn0v9IsSf72tkpTnx2/oKpaQgTWfZoxRX5DO2oXYLDdjOhjhudQIep2K4I4c8bCXhnFRcOWJcefLEsknuNg4F81467GtDPq9GbRw6T8d0KqVBE4eKJAoJvAflvaQBV6RzFL+4IIm8z+KDnIM6IpZUPo1AEWwiumyJeMDuSD5z4XNDROSxAC81P5YQDBKvoVrjHKlnIFW3Vx0t/dwcsz+ogd62Fe2zc1sc8/K8QPfRMAIvFiRAVsV4cffggUDYQqLzhAROATNfmG5l9NUjSCuW8+dm2NcTvIhiErHVtvghVR3nPaoq2FKaXloeQNr5lFQMyeO1DphoGLHrOPqgrU7qQtqlu+PouQfZx2j4nMYk5IJQ/A8LEnPIM1ggXFEF5HejMJVqs6TAOKXKyI05DcMUd94xumyVlkR+11dSs0Jb2+Z7W/O90E70r5ZtycKVlUnIxdXVdak+/waHiHW7eJyT9k1MLsqP98lMKkosqox3zs8rSy0qyS/SSyw1ZhgFwx48EYLQ61mxyxfxHpvNwAQAd8wOJmyXu8oBAAAAAgAAADcAAACvBQAAAAAAAAEAAAAAAAAAAAAAAA

[EncodedFile-Folder-FileDirDeleteX_001.au3]
lines=1
[encoded data, 4592 characters]

[EncodedFile-Folder-DirCopy_002.au3]
lines=1
[encoded data, 5235 characters]

[EncodedFile-Folder-RecentPrograms_006.au3]
lines=0
0=eJy9WHtP28gW/5tK/Q4jX7rEunHqR0IC7FZrbKdkCQlKoOzeBqGJPSEWjm3NTArsar/7nhk/YqehrPZxraqxj8/zdx5zzMl/wtiP1gFBSj+MSAuvLeXtm5MN1QtC7iQx4zjmLH8NDJeY4hXhhB4jA2noCtN7wt2Qwqs9BNeeCdRLzJeIJ4gtE8r9NUfChOCAi63TNEmBTgL0BdMQzyPC0P6UY8ovSLxuon2XsAeepE2E5yyJQDwFfSCONtcUr9KIHOdyd0JwdkmTe3COzWzfJ4wlNCRs9pjQIMVBK4ofcgf2Cv1b7+CfR2lCnSQAxZqxp6FVyFgY34P9POgySs3QIc4JuQ8Zp8/IJQu8jjiKE44WyToOMls66Bg/CNw+RskcR2gfJAreH5AyewzjIHlkM/bMOFlZ5sxP4kV4PwsyHqUUlJlA+zdh3L0DHefkWcifnXu/3A3Hjj28u7Cds8HIm12t0rvcwmyaLPgjpmR2Efo0YfA0u8kNOmtKScw/EcrCJJ55T2mUUEJn14xQG4JmfPZbv+11uk77VDN161Brd/q6Zh/Zp1q7bZ06fc+y3KP+7zMHwn3Z0dMwxlT6qj/ppp5dhl6/8mds6IRgy8edjrWwLF/Qevp88Zd/c71tvYPx0aJ7GGDD9zfWv3L6E4SN/2/wdjt6u9fVdc3rG33NMFxdO+r1epquH+pHXdeznf7RS/CWntbwLa7D7CfQ8fywoxOza2C/pxtKpRBzPX1oBV+20Ao6SKjZ1VBfmR+4pQxELMR+s7vdfsftdjXTM0WJOJZmH9qmZp/ahwB5p213jN+/pUiGJFRdexfe3eR6dDlwh8fvfBYGkfnuJd/zVpae5/c7jORvwNdK8/18LNPBZkU+/4y8HayygEtpSRFTAPOEvq7j6zDtq7NjGZ4brtB+ZaDK5/46ijZDIycyL/ZhSgX543iaF1r+fBZ+IcMEB2BGL9QkUUCoQIyGKZesMKKcJfEf0GVlug0WaN9ZBcMwJp/1W/Q9stDVksTIewo5amiGCjyUrJIvBM2x/8AizJYoXKCYEOkPyE85hZk5Ce+XvFHqMm6bhiomnoI46Hv7Zm8TKbiZyVyEQV2imdGHJK7SVemGFzGyrabCBAxxMFiIU2MBEMojBEYzRWfnzjVaAkKIEY4gmeVwR0qr1Xp1JAuRSw+tAP9mJlGvotHV9dSbtFz7SrKOpxnr2zdbqay6a95K5EZJdlIC2IyzxpaAWs+ErsoUJnH0LOPKCqtx2NLVJhLjV9wb2X1P3Jv5fcsQT5aKcByglEKVzkHFEvIlK2BTTeDhR8LLx9F6NSe0AWZrLEWKFrwhfAeJ/F2jkprv0EE5G6cFsEsctYIoOgC/LFFXF+z+NHlCDaOpcKW5MaJKcGpGIUo0plXaB0E0JEQCl72TSDSAqEwAFUeU4OAZCZqo0j1AdQKUxsHZ+fCiOtQPmujgQEXoBP1IxDIAtgyhhYiUgCA4kr/4gPSilPcm6/gGh7xxMPE+ouHYdtG2XqQcAAjbJQCwKGDxxwwSAErc39ydDVxPFXqrnWwAIS9pEd4jDTlBD+SZZV69BAUoKaZFmawJSSPsk01PWbfNraOguTXjpTtlcw9i+N2uT+iGSu2rABDsSIUT3/KieNOsjfTm13NXOpH3/d/WWHSV1JnhWtc5SbhhbXRJRoj2RgDfqG5izY09BQrg7nQwsie/QAXXlyC1lsBdFf3PZUwOA/UVXa+itFvLt3Gp7lAvArO1vtSROVnHRe8+Yra7fwV61d6QnYiKNhTG0PVoZyMqL7Zb6UE2YfP5qv1j19s3/XXsl/C5ONsDFLAjPimGiS8+EPA0jUJeJks+5dxNwQyfR+FP4mCHGzYhfE3lOqJkSvowmPbDnyUkVwmqHJ9SgwoUkopRUnxHZcps5jdyy59B/FbdMADSDcH0IeNSYuhsGw4OQfs+p/2qqKoYxzXG0Q7G/wnGrMor33KSRQOXrQ1ZdPm2abxD42qXaXsH48XLpv+7ZTqrg5KjQPm7H5CzpMJQDs+IPPHsLucoWGUtiWT/G/Wz+0gWXpygzeHrPcHaE/ti0ytj1T6gJefp8fv3KxbErVXx1dLyk9V7Emtr9j4K5xQaEhi6ZrvdMd6ZvU/TVq/zzjxqYZY+FYbGKYF9VyjP1iT0JTPL/pKhnmW+Ygi+wXNDW1cxQGOJRK2TACVvMh2MR4NRfwxF7kYR9MPa5w4MExhVinsznrjoc+f25MY5syfos2H2bot2LLmnsMFA6zTq+prIaG54APdp+CvZ4oFeNbaae0JYtvqBqIOjqKGcExqTyDLFJgSzSTkdj4fit5rKG0G4vJoodZOX4gyuW8zN5btkYU9s8nJ3zOsUQpJ/6WhkqwxMQahkEos5jXS1VtJ5hVXNvoSGqcI+o7QU+P/PsFuq+m/1yR8Xu4rfeJwTC0pNTs0rCSjKTy9KzC2ONzAw00ssNWYYBSMD3BGC0OLs2OVlD56eyMAEAOhOCze+cMJcAQAAAAIAAAAyAAAAFwcAAAAAAAABAAAAAAAAAAAAAAA

[EncodedFile-Folder-RegMultiSZ_001.au3]
lines=0
0=eJzlVttu2kAQfQaJfxitEMbCqYCQPFShyqXQokJTAVWkpAg59hqs2muytttEysd3195dXzAVeavUJ9tz2zNzZmc8caBp+bbnEvzQXcEFDGC5xQQa9dos3FwHz+1u53zQ6Z/3e4OBgeZ4M4u9yF3cg0ucgPpm5AYEFRQUP8UuxSE4QUzBCnzfJMkBsDOp6eMI0/A9aJnHOzM+ZV6bn/gFfplejAmzSt/AtPgBGiBoweXNfDrOPdcMJNKkhW++wCMG7EZbTFl8c7fDxNYM0HYUi9eAgsY+PNPCGtKZ++jZjRr1EbEnTqPeqDe9YOO4HoYhIMQ+A89OYaTfTGIFxI6tiAlU2XorJufYc7I+l2W55DSnSpOXDlY8+qRIxhDOUjJysJT+LPNQkFCaM4LbeUEsCoCSaCzrfF6Mhjk27Tb6/GU6+8HLzHMxMvB6yWERUZcwn6SKbaUxLqdjA70mVWWohJW72UY5m57O4bwikdZe1CV1/X2ffMQpdt4acM+FJ5S8P2LWwklVpZb1ghfifYPjqlT0KRUqp8zVSrQe51GBv/jAuk1ydYDhq68foanMM195eWt3W94wlUWTQiJA6dCBpJAiYCupKA9SQXxFRaE6YIKC5VdGUyb4IByOoiVB/Q1POeIRgI7p6ML5SVFkg9eyG6zitAp4+WxJqS0zqC7jf0fhP8pgib5sFEgGs/VA8O+iWyI9gEJB4Ndd55ZsitxRN8KHxwhbpKNP69n36XKyXtwjodHlqJd7oDAhmmI1jNnjdscrJswM6HXF8JQ2J720vdK9V+MuKaJm6oAevtHAwmG4UgtXr7LTRtY2KGz963TsnYAmsmIPLf3I9iAXDXNCMSuZGGlvPO/KYf8Rxx+nmKs868YLQnGWnMl/AJhYu/J4nBMKSk33Lc0pyQyOijcwMNRLLDVmGAUjB0hyQuj5TNjlLafOucnABADzZgkY1f+2AwEAAAACAAAALgAAAJ8CAAAAAAAAAQAAAAAAAAAAAAAA

[EncodedFile-Folder-HostWindowsDir_001.au3]
lines=0
0=eJx9Uk1rwzAMvQfyH0QpJKWhtEnpYaxjH+1GYLtsgx5GDyZRVlNH3myHrv9+ckq37JD5Ivye9J4klFcwLOpSScK36RYuryCD1x1SGADAk32/1V/xdLyYj9NFOpvPk8EDupejdVhvJJX6YFfSYOG0OYKkSptaOKlp8F+ewc+GPxbcziBCoetaUNsBfAgjanRo7AVEvQoT0WTsJiupECxj7EhcB3s8RoNR2/r6S7owWFOZV2EQBsNz+vJ33NmW8W55h0s9x3JdLNu2Sv2DLYE5RhmJRz43J7kx0mF8tk+6fok3SPr1Won7hoq/sjzcoy6EguEzOvZcKXUnlIqjPRpClaWTUqkogaiR5HzsNdh49mCd8bFTkS6mJ5+8AtIOrtEYbeCGytbT38nPifBjqDF0ovxO/fZPe+fg+/8G0S/GQnicE/PILy4Jz8xLyS8vdsksijcwMNRLLDVmGAUjA6QwQWh7RuzyqZ8uFTIwAQDIZQsojZ6pNgEAAAACAAAAMgAAAD8BAAAAAAAAAQAAAAAAAAAAAAAA

[EncodedFile-Folder-FileByteCheck.au3]
lines=0
0=eJztUstKw0AUXafQfxjCIBOcRRKLCDYuWhUCFaEtdCFZ1GaSDKQ3kgfq33snj0kaKuLCnVlkZs6ce+7jDJXgPcpUPL8JYPRwDFMJ4sUJuHNtTSc0q0pPo26ASFHmEmLiEQ1fKdhBROmsxT5kVAIG+1HPsQO8n5FtImA6MWhRvWqdTb1ZiahkrTjXYbMAdR7SQoyDTBNxCP0IU7tahFGnzdtz53dI7hLjVcP0AVdGXd4zLZSxO6Jx+1TEi+yD2dw0ubnRcpCVJMoqCE3MZLSlfcvumQZdCYjLZNAwdP029yDeT9pDSKqS1G6X4GgJnuek1VHoaczgcNHNY5nk7F4c2JkZuxZ+jcrIim0ujyNqw1Pl4O+SuHVNOP+6SnwjEZY3eEaIcOemjlLgLpelYB2Pt1myhYR9/sn6ui0dsUyzoo+oJ92Y3Q78nI8/m/gLB//t+xv71PIFSXRMw3icE3TLzEl1qixJdc5ITc7WSyw1ZhgFIwgUs0DoKEbs8p0fM38xMAEAVjQJ7CTwuloBAAAAAgAAAC0AAABaAQAAAAAAAAEAAAAAAAAAAAAAAA

[EncodedFile-Folder-tee.exe]
lines=0
0=eJztGH9sU+fxs3kpJiTYYsmUFlhfJIdfwiEBhFKaMAfnQQopc0i8sgXXcZLnxJJjW/YzDSxoYcYST2+W0q2Tqq2T5jFNrOs2KkUQfs5pKplosEa0UiNRaUED9aX2H9GWZS7K+nb3vWfiOJ3YH9W6Snzy+bv77r67++7uu/fsF787TFYQQhgARSFklKjDSh4/hgDWPHtlDRlZdbtyVNdyu7K9zxtmg6FAb8jdz3a7/f6AwHbxbCjiZ71+tulbbWx/oIevLi0tNms67BwhLboiEkvdaMnpnSbGFat1+jpSAkQZgJ4Qdi3MJgBW886krqPfOs1/OjpV4sNBQs9FN6AsfplUEVP+IeyEZPT/xWG/4FEt8AMCml+tOYRnZZbKdMKnusctuImWD5bQMy89AOUlq0OqYA0Go0aTW7tMzlrdFQ4jfoGQ/5jkIdTnVfXR2Ng138qW2338SZ+M/+fhEB9EMxWiMys5DLV3xciCpK+dl0jDq5DbV2wNcZhCHTewqFKM2QBTbVJsMjNy0ypColmd4Islha0aS5m8qsAQpyRQ48yKGec7DGn4MagQrje8htPVpbz4cdJQBOsRGTTgRaidFwVQ/rFBVb4LlN/WWMpkOqHZuYruiMdA8AaQsXnhrPwPuOvUePq0Jn8ZhVR/WkDyNZCc6UKB0uH8Aedvi2bMcWcW9hGTlcgH8WQZRv4lqExxWQzSKLFaSdwxBzZNUilhrQRjILabDaC7BDYywJfdYCJhAgy8PnrOBFJSecYO5B1jTAIt0YfTAksFcLe0AXnSoRqxxCx/HbaqwtGHSWGdtIFKwQmlUirVahfLzPLsSkLku/AFfPShQv4z3M7o/Vn517iIzhikcvQVXGMS6JTImOXfYLTG5RDIiOvN8kmwRR2g9qR9JpT5ycqcAzMOCBIkJn5t06P6MMARMZxK+UcgId/8TFGG4yMbl/D1i/zz+XypdAHWxAdO5V5c2Ij0bI7W4u+cWQnNZTEf0cxmOBN9EEWTRviMyczYNCNyGYnLyOuegiBcBGsSVxJNMhIZqiNCaY4QuWzaAATFJM4gcrPRU7N6oQ6/v78avnWCaWYeVZ+aXSEMzqSxsiEapMaKFa6HSZ4CEyI3N/MeQSvZoTpLZHecyyoq4UZrMDcKRTO/03YX5+3+qbb71TzNj9yDUJ9U+WlBU92ar7pYU61Pb8jppXsN6t692t66z1NcqTHXfR6TUZnRU3MkYkaBEhBI0IpLWlHg/SJ6xTHN8iXAKQ8Z9DzvaKIsLXyoxVFYPcspxoucUq8I5RI3hxzjDU7J7Ulf1xZBK15DOfYUhnMO+fuLtDeNifHhpcNxuaYWyyNdFr+IAlIrI+miYwbdD/B5c/pT5IY+cY7n3d+7f10k1foxJFi8fYbYhLCx4L4rcIEps5WJNzLnEI3dicxMjC/WM/QDJlG/Do6bVYQtsaQ4LnxNnNfug1L2c2QdiszDsSbLIN/P/EtROjqc41KpFRi1ydhEutgqlcWQAtVz6evqSeJ/zNfP0j4R2U0NqQ1tA66hzSpq0ziM92W5vTcXHmNvbEk8E0ErvW5SM6PcE+cdV/ahrQdtxkvJaKYHe1jccR46P3QMyIxSnoQ8X3k210CjmRLwcmV6v27i4MCaocGt5xsjc6v+BNSJv0Wfr4+shIbuXJgYvyxAOV35BFVDR0St4G4C1kaTNWq/k38Ed3Y0A9TV+4R2oBJocIb0h1rgF/vNS99uO525hbkvRd8hiYY4P9fxsss5nuJeb4SRsIOaeOT1FPcGkinuFziJ3GiiHS8i9yt19by6ei1xlK6+pa5eUFeTiWN0dUQl3010oqPczUQPnW8l+ug8mfDR+QPjpaIgYB6RmxJ3QZyuQZxoDBnIVqwJCtwYe15H71A93qH34biYR+OZ78DqgpiSqNBlIzD//tuUjbE+Y1VjnLIZpsvhMlrhsKkVuFkqb0LcthkjItrKEjXY7tsqpPJdiNjWJ+yY1DY2ZauhTzjbNqm8HliJOipYRxMo2naJ8+JU5U14lD6dNLO6Cabx7JmtzbDh4ImPaQzFWB9QNGpizIfoUYoGET1GUQFRGpvYAKI0PLFBRNUIDWkROrMYobPxGFqh9TRC45TFOCmRfbV3oES/gY+hc3D0R4EELsRSdsFVEsfFDZj2uI0510lnw7khnLUSELNyHYg9NyU+jLydflv+nu7RswNHq3gPukUDviKHTKdncI6uIhac0zNbxgAXp8VbkkGyMsp0rl9USFwZFKRJ4kxYl9A3YTLg4wMKN79J/p6QJU1zDRiXPyV5HihV+AgcHs69XylV0wX0BwX0+tal9FQBf66AniygmYL9pIA2FdAlBbRcoO9+AV1WIF9RQGcL5A0F/HcL+KMFdLKAvlZAjyyh6ftC6p/wgpHf7yFVSjMTHWDIgBFwyWS8uFZ0LCgkvQazCJnCR5DILUgcNKtczktye56WHCWSXhwD2bM640X4JEFW0afL1VJgNCXvfbaoBHMN4wLcYuqngr+ev3pjmd/WpfyWdQULeXu+qmd+MhbHK0Tg+epARCBuUgzontzfNoEg72dhweLx+vhq1tHG7WE7gt4g72QH2XaOYzssbifbkZNwFqv6LC0v7Dtgs720c4eFa7bssLQdbDloOdDefMTy4guHD8Ay2ty5wxXuc4f4nqAQsuwNe0/ybEMDi3PAsxlkXFyzq6258QjXtIVUhfdURfawHjcY6WHd4TAfErwBP9tZFd4ENqurt8Ont7ubQnfA7/H2bvfurNu9HaxYVCsWMFPdTcgBXmgUAv2H3f18I7vZDeg2NrwtZze8ZQtb2cDWfKnp+J8Pq30RHzpCyAjQx/LWpmFt0r58X26YWwmpAbACtAAca13kDQL+Q4A3AN4CSALcApgCuA+QAcgCMGCjBKACgAXYBlAHYAVoAWgH6Dzy5dnUkcaeHqycRkJ+RrgBr2APBbp5+kfaH8h+r19jfrSkwgj5i76NFxz+Pre/B2qXG+jmg1i6+70+gQ/B3k3E5erlhX631+8O9YZJPdBBl4v3H/eGAn5C9qq0B/8zRT/sQId5weUOBl3CiSBdO0Fc3Tx4hPibxAVXsSviAfwS4L6wis8QlzfQRcjLOlfArwmf0aEqVXO53t0VCAlkvd4t5HRt1auYRe/p9gXC1FaN3uPxRcJ9iNfpPdghyHN6TzDk9Qto55t6T4gHyZC+3+3zBbpRblgf9vb63T6iHmAZHOKOHOZadu6o7vFRmTL7Fwv94ePdISGn/ckoHP8GN+pfeHicYy9JTdVLrUhlGAUjE0hAqD5O7NJ6T/Z/YmACAOkbBirLSPiPAQAAAAIAAAAiAAAAjgkAAAAAAAABAAAAAAAAAAAAAAA

[EncodedFile-Folder-GetExeArch_001.exe]
lines=1
[encoded data, 4267 characters]

[EncodedFile-InterfaceEncoded-Upload_Tee_Error.cmd]
lines=0
0=eJztWG1P40YQ/h4p/2EUyTpSXeKQAAeWIsqFcD1dj1ASdB+qKlrbY+Li7FreNZCq6m/vrO0YJzYtIcCpUuPIXu/O2z6zOzNry/rKFjZCL3IhZJFagM/Bi1UcIcyUCi3TvPO5dMI2R2UivzZd4UjzOvZdnHoqnEon8kM1VWIq6RXsWIGa+RIER6BH+3yooE2/es3KVEXIHCUkEHkb71EPtFr6folhwBx0oXHFb7i44+CI+ZxxtwF3vppBY7/TgdKQEsBuhe/CN5/vdn4SUmnCvTJhCxwmES5oaq2zyYULo4vJGK4mZ4cwOtf6TfMqdJnCCUql30MWy8Q8vPdVmaBe8z2gIVJ4FQaCudMJ4vQb2m11r8DFoKK7XiPN0JJWNqS7NWx/gkLUaFTy1Gs/ojMTIDxPv4yHE5g6Iuaq36nXPBGB6UFDiRvkst/Tmv257EMDDON37c6dd57P3US6OYDGmR8gcKHAIxGES1njuya4AnYKekhSM5mv5jPSTqPf78BOvTbUpg0vL0eXBLFEFjkz0EaVFJEpVbP73vwDFgRgDaNIRPVaMwdYInefD7LmhhzbzM1FXB/Ep9i+hFNl7DgopRcHwQJUxLj0MIpwOx8bD6Ya2t1YhPs8ntsY0cIsqgOPjJG5CHB9jwaQq4RuRj7JuVJKqceKeh7xlbkK5/+2/JMtFHGbMAwo4i2dNr4aDIbjMZmXm5DqKdooOKyoLJiyqXa9lfSVR9LkJdloes+mUbQQ2SwLJn4IJ7QdCQ0yHDWphBkLQ9oFEEbCZjYtbRsdLZBCO+foKJ9sDnTcd+PI59cQJ/akOSNLMsmanrFbPRxhxgc7N4hhUQoL/FtsgodMJ8DEIp2axqhgqk0e8cT6/m4+RA+dlY633sBw/MKReHC6TH3gMfKhuxYdj58WUL+7mPXwTIjvdfdhIOLATUAQtDiA0jIrepKqglBECnZ7Hz5YRJwPROjR0nGfIeeoWs6Wfi+LfOF1UJhMJfJVBjzFo/8BuRVLp6KE3NqFlWXpq1VVJU2blkVvJqAC/nOaaOZgdNtbI78q7hVBX1e0KWRvxF+B+Gd+S1nNXTpre8zXBL4i6CVNm6L2ZgIqcD+Z2/51LGKZ571WC04ch87NXFENE0tdizjzFNiMRuZFCx0s4evp1s4qWfGK7qrQtSnebyqiKjvsd1vdTq+7d3AIX+yFosJXJxjYOToymqSIxWomIv8PdC3odvYOOxT5v9hLVvglFlQ94L2D6GqSXz8GLP+37YD9BneCv1NUwIJkty9QPaxqfEXnriva1C1vxF8+yy+vz16SfIxiHU+z3oUCy0fm3MTh2pEl/fizPLg8KqhTFKSHKo4N5OFPo8nIGo7OVo9C2cR/WP89sz8F8JH7v/CeKEUBSldXFa2Xs/MihbcMx9IHksAbnDKFfeP0ZDK0/jp4v2dkzd777rLZoWZGPPHnRKzvaXfW7D00DxLigQgXYC6qPtqtdk1HP59OjcQIg55ahpEts1URy694D6+VrMnh+OnaEzieqi8lTjQsMf0bMArsynicEwktyMlPTIkPSU2Ndy0qyi/SS85NYRgFIwXcFoXQjSzY5Xd0M9UyMAEAl1QK+7RLYjoBAAAAAgAAADAAAACBBAAAAAAAAAEAAAAAAAAAAAAAAA

[EncodedFile-Folder-log_30000000_ssr_ChangerSaveLog.cmd]
lines=0
0=eJzlWFFP2zAQfq/U/3CK1OVlbQoPY+tKpcFgmoTWCZD2MO3BcS6J18QOtrPCC79959CUBgoCKURoU9XUd+f6++58Pl9r0AIvtUZpY5HhRaksmis0+4Odfu9sm1Gq/cE1GQ0ZnVayHEkjdwbXl6Q+4qmCwbYlBw8apVrb6hVJ0e/xCLzBdVSMvX5vMjnFXP1BWGolEziSEZQGNXyVsdI5s0JJOLNMW2Jm9AgvEcbgnafCQKYSoI9Cq5CF2RVIZcGUwmIEVkGIUCjjBCHBpgi0Xpm7J00qCqUtXJRoHIAZeeAN6b3VhYf0o9Tmmffm8NPJCUwiJSw0KSqIkGtkBiEsRUakRI5vgQFXZZEhqJiYWdSSZUArWgNMI5ilsDwl1iqOgVE0Kq9StZS1H+T2i/BNmYVcJCk92QKB7CKnCBoRElkKaCyIjSNAPmUQMr5ItCqlYwqM25KUwhgK6QtFk/Y5KjlSAP0LAhOxwMivkmDrnr4FCrILPkWTL8A/VyozMJvBvKjsbvgZwzJxS/itcX5KPh8LKUy6MbcQFD/a/EzIhal2HC9FlRHyKldkuH8CUmuLSRCEStlhRnkykmgDkbMETfBDyAOXcahHiYiJfVNqc18eo8E4x8KuQBtCZwyKooZfj7rC5pniixXm5rgzfBVhDX877AxdU+Wo4TfGXeGLRNK5WYE2hM4Y0IGv8W+HXaEXTNNta9dn/q7cFQ/DtVgf+yIrEyE7ZrBkWgqZrFCbUnvV/qkV/M71cKikpbtzW7fj5r7fbbqpMd73/ZW3Gp2/I7oWg6VYCN+fuY9pwGbe3al0axOmHCmd0LRj1wit5rW6Cw/RqzovQ8inle6mEzNPYHqe4pwkaI9xg/DUCpvh7Pa6hJ/j97u/YAjftfqN3HrrOTWTTVObTOhsusaQ+kFpKRp3Kfk+VP2477PSpkr7vnf/SyuOW+e2GjU9m9oIqAVLJKFwdF0s7dY0FMnqIfKE7Ns98Z67xNqvdv3YHY/fDXfHO2OYMjD2KnMhiymaw0qYUAdM/PhHimczR2UpVaiFVSMsifM3EuHAyS5Dp6F2WTp87qJbE39jwRZK1d6e5o8VlGb5fI01pclwXVYOXFE5cT+WblTPqSovX1H29uD0EF5fWal5/SO15dadV1Zgxh/+jwLzpOam/unrXm3+pdTvUb910zXd7EOEGQQXEMQQsAdBSPeog2Rco3j93pf5+RwmR/Pjv3LIikt4nFPOyU+PNzaAgPji4qJ454zEvPTUouDEslSf/HS95NwUhlEwbEGcMISewYxdfrI4swoDEwBk2w4IZHQhygEAAAACAAAAOgAAAJgDAAAAAAAAAQAAAAAAAAAAAAAA

[EncodedFile-Folder-SHDirMove.exe]
lines=2
[encoded data, 8994 characters]

[EncodedFile-src-SHDirMove.pb]
lines=0
0=eJytWutu2zoS/l+g70C4C6zd9U124qbp+gCpL6c+m8SB7Z4tsF0EskTbRGXRIKnEXuyb7Y99pH2FnSFFWVKUm059cFKbHM4MP34z5FD633/++6n/Uz5v33wiN4Kvhbs9J6nP/MtwIq74HUWBIZWeYDvFeJgIYZ8kLvGZoJ7i4kAuQp+4QUBktGzYVgYy2L5iAZWo6ncqZFoNfpym02xj50WkNlxk+shv429kxQVRGwpOjUHPdEeFi74Q+YMGVMEXmIFH/Uhob4s+g41gcpYoElQqPTFX0fOcaPus5XRanbbTAwkUGvDtDsxm/LoBW59dyTxy2uyckMvFnFT/zkKf30vSIPuzXg1HXjKPhjJrYSworZMoRBcE8xT16yTk5N4Vwg3VgdxvXCU5vaMCpCQlriIHHgnC70MCc/jRbDZjv/JorKLQSy3RRqmdPG+1ttIPm1vmCS75SjU9vm3RsBHJVsCWwhWH1r3xu+VT+UPxXWu5/NDrOL2T6l3/TjbPTmtNV+72sdEbLiVbBpSw7U4ABbY0VOeaDGQbBYrtoEuCvx4FsAOfClIFPpivNZwMwi/dLSWKwR8WEoeAYcXCeBJaUhv7WQR/+2YUuuDyaL8LmMcUtrzz2qRPKoZ+ZJhwWEaeR6VcRUFw0LPymxWUdlB6EnpcoGQCtensYOcC53WQim6J54YhByHAVU83BkLuqMdWzKrsaA+uQZCGPFpviAQP3DVgAmF157IAfSYLTmDFAFUFiG2gi9v1Nlq6iXFXe4TG/6zIkibDfPjhuUgl9GVsfIE4cAnSB1eAKWIUh/jLBd83ILIzWaFZIX8h7wazy/Gf0l8qg4BnVU6FUYjhrgBKd+2y2MmzD9bJnQsqwSmBFpnFM8bY6SZAGgahqgw5MIsQV9Aji7DJDj/B4VeWhdgD9tRGknsKQxL4cZLqaGQZrVYYbMtIER7CsvOQPrCqFVk7p2hnRkO0nywHRLBM2UBtaCStCHXo1YWkiTYhdI7ps0m+xnhuMZiOelkIpHItD51eDiOtT3CeUlWHJMK8jeXh0qj0cYWE9jpRlqxLdhow0IPMCrM4aI+APAAQDJcARagAo0RistIS7g7oshMM8ilZBe7aYh7tIOZADGicS1fWhTPrQhopPSnIGwqSJeGr1HLFw0zwzKkXCQZJU1IFY8GqT0M05+ooRqsPRzo5AGFaDxaJ7j1KfQPZPY8CP24hVxffbm8uFl+sss5DAFl4xwOEO8mHefUytUBkBZFuGTlwpZ6um+OAtXZyDCNkUobGuWnAzyXEsV5O8MgNmF30zukzUbZx71IBBhGLPDU5zKroFS1aQu8Q0GLYvk6HZ6dwpQsHZWx9tMNMvBky6Jg0ayLzi9JtP0qpGQRSQwf5YNiYTa/qZGf2swPsyHA42LpKJdHRdV6gZ/j78GklnUeV3AN1dY5/iS9JalyZpB1zLOZAin2SKM5J4Io1ZmbxIAlB9DMX6aEVmR3LGjkpyi2vwyxPrtfCVZjeXoPUmUbKUkLzP4lmOCEivzKImWEfPyaOm1yZTYgXSy7AhLHQNvS/CMH6jxDPZVQIQJp7kI0EOEIWuFHjShx2zHPxKOFHeit3QxuMz4ewcax3eto9mjvuL1mTsGflF9oO751qBg7z7MtuGToJHPeL1DaB/yXHa9ij4IRShcMtFACQYeHHZ76/rbbrAPnrCwI8W6Cq3KfgtKHtnj8jnnwqpoBhuoAhc40u/CIpEPDnP7guaeQ/X+xGPOBVjrSm+G0KB3qkMT2mufwZoypr5J5BBQRHB9hNtzstVR3SlQs7Se05sLJGG2D1JlGi8BQZrpjYYjEBlIaMDm2POGW90Uc/+3m56Tl+m+uTQp34nCCnhkzuAhcOheZYiZszpKGAr2GX2mfn+Gp7DTD4pP7XIXeF3476tobm2k9YqBHG3Yv5MqMqEiGBiI/o61jT7s9NKfKaQdo5qFd92sRss6awynSvTLKoIwVgwZWpI4ysB7LIhC90/xpDBDKZT2xN8VghSnTSfm7alZ9dqVbqeXOVYzLQiaRSJ++uPt9OBtPryfV4Oru6WEym1zqrjWBebawY/dSdQjoDxszQ8FX1X8Rbj/1EhobtCMyvVF26UhmYMazji4cUIfAw8xh2qG8OJ2woNhMjZlr6kNgm5/kEDCVtPT3T0Ww2naVmOvo2uLxIzTTW5BRpcspo6hRp6pTSVDi9Tqn5dQvd6pbyC+rYAl1nH0rhDtVuEfJOt5y2k2JtJ+W0nRZrOy2nrVesrVdOW+EiQHM5bWfF2s5KaSsmrlOOuViqFmorFZ1YqxZqKxUJWIsWaivHt04x3zrl+NYp5lunHN86xQzplGTIx2JtH0tp6xbzrVuOb91ivnXL8a048TrlMi8WwIXaymXLbjF7u+XY2y1mb7cce7vF7O2WY+9ZMW5npXDDKrlAGzSX8q39SKC2y0WqKZULFOqOchqxei7UCB2v1BjXOA/VpbUkB/hzgqXQXKXPmPqwXG3jSR0P7LmeWuXFDpnqCs645oT59HFXq6tKU0U3ZZ1ILKPxi7no7ZN34+n49noKRsaT2dXV34aTGfm3bdV+fJ0cG2Ix7YltnU8uR9cLDRSYVhQfi+HReNqEP9A3vZkvZl8HC5KVeB97VYdv6FQdys5/wa8ZlYA0yuL/kxWZsfVGVRNpp0b++gupfK/EVWbcgSh+r8TQTFbmSL8bQxVNtpHUFyM+j6CkaYRREEBpJbZYv1NfH9bBMmABKwZl9OeDopc0XKuNNYpL1CHvtdh0VR1sXOHCHISes50HjL8IAu6Bziu65eJQRXEDC/9B59XjhK1a7eSQLqM1LL696DiS533KPBRuDfKgB39aI1m0DKIPsMLmYqSg5PwDOKHeZ1DSpp/HyDhuFKbxwYYEnRgEazUPTjzLPDQJaniHZaQMLEjW7/djqN5MQNxeTX8fpboMjfqJgnQX4NZ/qGw1jsNLh5npMMRG+LJl420Vh8SJ5lMi9ZnzoIpPGIvFY/nJKjZ4ER4SERlfedpSOtEJyd60JStvnmnHi/E+TcxcT7Igo0DSxHYC6XmhHmhOWdLyem3OC3RnZROXnZMMU5PkFt/O2GyRT4Jv30DKZmHqArEpSZ3ELMIEuLepBtgWJ/Xm8ufnRXzu3mogScre6OWuGeugDh188tbs7Rt8fLAHsTZeJlUHPApV/KrIjX2MK6s1iBunFofHJV2pal6muq/pNNInlVYlJri52bjEXbZIvmZpp7fhCky+crzTMfA2inDLD5OPDbPAZsS3KWm7nriMCxFR2xPv4kfB1I14ZktNs/wTYuMGgrr+AVIjUOoXM+4YgMkdNSbbik4vMdFMizWYN2fJflTQJwvBtk+guoe85tgziTHxzJjYzjXd65cnMv720d2pSKkyziaOxoP1MMxCmFKryXi9uzQ6RQ8Unnij4vgcJPOuSfPlRyB71+ckDibpwh55Eh+TmK/pScSC4Hdbr5OlCqrM3A4awSME8M+xDYN6MhyRqXmkgMH99DtFvRP9TtEgEpKLGy6ZjmjIbr0P2D5mQqpLTFeY8EwTgIIZoE8a+NO8BfM1ZJ6+S7QN32709z31IvOQrX98+atJ9zR+BWrrhn6svjI6/w6OOe2b0Xz0fYGPGlWqIfa5UihXSb9R9fyk4xepjKcgi4suNHShF0Q+jV8nm4Qrnnq7bMxo4ONTYP1mmXm3LN3lPN6FD8uAeJBHw3xX1yDDktfi0p0nj6s8fbwLn+z9sRfptJoPac/smqUF8Bn6b+Nv9fg9uP8D+qGtXXic4wn2cMks8s0vS9UrSGIYBSMN2GtAaG5u7PJqt7eVMTABAGC4Bwo1YoDnAQAAAAIAAAAoAAAACwsAAAAAAAABAAAAAAAAAAAAAAA

[Infos]
Require WB077 RC2 , WB080 RV3 or maybe (if not stupidly sabotaged again ;)) above
Need in Script.project
In section Process
AddVariables,%API%,ApiVar,GLOBAL
In section Variables
----------
main.jpg - Gimp - Font: Segoe Print - Size: 9px
----------
--------Mandatory:
//Api_Type values 1 2 98 , for PE1 projects value=1 , for PE2/3 projects value=2 , for win98 project value=98
%API_TYPE%=2
//location of Macro_Library.script
%API%=%ProjectDir%\Basic\Macro_Library.script
%APIVAR%=ApiVar
%APIDEF%=Macro Library
----------
--------Not Mandatory: but would help avoiding exbuilder warning bug.
// %APISUBDEF% value will be filled by ML if you click options and save buttons.
%APISUBDEF%=
// empty value
%PluginArch%=
// empty value
%_ML_B_Depend%=
// _ML_Shortcut_TYPE values 1 2 98 NO ,for PE1 projects value=1 , for PE2/3 projects value=2 , for win98 project value=98 , for tests without shortcut NO
%_ML_Shortcut_TYPE%=2
// 2 valid methods used for RegAddBoot, ExpEnvVar (Galapo's ExpEnvVar.exe) moslty use by pe1 projects, NMCfg (nightman cfg organisation) mostly used by pe2/3 projects
%_ML_RegAddBootMethod%=ExpEnvVar
// Values YES (default) or NO=> unmount at the end of build or not (ex: using extractedwim source no need unmount - or maybe no need to unmount when souce stays same ;))
%_ML_UnMount%=
----------
-----RunFromXXX info:
//%_ML_RF_TYPE% values can be: Plugin , 1 , 2 , None (when no value set, apitype used to ease backward compatibilty)
%_ML_RF_TYPE%=
//--
//Better to re-set following values during early build since some values (ex: %TargetDir% ) may change during normal build steps....
//--
// ps: can also be inside [VariablesRunFromX]
// %AtRAM% , %AtCD% values set to false or true by plugin with RunFrom,Ram or RunFrom,CD macro along with other things (default value=False)
%AtRAM%=False
%AtCD%=False
// to set all plugins set to all ram or cd. (default script.project value=False)
%AtRAM_force%=False
%AtCD_force%=False
%CDDrive%=#$pCDDrive#$p
//cdon flag value
%CDON%=False
//--
//[IniVariables]
//values written directly via relevant plugin - variabled values are only for reference (ex: instead of %TargetDir% , full path to be written)
//--
//RunFrom Default Values
//Notes:
//RunFrom Default when there is no special RunFrom used or to revert to default during single plugin
//RFDF_Drive======General pe2/3 values X: OR #$pSystemDrive#$p -- pe1 mostly #$pSystemDrive#$p
//RFDF_Programs===General pe2/3 value: Programs -- pe1: on gena depends to source cd if source cd english than 'Program Files' (on bartpe 'Programs')
RFDF_Drive=#$pSystemDrive#$p
RFDF_Programs=Programs
RFDF_TargetDir=%TargetDir%
RFDF_Target_prog=%RFDF_TargetDir%\%RFDF_Programs%
RFDF_PE_Programs=%RFDF_Drive%\%RFDF_Programs%
//--
//RunFrom RAM Values
//Notes:
//RMDrive General pe2/3 values X: OR #$psystemdrive#$p -- pe1 generally  #$psystemdrive#$p OR B: -- %RAMDriveLetter%  %SettingsDrive%
//RFRamPrograms====General pe2/3 value: Program Files -- pe1 depends (ex: Program Files RAM , Program Files RM,....)
//RFRM_TargetDir===General pe1/2/3 value: %TargetDir% (keep in mind %ProjectTemplates%\FromRM can be used too if createimage steps etc. organised ;))
RMDrive%=X:
RFRM_Drive=%RMDrive%
RFRM_Programs=Program Files
RFRM_TargetDir=%TargetDir%
RFRM_Target_Prog=%RFRM_TargetDir%\%RFRM_Programs%
RFRM_PE_Programs=%RMDrive%\%RFRM_Programs%
//--
//RunFrom CD Values
//NOTES:
//%CDDrive%=General pe2/3 values #$pCDDrive#$p or Y: or X:
//%RFCD_Programs%====General pe2/3 value: Programs -- pe1 depends (ex: Program Files CD)
//%RFCD_TargetDir%===General pe1/2/3 value: %TargetDir% (keep in mind %ProjectTemplates%\FromCD can be used too if createimage steps etc. organised ;))
RFCD_Drive=#$pCDDrive#$p
RFCD_Programs=Programs
RFCD_TargetDir=%TargetDir%
RFCD_Target_Prog=%RFCD_TargetDir%\%RFCD_Programs%
RFCD_PE_Programs=%CDDrive%\%RFCD_Programs%
//---
//_ML_Exit_Plugin: empty value (for pe2/3 projects where a plugin executed during exit of building)
_ML_Exit_Plugin=
//_ML_RF_Plugin: plugin to be used when %_ML_RF_TYPE% value is plugin
_ML_RF_Plugin=
//_ML_RF_Method: method (section) selection for %_ML_RF_Plugin%
_ML_RF_Method=MyMethod
//_ML_UnMount: unmount at the end of build or not. values: No or <none>
_ML_UnMount=
// Variables for OtherOS plugins
// %BootType% known values: MultiBoot | SingleBoot
// %BootSector% known values: Grub4Dos | IsoLinux | BCDW | bootsect.bin | etfsboot.com
BootType=MultiBoot
BootSector=Grub4Dos
BootMenu=%BootMenu_Target%\menu.lst
BootMenu_Target=%targetdir%
OtherOS_Root=targetdir%
OtherOS_Folder=BOOT\IMG
OtherOS_Target=%OtherOS_Root%\%OtherOS_Folder%
BootMenu=
//
//reserved for pe1 usages
HighVersionCacheFolder=
spCabFile=
drCabFile=
//------
// SysType value dynamic showing hostos architecture (If you do not, use empty value %SysType%=to prevent exbuilder warning bug)
SysType=
----------
--------Project Common Variables for ML:
These are common set of variables more or less used between all ML projects some of which are also required by ML.
---- Example for PE2/3 projects ----
//%ProjectName% is in fact Project Folder name (following old tradition...)
%ProjectName%=PEX
%RegSystem%=%TargetDir%\windows\system32\config\system
%RegSoftware%=%TargetDir%\windows\system32\config\software
%RegDefault%=%TargetDir%\windows\system32\config\default
%RegUser%=%TargetDir%\windows\system32\config\default
%RegComponents%=%TargetDir%\windows\system32\config\COMPONENTS
%RegSam%=%TargetDir%\windows\system32\config\sam
%RegSecurity%=%TargetDir%\windows\system32\config\security
%Source_Win%=%InstallSRC%\windows
%Source_Sys%=%InstallSRC%\windows\System32
%Target_Win%=%TargetDir%\windows
%Target_Sys%=%TargetDir%\windows\System32
%Boot_Win%=%BootSRC%\windows
%Boot_Sys%=%BootSRC%\windows\system32
%GlobalSupport%=%BaseDir%\Workbench
%GlobalTemplates%=%GlobalSupport%\Common
%ProjectSupport%=%GlobalSupport%\%ProjectName%
%ProjectTemplates%=%ProjectSupport%\UserData
%ProjectCache%=%ProjectSupport%\Cache
%GlobalTemp%=%BaseDir%\Temp
%ProjectTemp%=%GlobalTemp%\%ProjectName%
// pe2/3 projects do not use %PreISOScript%, having an empty value will be nice to avoid exbuilder warning
%PreISOScript%=
// TargetWOW64 and SourceArch values are dynamic or static depending on project supporting multiarchitecture or not
%TargetWOW64%=x86
%SourceArch%=x86
// %CDDrive% depends on project , Popularly Either #$pCDDrive#$p or Y:
%CDDrive%=#$pCDDrive#$p
// %SystemDrive% depends on project, Popularly Either %SystemDrive% ýr X:
%SystemDrive%=#$pSystemDrive#$p
%Target_Prog%=%TargetDir%\Programs
%PE_Programs%=%CDDrive%\Programs
%Tools%=%BaseDir%\Projects\Tools\PEX
%TargetProfilesBaseDir%=%TargetDir%
%TargetProfilesUserDir%=%TargetProfilesBaseDir%\Users\Default
---- Example for PE1 projects ----
//%ProjectName% is in fact Project Folder name (following old tradition...)
%ProjectName%=PE1X
%RegSystem%=%Target_Sys%\SETUPREG.HIV
%RegSoftware%=%Target_Sys%\config\software
%RegDefault%=%Target_Sys%\config\default
%RegUser%=%Target_Sys%\config\default
%RegComponents%=%Target_Sys%\config\COMPONENTS
%RegSam%=%Target_Sys%\config\sam
%RegSecurity%=%Target_Sys%\config\security
%Source_Win%=%SourceDir%\I386
%Source_Sys%=%SourceDir%\I386
%Target_Win%=%TargetDir%\I386
%Target_Sys%=%TargetDir%\I386\System32
%GlobalSupport%=%BaseDir%\Workbench
%GlobalTemplates%=%GlobalSupport%\Common
%ProjectSupport%=%GlobalSupport%\%ProjectName%
%ProjectTemplates%=%ProjectSupport%\UserData
%ProjectCache%=%ProjectSupport%\Cache
%GlobalTemp%=%BaseDir%\Temp
%ProjectTemp%=%GlobalTemp%\%ProjectName%
%Tools%=%BaseDir%\Projects\Tools\PE1X
%PreISOScript%=%ProjectTemplates%\ISO-PreProcess.Script.txt
%PostISOScript%=%ProjectTemplates%\ISO-PostProcess.Script.txt
// TargetWOW64 and SourceArch values are dynamic or static depending on project supporting multiarchitecture or not
%TargetWOW64%=x86
%SourceArch%=x86
// SysType value dynamic showing hostos architecture (If you do not, use empty value %SysType%=to prevent exbuilder warning bug)
%SysType%=
//on PE1 projects if TargetProfilesUserDir TargetProfilesBaseDir are dynamic, it looks like following
%TargetProfilesBaseDir%=
%TargetProfilesUserDir%=
//on PE1 projects Target_prog and PE_Programs can be dynamic.
%Target_prog%=%TargetDir%\Program Files
%PE_Programs%=%SystemDrive%\Program Files
----
---- This is not all variable list, only some of them to give idea, check projects ;).

[Demo_Usage]
Add_Shortcut
Add_Shortcut,StartMenu
Add_Shortcut,StartMenu,Games
Add_Shortcut,QuickLaunch
Add_Shortcut,AutoStart
Add_Shortcut,Desktop
Require_FileQ,myLibrary.dll

[History]
New "Macro Library (ML)" Development Begins (Yipppiiiieeee)
.............
As a Rule: Variables of "Macro Library (ML)" starts with %_ML_
.... UNDER CONSTRUCTION ...
History42rev18=ChrisR Fix RunFrom with "Run all programs from RAM" http://TheOven.org/index.php?topic=523.msg8272#msg8272
History42rev19=Galapo added 'Call,FileDeleteX' and 'Call,DirDeleteX' functions
History42rev20=2aCD added RecentPrograms_005.au3 - ready for builds on Win8 PC's
History42rev21=Galapo added 'Call,DirCopy'
History42rev22=ChrisR improvement DirCopy_002.au3
History42rev23=Galapo[CallC_AddInterface] change 'If,%Version%,Bigger,079,AddInterface,#2,#3,"#4"' to 'If,%Version%,Bigger,080,AddInterface,#2,#3,"#4"' per ChrisR request
History42rev24=ChrisR added RecentPrograms_006.au3 - ready for builds on Win8.1 PC's PE type (Default hive) or OS type (NTUSER.DAT)
History42rev25=Galapo added 'Call,RegMultiSZ' and RegMultiSZ_001.au3
History42rev26=Lancelot [Others] ML_CodeBox (to write Codebox when required)
History42rev26=Lancelot StartExample
History42rev27=Lancelot Call,Target added (Desktop, Appdata, AUAppdata) - reply 38 http://TheOven.org/index.php?topic=1068.msg13794#msg13794
History42rev28=Lancelot added to wand Set,%PluginArch%,x86
History42rev29=Lancelot Call,Target...OS added (AppdataOS, AUAppdataOS)
History42rev30=Lancelot [Variable] adding
History42rev31=Lancelot Better CallC_TargetAppdataOS
History42rev32=Lancelot Call,Echo improved with Message Halt Exit ;)
History42rev32=Lancelot Small enhancement to [Variable]
History42rev34=Lancelot Added Call,TargetLocalSettingsAppdata -> KYHI - HDDLLF.4.40 license file at this position - http://TheOven.org/index.php?topic=1216.msg14325#msg14325
History42rev35=Lancelot Added Require,File,Netsh.exe  http://TheOven.org/index.php?topic=1291
History42rev36=Lancelot Added Call,HostOSVersion only to ease getting version (for now only on NT)
History42rev37=Lancelot Added Call,HostOSVersion,,[VersionNo] --> [VersionNo] to get major minor version numbers easly
History42rev38=Lancelot Added Call,Version // winbuilder bug workarounded Call,HostOSVersion "dism.exe version issue" reply 80 http://TheOven.org/index.php?topic=1308.msg15277#msg15277
History42rev39=Lancelot Cosmetics
History42rev40=Lancelot Require,Font - Gena updated - POSReady2009 don't have some fonts ;) // CACLS_EXE Regini.exe not exists at POSReady 2009 (first check source)
History42rev41=Lancelot Added Call,CreatePlugin
History42rev42=Lancelot Added More HostCalls from Environmental Variable | SessionName __COMPAT_LAYER | (HostMisc2, HostMisc3)  Call,HostCOMPUTERNAME ComSpec USERDOMAIN USERDOMAIN_ROAMINGPROFILE PROMPT PROCESSOR_ARCHITECTURE PROCESSOR_ARCHITEW6432 PROCESSOR_ARCHITECTURE,,WOW64 PROCESSOR_ARCHITEW6432,,WOW64 PROCESSOR_IDENTIFIER PROCESSOR_LEVEL PROCESSOR_REVISION LOGONSERVER NUMBER_OF_PROCESSORS EnvOS EnvPath EnvPATHEXT FP_NO_HOST_CHECK WinDir SessionName __COMPAT_LAYER RANDOM
History42rev43=Galapo updated [CallC_HostWindowsDir]
History42rev44=Lancelot Added Require,File,fltmgr.sys,Registry,TxtSetup,fltlib.dllSys32,fltlib.dllWOW64   Require,Registry,fltmgr.sys
History42rev45=Lancelot Added Call,StarterCMD,[Shortcuts]
History42rev46=Lancelot Added Require,File,whoami.exe,Arch // Require,File,RoboCopy.exe,Arch // Call,FileCopyMUI,<FromDir>,<File>,<ToDir>,[DistLang],[en-US]
History42rev47=Lancelot Fixed [CallC_HostMuiLang_NT5x] // Added Call,HostOSLangDefault // Call,HostOSVersion,,1 --> %HostOSVersion1%
History42rev48=Lancelot Added Require,Drivers, Require,Inf, // Added <RegistryName> -> Require,Font,[Filename],<RegistryName>
History42rev49=Lancelot Added Call,Download Call,TargetVersion, // Improved Call,CreateLink Call,CreatePlugin  [Expand_FileX1_Drivers] [Download_Files_Wget] Call,Version, [Expand_FileX_File_Netsh.exe]->Win10 // minor improvments at [Expand_FileX_File_Cacls.exe] [Expand_FileX_File_DiskComp.com] [Expand_FileX_File_DiskCopy.com] [Expand_FileX_File_Regini.exe]
History42rev50=Lancelot Added Wand: AutoRun Minimized
History42rev51a=Lancelot Fixed forgotten End at [Expand_FileX_File_DiskComp.com] and [Expand_FileX_File_DiskCopy.com]
History42rev51b=Lancelot Added Button_RevChange to re-download ML easly ;) (quick solution ;) )
History42rev51c=Lancelot Hide Log buttons from interface
History42rev51=Lancelot Improved Call,Version = now only copies to ProjectTemp If file not at HostWindowsDir..... (see "dism.exe version issue")  + When used without path first checks HostSystemDir than checks HostWindowsDir + If file not found return variable is Empty
History42rev52=Lancelot Improved Require,File,fltmgr.sys // Improved Require,File,Netsh.exe -> ( Tested with Win10x64 + code cleanups) + [NoHelperDLL] added
History42rev53=Lancelot Improved Call,Version , Call,HostOSVersion , Call,TargetVersion --> Now Preserves main version when VersionNO used + When VersionNO used VerNO added to Variable automatically + now one can add x to VerNO to get all VerNOx version numbers ex: Call,HostOSVersion,,2x // Code cleaner
History42rev54=Lancelot Improved Call,Version fallback "Empty" , TargetVersion fallback "0"
History42rev55a=Lancelot - Rui Paz Improved Call,Download now have optional Hide http://TheOven.org/index.php?topic=1375
History42rev55=Lancelot New Call,LinkType Call,DownloadUpdate Call,UploadPlugin Call,UploadPluginMulti  ( Tip: Call,UploadPlugin See //UpdateTest lines to test without updating to server)
History42rev56a=Lancelot Improved Call,FileCreateBlank,,[OverWrite]
History42rev56b=Lancelot Added RevisionInc Button // CompareSrv button
History42rev56c=Lancelot Improved Call,UploadPlugin check Upper/Lower case
History42rev56d=Lancelot Improved Call,UploadPlugin Automatic Date
History42rev56e=Lancelot Improved Call,UploadPlugin Check ChangeLog if update made before (Question to Continue)
History42rev56=Lancelot Improved Call,UploadPlugin UpdatesINI : Automatic Increase Version NO IF there is no Revision Value If LocalVersion smaller than ServerVer-->LocalVersion=LocalVersion+1 // If LocalVersion smaller than ServerVer ----> LocalVersion=ServerVer+1
History42rev57=Lancelot Added TEMPORARY Macro " Call,AddDUbutton=s,<File>,Container,WebRoot "  To ease adding download upload buttons to existing plugin, See [CallC_AddDUbutton=s] for instructions
History42rev58=Lancelot Added TextLabel_VerRev to get Version Revision on Main Screen
History42rev59a=Lancelot Improved Call,AddDUbutton=s // Call,FileCreateBlank, added option OverWriteBackup // Call,CreatePlugin new icon
History42rev59b=Lancelot Improved Call,DownloadUpdate now also make a copy at Download_ProjectName // Call,UploadPlugin[Q] , Call,UploadPluginMulti[Q] -> Option to ask Question before uploading
History42rev59c=Lancelot Added Call,DownloadUpdateS // Call,CheckServer,,WebFile // Call,CheckServerAll,,[ProjectName],OpenWebLog
History42rev59=Lancelot Thanks to ChrisR Netsh.exe fixed for XPx86 // Minor Wand adjustments
History42rev60=Lancelot minor fix Folder with %20
History42rev61=Lancelot minor fix Call,UploadPlugin
History42rev62=Lancelot minor fix Call,UploadPlugin
History42rev63=Lancelot minor improvment [FileCopy_To_Download_Project] // Added FileCopy_To_ProjectDir_Project
History42rev64=Lancelot minor fix [Get_ChangeLogWeb] // minor improvments Call,UploadPluginMulti
History42rev66=Lancelot minor Call,CreateLink Call,CreatePlugin Author info from Info.ini if exists
History42rev67=Lancelot minor fix DownloadUpdate,Default Folder with %20 + #2 fixed
History42rev68=Lancelot Added new Interface [Interface_RevisionCheckPlugin] to update Revision plugin easly // Call,StartDocNotePad -> to force open with notepad
History42rev69=Lancelot minor changes...
History42rev70=Lancelot Improved Call,Download,[Folder\|DownloadFile],[Web] --> Default: NoExit and Hide  (For now I feel better not to have 4th 5th .. parameters and see how it is used, hide seem to be already prefered most ) // code better now for big files and same download/target location
History42rev71=Lancelot New BETA: Call,Extract,%ScriptFile%|Folder|File,TargetFolder
History42rev72=Lancelot Replacement to ChangeInterface
History42rev74=Lancelot minor Call,Extract Better recreate %Target_Prog%\%ProgramFolder%
History42rev75=Lancelot improved Call,Extract -> find filecontainer automatic #5_File.Script
History42rev76=ChrisR Thanks a lot Lancelot, for all these new great Macro :) + test Upload
History42rev79=Lancelot fixed ChangeLog Revision uploads - //Temporary Dirty fix - UploadPluginMultiQ need to be checked
History42rev80=Lancelot Improved CallC_TargetVersion // better guessing ChangeLog.Script location
History42rev81a=Lancelot Button_ML_BackupDesktop // Button_ML_BackupDesktop_Web // [Web] now includes only stable syntax // Improved CallC_TargetVersion faster with fallbacks (nt6x dismapi.dll)
History42rev81b=Lancelot Better naming Call,DownloadUpdate , Call,UploadPlugin -> Call,DownloadX , Call,UploadX (Better than wrong naming ;))
History42rev81=Lancelot improvments on upload (size level) // default webroot plugin name changed ex: WebRoots_SE_Gena.Script
History42rev84=Lancelot minor [Web] change
History42rev86=Lancelot new upload all button // minor things error check etc..
History42rev87=Lancelot More fallbacks with Extracted Wim for unmounted wim source at [CallC_TargetVersion_Find]
History42rev89=Lancelot Improved Call,Upload -> [Upload_Default] // [Upload_Default_SE] (Following last 2 letters of projectname from web) // [Upload_Default_%ProjectName%] + Very Smarter Backup -> Upload Mechanism
History42rev91=Lancelot Upload_Tee_Error.cmd --> Added "Not connected." --> Connection lost during upload ;) ( See "Edit Tee Error" button )
History42rev93=Lancelot Improved Call,UploadXMulti Auto Get %_ML_WebRootSubSub% from Web1=
History42rev96=Lancelot DU questions - NO Halts now
History42rev98=Lancelot [CallC_DownloadX] //Better to set NORESCAN for now
History42rev99=Lancelot Improved uploading + uploading to Tools :)  // .Link now have Web1=
History42rev103a=Lancelot Added Server list [INIVariables] Servers // Experimental Macros under [Web] BEYOND_ONLY_ADMINS
History42rev103b=Lancelot Added Experimental Call,CompareEdit // Call,CompareMD5FileSize,,File1,File2,[MD5 or FileSize] // Call,CompareINI,[Var],<Section>,<Value>,File1,File2,[Value to Compare with File1] // Call,FileCreateBINI,<File>
History42rev103c=Lancelot Added Experimental Call,AddButtonCompareEdi=t // Call,AddButtonContaine=r
History42rev103=Lancelot Added Button_CompareEdit to ML interface to Compare easly with currently WinMerge2 - BeyondCompare3 (Removed old "Compare with Server" buttons)
History42rev104a=Lancelot Removed DL_ML_Latest_Button // Organised ML Advanced Menu //Added Button_HostOS_RC_Path_NoCarriage -> Useful for pasting to CodeBox :)
History42rev104=Lancelot Improved Call,UploadX : Predict Par 3 to ease using CodeBox -->  //We can predict Target Web If we are uploading from ProjectDir to a Known Server ex: Call,UploadX,"D:\The Oven\Projects\Win10PESE\Shell\Start10.script" (ps: Related: Button_HostOS_RC_Path_NoCarriage )
History42rev105=Lancelot Improved Call,Download -> download default minimized => to get Percentage of download visible to end users -> There are big boring downloads ;)
History42rev107=Lancelot Minor no need warning with Call,ConvertToAnsi when target files same with source file.
History42rev108=Lancelot Minor Fix upload auto version logic // Turkiye // upload version check
History42rev109=Lancelot Fix MultiUpload version bug // changed auto increase version via server check disabled (not good for multiupload version match) instead: message and warning ;)
History42rev110=Lancelot Improved Call,Upload -> [Settings_Default] // [Settings_Default_SE] (Following last 2 letters of projectname from web) // [Settings_Default_'ProjectName'] ex: [Settings_Default_Gena] [Settings_Default_Win10PESE] //// minor adjustment
History42rev111a=Lancelot Improved Call,UploadXMulti
History42rev111b=Lancelot Added "Call,CreateCodeBox,,Simple/Plugin" -- create empty Codebox with bug workaround ;)
History42rev111=Lancelot ML new buttons NewCodeBox_Button + Button_HostOS_RC_Path_UX + ...
History42rev112a=Lancelot Improved Call,Upload --> //AutoWrite empty Author - Credits - Contact   //AutoWrite empty History Note (to indicate upload on purpose ;) later this autonotes can be deleted)
History42rev112a=Lancelot Improved Call,Upload --> //Backup Small Version plugin from Server  //Backup Same Version plugin from Server
History42rev112=Lancelot Improved Call,Upload --> //To underline this is a upload without version change put more time to Date= //To underline this is a upload with version samller put more time to Date=
History42rev113=Lancelot Improved ML P_RevisionCheckPlugin_Upload
History42rev114=Lancelot New: "Call,CreateFolderPlugin,<Folder>,<Title>,<Description>"
History42rev115=Lancelot Improved minor Call,Upload uploading Tools\Files
History42rev116a=Lancelot Improved Call,Upload get ChangeLog from web // Message Info when ChangeLog version mismatch
History42rev116=Lancelot New: "Call,DirDeleteE,<Directory>" -- Empty Folder still keeping folder :) (Useful to keep Junction Folders + Useful with Exeact and Secure when restoring)
History42rev117=Lancelot Minor Call,Upload version 00 // Wand [Variable]
History42rev118=Lancelot New: (for only Admins) "Call,CompareEditDirect,<Target1>,<Target2>" - Following Chris request
History42rev119=Lancelot Minor version 0001 fix ;)
History42rev120=Lancelot Yet another Bug workaround [CallC_CompareEdit] System,RefreshInterface
History42rev121=Lancelot Web1C organisation fix // Naming Bug fix Type Plugin :)
History42rev122=Lancelot Yet another Bug workaround Call,UploadX in the end System,RefreshInterface  // Autofix Type Naming Bug: Call,UploadX  //AutoFix Plugin Type (Name bug)
History42rev123=Lancelot Chris seem to forget BuildType on some SE projects -- FallBack to PE // AddDUbuttons System,RefreshInterface not required anymore
History42rev124=Lancelot Minor: Call,Upload : Avoid unlucky version number automatically :) // FileCopy 1_Upload\* if exists (sometimes not exists on multiupload - ex rdc upload)
History42rev125=Lancelot Chris -> Wget second try if the first fails with " --no-check-certificate" if ErrorLevel Neq 0 -> Reply 2 : http://TheOven.org/index.php?topic=1462.0 --> Test: Call,Download,%ProjectTemp%\Test.exe,https://notepad-plus-plus.org/repository/6.x/6.8.3/npp.6.8.3.Installer.exe
History42rev126=Lancelot New Call,Math : Call,Math,HexAdd Call,MathChangeBit,Binary Call,MathChangeBit,Hex Call,MathConvert,HexToDecimal Call,MathConvert,DecimalToHex Call,MathConvert,BinaryToHex Call,MathConvert,HexToBinary http://TheOven.org/index.php?topic=45.0
History42rev127=Lancelot New Call,RegWriteBinaryBit http://TheOven.org/index.php?topic=45.0
History42rev128=Lancelot Added new commands to Wand + minor Wand improvments
History42rev129=Lancelot Upload_Tee_Error.cmd : Changed "Call :Error" location -> to get reason of Warning on cmd page :)
History42rev130=Lancelot Upload_Tee_Error.cmd : Replaced "Unknown command" with "500 Unknown command" to avoid Win10Host "504 Unknown command" - Pure-FTPd --> OPTS UTF8 ON --> 504 Unknown command
History42rev131a=Lancelot Upload_Tee_Error.cmd : Added Invalid command + Ambiguous command (Accidently using cmd.exe commands on ftp ;) ex: md )
History42rev131=Lancelot Added mkdir to upload mechanism
History42rev132=Lancelot Added JFX GetExeArch.exe with Call,FileArch -  Reply 5 http://TheOven.org/index.php?topic=1499.msg17540#msg17540
History42rev133=Lancelot Changed Call,FileArch Return values to - NotFound Unknown I386 IA64 AMD64  - Mikka Reply 17 http://TheOven.org/index.php?topic=1499.msg17565#msg17565
History42rev134=Lancelot Improved Require,File,Netsh.exe Win10x64-Wow64 support
History42rev135=Lancelot Improved Require,File, Regedit.exe Taskmgr.exe
History42rev136=Lancelot Added Ipconfig.exe with already *known dependencies after http://TheOven.org/index.php?topic=1551 // fixed Netsh.exe for Gena Wow64
History42rev137=Lancelot fixed uploadx backup
History42rev138=Lancelot Added Upload_Tee_Error - Quota exceeded (ftp server size limit) //ex: :: 552 Quota exceeded: [BlaBlaBlaBla.bla] won't be saved       :: 552-2032468 Kbytes used (99%) - authorized: 2048000 Kb
History42rev139=Lancelot Improved Call,Start[Wait] -> check Executable location for direct execute to avoid hostos override and execute from environment path (or any other explorer path ;) ) --> This assures same executable behaviour with "double click on exe" (ex: I guess FF paf do this ... )
History42rev140=Lancelot Call,UploadXMultiQ ||WebRoot no supports files at root of projects (ex: Images Configuration) -> Added %_ML_WebRootSubSub% empty value support
History42rev141=Lancelot Added RunFrom,Ram-X (simpler coding for some applications that required writable env. or on SE just to be sure inside .wim )
History42rev142=Lancelot Added Call,SelectCase
History42rev143=Lancelot removed some of depricated syntax
History42rev144=Lancelot Added: Call,Upload : History00x=... - Date:2016.02.01 //
History42rev145=Lancelot fix: Yomi-Gena links fixed
History42rev146=Lancelot minor improvments
History42rev147=Lancelot Improved - Call,Download 2nd time Move attempt -> Paraglider reply 12 - http://TheOven.org/index.php?topic=1375.msg19281#msg19281 - Date:2016.02.06
History42rev148=Lancelot Added: Call,Download parameter 3 "CheckSize=" Tip: Rarely to download very small files ex: CheckSize=20 20bytes - Date:2016.02.15
History42rev149=Lancelot fix: folder create fix http://TheOven.org/index.php?topic=1675.0 - Date:2016.02.27
History42rev150=Lancelot Can not copy file ----> #1 ( %ScriptTitle% ) Plugin >> Can NOT Copy File: - Date:2016.08.03
History42rev151=Lancelot New: Call,CreateBulletinPlugin - Date:2016.08.26
History42rev152=Lancelot Fix: Call,CreateBulletinPlugin Selected,None - Date:2016.08.30
History42rev154=Lancelot Improve: Call,CreateBulletinPlugin x 2 - Date:2016.08.30
History42rev155=Lancelot Improve: Thanks ChrisR added more wget.exe dependencies libeay32.dll ssleay32.dll - Date:2016.09.03
History42rev156=Lancelot Fix: Call,CreateBulletinPlugin [ReScan_P_B] - Date:2016.09.04
History42rev157=Lancelot Added: Call,CreateEmptyLink - Date:2016.09.12
History42rev158=Lancelot Improve: Call,Download - Date:2016.09.12
History42rev159=Lancelot Call,BackupProject - Date:2016.09.12
History43rev001=Lancelot Added: Call,DownloadUpdates - Date:2016.09.15
History43rev002=Lancelot Improve: Improved for Web_Old (change old version to Web_Old not to check updates of these files) check last 50 versions -> If,%_ML_ChangeLogVersion%,Bigger,50,Begin - Date:2016.09.15
History43rev003=Lancelot Improve: Call,UploadX -> Hardcoded support for Gena-Sweets  - Date:2016.09.16
History43rev005=Lancelot Improve: Call,UploadX Call,DownloadUpdates -> to support Optimized ChangeLog [Optimize] :) x 2  - Date:2016.09.16
History43rev006=Lancelot Improve: Call,UploadX OptimizeFile (to optimize faster ;) UtilsY\ChangeLog Editor ) x 2 - Date:2016.09.17
History43rev007=Lancelot Improve: Call,CreateCodeBox Added Call,CreateCodeBox,,NoOverWrite - Date:2016.09.17
History43rev009=Lancelot Added: Call,ExecCall (ExecCall used to find Exec, inside plugins easily) --> to overcome compatibility x 2 - Date:2016.09.19
History43rev010=Lancelot Improve: Require,File,NTDLL.DLL
History43rev011=Lancelot Improve: %DownloadUpdatesRefresh% value decisions
History43rev012=Lancelot Added: Call,AddButtonProvideFil=e // Call,AddButtonEdi=t - Date:2016.10.01
History43rev014=Lancelot Improve: Call,ExecCall Parameter support (up to 6 parameters) - Date:2016.10.01
History43rev015=Lancelot Improve: Call,CompareEdit --> FallBack to WinMerge2 ==> so a new user will get compare button operational ;)
History43rev016=Lancelot Improve: Call,ExecCall support plugins without Interface
History43rev017=Lancelot Improve: Call,DirDelete
History43rev018=Lancelot Added: Call,CABCompress,<File>,[TargetFile],[NOUpperCASE],[NODelete],[CustomParameter]
History43rev019=Lancelot Improve: Call,FileCopyBiggerVersion now supports target cabcompresed file ex: source->storport.sys target->storport.sy_
History43rev020=Lancelot Improve: Require,File,storport.sys,[CABCompress] -> Echo,storport.sys_Version=%storport.sys_Version% // Require,File,diskdump.sys,[CABCompress] -> Echo,diskdump.sys_Version=%storport.sys_Version%
History43rev021=Lancelot Improve: Require,File,storport.sys + diskdump.sys -> //First get from source - maybe it is an KB updated source ;)
History43rev022=Lancelot Improve: Require,File,storport.sys + diskdump.sys -> fallback 0.0.0.0 on XPx86
History43rev023=Lancelot Added: Require,File,sleep.exe nircmd.exe nircmdc.exe AU3381.exe (Dependencies to be added later when found ;) )
History43rev024=Lancelot Improve: Call,HiveCreate (delete more temp files created during hive creation)
History43rev025=Lancelot Fix: Require,Drivers - Date:2016.10.10
History43rev026=Lancelot Fix: Fixed Oxygen-Icons_0_016016..bmp -> Oxygen-Icons_0_016016.bmp // Add: %NoWarnFOW% and %NoWarnROW% to Wand - Date:2016.10.11
History43rev027=Lancelot Improve: Call,CreateLink added par3 PluginFolder option (to create link on same folder and move link to desired location manually - like on normal windows ;) ) // Added Button_HostOS_RC_Path_Link Button_HostOS_RC_Path_Link_R - Date:2016.10.12
History43rev028=Lancelot Added: Edit_ML_Button - Date:2016.10.12
History43rev029=Lancelot Improve: Require,HighVersion,filename,TargetWin\System32 WOW64 support - // XP x86  - hid.dll Driver.Cab  + SP2.cab OR SP3.cab // 2003 x86 - hid.dll inside sp2.cab // XP/2003 x64 - hid.dll inside sp2.cab + whid.dl_ ///// XP x86  - hidserv.dll Driver.Cab  + SP2.cab OR SP3.cab // 2003 x86 - hidserv.dll inside sp2.cab OR sp1.cab // XP/2003 x64 - hidserv.dll inside sp2.cab + WHIDSERV.DL_ - Date:2016.10.12
History43rev030=Lancelot Added Require,File,hid.dll to keep simplicity on Plugins - Date:2016.10.12
History43rev031=Lancelot Improve: Call,BackupProject
History43rev032=Lancelot Improve: minor Call,DownloadUpdates
History43rev033=Lancelot Added: Call,AddOptimumBeve=l (Workaround bug of winbuilder Interface Editor) - Date:2016.10.17
History43rev034=Lancelot Improve: minor Call,UploadX - AutoDelete Optimum_Bevel - Date:2016.10.17
History43rev035=Lancelot Improve: minor cosmetics Call,UploadX - Echo Upload file size - Date:2016.10.17
History43rev036=Lancelot Improve: Call,UploadX - improve only uploading ChangeLog -> If you are only uploading ChangeLog than no need to re upload ChangeLog (also cause md5 mismatch ;) )  // Fix: minor bug fix with Call,DownloadUpdates
History43rev037=Lancelot Improve: Syntax more popular - changed to Call,FileCopyMUI,<FromDir>\<File>,<ToDir>,[DistLang],[en-US]
History43rev038=Lancelot Added: Require,File,xpob2res.dll Require,File,w03a2XXX.dll Require,File,w03a2409.dll // Improve: Require,File,ws03res.dll + Require,File,Netsh.exe
History43rev039=Lancelot Improve: Require,File,ws03res.dll (Only None XP x86) and Require,File,w03a2409.dll (Only None XP x86) - Remove:Require,File,w03a2XXX.dll (not required)
History43rev040=Lancelot Improve: Add,Url,Path Standalone on hostos
History43rev041=Lancelot Improve: Call,DownloadX to be used on CodeBox without url - http://TheOven.org/index.php?topic=1919
History43rev042=Lancelot Added: Call,RetrieveFolderUniqueID,<Folder>,Var -> Return Value: 1 Directory not exists // 2 Directory exists but empty // "UniqueMD5" value  ( Related: %ProjectDir%\Utils\Utils_Tools_001.Script )
History43rev044=Lancelot Improve: Call,RetrieveFolderUniqueID x 2
History43rev044a=Lancelot ----------------------UPDATE FORUM TOPICS WÝTH NEW SYNTAX ------------- Start
History43rev044b=Lancelot ----------------------UPDATE FORUM TOPICS WÝTH NEW SYNTAX ------------- Start
History43rev044c=Lancelot ----------------------UPDATE FORUM TOPICS WÝTH NEW SYNTAX ------------- Start
History43rev044d=Lancelot Call,Compare..... ---> Add to tutorials
History43rev044e=Lancelot Call,Download.... ---> Add to tutorials
History43rev045=Lancelot Added: Call,SaveLog,%BaseDir%\log.html,[TimeStamp] - %SaveLogFile% %SaveLogFileName%
History43rev046=Lancelot Added: Call,EchoFile,<File>,Warn,Prefix
History43rev047=Lancelot Added: Require,File,EchoFile.exe_BlueLife,<Folder> // Added: ssr.exe_Ross_MacGregor,<Folder>
History43rev048=Lancelot Added: Call,DirMove,<FromFolder>,<ToFolder> ex: Call,DirMove,"D:\1 1\From","D:\1 1\Target" --> "D:\1 1\Target\From" // moves all SourceFolder under TargetFolder - Halt build if failure with a set of info on log
History43rev049=Lancelot Added: Call,TxtReplace,TextFile,OldString,NewString (Big files supported ;) )
History43rev050=Lancelot Improve: Call,CreatePlugin AuthorLogo from file support
History43rev051=Lancelot Improve: Call,DirDeleteE --> now all folders --> including %ProjectTemp% and %BaseDir%\Temp\Macro_Library which makes them junctionable now
History43rev052=Lancelot Added [Cache_SCD_Info_Additional_Plugin] to "Macro Library" plugin
History43rev053=Lancelot Added [Cache_SCD_Info_Additional_Plugin_ML] to "Macro Library" plugin to be used by other plugins -> Run,%api%,Cache_SCD_Info_Additional_Plugin_ML,#1,#2,#3,#4,#5,#6,#7,#8,#9
History43rev054=Lancelot Improve: Inside ML [Cache_SCD_Info_Additional_Plugin_EXAMPLE_Empty] -> empty template // [Cache_SCD_Info_Additional_Plugin_EXAMPLE] --> examples of existing plugins
History43rev055=Lancelot Improve: Call,DirMove + fix
History43rev056=Chris Improve: Call,DirMove (fix par3 missing - fix DirMove_Good_Fail)
History43rev057=Lancelot Improve: Call,DirMove --> FallBack
History43rev058=Lancelot Improve: Call,DirMove -> More info on log (Folder Type) // Improve Call,EchoFile (workaround winbuilder bug)
History43rev059=Lancelot Improve: Call,DirMove -> FallBack_A improved (1 warning -> only take a lot of time when fallback required ...)
History43rev059=Lancelot Added: Call,UpFolder --> to get upper folder path from string (Drive paths not network path)
History43rev060=Lancelot Added: Call,ExistFile -->  0 or 1 - to check if file exists and get a variable of its existance - YES WildCards supported - NO subfolder
History43rev061=Lancelot Added: Call,FileCopy --> YES Wildcards - NO SubFolders
History43rev062=Lancelot Improve: Require_FileQ support multiple %DistLang% fallbacks : [Expand_FileQ2System32_Mui_CANCEL] --> [Expand_FileQ2System32_Mui] + [Expand_FileQ2System32_Mui_Loop] // [Expand_FileQ2SysWOW64_Mui_CANCEL] --> [Expand_FileQ2SysWOW64_Mui] + [Expand_FileQ2SysWOW64_Mui_Loop]
History43rev063=Lancelot Improve: Examples after [Cache_SCD_Info_Additional_Plugin_EXAMPLES******INFO] better organized nicely with info. :)
History43rev064=Lancelot multi mui support development (with backward support)
History43rev064a=After Images plugin updated on all servers:
History43rev064b=merge [Expand_FileQ2System32_Mui_Temporarius] [Expand_FileQ2System32_Mui_NEW] ...
History43rev064c=remove [Expand_FileQ2System32_Mui_OLD]  [Expand_FileQ2System32_Mui_enUS_OLD] (OR _CANCEL)
History43rev064d=//-
History43rev064e=merge [Expand_FileQ2SysWOW64_Mui_Temporarius] [Expand_FileQ2SysWOW64_Mui_NEW] ...
History43rev064f=remove [Expand_FileQ2SysWOW64_Mui_OLD] [Expand_FileQ2SysWOW64_Mui_enUS_OLD] (OR _CANCEL)
History43rev065=Lancelot Improve: Require_FileQ with Images plugin update
History43rev066=Lancelot Improve: Call,HostMuiLang --> 1 Additional return with "All" Suffix ex: Echo,%HostMuiLang%,Warn // Echo,%HostMuiLangAll%,Warn
History43rev067=Lancelot Improve: Call,FileCopyMUI 2 Additional options: Call,FileCopyMUI-Host // CallC_FileCopyMUI-Source // and Syntax improved with support to multimui seperated with |
History43rev067a=Lancelot movent.exe check Call,DirMove syntax + movent.exe have more feature than cmd.exe-move + *** target folder name can change + *** CHECK PARAMETERS and organizations with cmd.exe-move ......
History43rev068=Chris move, movent are replaced by SHDirMove.exe to fix access denied with opened explorer folders
History43rev069=Lancelot - Added - Call,Echo,"WARNING - Require_File syntax Depricated - UPDATE YOUR Plugin - 2016.12.19 -- Deadline: 2017.06",Warn - to 3 sections
History43rev070=ChrisR - Addition for netsh wlan in Win10 1607
History43rev071=Lancelot - netsh --> certca.dll and peerdistsh.dll and wcmapi.dll  NOT exists on Win7 (6.1) x86 - x64 - Date:2017.01.31
History43rev072=Lancelot - netsh --> //mdmpostprocessevaluator.dll not exists at \SysWOW64\ - Only \System32\ - Date:2017.02.04
History43rev073=Lancelot - Add,URL - added %NoWarnFOW% - Date:2017.02.06
History43rev074=Lancelot - Add,DesktopIni Improvment - +S Folder Automatically - Date:2017.02.07
History43rev075=Lancelot - Add: Require,File,HideRun.exe - Date:2017.02.16
History43rev076=ied206 - Bug Fix: http://TheOven.org/index.php?topic=2109.0 - Date=2017.04.22
History43rev077=Lancelot - Add,DesktopIni Bug Fix ( forgotten -R ) : whiggs http://TheOven.org/index.php?topic=2127
History43rev078=Lancelot - Call,DownloadX Bug Fix ( par2 - par3 none plugin) Ex: Utils\Download -> download container 7z file --> \Workbench\Common\Download_XXXX\Projects\Tools\XXXX
History43rev079=Lancelot - removed old syntax Require_File 3 months after Deadline (does not support multi mui ) - Date=2017.09.12
History43rev080a=Lancelot - Add : //Call,SourceDirSet,<Folder> --> Default %BaseDir%\Source //Call,SourceDirAdd,<Folder> --> Adds folder to [Main] SourceDir= Last location
History43rev080b=Lancelot - Add : //Call,SourceDirRead,<VAR> Default <VAR> SourceDirRead --> Read value from [Main] SourceDir=
History43rev080=Lancelot - Add : // Call,SourceDirFix --> Automatically fix SourceDir if %SourceDir% values mismatch with [Main] SourceDir= value
History43rev081=Lancelot - Add Call,AddButtonDelet=e
History43rev082=Lancelot - Fix Call,SourceDirSet
History43rev083=Lancelot Update hiderun lines - Date:2017.09.23
History43rev084=Lancelot replace 7za.exe lines with 7z.exe - Date:2017.09.29
History43rev085=Lancelot improved and fix [Download_AutoIT_AU3381] - bob.omb http://TheOven.org/index.php?topic=2253 - Date:2017.10.18
History43rev086=Lancelot Call,Download - improved downoading big files (bigger than 2 GB ) - workaround winbuilder Retrieve,FileSize bug - Date:2017.10.18
History43rev087=Lancelot Call,Start[Wait],<Option (Open - Hide)>,<ExecutableName>,[Parameters],[StartInFolder],Par6
History43rev088=Lancelot      --> when Par6 used Hide not available for now (to avoid AV false positives of hiderun and AutoIT)
History43rev089=Lancelot      --> when Par6 used Call,Start becomes slower. par6 is for big file operations (compress copy etc.) so it is not possible to notice time lost with Call,Start on such operations.
History43rev090=Lancelot x4 Call,Start - Par6 [CallC_Start_Extended] Development: 1 or 2 parameters : /Min /Max - /RealTime /High /AboveNormal /Normal /BelowNormal /Low ex: Call,Start,,%ProgramEXE%,,%ProjectTemp%\TempExtractFolder\%ProgramFolder%\%ProgramFolder%,"/Min /BelowNormal" - Date:2017.10.20 -  - Date:2017.10.27
History43rev091=Lancelot Call,DirDeleteE workaround PEBakery warning - No code in [%ProjectTemp%\DirDeleteE_Folders.ini]::[Process] - Date:2017.11.17
History43rev092=Galapo added Call,FileByteCheck - Date:2017.11.19
History43rev093=Lancelot Call,DirDeleteE workaround PEBakery warning - No code in [%ProjectTemp%\DirDeleteE_Folders_SH.ini]::[Process] - Date:2017.11.26

