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. autoiter

Beiträge von autoiter

  • Run *.au3 über den Webbrowser

    • autoiter
    • 28. August 2019 um 22:36

    Hallo wuff100

    Du möchtest das Skript also nicht nur lokal für dich nutzen auf einem eingebundenen Netzlaufwerk.
    Damit kannst du das Projekt vergessen. AutoIt (alleine) ist hier mit den Abhängigkeiten einfach nicht geeignet.
    Was soll das Skript denn tun?

  • Run *.au3 über den Webbrowser

    • autoiter
    • 28. August 2019 um 18:17

    Hi wuff100 ,

    sorry, ich verstehe das ganze Szenario nicht.

    Ist "Z:" ein auf deinem Windows eingebundenes Netzlaufwerk von deinem NAS? Was soll das Laden über den Browser bringen, wenn du alle Ressourcen immer noch einbinden musst? Du wirst den Pfad mit "Z:\..." wohl fest in den Code schreiben müssen. Oder du lädst statt der au3 eine Batchdatei, die die auf "Z:" liegende au3 ausführt.
    Mir scheint aber der Browser in deinem Fall - mit Abhängigkeiten und gleichzeitig eingebundener Quelle- als völlig ungeeignet. Sollte es so sein, dass die Quelle bereits im Dateisystem eingebunden ist, wäre es doch Unsinn noch einen Handstand mit dem Browser zu machen.

  • merkwürdige Zeichen - _ArraySearch

    • autoiter
    • 26. August 2019 um 17:31

    Hallo Bitnugger
    ich glaube, das liegt aber nur an deinen Einstellungen.
    Das gibt dir denn folgendes aus?

    Code
    MsgBox(0,"", BinaryToString(StringToBinary('Testdatei - für AutoIt.au3'), 1) & @CRLF & _
    BinaryToString(StringToBinary('Testdatei - für AutoIt.au3'), 4) & @CRLF & _
    BinaryToString(StringToBinary('Testdatei - für AutoIt.au3', 4), 4))
  • Bestimmte zeilen aus Textdatei

    • autoiter
    • 23. August 2019 um 17:33

    Sorry,
    ist OT. Aber es ist schon extrem witzig einen Thread mit dem Thema "Bestimmte zeilen aus Textdatei" zu haben, der auch nach zuvor 42 ernst gemeinten Antworten nicht auf gelöst gesetzt ist. :D

  • Kopieren und Prüfen mehrerer Dateien

    • autoiter
    • 23. August 2019 um 17:23

    Bearbeite das Thema des Threads bitte noch und setze es auf "Erledigt".

    Nur der Vollständigkeit halber:

    Nein, lies die Beschreibung noch einmal - nur wenige Sekunden länger ;)
    Die UDF kann beides und kann auch Fehler melden..

  • Kopieren und Prüfen mehrerer Dateien

    • autoiter
    • 22. August 2019 um 18:13

    _FileCopyEx


    Kann alles was du brauchst und sieht auch noch gut aus ;)

  • Monitor ausgeschaltet lassen trotz MouseMove und Send

    • autoiter
    • 20. August 2019 um 18:32

    Ups, das habe ich ganz übersehen Moombas :saint:

    But good news for the TS, I have an Thinkpad too.

  • Monitor ausgeschaltet lassen trotz MouseMove und Send

    • autoiter
    • 19. August 2019 um 19:46

    In den Energieoptionen meines Windows Betriebssystems ist unter "Netzschalter und Zuklappen" -> "Zuklappen" die Einstellung "Nichts unternehmen" aktiv.

    Wenn ich mein Laptop zuklappe, wird dadurch nur das Display deaktiviert. Eben habe ich es mit folgendem Skript getestet:

    Code
    HotKeySet("ä", "_Exit")
    
    While 1
        Sleep(250)
        MouseMove(Random(0, 500), Random(0, 500))
        Sleep(250)
        MouseClick("left", Random(0, 500), Random(0, 500), 1)
    WEnd
    
    Func _Exit()
        Exit
    EndFunc
    Alles anzeigen

    Das Display ist und bleibt abgeschaltet.

  • Anfänger schnelle hilfe

    • autoiter
    • 12. August 2019 um 07:54

    Hallo kakax

    Dann starte das Skript doch einfach über die Windows Aufgabenplanung..

    Oder schreibe die Zeit nicht fix in dein Skript, sondern benutze die Makros von AutoIt (@HOUR, @MIN, etc) und Funktionen wie _NowTime()..

    Bei beidem brauchst du keinen Startbutton, der immer noch dazu führen kann, dass du den Zeitpunkt verpasst. Der deutlich bessere Weg wäre die Aufgabenplanung.

  • TAB-Reihenfolge ... schon x-mal diskutiert, dennoch eine Frage

    • autoiter
    • 12. August 2019 um 07:46

    Guten Morgen De Rand Ere

    Ja, also dein Problem ist deine Verwendung von GUICtrlSetState(-1, $GUI_ONTOP).

    Damit setzt du einzelne Controls an die Spitze und änderst damit auch die Z-Reihenfolge der Controls. Das hat so wie ich das sehe nichts mit der Sichtbarkeit zu tun, ändert aber sehr wohl die Tab-Reihenfolge, Da du bei einigen Tab-Controls $GUI_ONTOP gesetzt hast, und bei anderen nicht, kommt das heraus.

    Ich glaube wirklich du hast das missverstanden und brauchst das hier überhaupt nicht.

  • _WM_NOTIFY - _GUICtrlListView_SortItems zu langsam

    • autoiter
    • 8. August 2019 um 18:41

    Ähm kann es sein, dass zweimal sortiert wird?

    Kommentiere mal _GUICtrlListView_RegisterSortCallBack( und _GUICtrlListView_UnRegisterSortCallBack aus.

    Entweder bin ich gerade verwirrt, oder diese Funktionen würden genau das bereitstellen was du im Codezweig Case $LVN_COLUMNCLICK machst..

    Also entweder oder. Wenn du in der _WM_NOTIFY-Funktion nur das machst, dann lass sie weg.

  • Wie komme ich zurück ?

    • autoiter
    • 8. August 2019 um 18:34

    Nicht schön, aber fast gar keine Arbeit beim ändern. Die Änderung ist einfach ein Funktionsaufruf..
    PS: Benutze vielleicht SciTE oder ISN zum coden. Dann kannst du dir den Code einfach formartieren lassen.

    Spoiler anzeigen
    C
    #include <StaticConstants.au3>
    
    #include <GUIConstantsEx.au3>
    
    #include <WindowsConstants.au3>
    
    #Include <GuiButton.au3>
    
    #include <DateTimeConstants.au3>
    
    #include <EditConstants.au3>
    
    #include <WinAPIFiles.au3>
    
    #include <Array.au3>
    
    #include <File.au3>
    
    #include <MsgBoxConstants.au3>
    
    
    #Region
    
    ;----------- Hauptfenster deninieren ----------------------------------------
    
    
    Global $MainGui = GUICreate("StreamGui",1200,950,-1,-1,-1,-1)
    
    GUICtrlSetTip(-1,"Dux Dateien vom Entwicklungsserver zum Testserver kopieren")
    
    
    ;----------- Definition der Menübuttons -------------------------------------
    
    
    Global $BtnDuxKopie = GUICtrlCreateButton("Dux Kopie",21,187,100,30,-1,-1)
    
    _GUICtrlButton_SetFocus ( $BtnDuxKopie, $BST_INDETERMINATE = True)
    
    GUICtrlSetTip(-1,"Dux Dateien kopieren")
    
    
    Global $BtnOverlayLxf = GUICtrlCreateButton("Overlay lxf",21,247,100,30,-1,-1)
    
    _GUICtrlButton_SetFocus($BtnOverlayLxf)
    
    GUICtrlSetTip(-1,"Overlay's mit Endung .lxf kopieren")
    
    
    Global $BtnOverlayTab = GUICtrlCreateButton("Overlay .tab",21,307,100,30,-1,-1)
    
    GUICtrlSetTip(-1,"Overlay's mit Endung .tab kopieren")
    
    _GUICtrlButton_SetFocus($BtnOverlayTab)
    
    Global $BtnLanguage = GUICtrlCreateButton("Language",21,367,100,30,-1,-1)
    
    GUICtrlSetTip(-1,"Language.sls kopieren.")
    
    
    Global $BtnFunktionFile = GUICtrlCreateButton("Funnktion File",21,427,100,30,-1,-1)
    
    GUICtrlSetTip(-1,"Funktion Fieles auswählen und kopieren.")
    
    
    Global $BtnLogDatei = GUICtrlCreateButton("Logdateien",21,607,100,30,-1,-1)
    
    GUICtrlSetTip(-1,"Logdateien prüfen, sehen ob alles richtig gelaufen ist.")
    
    
    Global $BtnEinstellungen = GUICtrlCreateButton("Einstellungen",21,664,100,30,-1,-1)
    
    GUICtrlSetTip(-1,"Die Programm Einstellungen prüfen oder ändern.")
    
    
    Global $BtnEnde = GUICtrlCreateButton("Ende",21,778,100,30,-1,-1)
    
    GUICtrlSetTip(-1,"Programm beenden.")
    
    
    ;---------------Kopfzeilen definieren ------------------------------------------
    
    
    GUICtrlCreateLabel("StreamServ Entwicklung nach Test.",380,30,331,47,-1,-1)
    
    GUICtrlSetFont(-1,15,400,0,"MS Sans Serif")
    
    GUICtrlSetBkColor(-1,"-2")
    
    
    $RFC_Nr = GUICtrlCreateInput("20",510,100,150,20,-1,$WS_EX_CLIENTEDGE)
    
    GUICtrlSetFont(-1,10,400,0,"MS Sans Serif")
    
    GUICtrlSetTip(-1,"Geben Sie bitte die RFC Nummer ein.")
    
    GUICtrlCreateLabel("RFC Nr.:",428,104,68,20,-1,-1)
    
    GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
    
    GUICtrlSetBkColor(-1,"-2")
    
    
    GUICtrlCreateLabel("Programmierer:",380,140,116,24,-1,-1)
    
    GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
    
    GUICtrlSetBkColor(-1,"-2")
    
    $Programmierer = GUICtrlCreateInput("",510,140,150,20,-1,$WS_EX_CLIENTEDGE)
    
    GUICtrlSetFont(-1,10,400,0,"MS Sans Serif")
    
    
    GUICtrlSetTip(-1,"Geben Sie bitte den Namen des Programmieres ein.")
    
    GUICtrlCreateLabel("Datum:",442,185,50,15,-1,-1)
    
    GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
    
    GUICtrlSetBkColor(-1,"-2")
    
    
    GUICtrlCreateDate("Saturday, 1. January 2011",510,179,186,21,-1,-1)
    
    $Notizen = GUICtrlCreateInput("",835,100,236,105,-1,$WS_EX_CLIENTEDGE)
    
    GUICtrlCreateLabel("Notitzen:",760,100,60,15,-1,-1)
    
    GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
    
    GUICtrlSetBkColor(-1,"-2")
    
    
    GUICtrlCreateLabel("Sie sind angemeldet als: " & @UserName ,760,50,400)
    
    GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
    
    GUICtrlSetBkColor(-1,"-2")
    
    
    GUISetState(@SW_SHOW)
    
    Global $ChildBreite = 1000
    
    Global $ChildHoehe = 700
    
    #EndRegion
    
    ;---------------Programm start ------------------------------------------
    
    
    While 1
    
    $nMsg = GUIGetMsg()
    
    Switch $nMsg
    
    Case $GUI_EVENT_CLOSE
    
    ExitLoop
    
    
    ;======================================================================================================================================
    
    ; DUX Dateien kopieren
    
    ;======================================================================================================================================
    
    Case $BtnDuxKopie
    
    _MeinFunktionsname()
    
    
    ;======================================================================================================================================
    
    ; Overlay LXF Dateien kopieren
    
    ;======================================================================================================================================
    
    Case $BtnOverlayLxf
    
    
    $OverlayLxfGui = GUICreate("", $ChildBreite, $ChildHoehe, 170, 220, BitOR($WS_POPUP, $WS_BORDER), $WS_EX_TOPMOST)
    
    GUISetBkColor(0xfffaf0, $OverlayLxfGui)
    
    $BtnCancel = GUICtrlCreateButton("Cancel", 800, 500, 90, 20)
    
    $BtnLxfAusw = GUICtrlCreateButton("Dateien", 400, 300, 90, 20)
    
    $BtnOk = GUICtrlCreateButton("OK", 700, 500, 90, 20)
    
    GUISetState(@SW_SHOW, $OverlayLxfGui)
    
    DllCall("user32.dll", "int", "SetParent", "hwnd", WinGetHandle($OverlayLxfGui), "hwnd", WinGetHandle($MainGui))
    
    
    GUICtrlCreateLabel("Overlay Dateien Kopieren.",260,100,300,20,-1,-1)
    
    GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
    
    GUICtrLCreateLabel("Klicken Sie auf den Button Datein, im darauf folgenden Fenster wählen Sie die zu übernehmenden Datein aus.", 260, 140)
    
    GUICtrLCreateLabel("Drücken Sie danach auf den OK Butten, anschließend werden die ausgeählten Dateien noch einmal angezeigt.", 260, 160)
    
    GUICtrlCreateLabel("Ein weitere Klick auf OK erstellt eine Sicherungskopie der Orginaldatein und kopiert die Dateien auf den TestServer.", 260, 180)
    
    GUICtrlSetBkColor(-1,"-2")
    
    EndSwitch
    
    WEnd
    
    Func _MeinFunktionsname()
    
    $DuxGUI = GUICreate("", $ChildBreite, $ChildHoehe, 170, 220, BitOR($WS_POPUP, $WS_BORDER), $WS_EX_TOPMOST)
    
    GUISetBkColor(0xfffaf0, $DuxGUI)
    
    $BtnKopieOk = GUICtrlCreateButton("Kopie", 800, 500, 90, 20)
    
    $BtnKopieCancel = GUICtrlCreateButton("Cancel", 800, 600, 90, 20)
    
    GUISetState(@SW_SHOW, $DuxGUI)
    
    DllCall("user32.dll", "int", "SetParent", "hwnd", WinGetHandle($DuxGUI), "hwnd", WinGetHandle($MainGui))
    
    GUICtrlCreateLabel("Dux File.:",260,100,70,20,-1,-1)
    
    GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
    
    GUICtrlSetBkColor(-1,"-2")
    
    $DuxDatei = GUICtrlCreateInput("",340,100,150,20,-1,$WS_EX_CLIENTEDGE)
    
    $EingabeFile = GUICtrlRead(26)
    
    
    While 1
    
    $nMsg = GUIGetMsg()
    
    switch $nMsg
    
    Case $BtnKopieOk
    
    $DevDuxPath = IniRead("Settings.ini", "pfade", "Dev_Dux","" )
    
    $DevEventPath = IniRead("Settings.ini", "pfade", "Dev_Event","" )
    
    $DevProcessPath = IniRead("Settings.ini", "pfade", "Dev_Process","" )
    
    
    Local $aFileList = _FileListToArray($DevDuxPath, $EingabeFile)
    
    
    If @error = 1 Then
    
    MsgBox($MB_SYSTEMMODAL, "Fehler 1", "Path was invalid.")
    
    ExitLoop
    
    EndIf
    
    If @error = 4 Then
    
    MsgBox($MB_SYSTEMMODAL, "Fehler 4", $DevDuxPath & $EingabeFile)
    
    ExitLoop
    
    EndIf
    
    ; Display the results returned by _FileListToArray.
    
    _ArrayDisplay($aFileList, "$aFileList")
    
    
    ExitLoop
    
    
        Case $BtnKopieCancel
    
    GUIDelete($DuxGUI)
    Return 0
    
    EndSwitch
    
    WEnd
    
    EndFunc
    
    #cs
    
    While 1
    
    $aMsg = GUIGetMsg()
    
    Switch $aMsg
    
    Case $BtnLxfAusw
    
    ; Create a constant variable in Local scope of the message to display in FileOpenDialog.
    
    Local $sMessage = "Um mehrere Dateien auszuwählen, die Taste [Strg] oder [Shift] gedrückt halten."
    
    
    ; Display an open dialog to select a list of file(s).
    
    Local $sFileOpenDialog = FileOpenDialog($sMessage, @WindowsDir & "\", "Images (*.jpg;*.bmp; *.*)|Videos (*.avi;*.mpg)", BitOR($FD_FILEMUSTEXIST, $FD_MULTISELECT))
    
    If @error Then
    
    ; Display the error message.
    
    MsgBox($MB_SYSTEMMODAL, "", "Sie haben keine Datei ausgewählt.")
    
    ExitLoop
    
    Else
    
    
    ; Replace instances of "|" with @CRLF in the string returned by FileOpenDialog.
    
    $sFileOpenDialog = StringReplace($sFileOpenDialog, "|", @CRLF)
    
    
    ; Display the list of selected files.
    
    MsgBox(0, "", "Sie haben folgende Dateien ausgewählt:" & @CRLF & $sFileOpenDialog)
    
    ExitLoop
    
    
    EndIf
    
    
    ; KopieLxf()
    
    
    Case $BtnCancel
    
    ExitLoop
    
    MsgBox(0, "", "raus oder nicht")
    
    Case $BtnDuxKopie
    
    ExitLoop
    
    Case $BtnLanguage
    
    ExitLoop
    
    
    EndSwitch
    
    WEnd
    
    #ce
    Alles anzeigen
  • ListView Sortierungshäkchen entfernen

    • autoiter
    • 7. August 2019 um 15:32

    Oh shit. Na klar. :)

  • ListView Sortierungshäkchen entfernen

    • autoiter
    • 7. August 2019 um 15:27

    Ach, warum probierst du denn meinen Code auch wirklich aus?!? 8o

    Ich hatte das aus einem anderen Testcode von mir rauskopiert und mir ist erst später aufgefallen, dass hier die Bedingung nicht gegeben ist für diesen Aufruf. Dann habe ich versucht es heimlich zu korrigieren. Aber du hast es nun ans Tageslicht gebracht ^^

    Schau dir meinen letzten Beitrag nochmal an. Der Code ist bei diesem Aufruf ein anderer, als zum Zeitpunkt, als du das kopiert hast. Sorry dafür.

  • ListView Sortierungshäkchen entfernen

    • autoiter
    • 7. August 2019 um 13:03

    Hallo smaster123

    Das wäre mein Vorschlag für dein Skript, wenn du es auch noch etwas kürzer haben wolltest..

    Wenn dir das zu viel Aufwand ist, genügt es auch, wenn du unterste Schleife in deinen Code einbaust. Mit _GUICtrlHeader_SetItemFormat kann man den Pfeil entfernen. Das _GUICtrlListView_SortItems braucht es dann gar nicht mehr. Dennoch würde ich weiter beachten _GUICtrlListView_BeginUpdate und _GUICtrlListView_EndUpdate zu verwenden.

    Code
    Global $g_aRadio[15][2]
    ; So könnte man das mit einem globalen Array machen. In Null würde immer die ID des Controls gespeichert und in Eins der zugehörige Suchbegriff für deine SQL Abrfrage.
    ; $g_aRadio[0][0] = GUICtrlCreateRadio("Typ", 0, 0)
    ; $g_aRadio[0][1] = "typ"
    ; $g_aRadio[1][0] = GUICtrlCreateRadio("Stockwerk", 100, 0)
    ; $g_aRadio[1][1] = "stockwerk"
    ; $g_aRadio[2][0] = GUICtrlCreateRadio...
    
    
    Func suchen()
    
        $suche = GUICtrlRead($Input1)
        ; If $suche = "" Then Return SetError(1)
    
        Local $iIndex
        For $i = 0 To UBound($g_aRadio) - 1
            If GUICtrlRead($g_aRadio[$i][0]) = 1 Then $iIndex = $i
        Next
    
        SQLOPEN()
        $getrecord = _MSSQL_GetRecord($sqlCon, "TabelleA", "*", "where " & $g_aRadio[$g_aRadio, $iIndex][1] & " like '%" & $suche & "%' Order by ID desc")
        ; If @error Then ..
        SQLCLOSE()
    
        _ArrayDelete($getrecord, 0)
    
        _GUICtrlListView_BeginUpdate($ListView1)
        _GUICtrlListView_DeleteAllItems($ListView1)
        _GUICtrlListView_AddArray($ListView1, $getrecord)
    
        For $i = 0 To _GUICtrlListView_GetColumnCount($ListView1) - 1 ; könnte auch Ubound($g_aRadio) - 1 sein.
            $aInfo = _GUICtrlListView_GetColumn($ListView1, $i)
            _GUICtrlHeader_SetItemFormat($ListView1, $i, 0x00000000) ; <-- Pfeil wird entfernt. Dabei geht aber der Titel verloren. Deshalb die beiden Zeilen drumherum ^^
            _GUICtrlListView_SetColumn($ListView1, $i, $aInfo[5])
            _GUICtrlListView_SetColumnWidth($ListView1, $i, $LVSCW_AUTOSIZE_USEHEADER)
        Next
        _GUICtrlListView_EndUpdate($ListView1)
    
    EndFunc   ;==>suchen
    Alles anzeigen
  • ListView Sortierungshäkchen entfernen

    • autoiter
    • 7. August 2019 um 10:57

    Deine Suche ist aber ein langes Konstrukt. Das könnte man vllt. etwas kürzer machen, wenn du mit Arrays, Schleifen und evtl. Enum arbeitest.
    Warum du _GUICtrlListView_BeginUpdate und _GUICtrlListView_EndUpdate da brauchst, damit die Beschriftung nicht verschwindet weiß ich auch nicht.
    Allerdings solltest du es (wenn Zeit schon eine Rolle spielt so einsetzen, dass es dir auch Vorteile bringt. Bei größeren Manipulationen an der Listview solltest du das Bildschirmupdate der Listview als erstes abschalten mit _GUICtrlListView_BeginUpdate, dann deine Arbeit erledigen und danach mit _GUICtrlListView_EndUpdate das fertige Ergebnis anzeigen lassen. Das beschleunigt den Prozess enorm (bei _GUICtrlListView_AddArray ist das nicht notwendig). Das _GUICtrlListView_SortItems wird dann auch deutlich schneller sein.

    Allerdings findet sich bestimmt noch jemand, der eine sauberere Lösung weiß, als solch einen Workaround.

  • ListView Sortierungshäkchen entfernen

    • autoiter
    • 6. August 2019 um 16:51

    smaster123

    Eben habe ich es einfach mal ausprobiert mit _GUICtrlListView_SortItems($idListView, -1). Das entfernt den Haken.

  • ListView Sortierungshäkchen entfernen

    • autoiter
    • 6. August 2019 um 09:54

    Hallo smaster123
    Ich weiß nicht, wie man den Haken wieder entfernt. Bis dir da jemand hilft, könntest du einfach mit _GUICtrlListView_SortItems die ID Spalte markieren. Dann sieht es wenigstens stimmig aus.

  • Pixelsearch Funktion

    • autoiter
    • 5. August 2019 um 19:59

    Schau dir doch bitte mal folgendes an: https://autoit.de/wiki/index.php/Tutorial
    Dort wirst du zu den verschiedenen Problemen, die dich bewegen Antworten finden - wirklich.

  • AutoIt & Win-Defender - Exes werden willkürlich gelöscht, mal ja, mal nicht.

    • autoiter
    • 5. August 2019 um 19:48

    Ach komm, dass war doch nur auf deine MsgBox-Frage und "willkürlich" bezogen. Nachdem du seine Antwort gelesen hast, siehst du doch vielleicht ein, wie so ein Programm in fp rutschen kann und auch, dass nicht "willkürlich" gelöscht wurde...

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™