Beiträge von gmmg

    Hallo Roberto,


    wie BugFix schon schrieb ist das alles viel Arbeit, aber machbar.


    Was du brauchst ist eine Datenbank, die Installiert und mit den Daten befüllt werden muss.

    Dies könnte eine SQL Lite, MySQL/ MariaDB, Microsoft SQL oder Microsoft Access sein. Dafür gibt es zumindest bei AutoIT einige Beispiele.


    Ich selbst habe im Unternehmen Access und MySQL in verschiedenen Projekten im Einsatz.


    Gruß gmmg

    Hallo Floooooo24,


    hast du mal versucht die $ParentGUI anzugeben?


    _Metro_CreateGUI($Title, $Width, $Height[, $Left = -1[, $Top = -1[, $AllowResize = False[, $ParentGUI = ""]]]])



    ; #FUNCTION# ====================================================================================================================

    ; Name ..........: _Metro_CreateGUI

    ; Description ...: Creates a modern borderless GUI with the colors of the selected theme.

    ; Syntax ........: _Metro_CreateGUI($Title, $Width, $Height[, $Left = -1[, $Top = -1[, $AllowResize = False[, $ParentGUI = ""]]]])

    ; Parameters ....: $Title - Title of the window

    ; $Width - Width

    ; $Height - Height

    ; $Left - [optional] Window pos X. Default is -1.

    ; $Top - [optional] Window pos Y. Default is -1.

    ; $AllowResize - [optional] True/False. Default is False. ;Enables resizing + drag move for the gui.

    ; $ParentGUI - [optional] Handle to the parent gui. Default is "".

    ; Return values .: Handle to the created gui

    ; Example .......: _Metro_CreateGUI("Example", 500, 300, -1, -1, True)

    ; ===============================================================================================================================


    Benutze selbst immer mal die _Metro_CreateGUI, habe aber bisher keine 2 GUI's in einem Script benötigt.


    Gruß gmmg

    @tommii, wenn du Zugriff auf die Datenbank hast, könnte man ja auf diese zugreifen und die Daten darus direkt nutzen. Das macht das Excel Makro ja scheinbar auch :)


    Gruß gmmg

    Mit der folgenden Anpassung des Scripts läuft der Import erstmal wie gewollt. Ich schließe das Thema.

    AutoIt
            If $dword[0] = 2 Then
               RegWrite(StringReplace($RegArray[$i],'"',''), StringReplace($RegArrayaSec[$a][0],'"',''), 'REG_DWORD', Dec(StringReplace(StringReplace($RegArrayaSec[$a][1],"dword:",""),'"',''),0))
            EndIf

    Gruß und Danke

    gmmg

    Velted, danke für deine Antwort. Für den einzelnen Wert ist das bereits geklärt. Das funktioniert ja auch mit der DEC Funktion.

    Code
    Dec(00000016,0))

    Ich möchte doch nun die ganzen Regdatei per Autoit wieder importieren bzw. schreiben und nicht nur den einzelnen Wert.

    Da müsste ich nun ja für alle Einträge entsprechende definitionen festlegen, dass will ich aber möglichst vermeiden :)


    Gruß gmmg

    Hallo Moombas,


    ja, das wäre eine Idee, aber hast du dir mal die angehängte Reg Datei angeschaut, da gibt es viele "Dword" Einträge, die müssen ja alle geschrieben werden. :)

    Bei dem Eintrag mit der PortNumber war mir der Fehler halt direkt aufgefallen, bei den anderen Einträgen, weiß ich das ja noch nicht.


    Mit der DEC Funktion schaut das im Vergleich beider Dateien (export aus der Registry) mit Notepad++ sehr gut aus.


    Einzig eine "REG_SZ" Zeile passt nicht mit dem Original überein, ist aber eventuell auch nicht relevant.


    Original



    per Autoit




    Gruß gmmg

    BananaJoe , das war mir auch schon aufgefallen, aber wie schreibe ich das denn im Script um?

    Es wird ja nur die exportierte Registry in ein Array gelesen und danach wieder zeilenweise geschrieben.


    Ich habe jetzt mal nur die PortNumber Zeile zum testen genommen. mit der Dec Funktion wird der Wert korrekt in die Registry geschrieben.

    Ob das jetzt für alle Werte so geändert werden muss ist mir noch nicht bekannt.

    AutoIt
    Funktioniert nicht
    ;RegWrite("HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Blank", "PortNumber", "REG_DWORD", "00000016")
    ;RegWrite("HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Blank", "PortNumber", "REG_DWORD", 00000016)
    
    Funktioniert
    RegWrite("HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Blank", "PortNumber", "REG_DWORD", Dec("00000016",0))
    RegWrite("HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Blank", "PortNumber", "REG_DWORD", Dec(00000016,0))


    Gruß gmmg

    Hallo Zusammen,


    ich habe gerade das Problem, dass ich Silent etwas in die Registry für das Programm putty schreiben möchte.


    Bisher hatte ich das immer über den Importbefehl gemacht, hier kommt aber immer die Bestätigungsanfrage der Benutzerkontensteuerung.


    Der Import über die HKCUReg.au3 funktioniert leider nicht.

    AutoIt
    ---funktioniert nicht---
    
    #include <HKCUReg.au3>
    _HKCU_Import($file)


    AutoIt
    ---funktioniert , aber Benutzerkontensteuerung muss aktiv bestätigt werden --
    
    ;$sCommand01 = ('regedit.exe /s "' & @ScriptDir & '\bin\putty.reg"')
    ;_RunDOS($sCommand01)


    Mit dem Regwrite Befehl funktioniert das Grundsätzlich, aber die Werte stimmen nicht.

    Mit folgendem Code schreibe ich nun die Einträge in die Registry. Es wird die Reg Datei eingelesen und dann Zeilenweise eingespielt.

    Das Problem ist mir dann beim Öffnen von Putty aufgefallen. Hier hat der SSH Port nicht gestimmt.

    Korrekt wäre der Port 22, es kommt aber immer nur Port 16.


    Eintrag aus der exportierten Registry (wenn ich das wieder importiere funktioniert es)



    Eintrag in der Registry




    Wenn ich per Autoit Schreibe, kommt in der Registry folgendes an. Es wird ein aus Port 22 -> Port 16




    Könnte das Problem am Zeichensatz oder an der Formatierung liegen?

    Gibt es denn eine andere Möglichkeit den Import vorzunehmen?


    Danke


    Gruß gmmg

    Hallo MojaeB,


    Bugfix hat das ja schon beantwortet :)


    Ich benutze aber immer den Aufruf _MYSQL_Real_Query. Hier ein kleines Beispiel.


    Gruß gmmg

    Hallo MojoeB,


    hier mal ein Beispiel zum Auslesen einer internen Mysql installation.

    Das sollte sich aber auch auf eine gehostete Instanz übertragen lassen.


    Theoretisch kannst du ja zum Testen auch erstmal Tools wie Heidi SQL oder DBeaver nutzen.


    Ansonsten gibt es bestimmt noch Forumsmitgleider, die Online Webspace zum testen haben und dir entsprechend auch weiterhelfen können.


    Gruß gmmg

    Hallo Bugfix,


    bei Windows 7 gab es doch BDE-Verwaltung in der Systemsteuerung. Hab leider aktuell keine Anwendung mehr die auf die Borland Engine zurückgfreift.


    Schreibt denn das Programm für die Borland DB irgendetwas in die Registry? Hier könnte es sein, dass der Eintrag fehlt.

    Vielleicht mal mit Kompatibilitätsmodus spielen.


    Gruß gmmg

    Hallo diebratwurst,


    versuche es doch mal so. Zeiten sind zum testen geändert.


    Das $Hour +=1 hat am Anfang immer die Zeit Automatisch hochgezählt, ehe es in die Batch Schleife gesprungen ist.


    Gruß gmmg

    Hallo Zusammen,


    Im Prinzip geht das ja einfach so.

    Code
    #include <InetConstants.au3>
    
    
    $DownloadURL = "https://bits.avcdn.net/productfamily_ANTIVIRUS/insttype_FREE/platform_WIN/installertype_FULL/build_RELEASE/cookie_mmm_ava_998_999_000_m/"
    
    InetGet($DownloadURL, @UserProfileDir & "\Downloads\avast_free_antivirus_setup_offline.exe")

    Gruß gmmg

    Hallo lunifrw,


    hier mal ein Beispiel für einen Webseite Login.

    Die Zugangsdaten würden aus einer Ini Datei kommen. Da hast du zumindest schonmal den Website Aufruf :)


    Und hier noch ein kleines Beispiel zum Finden/ Setzen /Lesen eines Values von einem Input.

    Code
    ;find Input
    $sElement_user = _WD_FindElement($sSession, $_WD_LOCATOR_ByXPath, "//input[@name='_username']")
    
    ;set value
    _WD_ElementAction($sSession, $sElement_user, 'value',$User)
    
    ;get_Value
    $sValue = _WD_ElementAction($sSession, $sElement_user, 'property', 'value')
    MsgBox(0,"", $sValue)



    Gruß gmmg :)