Package.wms -> Windows RegFile

  • Hallo Zusammen
    Ich stehe vor einem Problem und wollte hier gerne um Rat bitten.
    Wenn ich mit der SW-Columbus eine neue Applikation vorbereite
    erstellt mir diese Anwendung eine art "Snapshot" der Registrierung
    Dieses File beinhaltet viel Text teile so wie "RegStrings" es kommt
    immer wieder vor dass ich hierbei aus diesem file gerne ein
    gültiges REG file erstellen möchte.

    Wie ist dieser Aufwand abzuwägen? kann ich um ein mögliches
    Muster oder einen idee Vorschlag bitten, wie ich dies angehen
    könnte damit ich einen möglichen Pfad sehen könnte.

    Möchte mich schon jetzt für alle Informationen bedanken und
    wünsche einen ganz schönen Abend!

    Gruss


    Spoiler anzeigen


    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002' 'InfPath' 'oem12.inf' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002' 'InfSection' 'gdihook5' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002' 'MatchingDeviceId' 'pci_gdihook5_hwid' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002' 'ProviderName' 'NSL' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002\Settings' 'Attach.ToDesktop' '1' 'REG_DWORD'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002\Settings' 'Device Description' 'PCI GDIHOOK5' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002\Settings' 'InstalledDisplayDrivers' 'H#676469686F6F6B35' 'REG_MULTI_SZ' /ADD
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002\Settings' 'MirrorDriver' '1' 'REG_DWORD'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002\Settings' 'VgaCompatible' '0' 'REG_DWORD'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318}' 'UpperFilters' 'H#6E736B62666C7472' 'REG_MULTI_SZ' /ADD
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\DeviceClasses\{5b45201d-f2f2-4f3b-85bb-30ff1f953599}\##?#ROOT#DISPLAY#0000#{5b45201d-f2f2-4f3b-85bb-30ff1f953599}' 'DeviceInstance' 'ROOT\DISPLAY\0000' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\DeviceClasses\{5b45201d-f2f2-4f3b-85bb-30ff1f953599}\##?#ROOT#DISPLAY#0000#{5b45201d-f2f2-4f3b-85bb-30ff1f953599}\#' 'SymbolicLink' '\\?\ROOT#DISPLAY#0000#{5b45201d-f2f2-4f3b-85bb-30ff1f953599}' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\DeviceClasses\{5b45201d-f2f2-4f3b-85bb-30ff1f953599}\##?#ROOT#DISPLAY#0000#{5b45201d-f2f2-4f3b-85bb-30ff1f953599}\#\Control' 'Linked' '1' 'REG_DWORD'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\DeviceClasses\{5b45201d-f2f2-4f3b-85bb-30ff1f953599}\##?#ROOT#DISPLAY#0000#{5b45201d-f2f2-4f3b-85bb-30ff1f953599}\Control' 'ReferenceCount' '1' 'REG_DWORD'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\SafeBoot\Network\client32' '' 'Service' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices' 'KEYBOARDCLASS0' '\Device\KeyboardClass0' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices' 'POINTERCLASS0' '\Device\PointerClass0' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Video\{8568FD2E-9FAE-496B-B65C-0AA5FD4E2FDE}'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Video\{8568FD2E-9FAE-496B-B65C-0AA5FD4E2FDE}\0000' 'Attach.ToDesktop' '1' 'REG_DWORD'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Video\{8568FD2E-9FAE-496B-B65C-0AA5FD4E2FDE}\0000' 'Device Description' 'PCI GDIHOOK5' 'REG_SZ'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Video\{8568FD2E-9FAE-496B-B65C-0AA5FD4E2FDE}\0000' 'InstalledDisplayDrivers' 'H#676469686F6F6B35' 'REG_MULTI_SZ' /ADD
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Video\{8568FD2E-9FAE-496B-B65C-0AA5FD4E2FDE}\0000' 'MirrorDriver' '1' 'REG_DWORD'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Video\{8568FD2E-9FAE-496B-B65C-0AA5FD4E2FDE}\0000' 'VgaCompatible' '0' 'REG_DWORD'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Video\{8568FD2E-9FAE-496B-B65C-0AA5FD4E2FDE}\0000\VolatileSettings' '{5b45201d-f2f2-4f3b-85bb-30ff1f953599}' 'H#5C003F003F005C0052004F004F005400230044004900530050004C00410059002300300030003000300023007B00350062003400350032003000310064002D0066003200660032002D0034006600330062002D0038003500620062002D003300300066006600310066003900350033003500390039007D00' 'REG_BINARY'
    Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Video\{8568FD2E-9FAE-496B-B65C-0AA5FD4E2FDE}\Video' 'Service' 'gdihook5' 'REG_SZ'
    Register64 'HKey_Classes_Root' 'Local Settings\Software\Microsoft\Windows\Shell\BagMRU' 'NodeSlots' 'H#0202020202020202020202020202020202020200020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202' 'REG_BINARY'
    Register64 'HKey_Classes_Root' 'Local Settings\Software\Microsoft\Windows\Shell\BagMRU\0\0' 'MRUListEx' 'H#00000000040000000600000005000000010000000200000003000000FFFFFFFF' 'REG_BINARY'
    Register64 'HKey_Classes_Root' 'Local Settings\Software\Microsoft\Windows\Shell\BagMRU\0\0\0' 'MRUListEx' 'H#0100000000000000FFFFFFFF' 'REG_BINARY'

    Register64 'HKey_Users' '.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections' 'DefaultConnectionSettings' 'H#460000000B000000090000000000000000000000000000000400000000000000905A3CAE8ADDCF0100000000000000000000000001000000020000000A29871F000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' 'REG_BINARY'
    Register64 'HKey_Users' '.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections' 'SavedLegacySettings' 'H#460000000C000000090000000000000000000000000000000400000000000000905A3CAE8ADDCF0100000000000000000000000001000000020000000A29871F000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' 'REG_BINARY'
    Register64 'HKey_Users' '.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Wpad\{F584DEDC-87C7-4EC9-97EE-29BCCE997028}' 'WpadDecisionTime' 'H#B04A830E6EE1CF01' 'REG_BINARY'
    Register64 'HKey_Current_User' 'Software\Classes\Local Settings\MuiCache\3B\52C64B7E' '@C:\Windows\system32\SampleRes.dll,-105' '{nil}' 'REG_SZ'
    Register64 'HKey_Current_User' 'Software\Classes\Local Settings\MuiCache\3B\52C64B7E' '@C:\Windows\system32\SampleRes.dll,-106' '{nil}' 'REG_SZ'
    Register64 'HKey_Current_User' 'Software\Classes\Local Settings\MuiCache\3B\52C64B7E' '@C:\Windows\system32\SampleRes.dll,-107' '{nil}' 'REG_SZ'
    Register64 'HKey_Current_User' 'Software\Classes\Local Settings\MuiCache\3B\52C64B7E' '@C:\Windows\system32\SampleRes.dll,-108' '{nil}' 'REG_SZ'
    Register64 'HKey_Current_User' 'Software\Classes\Local Settings\MuiCache\3B\52C64B7E' '@C:\Windows\system32\SampleRes.dll,-116' '{nil}' 'REG_SZ'
    Register64 'HKey_Current_User' 'Software\Classes\Local Settings\MuiCache\3B\52C64B7E' '@C:\Windows\system32\SampleRes.dll,-117' '{nil}' 'REG_SZ'
    Register64 'HKey_Current_User' 'Software\Classes\Local Settings\MuiCache\3B\52C64B7E' '@C:\Windows\system32\SampleRes.dll,-118' '{nil}' 'REG_SZ'
    Register64 'HKey_Current_User' 'Software\Classes\Local Settings\MuiCache\3B\52C64B7E' '@C:\Windows\system32\SnippingTool.exe,-15051' '{nil}' 'REG_SZ'

    Einmal editiert, zuletzt von mauric (12. November 2014 um 17:47)

  • Das kann man z.B. folgender maßen machen:

    Du ließt deine Datei Zeilenweise ein. Darauffolgend suchst du mit StringInStr und / oder "StringSplit" die entsprechend für den Registry-Eintrag notwendigen Textanteile heraus. Dazu bedarf es etwas Logik (Also ein paar Abfragen). Die jeweiligen Text-Anteile weißt du einer Variable zu.


    Danach fügst und formatierst du deinen String entsprechend wie es für die Reg-Datei notwendig ist zusammen

    Der Aufbau ist so:

    Code
    Windows Registry Editor Version 5.00
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPERSERVER 
    "iexplore.exe "=dword:0000000a
    "XXXX"=dword:0000000a
    ...

    Das ganze speicherst du dann in einer .reg Datei ab.

    4 Mal editiert, zuletzt von KloMeister (13. November 2014 um 15:42)

  • Also um die Datei zuz.reg zu schreiben, die wie folgt aussieht:

    Spoiler anzeigen


    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USER\Software\ZUZ]
    "CID"="927146ab-2261-4a2c-f3be-56d5dd654189"
    "PID"="zuzde"
    "lastPID"="opzde"
    "lastSID"="f3cc96c3-2e4c-8b3d-4a2c-927146ab3331"

    verwendest Du am besten folgenden Weg:

    Spoiler anzeigen
    [autoit]


    FileWrite(".\\zuz.reg", "Windows Registry Editor Version 5.00" & @CRLF & @CRLF & _
    "[HKEY_CURRENT_USER\Software\ZUZ]" & @CRLF & _
    '"CID"="927146ab-2261-4a2c-f3be-56d5dd654189"' & @CRLF & _
    '"PID"="zuzde"' & @CRLF & _
    '"lastPID"="opzde"' & @CRLF & _
    '"lastSID"="f3cc96c3-2e4c-8b3d-4a2c-927146ab3331"')
    FileClose

    [/autoit]

    Die so erstellte Datei ist dann eine *.reg !

    Das könnte Dir weiter helfen.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

    Einmal editiert, zuletzt von Alina (13. November 2014 um 14:43)

  • Hier mal ein grobes Beispiel zum splitten:

    [autoit]

    #include <StringConstants.au3>
    #include <MsgBoxConstants.au3>
    #include <Array.au3>

    [/autoit][autoit][/autoit][autoit]

    Example()

    [/autoit][autoit][/autoit][autoit]

    Func Example()
    local $RegPfad
    local $Datentyp

    [/autoit][autoit][/autoit][autoit]

    Local $sText = "Register64 'HKey_Local_Machine' 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0002' 'InfPath' 'oem12.inf' 'REG_SZ'" ;Einzulesene Zeile - Hier einfach Schleife, die Zeilenweise bis zum Ende deiner Datei einließt.
    Local $aArray = StringSplit($sText, "'")

    [/autoit][autoit][/autoit][autoit]

    $Regpfad = $aArray[2] & "\" & $aArray[4]

    [/autoit][autoit][/autoit][autoit]

    For $i = 5 To $aArray[0]

    [/autoit][autoit][/autoit][autoit]

    Select
    Case $aArray[$i] = "REG_SZ"
    $Datentyp = "REG_SZ"

    [/autoit][autoit][/autoit][autoit]

    Case $aArray[$i] = "REG_DWORD"
    $Datentyp = "REG_DWORD"

    [/autoit][autoit][/autoit][autoit]

    Case $aArray[$i] = "REG_MULTI_SZ"
    $Datentyp = "REG_MULTI_SZ"

    [/autoit][autoit][/autoit][autoit]

    Case $aArray[$i] = "REG_BINARY"
    $Datentyp = "REG_BINARY"

    [/autoit][autoit][/autoit][autoit]

    Case $aArray[$i] = " "

    [/autoit][autoit][/autoit][autoit]

    Case $aArray[$i] = ""

    [/autoit][autoit][/autoit][autoit]

    Case Else
    msgbox (0,"Variablen",$aArray[$i])

    [/autoit][autoit][/autoit][autoit]

    EndSelect
    Next

    [/autoit][autoit][/autoit][autoit]

    msgbox(0,"Reg_Pfad", $Regpfad )
    msgbox(0,"Daten_Typ", $Datentyp )
    EndFunc

    [/autoit]

    Zum Schlüssel gehörige Values, werden noch nicht getrennt erkannt.

    Einmal editiert, zuletzt von KloMeister (14. November 2014 um 08:56)

  • Es geht ja auch darum, dass du etwas dabei lernst und selber etwas zu deinem Programm beiträgst.

    Wichtig ist zu wissen, wo genau du nicht weiterkommst und wie erfahren du im allgemeinen mit AutoIt bist.

    Darauf aufbauend kann man dann weiterarbeiten / helfen.