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

Beiträge von bernd670

  • Eigentschaften einer Verknüpfung ändern

    • bernd670
    • 28. Juni 2007 um 15:55

    Hallo,

    am einfachsten ist es die Daten mit FileGetShortcut einzulesen, die Verknüpfung zu löschen und mit FileCreateShortcut eine neue Verknüpfung mit den geänderten Daten zu erstellen!

  • SMS Sender - 100%ig kosteloses SMS Senden!

    • bernd670
    • 27. Juni 2007 um 12:54

    Hallo,

    ich weiss nicht ob es schon jemand gemerkt hat aber die max. SMS-Länge bei smsgott.de ist auf 147 Zeichen beschränkt!

  • Generelle Gui Fragen Die Man Braucht

    • bernd670
    • 27. Juni 2007 um 12:24

    Hallo,

    ich behaubte mal das dein Board nicht das gleiche ist wie das hier! Das von dir ist von PHPKIT, dass hier ist von WoltLab.

    Der Spoiler ist ein sogenannter BBCode, einfach mal mit Google nach spoiler bbcode phpkit suchen!

  • SUB und ControlID

    • bernd670
    • 27. Juni 2007 um 10:44

    Hallo,

    es gibt auch einen OnEvent-Modus. In der Hilfe unter "GUI Reference" -> "OnEvent Mode"!

    @it: *to lahm*, @Mega war mal wieder schneller!

  • Regular Expression

    • bernd670
    • 26. Juni 2007 um 18:10

    Hallo,

    man braucht doch nur die Punkte zu zählen und wenn es mehr als einer ist den String als ungültig zu erklären.

    [autoit]

    Global $Str[5]
    $Str[0] = 'abc"cvghaj.doc' ; ungültig wegen
    $Str[1] = 'ahjdg&dlmsh.xls'; ungültig wegen
    $Str[2] = 'abc.def.doc' ; ungültig wegen
    $Str[3] = 'abcdef.doc' ; gültig
    $Str[4] = 'c:\test.doc' ; gültig

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

    For $i = 0 To UBound($Str) - 1
    ConsoleWrite($Str[$i] & " : " & ValidFileName($Str[$i]) & @CRLF)
    Next

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

    Func ValidFileName($String)
    StringReplace($String, ".", ".")
    Return Not ((@extended > 1) Or StringRegExp($String, '[$%"&\[\#~]', 0))
    EndFunc

    [/autoit]
  • Fortlaufende Variablen

    • bernd670
    • 25. Juni 2007 um 01:27

    Hallo,

    so wird es zu einem Fehler kommen! Bei Arrays beginnt der Index mit 0!


    [autoit]

    global $checkbox[20] , $top = 70

    for $i = 0 to 19
    $checkbox[$i] = GUICtrlCreateCheckbox("Das ist die" & $i + 1 & ". Checkbox",70,$top)
    $top += 30
    Next

    [/autoit]
  • Mastermind (ICH HABE WIEDER INTERNET JUCHUU)

    • bernd670
    • 23. Juni 2007 um 14:55

    Hallo,

    die Auswertung der Zahlen funktioniert noch nicht richtig, s. Anhang!

    Das Ergebnis ist 5 5 5 2, also hätte in Zeile 2 schon eine und in Zeile 4 drei grüne Lampen leuchten müssen!

    Dateien

    Zwischenablage.jpg 32,2 kB – 0 Downloads
  • Patcher erstellen

    • bernd670
    • 23. Juni 2007 um 11:18

    _ArrayMin, _ArrayMax, _ArrayMinIndex und _ArrayMaxIndex beziehen sich auf den Inhalt eines Array nicht auf dien Anzahl der Elemente!

    _ArrayMin gibt den kleinsten Wert im Array zurück
    _ArrayMax gibt den grössten Wert m Array zurück

    _ArrayMinIndex gibt die Nummer des Elements mit dem kleinsten Wert im Array zurück
    _ArrayMaxIndex gibt die Nummer des Elements mit dem grössten Wert im Array zurück

  • Patcher erstellen

    • bernd670
    • 23. Juni 2007 um 10:50

    Hallo,

    der Fehler liegt an der For-Schleife, _ArrayMax gibt den größten Wert im Array zurück und nicht die Anzahl der Element!

    Schreib mal die For-Anweisung so:

    [autoit]

    For $i = 0 To Ubound($array_alt) - 1

    [/autoit]


    @1: Ausserdem muss sichergestellt sein das $array_neu mindesten soviel element hat wie $array_alt, ansonsten gibt die Schleife immer den Fehler zurück!

  • Datei kopieren

    • bernd670
    • 22. Juni 2007 um 22:40

    Hallo,

    wenn Du den String

    Code
    K;380;D--01/9005547731;9;20070501;20070501;20070531;31;;5608421124;;;;


    der bei dir ja in $frta[2] steht mit

    [autoit]

    $split = StringSplit($frta[2],";")

    [/autoit]

    zerlegst steht in

    [autoit]

    $split[0] = 14 ;Anzahl der Teilstrings
    $split[1] = "K"
    $split{2] = "380"
    $split[3] = "D--01/9005547731"
    $split[4] = "9"
    $split[5] = "20070501"
    $split[6] = "20070501"
    $split[7] = "20070531"
    $split[8] = "31"
    $split[9] = ""
    $split[10] = "5608421124"
    $split[11] = ""
    $split[12] = ""
    $split[13] = ""
    $split[14] = ""

    [/autoit]

    Was willst Du mit

    [autoit]

    StringInStr($frta[2], $split[6])

    [/autoit]

    den erreichen?

  • Datei kopieren

    • bernd670
    • 22. Juni 2007 um 21:18

    Hallo,

    warum zerlegst Du nicht einfach die Zeile mit StringSplit?

    [autoit]

    $split = StringSplit($frta[2],";")

    [/autoit]

    Dann befindet sich in $split[6] das 1. gesuchte Datum und in $split[7] das 2. Datum.

  • Patcher erstellen

    • bernd670
    • 22. Juni 2007 um 20:25

    Hallo,

    Du musst die Datei im Binary-Mode, mit FileOpen, öffnen!

  • _FileChangeDir

    • bernd670
    • 21. Juni 2007 um 20:54

    Hallo,

    normalerweise wird die Formatierung aus dem Editor übernommen, einfach im Editor alles markieren und kopieren, danach hier einfügen und fertig!

  • Sicherungstool - dauert zu lange

    • bernd670
    • 20. Juni 2007 um 23:55

    Hallo,

    vllt. hilft dir ja der Beitrag Incremental Backup ....

  • Array teilen

    • bernd670
    • 20. Juni 2007 um 23:26

    Hallo,

    wenn esi in ein Array eingelesen wird, gehts so:

    [autoit]

    _FileReadToArray($szFileName, $aszReNr)
    If IsArray($aszReNr) Then
    $szParam1 = $aszReNr[1] & ".." & $aszReNr[Floor($aszReNr[0]/2)] ; 1. Hälfte
    $szParam2 = $aszReNr[Floor($aszReNr[0]/2)+1] & ".." & $aszReNr[$aszReNr[0]] ; 2. Hälfte

    MsgBox(0, "", "1. Hälfte: " & $szParam1 & @CRLF & "2. Hälfte: " & $szParam2)
    EndIf

    [/autoit]

    Du kannst die Angaben aber auch direkt aus der Datei lesen:

    [autoit]

    $cLines = _FileCountLines($szFileName)
    If $cLines > 0 Then
    $szParam1 = FileReadLine($szFileName,1) & ".." & FileReadLine($szFileName,Floor($cLines/2))
    $szParam1 = FileReadLine($szFileName,Floor($cLines/2)+1) & ".." & FileReadLine($szFileName,$cLines)

    MsgBox(0, "", "1. Hälfte: " & $szParam1 & @CRLF & "2. Hälfte: " & $szParam2)
    EndIf

    [/autoit]
  • Glühstrumpf Alina!

    • bernd670
    • 19. Juni 2007 um 19:24

    Alina, ich wünsche Dir alles erdenklich Gute zum Geburtstag!

    :baloon: :birthday: :baloon:


    :tassen: :tassen: :tassen: :tassen: :tassen:

  • Probleme mit If Winexist() then

    • bernd670
    • 19. Juni 2007 um 15:17

    Hallo,

    Ich würde es so lösen:

    Spoiler anzeigen
    [autoit]

    #Region converted Directives from D:\Scripts_KBHSRV\Export_SAP.au3.ini
    #AutoIt3Wrapper_aut2exe=C:\Programme\AutoIt3\Aut2Exe\Aut2Exe.exe
    #AutoIt3Wrapper_outfile=\\kbhsrv.eurotours.lan\e$\Scripts\Export_SAP.exe
    #AutoIt3Wrapper_Res_Comment=(C) Garnreiter
    #AutoIt3Wrapper_Res_Description=Export SAP Daten
    #AutoIt3Wrapper_Res_Fileversion=5.0.0.1
    #AutoIt3Wrapper_Res_Fileversion_AutoIncrement=y
    #AutoIt3Wrapper_Res_LegalCopyright=(C) Garnreiter
    #AutoIt3Wrapper_Run_AU3Check=1
    #EndRegion converted Directives from D:\Scripts_KBHSRV\Export_SAP.au3.ini
    ;
    #comments-start
    CopyRight 2007 (c) Garnreiter
    Version 5.0.0.1
    #comments-end
    Opt("WinWaitDelay", 100)
    Opt("WinTitleMatchMode", 4)
    Opt("WinDetectHiddenText", 1)
    Opt("MouseCoordMode", 0)
    #include <file.au3>
    Global $root = IniRead(@ScriptDir & "\Export.ini", "PFADE", "root", "keine Pfad konfiguriert") ; E:\
    Global $PFAD = IniRead(@ScriptDir & "\Export.ini", "SAP", "pfad", "keine Pfad konfiguriert"); Exportpfad für die Weiterverarbeitung SAP
    Global $VON = IniRead(@ScriptDir & "\Export.ini", "SAP", "von", "keine Pfad konfiguriert"); derzeit kein eintrag
    Global $BIS = IniRead(@ScriptDir & "\Export.ini", "SAP", "bis", "keine Pfad konfiguriert"); derzeit kein eintrag
    Global $CRS = IniRead(@ScriptDir & "\Export.ini", "PFADE", "CRS", "keine Pfad konfiguriert"); Pfad zur Weiterverarbeitungsmaschine
    Global $JACDAT = IniRead(@ScriptDir & "\Export.ini", "PFADE", "JACDAT", "keine Pfad konfiguriert"); Programmdatenpfad
    Global $JACOFC = IniRead(@ScriptDir & "\Export.ini", "PFADE", "JACOFC", "keine Pfad konfiguriert"); ProgrammPfad
    Global $pw = IniRead(@ScriptDir & "\Export.ini", "PW", "pw", "NotFound"); Passwort
    Global $MAN = IniRead(@ScriptDir & "\Export.ini", "MANDANT", "MAN", "keine Pfad konfiguriert"); Mandant

    $PID = ProcessExists("Jackv30.exe") ; Will return the PID or 0 if the process isn't found.
    If $PID Then ProcessClose($PID)
    _FileWriteLog($root & "\log\SAP_Export.log", "SAP Export Beginn")

    Run($JACOFC & "\Jackv30.exe", $JACDAT); Programm start
    ;---------------- Passwortabfrage----------------------------------------
    WinWait("Paßwort", "Sollten die obigen L")
    If Not WinActive("Paßwort", "Sollten die obigen L") Then WinActivate("Paßwort", "Sollten die obigen L")
    WinWaitActive("Paßwort", "Sollten die obigen L")
    Sleep(2000)
    ControlSend("Paßwort", "Sollten die obigen L", 303, "admin")
    ControlSend("Paßwort", "Sollten die obigen L", 100, $pw)
    ControlClick("Paßwort", "Sollten die obigen L", 301)

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

    ;~ Erscheint das folgende Fenster immer ?
    ;~ WinWait("Rückfrage", "&Ja") ; wenn Fenster immer erscheint aktivieren
    WinWait("Rückfrage", "&Ja", 10) ; wenn Fenster immer erscheint deaktivieren

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

    If WinExists("Rückfrage", "&Ja") Then
    WinWait("Rückfrage", "&Ja")
    If Not WinActive("Rückfrage", "&Ja") Then WinActivate("Rückfrage", "&Ja")
    WinWaitActive("Rückfrage", "&Ja")
    ControlClick("Rückfrage", "&Ja", 6)
    Else
    Sleep(1)
    EndIf
    ;---------------- Passwortabfrage Ende-----------------------------------


    WinWait("Jack / X6.03", "Buchhaltung")
    If Not WinActive("Jack / X6.03", "Buchhaltung") Then WinActivate("Jack / X6.03", "Buchhaltung")
    WinWaitActive("Jack / X6.03", "Buchhaltung")
    ;---------------- SAP Export Aufruf--------------------------------------
    Send("{ALTDOWN}{F5}{ALTUP}")
    WinWait("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze")
    If Not WinActive("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze") Then WinActivate("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze")
    WinWaitActive("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze")

    ControlClick("Vorgangsexport - MIS / SAP", "", 3926)
    ControlSend("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze", 3921, $MAN)
    ControlSend("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze", 3922, $MAN)

    ControlSetText("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze", 3928, $PFAD ) ; Pfad angabe wohin er exportieren soll
    ControlCommand("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze", 1068, "Check", "")
    ControlSend("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze", 3944, $VON) ; Von wann
    ControlSend("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze", 3946, $BIS) ; Bis wann
    ControlClick("Vorgangsexport - MIS / SAP", "Beträge ohne Kommaze", 1)
    WinWait("Rückfrage", "Wollen Sie die Daten")
    If Not WinActive("Rückfrage", "Wollen Sie die Daten") Then WinActivate("Rückfrage", "Wollen Sie die Daten")
    WinWaitActive("Rückfrage", "Wollen Sie die Daten")
    ControlClick("Rückfrage", "Wollen Sie die Daten", 6)
    ;---------------- SAP Exportaufruf Ende-----------------------------------

    ; Process Balken "Export in eine Datei"
    WinWait("Export in eine Datei", "",7)
    If WinExists("Export in eine Datei", "") Then WinWaitClose("Export in eine Datei", "")

    ; Process Balken "Exportieren Satzart 21"
    WinWait("Exportieren", "", 10)
    If WinExists("Exportieren", "") Then WinWaitClose("Exportieren", "")

    ; Process Balken "Exportieren der VA-Eingangsrechnungen"
    WinWait("Exportieren", "", 10)
    If WinExists("Exportieren", "") Then WinWaitClose("Exportieren", "")

    ; Hinweis GUI wieviel Daten exportiert sind"
    WinWait("Hinweis", "", 10)
    If WinExists("Hinweis", "") Then
    $handle = WinGetHandle("Hinweis", "")
    ControlClick($handle, "", 2)
    EndIf

    WinWait("Jack / X6.03","Buchhaltung")
    If Not WinActive("Jack / X6.03","Buchhaltung") Then WinActivate("Jack / X6.03","Buchhaltung")
    WinWaitActive("Jack / X6.03","Buchhaltung")



    #comments-start ; alte version

    ;~ While 1
    ;~ Sleep(200)
    ;~ If Not WinExists("Export in eine Datei", "") Then
    ;~ ExitLoop
    ;~ EndIf
    ;~ WEnd


    ;~ While 1
    ;~ Sleep(200)
    ;~ If Not WinExists("Exportieren Satzart 21", "") Then
    ;~ ExitLoop
    ;~ EndIf
    ;~ WEnd

    ;~ While 1
    ;~ Sleep(200)
    ;~ If not WinExists("Exportieren der VA-Eingangsrechnungen", "") then
    ;~ ExitLoop
    ;~ EndIf
    ;~ WEnd


    ;~ While 1
    ;~ Sleep(200)
    ;~ If WinExists("Hinweis", "") Then
    ;~ ExitLoop
    ;~ EndIf
    ;~ WEnd

    ;~ $handle = WinGetHandle("Hinweis", "")
    ;~ ControlClick($handle, "", 2)
    ;~ WinWait("Jack / X6.03", "Buchhaltung")
    ;~ If Not WinActive("Jack / X6.03", "Buchhaltung") Then WinActivate("Jack / X6.03", "Buchhaltung")
    ;~ WinWaitActive("Jack / X6.03", "Buchhaltung")


    #comments-end

    $PID = ProcessExists("Jackv30.exe") ; Will return the PID or 0 if the process isn't found.
    If $PID Then ProcessClose($PID)
    _FileWriteLog($root & "\log\SAP_Export.log", "SAP Export Ende")
    Exit

    [/autoit]
  • Windows Schriftart entfernen

    • bernd670
    • 19. Juni 2007 um 12:29

    Hallo,

    funktionieren dürfte keine deiner bei Funktionen, weil der Typ "String" nicht gültig ist, der Typ für Strings heisst "str"!

  • existieren prozeduren in autoit?

    • bernd670
    • 18. Juni 2007 um 16:15

    Hallo und :willkommen:,

    da die Rede von Prozeduren ist gehe mal davon aus das Du aus der Pascal/Delphi-Welt kommst!

    Mit Func hast den Nagel auf den Kopf getroffen, dass ist im Prinzip das gleiche wie Prozeduren in Pascal/Delphi und können auch genauso aufgerufen werden. Über Call werden Funktionen nur aufgerufen der Funktionsname in einer Variable gespeichert ist.

    Spoiler anzeigen
    [autoit]


    dim $a = 15,

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

    ; VNC-Login ra =START=
    $text = "r" & $a
    run("C:\Programme\RealVNC\VNC4\vncviewer.exe")
    WinWaitActive("VNC Viewer : Connection Details", "", 5)
    Opt("WinWaitDelay", 2000)
    send ($text, 1)
    send ("{ENTER}")
    If WinExists("VNC Viewer : Authentication [No Encryption]") Then
    vnclogin()
    Else
    if WinWaitActive("VNC Viewer : Error", "", 5) then
    WinClose ( "VNC Viewer : Error")
    EndIf
    EndIf
    ; VNC-Login ra =END=

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

    Func vnclogin ()
    WinWaitActive("VNC Viewer : Authentication [No Encryption]", "", 5)
    send ("vnc_passwort")
    send ("{ENTER}")
    WinWaitActive($text, "", 2)
    send ("^+!{DEL}")
    Opt("MouseCoordMode", 0)
    MouseClick("left", 718, 435, 2, 10)
    send ("admin")
    send ("{TAB}")
    send ("administrator_passwort")
    send ("{TAB}")
    send ($text, 1)
    send ("{ENTER}")
    WinWaitActive($text, "", 5)
    EndFunc

    [/autoit]
  • Zahl wird nicht neu geladen

    • bernd670
    • 17. Juni 2007 um 20:42

    Hallo,

    erkläre doch mal bitte genau was das Programm überhaupt machen soll, ich vermute nämlich das es bestimmt eine bessere Möglichkeit gibt als über Notepad.exe und Zwischenablage zu arbeiten. Mich jedesmal durch deinen Code zu hangeln ist mir bei deinem Programmierstil etwas zu mühsam. ;)

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™