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

Beiträge von Thomasb

  • AutoIt + WinSCP = leichte Verzweiflung

    • Thomasb
    • 9. September 2009 um 20:19
    Zitat von nachtvogel85


    Ansich alles kein Problem, nur muss ich immer die aktuellsten Daten runterladen....und hier beginnt mein Problem.

    Hi,
    Autoit brauchstd doch eigentlich nur zum steuern von WinSCP. WinSCP kann das selber entscheiden welche die aktuellste Datei ist. Dazu kannst du die Syncronisation in WinSCP nutzen. Dort definiertst du auch die Dateiendungen, die WinScp aktuell halten soll. Das kannst du dann kompt. mit Autoit steuern.

    VG
    ThomasB

  • FTP Upload + Check + Status Email

    • Thomasb
    • 10. August 2009 um 21:26

    hi,
    hast du die Suche schon geqäuelt ? Was hast du an Qeultext für uns? Mailverarbeitung gibt es hier viele im Forum. Ich persönlich bin umgestiegen auf blat.exe. Lässt sich super verarbeiten.

    VG ThomasB

  • Script läuft nicht, wenn der PC gesperrt ist

    • Thomasb
    • 10. August 2009 um 21:22
    Zitat von sErPeNz


    Other ideas? :)


    Hi hast du meinen Link ausprobiert ? Ich habe mit abstriche gute erfolge damit. Probier es

    VG Thomasb :S;)

  • Script läuft nicht, wenn der PC gesperrt ist

    • Thomasb
    • 7. August 2009 um 20:17

    hi,

    ich hatte/habe dass gleiche Problem an einem Server2003. Bei mir läuft das Script alledings als Dienst. Da ich damit ein externes Programm steuere hatte ich die Frage schonmal gestellt.
    Hier der Link dahin. nimm die zip Datei entpacke sie und starte es der Rest kommt von selber.
    Mein Problem ist aber das ein Prozess den Focus von meinem zu steuernedm Programm nimmt und es einschläft.

    [ gelöst ] Problem mit AutoIt


    VG Thomas

  • Prüfen ob Datei geöffnet ist

    • Thomasb
    • 3. August 2009 um 09:45

    Hi,

    gute idee setze ich mal um. Das zweite Programm machte diese Prüfung

    thomasb

  • Prüfen ob Datei geöffnet ist

    • Thomasb
    • 3. August 2009 um 09:29

    Hallo zusammen,

    habe folgendes Problem.
    Eine Ini wir von zwei unterschiedlichen Programmen genutzt. (Nummernserie) Wenn beide Programm gleichzeitig auf die Ini zugreifen kommt es zu Dopplung in der Nummernserie. Gibt es mit Autoit die Möglichkeit zu prüfen ob die Ini zur Zeit durch das andere Programm sich im Zugriff befindet, damit es nicht zum Nummernchaos kommt?

    MFG Thomasb

  • _IEFormImageClick

    • Thomasb
    • 22. Juni 2009 um 14:16

    hallo leute,

    habe mal eine Frage zum _IEFormImageClick.
    Auf einer Seite gibt es einen Button der zu einer nächsten Seite führt. Dieser Button befindet sich in einer Tabelle, der Name des Button ist auch nicht raus zu bekommen. Das Bild ist in der Zip Datei und der Auszug aus dem Quellcode habe ich auch angehangen.

    Spoiler anzeigen

    </li></ul><div class="innerBox"><input name="foo" id="selectEmailHiddenField" type="hidden"><script type="text/javascript">__core__.require("widgets/toolbar");</script><script type="text/javascript">function nxCmd_selectEmail(c){return pustefixEval("selectEmail", "selectEmailHiddenField", c.split(","));};</script><div style="border: 0px solid ; background-color: rgb(245, 248, 251); width: auto;" class="toolBar" id="toolbar_selectEmail nx="type:toolBar;func:selectEmail;connect:group_selectEmail"><script type="text/javascript">__registry__.addId("toolbar_selectEmail");</script><table cellpadding="0" cellspacing="0"><tbody><tr><script type="text/javascript">__core__.require("widgets/toolbarbutton");</script><td class="buttons"><table cellpadding="0" cellspacing="0"><tbody><tr><td><script type="text/javascript">__registry__.addId("button_new");</script><table style="margin: 1px 5px; -moz-user-select: none; background-color: transparent;" cellpadding="0" cellspacing="0"><tbody><tr><td style="border-style: solid; border-color: rgb(255, 255, 255) rgb(154, 164, 175) rgb(154, 164, 175) rgb(255, 255, 255); border-width: 1px; padding: 2px 4px; -moz-user-select: none; cursor: pointer; font-size: 11px; color: rgb(10, 50, 140);">
    Neu
    </td><td style="border-style: solid; border-color: rgb(255, 255, 255) rgb(154, 164, 175) rgb(154, 164, 175) rgb(255, 255, 255); border-width: 1px; padding: 0pt 1px; -moz-user-select: none; text-align: center; font-size: 18px; line-height: 60%; color: rgb(10, 50, 140); cursor: pointer;">▾</td></tr></tbody></table></td><td><input name="__SYNT:d1e2198d0:__pageflow" value="email_summary_flow" type="hidden"><script type="text/javascript">__registry__.addId("button_settings");</script><table style="margin: 1px 5px; -moz-user-select: none; background-color: transparent;" cellpadding="0" cellspacing="0"><tbody><tr><td style="border-style: solid; border-color: rgb(255, 255, 255) rgb(154, 164, 175) rgb(154, 164, 175) rgb(255, 255, 255); border-width: 1px; padding: 2px 4px; -moz-user-select: none; cursor: pointer; font-size: 11px; color: rgb(10, 50, 140);"> Einstellungen
    </td><td style="border-style: solid; border-color: rgb(255, 255, 255) rgb(154, 164, 175) rgb(154, 164, 175) rgb(255, 255, 255); border-width: 1px; padding: 0pt 1px; -moz-user-select: none; text-align: center; font-size: 18px; line-height: 60%; color: rgb(10, 50, 140); cursor: pointer;">▾</td></tr></tbody></table></td><td><input name="__SYNT:d1e2205d0:__pageflow" value="email_delete_flow" type="hidden"><script type="text/javascript">__registry__.addId("button_delete");</script><table style="margin: 1px 5px; -moz-user-select: none; background-color: transparent;" cellpadding="0" cellspacing="0"><tbody><tr><td style="border-style: solid; border-color: rgb(255, 255, 255) rgb(154, 164, 175) rgb(154, 164, 175) rgb(255, 255, 255); border-width: 1px; padding: 2px 4px; -moz-user-select: none; cursor: pointer; font-size: 11px; color: rgb(10, 50, 140);"> Löschen
    </td><td style="-moz-user-select: none; display: none;">▾</td></tr></tbody></table></td><td><input name="__SYNT:d1e2214d0:__pageflow" value="email_virusprotection_flow" type="hidden"><script type="text/javascript">__registry__.addId("button_antivirus");</script><table style="margin: 1px 5px; -moz-user-select: none; background-color: transparent;" cellpadding="0" cellspacing="0"><tbody><tr><td style="border-style: solid; border-color: rgb(255, 255, 255) rgb(154, 164, 175) rgb(154, 164, 175) rgb(255, 255, 255); border-width: 1px; padding: 2px 4px; -moz-user-select: none; cursor: pointer; font-size: 11px; color: rgb(10, 50, 140);"> Virenschutz
    </td><td style="-moz-user-select: none; display: none;">▾</td></tr></tbody></table></td><td><input name="__SYNT:d1e2223d0:__pageflow" value="email_spamfilter_flow" type="hidden"><script type="text/javascript">__registry__.addId("button_spam");</script><table style="margin: 1px 5px; -moz-user-select: none; background-color: transparent;" cellpadding="0" cellspacing="0"><tbody><tr><td style="border-style: solid; border-color: rgb(255, 255, 255) rgb(154, 164, 175) rgb(154, 164, 175) rgb(255, 255, 255); border-width: 1px; padding: 2px 4px; -moz-user-select: none; cursor: pointer; font-size: 11px; color: rgb(10, 50, 140);"> 1&amp;1 Anti-SPAM
    </td><td style="-moz-user-select: none; display: none;">▾</td></tr></tbody></table></td></tr></tbody></table></td><td class="filter"><table cellpadding="0" cellspacing="0"><tbody><tr><td></td><td><input size="14" maxlength="200" class="text" name="emailFilter.SearchTerm" value="" type="text"></td><td><input src="Email_Overview-Dateien/l_lupe.gif" alt="" class="PfxInputImage hintparent" style="width: 15px; height: 15px; text-decoration: none; cursor: pointer;" name="__SBMT:d1e2244d0:" nx="type:hint;cursor:pointer;text:


    Hat wer eine Idee wie ich den Button clicken kann oder wie ich trotzdem weiterkomme.

    mfg ThomasB

  • E-MAil versenden

    • Thomasb
    • 3. Juni 2009 um 12:29

    Hallo AutoBert,

    die Variable wird sauber übergeben.

  • E-MAil versenden

    • Thomasb
    • 3. Juni 2009 um 09:42

    hi,

    ja das Script kenne ich und nutze es auch. Ich hatte aber schon erwähnt das das Script Probleme hat eine InI auszulesen wenn es als Dienst läuft.
    Es geht mir auch nur um den Fehler der auftritt, die MSGBOX die ich eingebaut habe gibt den Wert wieder, der ist ok, bevor der Fehler kommt.

  • E-MAil versenden

    • Thomasb
    • 2. Juni 2009 um 22:00

    hi greek,

    da kommen wir dann aber schon zum zweiten Problem. Das Script habe ich auch schon aus probiert. Das das ganze als Dienst läuft kann dieses Script nicht so recht die Ini auslesen.

    MFG thomasB

  • E-MAil versenden

    • Thomasb
    • 2. Juni 2009 um 21:27

    nabend alle zu sammen,

    hatte schon eine weile nix mehr mit Autoit gemacht. Nun muss ich etwas machen und komme nícht recht vorwärts. Hier mein Code aus dem Forum.

    Spoiler anzeigen
    [autoit]

    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Outfile=\Mail.exe
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <INet.au3>
    #include <date.au3>

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

    ;Hier kommt die Registry Abfrage nach dem Schlüssel den HeiWoMa entdeckt hat. Gibt es den Schlüssel nicht ($Outlookexist =""), dann ist auch kein ;Outlook auf dem System installiert.
    $Outlookexist = RegRead("HKEY_CLASSES_ROOT\msgfile\shell\open\command", "command")
    $file = "C:\ADTG\Datensicherung\test.zup"
    ;Hier sieht man das die Variabe leer zurückgekommen ist, also kein Outlook installiert.
    ;E-Mail wird über den Standard E-Mail client z.B.OE versendet.
    $var = IniReadSection("H:\NAV\AMFA.ini", "HVP")
    $vas = IniReadSection("H:\NAV\AMFA.ini", "Mail")

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

    If FileExists("H:\NAV\Thomas\*.csv") Then
    CreateMailItem()
    EndIf
    ;
    Func CreateMailItem()
    Local $olMailItem = 0
    Local $olFormatRichText = 2
    Local $olImportanceNormal = 2
    $oOApp = ObjCreate("Outlook.Application")
    $oOMail = $oOApp.CreateItem($olMailItem)

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

    With $oOMail

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

    For $y = 1 To $vas[0][0]
    MsgBox(0,"","H:\NAV\Thomas\" & StringRight($var[$y][1], 7) & ".csv" & ' ' & $vas[$y][1],10)
    .To = ($vas[$y][1])
    .BCC = ("")
    .Subject = "Vertriebspartner Report"
    .Body = ":-)"
    .BodyFormat = $olFormatRichText ;Diese Funktion geht ab Outlook 2003, auskommentiert für die Outlook 2000 Kompabilität

    .Attachments.Add ("H:\NAV\Thomas\" & StringRight($var[$y][1], 7) & ".csv")

    .Importance = $olImportanceNormal
    .Display
    ;.Send ;Die Send Funktion ist wegen den Outlook Sicherheitsrichtlinien ausgeschaltet.
    Sleep(500)
    Send("!s")
    Sleep(10000)
    Next

    EndWith

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

    EndFunc ;==>CreateMailItem

    [/autoit]

    Die abgefragte Ini besteht aus zweit Section. In der ersten steht der Dateianhang in der zweiten die Mailadressen. Meine Kontrollbox zeigt das mein Weg der richtige ist. Doch leider bekomme ich eine Fehlermeldung während des zweiten Durchlauf der Schleife.
    Fehlermeldung:
    D:\Programme\AutoIt3\Include\MAil_Outlook.au3 (31) : ==> The requested action with this object has failed.:
    .To = ($vas[$y][1])
    .To = ($vas[$y][1])^ ERROR

    Hat wer ne Idee woran es liegt?

    MFG ThomasB

  • DriveMapAdd

    • Thomasb
    • 18. März 2009 um 18:54

    hi,
    darum geht es ja nicht.
    Es geht darum das es nach den Windows Update nicht mehr geht. Der Benutzer bei DirveMapAdd ist der Domänadmin mit seinem PW. Damit ging es bisher(ca. 1,5 Jahre). Jetzt geht es nicht mehr.

    MFG
    THOMAS

  • DriveMapAdd

    • Thomasb
    • 18. März 2009 um 12:52

    Hallo Leute,

    ich bin am Verzweifeln. Der Code ist ein Ausschnitt aus meinem als Dienst laufendem Script. Seit den letzten Windows Update macht dieser Teil Schwierigkeiten.

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

    $drive1 = IniReadSection($file, "Laufwerke")
    $drive2 = IniReadSection($file, "Server")

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

    Func _Netzlaufwerk()
    If Not FileExists(IniRead($file, "Laufwerke", "001", "")) Then
    For $i = 1 To $drive1[0][0]
    DriveMapAdd($drive1[$i][1], $drive2[$i][1], 0,$user_network,$pw_Network)
    Sleep(100)
    Next
    ;If _FileCreate($f) = 1 Then IniWrite($file, "007", "001", "Datensicherung wurde erfolgreich gestartet")
    ;FileClose($file)
    Sleep(500)
    FileWriteLine(IniRead($file, "006", "008", "Nichts gefunden"), "Laufwerke wurden verbunden um " & _NowTime() & @CRLF)
    Sleep(500)
    ;$rc = _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $as_Body, $s_AttachFiles, $s_CcAddress, $s_BccAddress, $s_Username, $s_Password, $IPPort, $ssl)
    Else
    For $i = 1 To $drive1[0][0]
    DriveMapDel($drive1[$i][1])
    FileWriteLine(IniRead($file, "Server", "001", "Nichts gefunden") & StringRight(IniRead($file, "006", "008", "Nichts gefunden"), 16), "Laufwerke wurden getrennt um " & _NowTime() & @CRLF)
    Sleep(100)
    Next
    IniWrite($file, "007", "001", "Datensicherung wurde erfolgreich beendet")
    FileClose($file)
    If IniRead($file, "Startzeit", "002", "") <> 5 Then
    ;löscht bestehende Sicherung
    If FileExists(IniRead($file, "NAV DB", "010", "Leer")) Then FileRecycle(StringLeft(IniRead($file, "NAV DB", "010", "Leer"), 19) & "*" & StringRight(IniRead($file, "NAV DB", "010", "Leer"), 4))
    EndIf
    Sleep(500)
    ;$rc = _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $as_Body, $s_AttachFiles, $s_CcAddress, $s_BccAddress, $s_Username, $s_Password, $IPPort, $ssl)
    EndIf
    EndFunc ;==>_Netzlaufwerk

    [/autoit]

    Wenn der Dienst läuft ist ein Verbinden nicht möglich. Der Dienst wird vom Lokalen Systemkonto gestartet. Es geht insgesamt nur mit diesem Systemkonto. Wenn aber nicht als Dienst dann ist ein Verbinden möglich. Hat jemand eine Idee woran es liegen kann?
    Das trennen geht im übrigen.

    MFG Thomas

  • Selsames Verhalten wenn exe als Dienst läuft

    • Thomasb
    • 26. Januar 2009 um 20:07

    hi,
    in Zeile 60 heißt es richtig ""

    Thomasb

  • Selsames Verhalten wenn exe als Dienst läuft

    • Thomasb
    • 26. Januar 2009 um 19:08

    hi leute,

    ich zerbreche mir schon eine ganze weile den kopf wo mein fehler liegen kann.
    dieser auszug aus meinem sricpt (backup lösung für ein erp system) ist als dienst auf einem datenbankserver eingerichtet. es lauft . was aber schwierigkeiten macht ist die erkennung der wochentag.
    wenn der dienst am tag 2 der woche also montag neugestartet wird dann werden alle tag(montag -sonntag) gesichert obwohl sonabend und sonntag ausgeschlossen sind. wird der dienst am tag 7 der woche gestartet dann wird nur sonnabend und sonntag gesichert.woran mag das liegen? hat das etwas damit zu tun das es als dienst eingetragen ist?
    ich hoffe ich habe es verständlich rüber gebracht mein problem.

    mfg thomasb

    Spoiler anzeigen
    [autoit]

    #NoTrayIcon
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Outfile=..\..\..\
    #AutoIt3Wrapper_Res_Comment=Datensicherung , T
    #AutoIt3Wrapper_Res_Description=
    #AutoIt3Wrapper_Res_Fileversion=3.0.0.44
    #AutoIt3Wrapper_Res_FileVersion_AutoIncrement=y
    #AutoIt3Wrapper_Res_LegalCopyright=
    #AutoIt3Wrapper_Res_Language=1031
    #AutoIt3Wrapper_res_requestedExecutionLevel=highestAvailable
    #Tidy_Parameters=/ sfc
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

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

    #include "date.au3"
    #include "file.au3"
    #include "Array.au3"
    #include "String.au3"
    #include <Process.au3>
    #include "ServiceControl.au3"
    ;
    ;Opt("WinWaitDelay", 50)
    Opt("WinTitleMatchMode", 4)
    Opt("WinDetectHiddenText", 1) ;0=don't detect, 1=do detect
    Opt("WinSearchChildren", 1) ;0=no, 1=search children also
    ;
    $file = "C:\Datensicherung\nav.zup"; Startdatei
    $vas = "C:\Datensicherung\CDR.ini" ; Datei für CDR Export an Ecotel
    $fehler = StringLeft(IniRead($file, "Server", "004", "error"), 14) & _NowDate() & StringRight(IniRead($file, "006", "009", ""), 12); bei Fehler
    $sFeiertag = "C:\" & @YEAR & ".zup" ; Feiertagsdatei mit variablen Feiertagen
    ;
    Global $pathMain = IniRead($file, "002", "001", "Nichts gefunden")
    Global $pathCompare = IniRead($file, "002", "002", "Nichts gefunden")
    Global $PROTFILE = IniRead($file, "006", "008", "Nichts gefunden")
    Global $mainFile_A
    Global $compare_A
    Local $dates
    ;Mail
    Global $oMyRet[2]
    Global $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc")
    ;Mail
    Dim $HDays[32], $year = @YEAR
    $iWeekday = _DateToDayOfWeek(@YEAR, @MON, @MDAY)
    $sNewDate = _DateAdd('d', -1, _NowCalcDate()); ein Tag
    $sNewDate = StringReplace($sNewDate, "/", ".")
    $sNewData = _DateAdd('d', -2, _NowCalcDate()); zwei Tage
    $sNewData = StringReplace($sNewData, "/", ".")
    $sNewStart = _DateAdd('d', -3, _NowCalcDate()); drei Tage
    $sNewStart = StringReplace($sNewStart, "/", ".")

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

    $Ti = @HOUR & ":" & @MIN & ":" & @SEC
    $new = @MDAY + 1 & "." & @MON & "." & @YEAR
    $sDatum = @YEAR & "." & @MON & "." & @MDAY

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

    $var = IniReadSection($vas, "001")
    $ftp = IniRead($vas, "006", "001", "Nichts gefunden")
    $user = "xxx"
    $pw = "xxx"
    $user_network = "xxx"
    $pw_Network = "xxx"
    $LPath = ""

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

    $f = StringLeft(IniRead($file, "006", "008", "Nichts gefunden"), 3) & _NowDate() & StringRight(IniRead($file, "006", "014", ""), 5)
    $drive1 = IniReadSection($file, "Laufwerke")
    $drive2 = IniReadSection($file, "Server")
    ;Mail
    $s_SmtpServer = IniRead($file, "Mailroot", "001", "Nichts gefunden")
    $s_FromName = IniRead($file, "Mailroot", "002", "Nichts gefunden")
    $s_FromAddress = IniRead($file, "Mailroot", "003", "Nichts gefunden")
    $s_ToAddress = IniRead($file, "Mailroot", "004", "Nichts gefunden")
    $s_Subject = IniRead($file, "Mailroot", "005", "Nichts gefunden");IniRead($file, "Mailroot", "5", "Nichts gefunden")
    $as_Body = IniRead($file, "007", "001", "Nichts gefunden")
    $s_AttachFiles = StringLeft(IniRead($file, "006", "008", "error"), 13) & StringRight(IniRead($file, "006", "009", ""), 4)
    $s_CcAddress = ""
    $s_BccAddress = IniRead($file, "Mailroot", "006", "Nichts gefunden")
    $s_Username = $user
    $s_Password = $pw
    $IPPort = 25
    $ssl = 0
    ;Mail
    While 1
    If _isFeiertag($sFeiertag) = 1 Then
    MsgBox(64, "Heute ausführen?", "Nein es ist Feiertag", 10)
    Else
    If $iWeekday = 2 Then ; Montag
    _Netzlaufwerk()
    Sleep(15000)
    _Robocopy()
    Sleep(15000)
    DirRemove(IniRead($file, "Laufwerke", "003", "error") & "\" & $sNewStart, 1)
    Sleep(15000)
    _Netzlaufwerk()
    ElseIf $iWeekday = 3 Then ; Diensatg
    _Netzlaufwerk()
    Sleep(15000)
    _Robocopy()
    Sleep(15000)
    DirRemove(IniRead($file, "Laufwerke", "003", "error") & "\" & $sNewStart, 1)
    Sleep(15000)
    _Netzlaufwerk()
    ElseIf $iWeekday = 4 Then ; Mittwoch
    _Netzlaufwerk()
    Sleep(15000)
    _Robocopy()
    Sleep(15000)
    DirRemove(IniRead($file, "Laufwerke", "003", "error") & "\" & $sNewData, 1)
    Sleep(15000)
    _Netzlaufwerk()
    ElseIf $iWeekday = 5 Then ; Donnerstag
    _Netzlaufwerk()
    Sleep(15000)
    _Robocopy()
    Sleep(15000)
    DirRemove(IniRead($file, "Laufwerke", "003", "error") & "\" & $sNewData, 1)
    Sleep(15000)
    _Netzlaufwerk()
    ElseIf $iWeekday = 6 Then ; Freitag
    _Netzlaufwerk()
    Sleep(15000)
    _Robocopy()
    Sleep(15000)
    DirRemove(IniRead($file, "Laufwerke", "003", "error") & "\" & $sNewData, 1)
    Sleep(15000)
    _Netzlaufwerk()
    EndIf
    Sleep(1500)
    If $iWeekday = 5 Then
    ;
    EndIf
    EndIf
    Sleep(100)
    WEnd
    ;
    Func _Netzlaufwerk()
    If Not FileExists(IniRead($file, "Laufwerke", "001", "")) Then
    For $i = 1 To $drive1[0][0]
    DriveMapAdd($drive1[$i][1], $drive2[$i][1], 0, $user_network, $pw_Network)
    Sleep(100)
    Next
    If _FileCreate($f) = 1 Then IniWrite($file, "007", "001", "Datensicherung wurde erfolgreich gestartet")
    Sleep(500)
    FileWriteLine(IniRead($file, "006", "008", "Nichts gefunden"), "Laufwerke wurden verbunden um " & _NowTime() & @CRLF)
    Sleep(500)
    $rc = _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $as_Body, $s_AttachFiles, $s_CcAddress, $s_BccAddress, $s_Username, $s_Password, $IPPort, $ssl)
    Else
    For $i = 1 To $drive1[0][0]
    DriveMapDel($drive1[$i][1])
    Sleep(100)
    Next
    IniWrite($file, "007", "001", "Datensicherung wurde erfolgreich beendet")
    Sleep(500)
    FileWriteLine(IniRead($file, "Server", "001", "Nichts gefunden") & StringRight(IniRead($file, "006", "008", "Nichts gefunden"), 16), "Laufwerke wurden getrennt um " & _NowTime() & @CRLF)
    $rc = _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $as_Body, $s_AttachFiles, $s_CcAddress, $s_BccAddress, $s_Username, $s_Password, $IPPort, $ssl)
    EndIf
    EndFunc ;==>_Netzlaufwerk
    ;
    Func _Robocopy(); Verschiebt die erstellten Dateien für Printshop
    $begin = TimerInit()
    $ro = _RunDOS("C:\Datensicherung\robocopy D:\Backup \\Server\datensicherung\" & $sDatum & " /MIR *.fbk")
    $dif = TimerDiff($begin)
    $dif = $dif / 60000
    FileWriteLine(IniRead($file, "006", "008", "Nichts gefunden"), "Die Datensicherung wurde in " & Round($dif, 1) & " Minuten kopiert")
    Sleep(1000)
    If ProcessClose("robocopy.exe") Then
    If $iWeekday = 5 Then
    MsgBox(0, $iWeekday, "nichts tun", 5)
    Else
    FileRecycle("D:\Backup\*.fbk")
    EndIf
    EndIf
    EndFunc ;==>_Robocopy
    ;
    Func _isFeiertag($sFeiertag) ; Feiertag
    Local $dates
    If Not _FileReadToArray($sFeiertag, $dates) Then Return -1
    For $i = 1 To $dates[0]
    If StringLeft($dates[$i], 10) = _NowDate() Then
    Return 1
    EndIf
    Next
    Return 0
    EndFunc ;==>_isFeiertag
    ;
    Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $as_Body = "", $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Username = "", $s_Password = "", $IPPort = 25, $ssl = 0)
    $objEmail = ObjCreate("CDO.Message")
    $objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>'
    $objEmail.To = $s_ToAddress
    Local $i_Error = 0
    Local $i_Error_desciption = ""
    If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress
    If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress
    $objEmail.Subject = $s_Subject & " " & _Now()
    If StringInStr($as_Body, "<") And StringInStr($as_Body, ">") Then
    $objEmail.HTMLBody = $as_Body & IniRead($file, "007", "001", "Nichts gefunden")
    Else
    $objEmail.Textbody = IniRead($file, "007", "001", "Nichts gefunden") & @CRLF
    EndIf
    If $s_AttachFiles <> "" And FileExists(StringLeft(IniRead($file, "006", "008", "Nichts gefunden"), 13) & _NowDate() & StringRight(IniRead($file, "006", "009", ""), 5)) Then
    Local $S_Files2Attach = StringSplit($s_AttachFiles, ";")
    For $x = 1 To $S_Files2Attach[0]
    $S_Files2Attach[$x] = _PathFull($S_Files2Attach[$x])
    If FileExists($S_Files2Attach[$x]) Then
    $objEmail.AddAttachment($S_Files2Attach[$x])
    Else
    $i_Error_desciption = $i_Error_desciption & @LF & 'File not found to attach: ' & $S_Files2Attach[$x]
    SetError(1)
    Return 0
    EndIf
    Next
    EndIf
    $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer
    $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort
    ;Authenticated SMTP
    If $s_Username <> "" Then
    $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
    $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username
    $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password
    EndIf
    If $ssl Then
    $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
    EndIf
    ;Update settings
    $objEmail.Configuration.Fields.Update
    ; Sent the Message
    $objEmail.Send
    If @error Then
    SetError(2)
    Return $oMyRet[1]
    EndIf
    EndFunc ;==>_INetSmtpMailCom
    ; Com Error Handler
    Func MyErrFunc()
    $HexNumber = Hex($oMyError.number, 8)
    $oMyRet[0] = $HexNumber
    $oMyRet[1] = StringStripWS($oMyError.description, 3)
    ConsoleWrite("### COM Error ! Number: " & $HexNumber & " ScriptLine: " & $oMyError.scriptline & " Description:" & $oMyRet[1] & @LF)
    SetError(1); something to check for when this function returns
    Return
    EndFunc ;==>MyErrFunc
    ;
    Func _JahrMonatstring()
    If @MON = 1 Then
    $monat = 12
    $jahr = @YEAR - 1
    Return $jahr & "\" & $monat & " " & $jahr
    EndIf
    Return @YEAR & "\" & StringFormat("%02d", @MON - 1) & " " & @YEAR
    EndFunc ;==>_JahrMonatstring
    ;
    Func _Monatsstring()
    If @MON = 1 Then
    $monat = 12
    $jahr = @YEAR - 1
    Return $monat & " " & $jahr
    EndIf
    Return StringFormat("%02d", @MON - 1) & " " & @YEAR
    EndFunc ;==>_Monatsstring
    ;
    Func _Feiertage($year)
    Dim $4AdvDat, $3AdvDat, $2AdvDat, $1AdvDat, $TotSoDat, $BuBDat, $MutterDat, $ErnteDat, $tmp, $Delimiter = "\"
    ;fixe Feiertage
    $HDays[0] = $year & "/01/01" & $Delimiter & "Neujahr"
    $HDays[1] = $year & "/01/06" & $Delimiter & "Heilige Drei Könige"
    $HDays[2] = $year & "/02/14" & $Delimiter & "Valentinstag"
    $HDays[3] = $year & "/05/01" & $Delimiter & "Maifeiertag"
    $HDays[4] = $year & "/10/03" & $Delimiter & "Tag der Deutschen Einheit"
    $HDays[5] = $year & "/10/31" & $Delimiter & "Reformationstag"
    $HDays[6] = $year & "/11/01" & $Delimiter & "Allerheiligen"
    $HDays[7] = $year & "/12/24" & $Delimiter & "Heiligabend"
    $HDays[8] = $year & "/12/25" & $Delimiter & "1. Weihnachtsfeiertag"
    $HDays[9] = $year & "/12/26" & $Delimiter & "2. Weihnachtsfeiertag"
    $HDays[10] = $year & "/12/31" & $Delimiter & "Silvester"
    ;variable Feiertage
    $aa = Mod($year, 19)
    $bb = Mod($year, 4)
    $cc = Mod($year, 7)
    $H1 = Int($year / 100)
    $H2 = Int($year / 400)
    $N = 4 + $H1 - $H2
    $MM = 15 + $H1 - $H2 - Floor(Int((8 * $H1 + 13) / 25))
    $dd = Mod((19 * $aa + $MM), 30)
    $ee = Mod((2 * $bb + 4 * $cc + 6 * $dd + $N), 7)
    If $dd + $ee = 35 Then
    $Easter = 50
    Else
    If $dd = 28 And $ee = 6 And $aa > 10 Then
    $Easter = 49
    Else
    $Easter = 22 + $dd + $ee
    EndIf
    EndIf
    If $Easter < 32 Then
    $EasterDay = $Easter
    $EasterMonth = "03"
    Else
    $EasterDay = $Easter - 31
    $EasterMonth = "04"
    EndIf
    If $EasterDay < 10 Then
    $EasterDay = "0" & $EasterDay
    EndIf

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

    If $year < 1900 Then ;Datumsoperationen nur mgl. wenn > 1900 , Jahr wird konvertiert
    $RestJahr = Mod($year, 100)
    If _DateIsLeapYear($year) Then
    If $RestJahr < 10 Then
    $RestJahr = "0" & $RestJahr
    EndIf
    $Tempyear = 20 & $RestJahr
    Else
    If $RestJahr < 10 Then
    $RestJahr = "0" & $RestJahr
    EndIf
    $Tempyear = 19 & $RestJahr
    EndIf
    $EasterDate = $Tempyear & "/" & $EasterMonth & "/" & $EasterDay
    Else
    $EasterDate = $year & "/" & $EasterMonth & "/" & $EasterDay
    EndIf
    $WFastDate = _DateAdd('d', -52, $EasterDate)
    $RosDat = _DateAdd('d', -48, $EasterDate)
    $FastDat = _DateAdd('d', -47, $EasterDate)
    $AschDat = _DateAdd('d', -46, $EasterDate)
    $GrDoDat = _DateAdd('d', -3, $EasterDate)
    $KarDat = _DateAdd('d', -2, $EasterDate)
    $OSaDat = _DateAdd('d', -1, $EasterDate)
    $OSoDat = $EasterDate
    $OMoDat = _DateAdd('d', 1, $EasterDate)
    $HiFaDat = _DateAdd('d', 39, $EasterDate)
    $PfSoDat = _DateAdd('d', 49, $EasterDate)
    $PfMoDat = _DateAdd('d', 50, $EasterDate)
    $FroDat = _DateAdd('d', 60, $EasterDate)

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

    ;Ermitteln nicht von Ostern abhängiger, veränderlicher Feiertage
    ;Muttertag = 2. Sonntag im Mai ABER wenn Pfingsten = 2.Sonntag im Mai dann ist Muttertag am 1. Sonntag
    ;Der 2. Sonntag kann nur zw. dem 8. u. 14.5. liegen
    For $maitag = 8 To 14
    If _DateToDayOfWeek($year, 5, $maitag) = 1 Then
    If $maitag < 10 Then
    $maitag = "0" & $maitag
    EndIf
    $MutterDat = $year & "/05/" & $maitag
    If $MutterDat = $PfSoDat Then
    $MutterDat = _DateAdd('d', -7, $year & "/05/" & $maitag)
    EndIf
    ExitLoop
    EndIf
    Next

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

    ;Erntedankfest 1. Sonntag im Oktober (zw. 1. u. 7.10.)
    For $oktobertag = 1 To 7
    If _DateToDayOfWeek($year, 10, $oktobertag) = 1 Then
    $oktobertag = "0" & $oktobertag
    $ErnteDat = $year & "/10/" & $oktobertag
    ExitLoop
    EndIf
    Next
    ;4.Advent = Sonntag vor 25.12. (zw. 18. u. 24.12.)
    For $deztag = 18 To 24
    If _DateToDayOfWeek($year, 12, $deztag) = 1 Then
    $4AdvDat = $year & "/12/" & $deztag
    $3AdvDat = _DateAdd('d', -7, $4AdvDat)
    $2AdvDat = _DateAdd('d', -14, $4AdvDat)
    $1AdvDat = _DateAdd('d', -21, $4AdvDat)
    $TotSoDat = _DateAdd('d', -28, $4AdvDat)
    $BuBDat = _DateAdd('d', -32, $4AdvDat)
    ExitLoop
    EndIf
    Next
    $HDays[11] = $WFastDate & $Delimiter & "Weiberfastnacht"
    $HDays[12] = $RosDat & $Delimiter & "Rosenmontag"
    $HDays[13] = $FastDat & $Delimiter & "Fastnacht"
    $HDays[14] = $AschDat & $Delimiter & "Aschermittwoch"
    $HDays[15] = $GrDoDat & $Delimiter & "Gründonnerstag"
    $HDays[16] = $KarDat & $Delimiter & "Karfreitag"
    $HDays[17] = $OSaDat & $Delimiter & "Ostersamstag"
    $HDays[18] = $OSoDat & $Delimiter & "Ostersonntag"
    $HDays[19] = $OMoDat & $Delimiter & "Ostermontag"
    $HDays[20] = $HiFaDat & $Delimiter & "Christi Himmelfahrt"
    $HDays[21] = $PfSoDat & $Delimiter & "Pfingstsonntag"
    $HDays[22] = $PfMoDat & $Delimiter & "Pfingstmontag"
    $HDays[23] = $MutterDat & $Delimiter & "Muttertag"
    $HDays[24] = $FroDat & $Delimiter & "Fronleichnam"
    $HDays[25] = $ErnteDat & $Delimiter & "Erntedankfest"
    $HDays[26] = $BuBDat & $Delimiter & "Buß- und Bettag"
    $HDays[27] = $TotSoDat & $Delimiter & "Totensonntag"
    $HDays[28] = $1AdvDat & $Delimiter & "1. Advent"
    $HDays[29] = $2AdvDat & $Delimiter & "2. Advent"
    $HDays[30] = $3AdvDat & $Delimiter & "3. Advent"
    $HDays[31] = $4AdvDat & $Delimiter & "4. Advent"
    _ArraySort($HDays)
    ;Datum konvertieren zu TT.MM.JJJJ
    For $i = 0 To 31
    $tmp = StringSplit($HDays[$i], $Delimiter)
    $HDays[$i] = StringMid($tmp[1], 9) & "." & StringMid($tmp[1], 6, 2) & "." & StringMid($tmp[1], 1, 4) & $Delimiter & $tmp[2]
    Next
    Return $HDays
    ;
    _FileWriteFromArray($sFeiertag, $HDays)
    EndFunc ;==>_Feiertage

    [/autoit]
  • Hilfe bezüglich ListBox

    • Thomasb
    • 12. Januar 2009 um 19:20

    hi,

    vor einiger Zeit hatte ich so etwas auch gesucht. Dabei bin ich hier im Forum auf das gestoßen.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <ListViewConstants.au3>
    #include <StaticConstants.au3>
    #include <StructureConstants.au3>
    #include <WindowsConstants.au3>

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

    ;Globals für die Funktion:

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

    $MainGui = GUICreate("DBClick test", 516, 295, 192, 120)
    GUISetBkColor(0x0)

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

    $ListView = GUICtrlCreateListView("Produkt Name", 8, 8, 498, 214,$LVS_LIST);Das ListView mit $LVS_LIST...
    $TestItem = GUICtrlCreateListViewItem("TEST1", $ListView);Test 1
    $TestItem = GUICtrlCreateListViewItem("TEST2", $ListView);Test 2
    $settoebay = GUICtrlCreateButton("&Verkaufen", 8, 232, 355, 25, 0)
    $selfbuy = GUICtrlCreateButton("Selbst &Bieten", 8, 264, 115, 25, 0)
    $moreinfos = GUICtrlCreateButton("Weitere &Informationen", 128, 264, 115, 25, 0)
    $exitbut = GUICtrlCreateButton("E&xit", 248, 264, 115, 25, 0)
    $Pic = GUICtrlCreatePic(@WindowsDir & "\winnt.bmp", 368, 232, 138, 52, BitOR($SS_NOTIFY, $WS_GROUP))
    GUISetState(@SW_SHOW)
    GUIRegisterMsg(0x004E, "_DoubleClickOnListView");Die Funktion wird bei einem Klick auf die GUI aufgerufen!

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE, $exitbut
    Exit
    EndSwitch
    WEnd

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

    Func _DoubleClickOnListView($hWndGUI, $MsgID, $wParam, $lParam);Die Eigentliche Funktion
    Local $tagNMHDR, $event, $hwndFrom, $code
    $tagNMHDR = DllStructCreate("int;int;int", $lParam)
    If @error Then Return
    $event = DllStructGetData($tagNMHDR, 3); Checkt wie das EVENT aussieht
    If $wParam = $ListView Then;Wenn der Klick auf das ListView ging..
    If $event = $NM_DBLCLK Then;.. Wenn es ein DoppelKlick war
    ; Hier kommt hin was er machen soll:
    MsgBox(0, "",GUICtrlRead(GUICtrlRead($ListView)))
    EndIf
    EndIf
    $tagNMHDR = 0
    $event = 0
    $lParam = 0
    EndFunc ;==>_DoubleClickOnListView

    [/autoit]

    vielleicht hilft es ja weiter.

    MFG
    ThomasB

  • zwei kleine Fragen

    • Thomasb
    • 12. Januar 2009 um 07:00

    Moin moin,

    danke Oskar das hat geholfen. Ich hatte auch schon alles in zusätzliche " " gesetzt. Leider hatte ich aber Execute nicht benutzt.

    ThomasB

  • Countdown richtig benutzen !?!

    • Thomasb
    • 11. Januar 2009 um 20:06

    hi,

    versuche mal das hier.

    Spoiler anzeigen
    [autoit]


    #include <Date.au3>
    Sleep(_countDown("00:03:00"))
    ;
    Func _countDown($countdown)
    $begin = TimerInit()
    Local $string = ""
    While 1
    $start = Round(TimerDiff($begin) / 1000)
    $countUp = StringFormat("%.02d" & ":" & "%.02d" & ":" & "%.02d", _
    Mod($start / 3600, 24), Mod(($start / 60), 60), Mod($start, 60))
    $sec = _DateDiff('s', "2006/01/01 " & $countUp, "2006/01/01 " & $countdown)
    If $sec = 0 Then Return 1
    $string = StringFormat("%.02d" & ":" & "%.02d" & ":" & "%.02d", _
    Mod($sec / 3600, 24), Mod(($sec / 60), 60), Mod($sec, 60))
    ToolTip("Es geht weiter in " & $string & " mit dem ")
    Sleep(100)
    WEnd
    EndFunc ;==>_countDown

    [/autoit]


    Im Sleep kannst du dann alles einstellen.

    Thomasb

  • zwei kleine Fragen

    • Thomasb
    • 11. Januar 2009 um 19:16

    es geht hierbei um die Länge und die Übersichtlichkeit im Script. z.B. wenn der Dateiname eine InI sich aus mehreren Teilen mir mehreren @year @mon etc. zusammensetzen. Somit gebe ich das in der Ini vor.
    Die andere Sache hatte ich mir schon gedacht. Das kann getrost zu den Akten gelegt werden.
    Thomas

  • zwei kleine Fragen

    • Thomasb
    • 11. Januar 2009 um 18:34

    Hi,

    leider will das nicht so recht.

    Spoiler anzeigen
    [autoit]

    Opt("ExpandEnvStrings", 1) ;0=nicht auswerten, 1=auswerten
    Opt("ExpandVarStrings", 1)

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

    ConsoleWrite(IniRead(@ScriptDir & "\Time.txt", "Time", "002",""))

    [/autoit]
    Spoiler anzeigen

    >Running:(3.3.0.0):C:\Programme\AutoIt3\autoit3.exe "C:\Programme\AutoIt3\Include\Testdatei_2_nicht löschen.au3"
    c:\Thomas\ & @year@ & \test.txt+>18:30:54 AutoIT3.exe ended.rc:0
    +>18:30:55 AutoIt3Wrapper Finished


    Woran kann es liegen?
    Zu 2 habe ich mich unglücklich ausgedrückt. Was ich wollte ist das der ToolTip evtl. den _Func() -Namen wiedergibt als variable. Sicher kann der Name auch von Hand eingetragen werden.

    ThomasB

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™