Ich habe folgendes Problem. Ich möchte ein Script schreiben, welches mir alle WinRAR Einstellungen die in der Registry liegen komplett speichern.
Das klappt leider nur mit direkter Pfadangabe. Ich möchte es aber so haben, dass es über "ScriptDir" funktioniert.
So funktioniert es:
[autoit];Run("Regedit /e C:\Users\PolytroX\Desktop\winrar.reg " & "HKEY_CURRENT_USER\Software\WinRAR")
[/autoit]Aber dieses leider nicht:
[autoit]Run('Regedit /e @ScriptDir" & "\winrar.reg" & "HKEY_CURRENT_USER\Software\WinRAR')
[/autoit]Es soll im Script Verzeichnis mit Unterordnern gesichert werden, auch wenn ich den Script verschiebe.
Ganzer Code sieht so aus:
Spoiler anzeigen
#cs ----------------------------------------------------------------------------
[/autoit] [autoit][/autoit] [autoit]AutoIt Version: 3.3.4.0
Author: myName
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
[/autoit] [autoit][/autoit] [autoit]#RequireAdmin
[/autoit] [autoit][/autoit] [autoit]$HLM = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\WinRar", "exe64")
$HCU = RegRead("HKEY_CURRENT_USER\Software\WinRAR", "")
$themes = @AppDataDir &"\WinRAR\Themes"
$regsave =
if Not FileExists($HLM) Or ($HCU) Then
MsgBox(0,"Fehler!", "Winrar ist zur Zeit nicht installiert! Das Programm wird nun beendet.")
Exit
EndIf
If FileExists($HLM) Or ($HCU) Then
IniWrite ("rar.ini","Rar_local_machine", "Install_Pfad", $HLM)
IniWrite ("rar.ini","Rar_all users", "Install_Pfad", $HCU)
EndIf
If ProcessExists ( "WinRAR.exe") Then
MsgBox (0,"Hinweis!", "WinRAR ist derzeit geöffnet. Der Prozess wird nun geschlossen")
ProcessClose ( "WinRAR.exe")
Run("Regedit /e C:\Users\PolytroX\Desktop\winrar.reg " & "HKEY_CURRENT_USER\Software\WinRAR") ; diese Stelle soll keine feste Pfadangabe haben
DirCopy ($themes , @ScriptDir & "\Backups\WinRAR" ,1 )
MsgBox (0,"WinRAR Backup!", "Die komplette WinRAR sicherung ist nun abgeschlossen Sie können WinRAR nun starten.")
Exit
EndIf
If Not ProcessExists ( "WinRAR.exe") Then
MsgBox (0,"WinRAR Backup!", "WinRAR Einstellungen und gespeicherte Themes werden nun gesichert.")
Run("Regedit /e C:\Users\PolytroX\Desktop\winrar.reg " & "HKEY_CURRENT_USER\Software\WinRAR"); diese Stelle soll keine feste Pfadangabe haben
DirCopy ($themes , @ScriptDir & "\Backups\WinRAR" ,1 )
MsgBox (0,"WinRAR Backup!", "Die komplette WinRAR sicherung ist nun abgeschlossen Sie können WinRAR nun starten.")
Kann mir da bitte Jemand helfen, wie ich es hin bekomme, dass ich es auch verschieben kann?