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

Beiträge von Moombas

  • Access starten und maximieren

    • Moombas
    • 24. August 2020 um 15:28

    Warum so kompliziert?

    Code
    ShellExecute('Pfad zur access.exe', 'C:\Datenbanken\Datenbank1.accdb', "", $SHEX_OPEN, @SW_MAXIMIZE)

    Müsste doch eigentlich funktionieren (siehe @SW_MAXIMIZE).

    Und für das aktualisieren gibt es sicherlich Mechaniken in Access, die sich nutzen lassen könnten...

  • Suche einfach erweiterbaren Einstellungen-Dialog (Program Settings)

    • Moombas
    • 13. August 2020 um 07:51

    Professor Bernd 's Offtopic: Ich stimme dir zu. Sobald es um Anwendungen mit ggf. Aufwändiger GUI geht, programmiere ich wenn möglich immer in Delphi (privat) bzw. Lazarus weil das wesentlich angenehmer und auch nicht getrennt ist (GUI-"Designer" und Programmieren in einem, ohne dafür alles per Hand in den Code schreiben zu müssen).

  • kompiliertes Autoit Script mit #require Admin aber im Usercontext starten

    • Moombas
    • 12. August 2020 um 11:50

    Du könntest auch die entsprechenden Teile in ein eigenes Programm auslagern und dann mit entsprechenden Rechten bzw. als entsprechender User starten.

    Ob das möglich ist, ergibt sich jedoch aus deinem Programm.

  • wie einloggen in meinen Linux-Receiver

    • Moombas
    • 10. August 2020 um 15:43

    Schau mal hier: https://qastack.com.de/superuser/1103…0%2Dm%20handelt.

    Zitat

    Um Befehle automatisch mit PuTTY auszuführen, übergeben Sie mit dem -mSchalter eine Textdatei mit den auszuführenden Befehlen , z.

    Code
    putty.exe -ssh user@host  -m commands.txt

    Wo das commands.txtenthalten würde

    Code
    usrun -u root rush

    Hoffe das hilft.

  • Windows - Dienste und Aufgaben managen

    • Moombas
    • 5. August 2020 um 15:33

    Bezüglich der Dienste, kann ich folgende empfehlen:

    Windows Services (by engine) - Windows Services UDF.

    Für die Aufgaben habe ich aktuell nichts, da nicht genutzt.

  • Stack Overflow

    • Moombas
    • 4. August 2020 um 09:24
    Zitat von 20721

    ja das ich mit der Schleife ein Problem habe, ist mir ja bekannt.

    Hatte nur eine komplette Blockade wie ich da raus kommen oder wie man es einfacher lösen kann.

    Als Tipp: Verwende z.B.

    AutoIt
    #AutoIt3Wrapper_Au3Check_Parameters=-q -d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6 -w 7

    Dann findest du schon viele Fehler vorweg und lernst "vernünftiges" Deklarieren/Initialisieren von Variablen etc.

    Kannst es natürlich auch anpassen, nicht jeder braucht alle Parameter.

  • Stack Overflow

    • Moombas
    • 31. Juli 2020 um 13:43

    Tipp1: Hier im Forum kannst du deinen Code als Code formatiert anzeigen lassen (Schaltfläche </>), dann kann man das besser lesen.

    Tipp2: Was alpines schon schrieb nur schon mal mit einer kleinen Lösung:

    1. Sofern du die Pause nicht noch woanders aufrufen willst/musst, kannst du sie normal ans Ende deiner Funktion einbauen.
    2. Geb deiner Pause Funktion doch eine Variable mit, dann kannst du sie variabler mehrfach nutzen
    3. Nutze eine While-Schleife, wenn dir die Anzahl der Durchläufe unbekannt ist und bau dir eine Möglichkeit ein diese auch zu beenden. (im unteren Code noch nicht enthalten!)
    4. Deklariere jede Variable.
    5. Ein leeres then macht man nicht, dafür gibt es "not"
    6. Kann dein Skript so wie es war nicht funktionieren.
    C
    #include <array.au3>
    #include <File.au3>
    #include <WinAPIFiles.au3>
    
    while 1
      kopieren()
    wend
    
    Func kopieren()
    Local $Quelle, $i, $Verzeichnis, $Zugriff, $byte;, $Ziel1, $Ziel2
        $Quelle = "D:\Ordner\" 
    ;~  $Ziel1 = "\\Server\D$\Verzeichnis\" Wird nicht verwendet -> Überflüssig
    ;~  $Ziel2 = "\\Server\D$\Verzeichnis1\Verzeichnis2" Wird nicht verwendet -> Überflüssig
    Local $PDF = _FileListToArrayRec($Quelle,"*.pdf", 1,1)
    
        For $i = 1 to UBound($PDF, $UBOUND_ROWS) - 1
            $Verzeichnis = StringSplit($PDF[$i],"\")
            $Zugriff = _WinAPI_FileInUse($Quelle & $PDF[$i])
            $byte = FileGetSize($Quelle & $PDF[$i])
    
            If not ($Zugriff = "1" OR $byte = "0") Then
                If $Verzeichnis[1] = "Allgemein" then
                    FileMove($Quelle & $PDF[$i], $Verwa & $Verzeichnis[2], 8) ;Wo kommt $Verwa her!? $Ziel1 ?
                Else
                    FileMove($Quelle & $PDF[$i], $Home & $Verzeichnis[1] & "\Scanner\" & $Verzeichnis[2], 8) ;Wo kommt $Home her!? $Ziel2 ?
                EndIf
            EndIf
        Next
    
        For $i = 1 to UBound($PDF, $UBOUND_ROWS) - 1
            _ArrayDelete($PDF, $i)
        Next
    
        pause(10)
    EndFunc
    
    Func pause($Sek)
        sleep($Sek * 1000)
    EndFunc
    Alles anzeigen
  • Windows Dienste überwachen/de-/aktivieren

    • Moombas
    • 23. Juli 2020 um 07:59

    Ich nutze die Services.au3 von "engine, die hat bei mir bisher alles hin bekommen :)

  • Allgemeiner Meinungsaustausch zum Thema "Corona"

    • Moombas
    • 26. Juni 2020 um 15:34

    Deine Logik ist nicht falsch, nur die Dummheit einiger vieler ist leider grenzenlos... Sorry aber anders kann man das nicht mehr sagen!

  • Verschlüsselung in Autoit

    • Moombas
    • 26. Juni 2020 um 11:16
    Zitat von alpines

    Das Ergebnis liegt in Binaryform vor, also musst du das auch dementsprechend zurückumwandeln. Ist sogar im Hilfebeispiel vorhanden ;)

    Habe ich auf Grund dessen nicht gesehen, da ich den GUI-Part ignoriert habe (weil bei mir nicht vorhanden).

    So ist das wenn man da mit einer anderen Logik ran geht (Erst zu 100'% richtig umwandeln und erst dann die Übergabe in die GUI und nicht bei der Übergabe das Umwandeln)

  • Verschlüsselung in Autoit

    • Moombas
    • 26. Juni 2020 um 11:07

    -.- Ich wusste es wird etwas logisches/einfaches sein, aber das war fast ZU einfach XD

    Danke, hab es nach dem Entschlüsseln eingebaut und funktioniert.

  • Verschlüsselung in Autoit

    • Moombas
    • 26. Juni 2020 um 10:48

    Ich wollte ein kleines Programm schreiben, das einen Text ver- bzw. entschlüsselt.

    Vom Prinzip liest sich das nicht schwer in der Hilfe, ich komme jedoch nicht weiter.

    AutoIt
    #AutoIt3Wrapper_Au3Check_Parameters=-q -d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6 -w 7
    
    #include <Crypt.au3>
    #include <MsgBoxConstants.au3>
    
    Global $Eingabe, $Richtung
    
    While 1
        $Eingabe  = InputBox('String', 'Type in the string: ', ClipGet(), '')
        If @error Then Exit
        $Richtung  = MsgBox($MB_YESNO, 'Encode or Decode', 'Do you want to encode the string?')
        If @error Then Exit
        If StringLen($Eingabe) > 0 Then
            Doit()
        Else
            Exit
        EndIf
    WEnd
    
    Func Doit()
    Local $vCryptKey
        $vCryptKey = _Crypt_DeriveKey(StringToBinary('EinKryptischerString'), $CALG_AES_256)
        _Crypt_Startup()
        if $Richtung = $IDYES then ;Verschlüsseln
            $Eingabe = _Crypt_EncryptData ($Eingabe, $vCryptKey, $CALG_USERKEY)
        ElseIf $Richtung = $IDNO then ;Entschlüsseln
            $Eingabe = _Crypt_DecryptData ($Eingabe, $vCryptKey, $CALG_USERKEY)
            $Eingabe = BinaryToString($Eingabe)
        EndIf
        ClipPut($Eingabe)
        MsgBox($MB_SYSTEMMODAL, "", "The following data is stored in the clipboard: " & @CRLF & $Eingabe)
    
        _Crypt_DestroyKey($vCryptKey) ; Destroy the cryptographic key.
        _Crypt_Shutdown() ; Shutdown the crypt library.
    
        Exit
    EndFunc
    Alles anzeigen

    Problem dabei ist nun, das der verschlüsselte String nicht wieder richtig entschlüsselt wird. Was mache ich falsch?

    Offtopic: Beim Thema erstellen in diesem Bereich viel mir auf das er oben links als Bereich (Abkürzung) "HundÜ" anzeigt, müsste aber "HundU" sein :P

  • If-Abfrage mit mehreren OR funktioniert nicht

    • Moombas
    • 22. Juni 2020 um 08:58
    Zitat von Faultier_1982

    ist es also zu betrachten wie in der Mathematik Punkt vor Strich Klammer zuerst? In diesem Fall And vor Or, Klammer zuerst?

    Die Fett markierte Aussage ist verkehrt. Wie Bitnugger bereits schrieb: And & Or haben die gleiche Priorität, sind also gleichwertig (wie z.B. + und -).

    Generell hat das mit der Mathematik gar nicht mal so viel zu tun, sondern mit reiner Logik. Du Schachtelst ja auch beim sprechen Aussagen:

    Beispiel:

    Ich möchte ein Brot mit Wurst oder ein Brötchen mit Käse. => Ich möchte ein (Brot mit Wurst) oder (ein Brötchen mit Käse).

    Das "mit" ersetzt hierbei das "and" und das "oder" das "or". Logisch wäre das also:

    AutoIt
    If ($Brot and $Wurst) or ($Broetchen and $Kaese) then MsgBox(BitOR(4096, 64), "Ergebnis", "Ich bin glücklich")

    Ohne die Klammern würde die Maschine das so verstehen:

    AutoIt
    If $Brot and $Wurst or $Broetchen and $Kaese then MsgBox(BitOR(4096, 64), "Ergebnis", "Ich habe Brot, Wurst und Käse und VIELLEICHT habe ich auch ein Brötchen.")

    Dieser Zusammenhang ist einem als menschlicher Leser (auf Grund der Zusammenhänge) klar, eine Maschine jedoch kann so etwas nicht wissen und muss ihr durch/mit den Klammern gezeigt werden.

  • Java Script aus autoit

    • Moombas
    • 19. Juni 2020 um 08:30

    Schau mal hier: https://www.autoitscript.com/forum/topic/67…m-command-line/

  • Function in einer Schleife laufen lassen, wobei bei jeder Wiederholung die jeweilige Variable sich um einen Wert erhöht

    • Moombas
    • 18. Juni 2020 um 14:10

    Schau mal drüber:

    AutoIt
    Opt('MustDeclareVars', 1)
    #include <Excel.au3>
    
    Global $oExcel_1 = _Excel_Open()
    Global $var = "C:\Users\\Desktop\Read ideal.xlsx"
    Global $oWorkbook = _Excel_BookOpen($oExcel_1, $var)
    
    WinActivate("Read ideal - Microsoft Excel")
    
    Global $_nameenglisch, $_eigenschaftfurvorlage, $_beschreibungdeutsch, $_beschreibungenglisch, $_nichts1, ... , $_hashtag24englisch, $_hashtag25englisch, ; Insgesamt 60 "$_read´s"
    Global $aSleep = [1000, 2000, 3000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000 1000, 1000, 1000], ; ( $aSleep für 60 "$_read´s" )
    Global $iCount ;? wirklich als globale Variable notwendig?, denke hier wäre $i richtig
    Global $aRanges = [ ['B2', 'B3', 'B4', 'B5'........´B61´],_
    [ ['C2', 'C3', 'C4', 'C5'........´C61´]
    ....
    ['AY2', 'AY3', 'AY4', 'AY5'........´AY61´] _
    ]
    
    
    
    For $i = 0 To UBound($aRanges) -1 Step 1
        $_name_deutsch = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][0])
        $_name_englisch = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][1])
        $_eigenschaft_für_vorlage = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][2])
        $_beschreibung_deutsch = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][3])
        $_beschreibung_englisch = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][4])
        $_nichts_1 = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][5])
        $_nichts_2 = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][6])
        $_nichts_3 = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][7])
        $_nichts_4 = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][8])
        $_hashtag_1_deutsch = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][9])
        .....
        $_hashtag_25_englisch = _Excel_RangeRead($oWorkbook, Default, $aRanges[$i][59])
    
        T_Shirt_Design_hochladen($_name_deutsch, $_name_englisch, $_eigenschaft_für_vorlage, $_beschreibung_deutsch, $_beschreibung_englisch, $_nichts_1, $_nichts_2,$_nichts_3, $_nichts_4, $_hashtag_1_deutsch, $_hashtag_2_deutsch,$_hashtag_3_deutsch, $_hashtag_4_deutsch, $_hashtag_5_deutsch, $_hashtag_6_deutsch, $_hashtag_7_deutsch, $_hashtag_8_deutsch, $_hashtag_9_deutsch, $_hashtag_10_deutsch, $_hashtag_11_deutsch, $_hashtag_12_deutsch,$_hashtag_13_deutsch, $_hashtag_14_deutsch, $_hashtag_15_deutsch, $_hashtag_16_deutsch, $_hashtag_17_deutsch, $_hashtag_18_deutsch, $_hashtag_19_deutsch, $_hashtag_20_deutsch, $_hashtag_21_deutsch,$_hashtag_22_deutsch, $_hashtag_23_deutsch, $_hashtag_24_deutsch, $_hashtag_25_deutsch, $_nichts_5, $_hashtag_1_englisch, $_hashtag_2_englisch, $_hashtag_3_englisch, $_hashtag_4_englisch, $_hashtag_5_englisch,$_hashtag_6_englisch, $_hashtag_7_englisch, $_hashtag_8_englisch, $_hashtag_9_englisch, $_hashtag_10_englisch, $_hashtag_11_englisch, $_hashtag_12_englisch,$_hashtag_13_englisch, $_hashtag_14_englisch, $_hashtag_15_englisch, $_hashtag_16_englisch, $_hashtag_17_englisch, $_hashtag_18_englisch, $_hashtag_19_englisch, $_hashtag_20_englisch,$_hashtag_21_englisch, $_hashtag_22_englisch, $_hashtag_23_englisch, $_hashtag_24_englisch, $_hashtag_25_englisch, $aSleep , $i + 1) ; ($i + 1 = $iCount)
    Next
    
    
    
    Func T_Shirt_Design_hochladen($_readA, $_readB, $_readC, $aSleep, $iCount) ;$aSleep und $iCount würde ich hier umbennen z.B. $aLocalSleep und $iLocalCount
    
    If $iCount = 1 Then    ;Hier dann auch entsprechend umbennen
    
    ....
    .....
    ....
    
    EndFunc
    Alles anzeigen

    Und wenn du es ganz korrekt machen möchtest bau mal als Zeile "#AutoIt3Wrapper_Au3Check_Parameters=-q -d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6 -w 7" ein und kompiliere dann.

  • Function in einer Schleife laufen lassen, wobei bei jeder Wiederholung die jeweilige Variable sich um einen Wert erhöht

    • Moombas
    • 18. Juni 2020 um 10:50

    Trotzdem nochmal eine Anmerkung:

    Du definierst deine Variablen "Local", sind jedoch "Global" (alle Deaklarationen außerhalb von Funktionen sind immer Global) und verwendest diese zusätzlich wieder mit dem gleichen Namen in einer Funktion (bei deren Definition und bei der Übergabe/Verwendung). Damit hast du theoretisch eine Globale und eine Lokale Variable mit dem gleichen Namen. Das KANN zu Problemen führen.

    Ich empfehle dir das richtig zu definieren und Global und Lokal strikt voneinander zu trennen. Nur um das mal zu veranschaulichen:

    AutoIt
    #AutoIt3Wrapper_Au3Check_Parameters=-q -d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6 -w 7 
    #include <Date.au3>
    ...
    #include <WindowsConstants.au3>
    
    Global $logfile = 'XYZ'    ;Definition Globale Variable (überall verfügbar)
    
    Funktion($logfile) ;Funktionsaufruf mit der Übergabe der $Globalen Variable, diese wird dabei nicht verändert!
    
    Func Funktion($Log)
    Local $Install    
        $logfile = 'abc'       ;Ändern der Globalen Variable $logfile
        if $Log = 'XYZ' then   ;Ändern der Lokalen Variable $Log, die den Inhalt der übergeben Variable $logfile zum Zeitpunkt der Übergabe hatte
           $Install = 'not'    ;Ändern der Lokalen Variable $Install
        endif
        ;$logfile = 'abc'
        ;$Log = 'XYZ'
        ;$Install = 'not'
    EndFunc
    Alles anzeigen
  • Function in einer Schleife laufen lassen, wobei bei jeder Wiederholung die jeweilige Variable sich um einen Wert erhöht

    • Moombas
    • 17. Juni 2020 um 14:46

    Ihm fehlt sicherlich das "a" und meint spreadshirt.de

  • Browser kopflos / headless steuern

    • Moombas
    • 15. Juni 2020 um 15:53
    Zitat von BugFix

    Und weshalb soll dann ein Bild!! übertragen werden, noch dazu im Minutentakt? Das ist doch eine völlig unnütze Verschwendung eurer raren Onlinekapazität. Dafür reichen doch ein paar Byte in Textform. Zu einer Grafik kann man das dann nach Empfang ja wieder aufhübschen.

    Ich gehe davon aus, das er nicht weiß, wie er die Daten aus dem Browser bekommt und macht deswegen Screenshots.

  • Browser kopflos / headless steuern

    • Moombas
    • 15. Juni 2020 um 14:54

    Ich verstehe dich nicht. Der Browser im Vollbild (nicht mit "maximiert" verwechseln!) zeigt nichts anderes an, als die aktive Webseite.

    Wenn du Chrome hast, drück mal "F11".

    Und mehr brauchst du doch gar nicht. Browser starten (gewünschte Webseite kann ja als Parameter übergeben werden), Vollbild einschalten und gelegentlich mit "F5" aktualisieren.

    Fertig.

    Oder ist auf der Webseite selber mehr zu sehen als nur der Anwesenheitsstatus?

  • Browser kopflos / headless steuern

    • Moombas
    • 15. Juni 2020 um 13:39

    Warum nicht den Browser im Vollbild anzeigen?

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™