1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. autoBert

Beiträge von autoBert

  • HD Speicherkarte R/W Raten

    • autoBert
    • 28. Juli 2018 um 10:11

    Ich habe mir erstmals eine HD Speicherkarte zugelegt. Da man immer wieder liest, das gefälschte im Umlauf sind habe ich sie mit H2Testw geprüft. Die Datenraten kommen mir deutlich zu langsam vor: 12,9 MByte beim Schreiben und 13 MByte beim lesen. Allerings habe ich sie nicht im mitgeliefertem Adapter, indem sie nicht funktioniert, sondern in meinem Huawei-Internetstick Kartenschacht. Formatiert habe ich sie exFat und 256 KBytes/sector.

    Der Test hat übrigens wegen Energiesparmodus abgebrochen, ich werde ihn also nochmals wiederholen.

    Was für Werte sind für Speicherkarten dieser Größe normal?

    mfg (auto)Bert

  • Problem mit PowerPoint Slideshow beenden

    • autoBert
    • 26. Juli 2018 um 18:13
    Zitat von bam176

    Könntest du mir noch erklären warum du hier den ConsoleWrite eingebaut hast?

    Damit konnte ich die "Bäume im Wald" (= mehrere Instanzen von PP) finden.

  • Maple-Desktop <Last Update>

    • autoBert
    • 26. Juli 2018 um 14:15
    Zitat von SEuBo

    auch mir sei bitte die Leichenschändung verziehen.

    Leichenschändung ist nie gut, aber vielleicht hat ja admin eine Möglichkeit sie zu reanimieren.

  • Problem mit PowerPoint Slideshow beenden

    • autoBert
    • 26. Juli 2018 um 01:25

    So:

    C
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Outfile=DoJoRunner.exe
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <Timers.au3>
    #include <Misc.au3>
    
    ;Werte aus der Config.ini
    $PPSX_path = IniRead(@ScriptDir & "\config.ini", "PPSX_path", "PPSX_path1", "")
    $PPSX_name = IniRead(@ScriptDir & "\config.ini", "PPSX_name", "PPSX_name1", "")
    $PPSX_IdleTime = IniRead(@ScriptDir & "\config.ini", "IdleTime", "IdleTime1", "600")
    
    ;nur 1 Instanz zulassen
    If Not _Singleton('DoJoRunner', 3) Then Exit
    
    ;Leerlaufzeit
    $time = $PPSX_IdleTime
    
    While 1
        If _Timer_GetIdleTime() >= 1 * $time * 1000 Then
            ;Prüft ob das Fenster der Master-Präsentation aktiv ist (muss nicht unbedingt im Vodergrund sein)
            ;WinGetState = 0 wenn das Fenster nicht gefunden wurde
            $pState = WinGetState("PowerPoint-Bildschirmpräsentation - " & "[" & $PPSX_name & "[Schreibgeschützt]]")
            ;Wenn das Fenster der Master-Präsenstation noch aktiv ist wird es in den Vordergrung geholt
            If $pState > 0 Then
                WinActivate("PowerPoint-Bildschirmpräsentation - " & "[" & $PPSX_name & "[Schreibgeschützt]]")
                ;Falls das Fenster nicht mehr aktiv ist, wird die PPSX-Datei mit maximiertem Fenster gestartet.
            Else
                $Pid = ShellExecute($PPSX_path & $PPSX_name, "", "", "Open", @SW_MAXIMIZE)
                ConsoleWrite($Pid & @CRLF)
                Do
                    $pState = WinGetState("PowerPoint-Bildschirmpräsentation - " & "[" & $PPSX_name & "[Schreibgeschützt]]")
                    Sleep(100) ;===> schont Prozessor Auslastung
                Until $pState
            EndIf
        EndIf
        Sleep(100) ;===> schont Prozessor Auslastung
    WEnd
    Alles anzeigen

    läuft es zumindest als Exe bei mir. Im Else Zweig hat er bei mir (ohne die Änderung) 4 bis 6 Instanzen von PPgeöffnet. Singleton habe ich eingefügt, damit nur 1 Instanz des Starterprogramms läuft, es dauert ja 10 min. bis die Präsentation gestatet wird. Um sofort zu starten kannst du $time mit 1 initialisieren und nach der Do ... Until

    Code
    If $time <> $PPSX_IdleTime Then $time = $PPSX_IdleTime

    einfügen.

    mfg (auto)Bert

  • Problem mit PowerPoint Slideshow beenden

    • autoBert
    • 25. Juli 2018 um 22:29
    Zitat von bam176

    Beendet man die Master-Präsentation über ESC wird Sie 1 Sekunde später sofort wieder gestartet und läuft erneut los.

    wolltest du nicht genau dies erreichen 8o

    Zitat von bam176

    Hat ein User die Master-Präsentation beendet, soll das Skript dies erkennen und die Master-Präsentation starten.

    Gratuliere, du hast es erfolgreich gelöst. Ohne eine Demo.ppx bei der das Problem auftritt, kann man dir wohl nicht helfen.

    mfg (auto)Bert

  • Tool zur Linkverwaltung

    • autoBert
    • 25. Juli 2018 um 18:45

    Wenn dir der Menüpunkt "Kopieren" im Rechtsklick-Menü des Browsers nicht stört, kannst du auch folgendes Skript:

    AutoIt: Mit _ClipgetData kopierte URL's abfangen
    #include <Clipboard.au3>
    #include <GUIConstantsEx.au3>
    #include <SendMessage.au3>
    #include <WindowsConstants.au3>
    
    Global $g_idMemo, $g_hNext = 0
    
    Example()
    
    Func Example()
        Local $hGUI
    
        ; Create GUI
        $hGUI = GUICreate("Clipboard", 600, 400)
        $g_idMemo = GUICtrlCreateEdit("", 2, 2, 596, 396, $WS_VSCROLL)
        GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
        GUISetState(@SW_SHOW)
    
        ; Initialize clipboard viewer
        $g_hNext = _ClipBoard_SetViewer($hGUI)
    
        GUIRegisterMsg($WM_CHANGECBCHAIN, "WM_CHANGECBCHAIN")
        GUIRegisterMsg($WM_DRAWCLIPBOARD, "WM_DRAWCLIPBOARD")
    
        ; Loop until the user exits.
        Do
        Until GUIGetMsg() = $GUI_EVENT_CLOSE
    
        ; Shut down clipboard viewer
        _ClipBoard_ChangeChain($hGUI, $g_hNext)
    EndFunc   ;==>Example
    
    ; Write message to memo
    Func MemoWrite($sMessage = "")
        GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
    EndFunc   ;==>MemoWrite
    
    ; Handle $WM_CHANGECBCHAIN messages
    Func WM_CHANGECBCHAIN($hWnd, $iMsg, $wParam, $lParam)
        #forceref $hWnd, $iMsg
        ; Check the message was received
        ;MemoWrite("***** $WM_CHANGECBCHAIN *****")
    
        ; If the next window is closing, repair the chain
        If $wParam = $g_hNext Then
            $g_hNext = $lParam
            ; Otherwise pass the message to the next viewer
        ElseIf $g_hNext <> 0 Then
            _SendMessage($g_hNext, $WM_CHANGECBCHAIN, $wParam, $lParam, 0, "hwnd", "hwnd")
        EndIf
    EndFunc   ;==>WM_CHANGECBCHAIN
    
    ; Handle $WM_DRAWCLIPBOARD messages
    Func WM_DRAWCLIPBOARD($hWnd, $iMsg, $wParam, $lParam)
        #forceref $hWnd, $iMsg
        ; Display any text on clipboard
        ; Check the received message is a URL
        $sURL = _ClipBoard_GetData()
        $arrValidURL = StringRegExp($sURL, "(?s)((ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?)", 2)
        If Not @error Then MemoWrite($sURL)
        ; Pass the message to the next viewer
        If $g_hNext <> 0 Then _SendMessage($g_hNext, $WM_DRAWCLIPBOARD, $wParam, $lParam)
    EndFunc   ;==>WM_DRAWCLIPBOARD
    Alles anzeigen

    als Grundlage benutzen.

    mfg (auto)Bert

  • Koordinaten umrechnen (unbekanntes Schema => Google-Maps)

    • autoBert
    • 24. Juli 2018 um 17:08

    Der Online Umrechner zusammen mit Gauß Krüger hilft mir sehr. Und da ich nur für wenige Flurstücke die Koordinaten benötige, setze ich schon auf gelöst.

    danke (auto)Bert

  • Koordinaten umrechnen (unbekanntes Schema => Google-Maps)

    • autoBert
    • 24. Juli 2018 um 14:29
    Zitat von Oscar

    Um welchen Dienst handelt es sich?

    Ich komme über https://rips-dienste.lubw.baden-wuerttemberg.de/rips/ripsservi…d=1289002000137 und danach "zur Karte" auf eine Übersichtskarte von Baden-Württemberg. Durch verschieben und zoomen gelange ich dann zu einem Kartenausschnitt mit einem Grundstück (bei dem ich Miteigentümer bin). Die Koordinaten sind in der nähe meines Wohnortes (< 10 km) und mit Sicherheit nicht im Iran.

    Hier Daten aus Stuttgart: 3512260, 5405252 (Naturdenkmal Blutbuche Hölderlinstr.)

    Die Daten selbst sind jeweils aus einer PDF (Microsoft Print to PDF) gezogen, können also etwas ungenau sein. Im Anhang noch ein Kartenausschnitt mit obigen Koordinaten. Dies ergibt bei Google-Maps

    mfg (auto)Bert

    Dateien

    test.pdf 1,49 MB – 465 Downloads
  • Koordinaten umrechnen (unbekanntes Schema => Google-Maps)

    • autoBert
    • 24. Juli 2018 um 13:30

    Hallo Forum,

    Ich benötige einen Denkanstoß, um Koordinaten aus einem Geo-Dienst in Längen- Breitengrad umzurechnen.

    Die Daten liegen in folgender Form vor:

    HTML
    3456789, 5678901

    ich benötige sie aber in Google-Maps konformer Eingabe-Form. Die 1. Idee einfach 2er Blöcke für Grad, Minuten zu bilden ging deutlich daneben.

    mfg (auto)Bert

  • Tool zur Linkverwaltung

    • autoBert
    • 24. Juli 2018 um 00:54
    Zitat von AnMa

    Daher meine Frage:
    Ist es grundsätzlich möglich Links entweder per Drag&Drop in ein entsprechendes Programm zu ziehen oder wäre es sogar möglich dem Submenü (Rechtsklick) innerhalb von Firefox einen entsprechenden Menüpunkt hinzuzufügen?

    teste dieses Script:

    AutoIt
    ;https://autoit.de/index.php/Thread/22579-Dropbox-f%C3%BCr-Links-aus-Browsern/?postID=185846#post185846
    #include <GuiRichEdit.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    
    
    Local $hGui, $iMsg
    $hGui = GUICreate("Dropbox", 150, 150, -1, -1, BitOR($WS_SIZEBOX, $WS_BORDER), BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW))
    GUICtrlSetState(-1, $GUI_ONTOP)
    $hRichEdit = _GUICtrlRichEdit_Create($hGui, "", 0, 0, 150, 150, -1)
    GUISetState()
    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
    _GUICtrlRichEdit_SetEventMask($hRichEdit, $ENM_SELCHANGE)
    While True
        $iMsg = GUIGetMsg()
        Select
            Case $iMsg = $GUI_EVENT_CLOSE
                _GUICtrlRichEdit_Destroy($hRichEdit)
                GUIDelete()
                Exit
        EndSelect
    WEnd
    
    Func WM_NOTIFY($hWnd, $iMsg, $iWparam, $iLparam)
        #forceref $hWnd, $iMsg, $iWparam
        Local $hWndFrom, $iCode, $tNMHDR, $tEnLink, $cpMin, $cpMax, $tMsgFilter
        $tNMHDR = DllStructCreate($tagNMHDR, $iLparam)
        $hWndFrom = HWnd(DllStructGetData($tNMHDR, "hWndFrom"))
        $iCode = DllStructGetData($tNMHDR, "Code")
        Switch $hWndFrom
            Case $hRichEdit
                Select
                    Case $iCode = $EN_SELCHANGE
                        Checklink()
                EndSelect
        EndSwitch
        Return $GUI_RUNDEFMSG
    EndFunc   ;==>WM_NOTIFY
    
    
    Func Checklink()
        Local $sURL, $arrValidURL
        $sURL = _GUICtrlRichEdit_GetText($hRichEdit)
        ConsoleWrite($sURL&@CRLF)
        $arrValidURL = StringRegExp($sURL, "(?s)((ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?)", 2)
    
        #comments-start
        _GUICtrlRichEdit_GetSelText($hRichEdit)
        _GUICtrlRichEdit_SetText($hRichEdit, "")
        If UBound($arrValidURL) > 0 Then
            ;// Gueltige URL ok, mach irgendwas damit
            ConsoleWrite($arrValidURL[0] & @CRLF)
            InetGet($arrValidURL[0],'test.jpg')
            ShellExecute('test.jpg')
            ;//
        EndIf
        #comments-end
    EndFunc   ;==>Checklink
    Alles anzeigen

    als GUI welche URL's per Drag&Drop entgegennimmt. Das Rechtsklickmenü des Firefox zu erweitern geht sicher auch, ich kenne aber die Lösung nicht.

    Für den Rest würde ich eine GUI mit Treeview und Listview vorschlagen. Um die Daten zu speichern wäre eine SQLite-DB ideal, eine Lösung mit Inidateien oder eine eigene Text-DB ist aber aber einfacher. Eine sehr einfach gehaltene Version mit Ini findest du in meiner Signatur.

    mfg (auto)Bert


  • Dualboot von 2 HDD

    • autoBert
    • 24. Juli 2018 um 00:34

    Hier ist auch noch etwas Lesestoff.

    mfg (auto)Bert

  • Frage - SQL Insert

    • autoBert
    • 22. Juli 2018 um 00:20
    Zitat von Sonderbaar

    Aber um Heidi mal in Unschuld zu waschen, selbst mit einem direkten Insert in die Tabelle kriege ich genauso (viele/wenige) Datensätze rein wie mit Heidi... (stand ja schon im Erstellungsthread)

    Hast du es denn in Teilpaketen getestet? Könnte ja immerhin sein, daß der Eingabepuffer eine max. Größe hat.

    Aber:

    Zitat von AspirinJunkie

    Aber im Grunde bringt wildes Raten gar nix wenn du rein gar nichts zeigst.


    Stelle das Table-Statement der betreffenden Tabelle hier rein und zeig einen Ausschnitt (mit verschleiern der kritischen Daten) deiner Input-datei hier rein.

    obiger Aufforderung solltest du einfach einmal nachkommen, damit die Kaffesatzleserei ein Ende hat.

    mfg (auto)Bert

  • Frage - SQL Insert

    • autoBert
    • 19. Juli 2018 um 15:11
    Zitat von Bitnugger

    ch vermute, wenn du keinen PrimaryKey setzt, wird es auch keine Duplikate geben, sondern bereits vorhandene Einträge werden dann einfach überschrieben.

    Falls du Recht hast würde dies mein ganzes Verständnis zu SQL über den Haufen werfen. Ein kleiner Test mit _SQLite_GetTable2d.au3 zeigt mir es ist, zum meinem Glück, nicht so. Ohne Primarykey sind Duplikate erlaubt. Das Testskript ist ein Hilfebeispiel, abgeändert und erweitert um sich nicht die DLL herunterladen zu müssen. Dafür wird jetzt das Include benötigt: _SQLiteInline_X86.au3 oder die DLL muss auf anderem Weg zur Verfügung gestellt weden.

    Zum eigentlichen Problem vermute ich, das sich mit dem aufteilen der Datei in mundgerechte Häppchen (4 * 1/4 oder kleiner) der Schluckauf von Heidi verhindern lässt.

    mfg (auto)Bert

  • Array letzter Eintrag

    • autoBert
    • 18. Juli 2018 um 23:55
    Zitat von Vitaq

    Also mein Vorhaben sieht so aus txt als Array einlesen letzten Eintrag/Zahl auslesen.

    Dann solltest du diese Version nehmen:

    Zitat von AspirinJunkie

    Wenn du hingegen wissen willst wie du an die letzte Zeile einer Datei kommst und ausschließlich diese möchtest dann so: FileReadLine("C:\Deine\Datei.txt", -1).

    Natürlich in eine Variable speichern, also so:

    Code
    $sMacro = FileReadLine("C:\Deine\Datei.txt", -1)

    Das Makro zu starten sollte dann so aussehen:

    Code
    ;....
    ;....
    $oExcel.Application.Run "!" & $sMacro

    aber da sollte water besser Bescheid wissen.

  • Mit Checkbox eine Combobox aktivieren / deaktivieren

    • autoBert
    • 7. Juli 2018 um 14:45

    Warum sollte dies nicht möglich sein? Allerdings fehlt der Teil mit der GUI-erstellung und ich bin zu bequem diesen zu erstellen. Du kannst

    Zitat von Hilfe

    Case <value> [To <value>] [,<value> [To <value>] ...]

    verwenden und den Schleifenzählwert $i als Elementwert verwenden. Wenn du damit nicht weiter kommst stell den GUI-Teil des Skriptes ein.

  • Progressbar

    • autoBert
    • 4. Juli 2018 um 15:36
    Zitat von claushendrik

    Den Zeitraum wann die Anwendung beendet wird kann ich nicht sagen da es ja davon abhängt was/wie lange geloadet wird!

    Auch wenn es schon von Oscar gesagt wurde, aber ohne irgendwelche (und wenn es geschätzte) Fortschritts-Daten, ist nur der Marquee-Stil möglich.

  • Welcher Button wurde gedrückt ?

    • autoBert
    • 4. Juli 2018 um 14:49

    Und hier ein:

    AutoIt: 2D_Array_Buttons
    #include <guiconstantsex.au3>
    #include <array.au3>
    
    Opt('MustDeclareVars', 1)
    Global $aBtnIds[10][2]
    $aBtnIds[0][1] = "0001"
    $aBtnIds[1][1] = "0010"
    $aBtnIds[2][1] = "0011"
    $aBtnIds[3][1] = "0100"
    $aBtnIds[4][1] = "0101"
    $aBtnIds[5][1] = "0111"
    $aBtnIds[6][1] = "1000"
    $aBtnIds[7][1] = "1001"
    $aBtnIds[8][1] = "1010"
    $aBtnIds[9][1] = "_Farben"
    
    Global $hGui = GUICreate('Buttontest', 105, 145)
    Global $msg
    
    For $i = 0 To 8
        $aBtnIds[$i][0] = GUICtrlCreateButton($i + 1, 10 + Mod($i, 3) * 30, 10 + Int($i / 3) * 30, 25, 25)
        ;$aBtnIds[$i][0] enthält jetzt die ID
        ConsoleWrite($i + 1 & ': ' & $aBtnIds[$i][0] & @CRLF)
        GUICtrlSetBkColor(-1, 0x990000)
        $aBtnIds[$i][1] = False
    Next
    $aBtnIds[9][0] = GUICtrlCreateButton('OK', 10, 110, 90, 25)
    ConsoleWrite('OK: ' & $aBtnIds[$i][0] & @CRLF)
    GUISetState()
    
    While 1
        $msg = GUIGetMsg()
        Switch $msg
            Case $GUI_EVENT_CLOSE
                Exit
            Case $aBtnIds[0][0] To $aBtnIds[8][0]
                _Click($msg - $aBtnIds[0][0], True)
            Case $aBtnIds[9][0]
                _Click($msg - $aBtnIds[0][0])
                Call($aBtnIds[9][1])    ;ruft die hinterlegte Func auf
        EndSwitch
    WEnd
    
    Func _Click($iBtn, $bColorToggle = False)
        If $bColorToggle Then
            If $aBtnIds[$iBtn][1] Then
                GUICtrlSetBkColor($aBtnIds[$iBtn][0], 0x990000)
            Else
                GUICtrlSetBkColor($aBtnIds[$iBtn][0], 0x059122)
            EndIf
            $aBtnIds[$iBtn][1] = Not $aBtnIds[$iBtn][1]
        EndIf
        MsgBox(0, 'Buttonclick', 'Button with ID ' & $aBtnIds[$iBtn][0] & ' was clicked.' & @CRLF & 'The text of the button is: ' & ControlGetText('Buttontest', '', $aBtnIds[$iBtn][0]) & @CRLF, 5, $hGui)
        ConsoleWrite(GUICtrlRead($aBtnIds[$iBtn][0])&@CRLF)
    EndFunc   ;==>_Click
    
    Func _Farben()
        Local $sText = '',$aBtns
        For $i = 0 To 8
            $sText &= $aBtnIds[$i][1]
            If $i < 8 Then $sText &= '|'
        Next
        $sText = StringReplace($sText, 'True', 'Grün')
        $sText = StringReplace($sText, 'False', 'Rot')
        ConsoleWrite($sText & @CRLF)
        $aBtns = StringSplit($sText, '|')
        $aBtns[0] = UBound($aBtns)-1
        _ArrayDisplay($aBtns, 'Farben', '', 32)
    EndFunc   ;==>_Farben
    </array.au3></guiconstantsex.au3>
    Alles anzeigen

    Die Idee auch die aufzurufende Funktion im Array zu speichern ist aber nur für den OK Button angewandt.

  • Anfängerfragen

    • autoBert
    • 26. Juni 2018 um 19:15
    Zitat von mgertzen

    Die erste Bedingung wäre wenn die die Business Partner Nummer = 19001 ist, dann soll es in Verzeichniss X verschoben werden. In Verzeichniss y soll es verschoben werden wenn Check field Number 9 oder 10 Value true haben.

    Und was soll passieren wenn der Partner richtig (Nummer = 19001) aber auch eine der beide Checkfield Nummern zutreffen?

    Das ganze sollte sich relativ schnell und problemlos lösen lassen. Schau dir dazu _FileListToArray, FileMove/FileDelete, For ... next, FileOpen + FileRead, verschiedene String* -Funktionen (hier vor allem _StringBetween) an.

    Wenn das Verzeichnis live überwacht und sofort verschoben/gelöscht werden soll, ist auch das möglich: afair hat Oscar sowas schon einmal für Druckaufträge gemacht.

    mfg (auto)Bert

  • Digitaluhr v4

    • autoBert
    • 25. Juni 2018 um 21:49
    Zitat von Oscar

    Edit: Ok, das ging schnell! Hier die Antwort von Avira:

    Ich fürchte du musst noch ein paar Mails schreiben: https://www.virustotal.com/#/file/da7e8f2…561c3/detection


    mfg (auto)Bert

  • Pixelsearch / alternative für Bilder

    • autoBert
    • 24. Juni 2018 um 13:29
    Zitat von Andy

    Stattdessen werden diese Informationen per PN versendet...wtf...

    Das muss wohl sein, weil sonst wohl kein Suport geleistet wird oder die Daten zu:

    • geheim
    • kindisch
    • etc.

    sind.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™