mr-es335 Posted Monday at 03:09 PM Share Posted Monday at 03:09 PM (edited) Good day, I primarily "manipulate" data, under five main "headings", namely: 1) _BackupSrcData 2) _CheckDstData 3) _RemoveSrcData 4) _CheckSrcData 5) _RestoreSrcData For example: ; ----------------------------------------------- #include <FileConstants.au3> ; ----------------------------------------------- Opt("MustDeclareVars", 1) ; ----------------------------------------------- _BackupSrcData() ; ----------------------------------------------- Func _BackupSrcData() ; ----------------------------------------------- ; Source data Local $_sSrcPath1 = "C:\Program Files\FabFilter" Local $_sSrcPath2 = "C:\RML\SAC\VST_PlugIns" Local $_sSrcPath3 = "C:\Users\Dell\AppData\Roaming\FabFilter" Local $_sSrcPath4 = "E:\Text\FabFilter" ; ----------------- ; Destination data Local $_sDstPath1 = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Program Files\FabFilter" Local $_sDstPath2 = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns" Local $_sDstPath3 = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Users\Dell\AppData\Roaming\FabFilter" Local $_sDstPath4 = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter" ; ----------------------------------------------- SplashTextOn("NOTICE!!", "Backup Src data...", 350, 50, -1, -1) Sleep(1000) ; ----------------------------------------------- DirCopy($_sSrcPath1, $_sDstPath1, $FC_OVERWRITE) DirCopy($_sSrcPath2, $_sDstPath2, $FC_OVERWRITE) DirCopy($_sSrcPath3, $_sDstPath3, $FC_OVERWRITE) DirCopy($_sSrcPath4, $_sDstPath4, $FC_OVERWRITE) ; ----------------------------------------------- SplashTextOn("NOTICE!!", "Backup Src data completed...", 350, 50, -1, -1) Sleep(1000) SplashOff() EndFunc ;==>_BackupSrcData ; ----------------------------------------------- ...and... expandcollapse popup; ----------------------------------------------- #include <Array.au3> #include "ExtMsgBox.au3" #include <WinAPIFiles.au3> ; ----------------------------------------------- Opt("MustDeclareVars", 1) ; ----------------------------------------------- _WinAPI_Wow64EnableWow64FsRedirection(False) ; ----------------------------------------------- _GetDSTResult() _CheckDstData() ; ----------------------------------------------- Func _GetDSTResult() ; Source data Local $sResult = _CheckDstData() _ExtMsgBoxSet(1, 0, Default, Default, Default, Default, 1000) _ExtMsgBox(64, "Ok", " Search Results!", $sResult) EndFunc ;==>_GetDSTResult ; ----------------------------------------------- Func _CheckDstData() ; Destination data Local $aPath[] = ["D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Reg_Keys\hkcu.reg", _ "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Reg_Keys\hklm.reg", _ "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-MB.dll", _ "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-Q 3.dll", _ "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-R 2.dll", _ "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Users\Dell\AppData\Roaming\FabFilter", _ "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-MB", _ "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-Q 3", _ "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-R 2"] ; ----------------- _ArrayColInsert($aPath, 1) ; ----------------- For $i = 0 To UBound($aPath) - 1 $aPath[$i][1] = FileExists($aPath[$i][0]) ? "Yes" : "No" Next Return _ArrayToString($aPath, " ") EndFunc ;==>_CheckDstData ; ----------------------------------------------- With the recent assistance of ioa747, he updated a "two-part script" [as shown above], into what appears to be a single script! For example: expandcollapse popup; ----------------------------------------------- ; With the assistance of...and the gratitude of...ioa747! ; Date: September 15th, 2024 ; ----------------------------------------------- Opt("MustDeclareVars", 1) ; ----------------------------------------------- _UpdateRegValueData2() ; ----------------------------------------------- Func _UpdateRegValueData2() Local $_sSrcPath[10] = [9] $_sSrcPath[1] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Reg_Keys\hkcu.reg" $_sSrcPath[2] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Reg_Keys\hklm.reg" $_sSrcPath[3] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-MB.dll" $_sSrcPath[4] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-Q 3.dll" $_sSrcPath[5] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-R 2.dll" $_sSrcPath[6] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Users\Dell\AppData\Roaming\FabFilter" $_sSrcPath[7] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-MB" $_sSrcPath[8] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-Q 3" $_sSrcPath[9] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-R 2" ; ----------------------------------------------- Local $sMessage = "Start..." & @CRLF SplashTextOn("NOTICE!!", $sMessage, 650, 350, -1, -1, 4) Sleep(1000) ; ----------------------------------------------- For $i = 1 To $_sSrcPath[0] ;RegDelete($_sSrcPath[$i]) ;$sMessage &= $i & ") " & (_RegKeyExist($_sSrcPath[$i]) ? "NOT Delete " : "Delete ") & $_sSrcPath[$i] & @CRLF ;ControlSetText("NOTICE!!", "", "Static1", $sMessage) ControlSetText("NOTICE!!", "", "Static1", $sMessage) Sleep(300) Next ; ----------------- $sMessage &= "End..." & @CRLF ; ----------------------------------------------- SplashTextOn("NOTICE!!", $sMessage, 650, 350, -1, -1, 4) Sleep(2000) SplashOff() EndFunc ;==>_UpdateRegValueData2 ; ----------------------------------------------- Func _RegKeyExist($sKeyname) RegRead($sKeyname, "") If @error = -1 Then ;MsgBox($MB_SYSTEMMODAL, "Registry", "The registry key" & @CRLF & $sKeyname & @CRLF & "Exist.") Return True Else ;MsgBox($MB_SYSTEMMODAL, "Registry", "The registry key" & @CRLF & $sKeyname & @CRLF & "NOT Exist.") Return False EndIf EndFunc ;==>_RegKeyExist ; ----------------------------------------------- Thus, my question, "How can the [_BackupSrcData] and the [_CheckDstData] scripts be combined in a similar manner as the above script?" As ios774 stated in a previous post, ;~ simply with arrays, they are more easily managed in a loop Any assistance in this matter would be greatly appreciated! Edited Monday at 04:18 PM by mr-es335 mr-es335 Sentinel Music Studios Link to comment Share on other sites More sharing options...
mr-es335 Posted Monday at 03:40 PM Author Share Posted Monday at 03:40 PM Good day, I do believe that I \just might have "stumbled upon something" here...again, many thanks to ioa757?! Check this out... expandcollapse popup; ----------------------------------------------- ; With the assistance of...and the gratitude of...ioa747! ; Date: September 15th, 2024 ; ----------------------------------------------- #include <FileConstants.au3> ; ----------------------------------------------- Opt("MustDeclareVars", 1) ; ----------------------------------------------- _BackupSrcData() ; ----------------------------------------------- Func _BackupSrcData() ; Source data Local $_sSrcPath[5] = [4] $_sSrcPath[1] = "C:\Program Files\FabFilter" $_sSrcPath[2] = "C:\RML\SAC\VST_PlugIns" $_sSrcPath[3] = "C:\Users\Dell\AppData\Roaming\FabFilter" $_sSrcPath[4] = "E:\Text\FabFilter" ; ----------------- ; Destination data Local $_sDstPath[5] = [4] $_sDstPath[1] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Program Files\FabFilter" $_sDstPath[2] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns" $_sDstPath[3] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Users\Dell\AppData\Roaming\FabFilter" $_sDstPath[4] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter" ; ----------------------------------------------- SplashTextOn("NOTICE!!", "Backup Src data...", 350, 50, -1, -1) Sleep(1000) ; ----------------------------------------------- For $i = 1 To $_sSrcPath[0] DirCopy($_sSrcPath[$i], $_sDstPath[$i], $FC_OVERWRITE) Next ; ----------------------------------------------- SplashTextOn("NOTICE!!", "Backup Src data completed...", 350, 50, -1, -1) Sleep(1000) SplashOff() EndFunc ;==>_BackupSrcData ; ----------------------------------------------- As an indirect result of ioa747, without his knowing it, he actually introduced me to "arrays"!!! As I noted in a previous post: "If it were possible, ios747, I would give you 'arrays'!!" So, the real question is, "Am I on the right track here?" mr-es335 Sentinel Music Studios Link to comment Share on other sites More sharing options...
mr-es335 Posted Monday at 03:48 PM Author Share Posted Monday at 03:48 PM Good day, Following is my "combined effort": expandcollapse popup; ----------------------------------------------- ; With the assistance of...and the gratitude of...ioa747! ; Date: September 15th, 2024 ; ----------------------------------------------- #include <FileConstants.au3> ; ----------------------------------------------- Opt("MustDeclareVars", 1) ; ----------------------------------------------- _BackupSrcData() _CheckDstData() ; ----------------------------------------------- Func _BackupSrcData() ; Source data Local $_sSrcPath[5] = [4] $_sSrcPath[1] = "C:\Program Files\FabFilter" $_sSrcPath[2] = "C:\RML\SAC\VST_PlugIns" $_sSrcPath[3] = "C:\Users\Dell\AppData\Roaming\FabFilter" $_sSrcPath[4] = "E:\Text\FabFilter" ; ----------------- ; Destination data Local $_sDstPath[5] = [4] $_sDstPath[1] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Program Files\FabFilter" $_sDstPath[2] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns" $_sDstPath[3] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Users\Dell\AppData\Roaming\FabFilter" $_sDstPath[4] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter" ; ----------------------------------------------- SplashTextOn("NOTICE!!", "Backup Src data...", 350, 50, -1, -1) Sleep(1000) ; ----------------------------------------------- For $i = 1 To $_sSrcPath[0] DirCopy($_sSrcPath[$i], $_sDstPath[$i], $FC_OVERWRITE) Next ; ----------------------------------------------- SplashTextOn("NOTICE!!", "Backup Src data completed...", 350, 50, -1, -1) Sleep(1000) SplashOff() EndFunc ;==>_BackupSrcData ; ----------------------------------------------- Func _CheckDstData() Local $_sSrcPath[10] = [9] $_sSrcPath[1] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Reg_Keys\hkcu.reg" $_sSrcPath[2] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Reg_Keys\hklm.reg" $_sSrcPath[3] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-MB.dll" $_sSrcPath[4] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-Q 3.dll" $_sSrcPath[5] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-R 2.dll" $_sSrcPath[6] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Users\Dell\AppData\Roaming\FabFilter" $_sSrcPath[7] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-MB" $_sSrcPath[8] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-Q 3" $_sSrcPath[9] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-R 2" ; ----------------------------------------------- Local $sMessage = "" & @CRLF SplashTextOn("NOTICE!!", $sMessage, 850, 250, -1, -1, 4) Sleep(500) ; ----------------------------------------------- For $i = 1 To $_sSrcPath[0] $sMessage &= $i & $_sSrcPath[$i] & @CRLF ControlSetText("NOTICE!!", "", "Static1", $sMessage) Sleep(.05) Next ; ----------------- $sMessage &= "" & @CRLF ; ----------------------------------------------- SplashTextOn("NOTICE!!", $sMessage, 850, 250, -1, -1, 4) Sleep(3000) SplashOff() EndFunc ;==>_CheckDstData ; ----------------------------------------------- Any comments and|or suggestion would be greatly appreciated. Thank you for your time! mr-es335 Sentinel Music Studios Link to comment Share on other sites More sharing options...
mr-es335 Posted Monday at 04:33 PM Author Share Posted Monday at 04:33 PM (edited) Good day, One final question...which may be asked under a separate cover...we will see..."If data already exists...either 1) in a text file, or 2) in a folder, can an array be employed to read such content?" "If so, how is this to be accomplished [...employing the example below]?" For example: ; SrcText1 D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Reg_Keys\hkcu.reg D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Reg_Keys\hklm.reg D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-MB.dll D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-Q 3.dll D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns\FabFilter Pro-R 2.dll D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Users\Dell\AppData\Roaming\FabFilter D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-MB D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-Q 3 D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter\Presets\Pro-R 2 ...and... ; Folder_Listing Micro One Pro-C 2 Pro-DS Pro-G Pro-L 2 Pro-MB Pro-Q 3 Pro-R 2 Saturn 2 Simplon Timeless 3 Twin 3 Volcano 3 FabFilter.ico Readme.txt unins000.dat unins000.exe Any assistance in this matter would be greatly appreciated! Edited Monday at 04:34 PM by mr-es335 mr-es335 Sentinel Music Studios Link to comment Share on other sites More sharing options...
ioa747 Posted 23 hours ago Share Posted 23 hours ago (edited) On 9/16/2024 at 6:40 PM, mr-es335 said: So, the real question is, "Am I on the right track here?" 👍 now in each step of this loop which file do you want to check? Below it checks all the files from the source, if they exist in the destination expandcollapse popup; ----------------------------------------------- ; With the assistance of...and the gratitude of...ioa747! ; Date: September 15th, 2024 ; ----------------------------------------------- #include <FileConstants.au3> #include <File.au3> ; ----------------------------------------------- Opt("MustDeclareVars", 1) ; ----------------------------------------------- _BackupSrcData() ; ----------------------------------------------- Func _BackupSrcData() ; Source data Local $_sSrcPath[5] = [4] $_sSrcPath[1] = "C:\Program Files\FabFilter" $_sSrcPath[2] = "C:\RML\SAC\VST_PlugIns" $_sSrcPath[3] = "C:\Users\Dell\AppData\Roaming\FabFilter" $_sSrcPath[4] = "E:\Text\FabFilter" ; ----------------- ; Destination data Local $_sDstPath[5] = [4] $_sDstPath[1] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Program Files\FabFilter" $_sDstPath[2] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\RML\SAC\VST_PlugIns" $_sDstPath[3] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_C\Users\Dell\AppData\Roaming\FabFilter" $_sDstPath[4] = "D:\Install\App_Install\Digital_Audio\3_FabFilter\Data\Source_Data_E\Text\FabFilter" ; ----------------------------------------------- Local $sMsg1, $sMsg2, $sResult, $iFailure, $iMissing $sMsg1 = "Backup Src data..." & @CRLF & @CRLF SplashTextOn("NOTICE!!", $sMsg1, 700, 300, -1, -1, 4) Sleep(1000) ; ----------------------------------------------- For $i = 1 To $_sSrcPath[0] $sMsg1 = "Backup Src data..." & @CRLF & @CRLF $sResult = DirCopy($_sSrcPath[$i], $_sDstPath[$i], $FC_OVERWRITE) If $sResult <> 1 Then $iFailure += 1 $sResult = ($sResult = 1 ? "successful" : "failure") $sMsg2 = "Copy folder:" & @CRLF & $_sSrcPath[$i] & @CRLF & $sResult ControlSetText("NOTICE!!", "", "Static1", $sMsg1 & $sMsg2) ConsoleWrite("************************************************" & @CRLF) ConsoleWrite($sMsg1 & $sMsg2 & @CRLF) Sleep(500) Local $aFiles = _FileListToArrayRec($_sSrcPath[$i], "*", $FLTAR_FILES, $FLTAR_RECUR, $FLTAR_NOSORT) If IsArray($aFiles) Then $sMsg1 = $sMsg1 & $sMsg2 & @CRLF & @CRLF & "Check files:" & @CRLF $sMsg2 = "" For $f = 1 To $aFiles[0] $sResult = FileExists($_sDstPath[$i] & "\" & $aFiles[$f]) ConsoleWrite($sResult & " - " & $_sDstPath[$i] & "\" & $aFiles[$f] & @CRLF) If $sResult <> 1 Then $iMissing += 1 $sMsg2 &= " missing - " & $aFiles[$f] & @CRLF EndIf Next $sMsg2 = $iMissing > 0 ? $sMsg2 : " All files is ok" ControlSetText("NOTICE!!", "", "Static1", $sMsg1 & $sMsg2) ConsoleWrite($sMsg1 & $sMsg2 & @CRLF) $iMissing = 0 EndIf Sleep(2000) Next ConsoleWrite("************************************************" & @CRLF) ; ----------------------------------------------- $sMsg1 = "Backup Src data completed..." & @CRLF & @CRLF $sMsg2 = ($iFailure > 0 ? $iFailure & " failures" : "successful") ControlSetText("NOTICE!!", "", "Static1", $sMsg1 & $sMsg2) Sleep(3000) SplashOff() EndFunc ;==>_BackupSrcData Edited 23 hours ago by ioa747 I know that I know nothing Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now