Offene Fragen

  • Hallo lupos,

    Duplicate FunctionsName bedutet, dass eine Funktion nur einmal existieren darf. (Highländer-Prinzip = Es kann nur einen geben). Es ist auch unnötig ein und die gleiche Funktion mehrmals zu erstellen, sie sind ja gerade dafür gemacht eine Folge immer wiederkehrender Anweisungen zuammenzufassen und bei Bedarf zu verwenden. Du solltest dich also dringensd mit den Grundlagen von AutoIt bechäftigen, sprich Hilfe durcharbeiten.

    So sollte dein Skript funktionieren:

    Spoiler anzeigen
    [autoit]

    [autoit
    ] #include < INet.au3 >
    #include <string.au3>

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

    ;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS001
    $sInfoCOESSS001C = _DriveInfo("\\COESSS001\c$")
    $sInfoCOESSS001D = _DriveInfo("\\COESSS001\d$")

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

    ;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS002
    $sInfoCOESSS002C = _DriveInfo("\\COESSS002\c$")
    $sInfoCOESSS002D = _DriveInfo("\\COESSS002\d$")

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

    ;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS003
    $sInfoCOESSS003C = _DriveInfo("\\COESSS003\c$")
    $sInfoCOESSS003D = _DriveInfo("\\COESSS003\d$")

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

    ;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS004
    $sInfoCOESSS004C = _DriveInfo("\\COESSS004\c$")
    $sInfoCOESSS004D = _DriveInfo("\\COESSS004\d$")

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

    ;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS005
    $sInfoCOESSS005C = _DriveInfo("\\COESSS005\c$")
    $sInfoCOESSS005D = _DriveInfo("\\COESSS005\d$")

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

    ;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS007
    $sInfoCOESSS007C = _DriveInfo("\\COESSS007\c$")
    $sInfoCOESSS007D = _DriveInfo("\\COESSS007\d$")

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

    ;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS008
    $sInfoCOESSS008C = _DriveInfo("\\COESSS008\c$")
    $sInfoCOESSS008D = _DriveInfo("\\COESSS008\d$")

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

    ;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS009
    $sInfoCOESSS009C = _DriveInfo("\\COESSS009\c$")
    $sInfoCOESSS009D = _DriveInfo("\\COESSS009\d$")
    ; E-Mail Senden
    $s_SmtpServer = "l"
    $s_FromName = ""
    $s_FromAddress = ""
    $s_ToAddress = ""
    $s_Subject = "Free Disk Space"
    Dim $as_Body[16]
    $as_Body[0] = "Freier Speicherplatz auf COESSS001 C:\ :" & $InfoCOESSS001C & @CRLF
    $as_Body[1] = "Freier Speicherplatz auf COESSS001 D:\ :" & $InfoCOESSS001D & @CRLF
    $as_Body[2] = "Freier Speicherplatz auf COESSS002 C:\ :" & $INfoCOESSS002C & @CRLF
    $as_Body[3] = "Freier Speicherplatz auf COESSS002 D:\ :" & $InfoCOESSS002D & @CRLF
    $as_Body[4] = "Freier Speicherplatz auf COESSS003 C:\ :" & $InfoCOESSS003C & @CRLF
    $as_Body[5] = "Freier Speicherplatz auf COESSS003 D:\ :" & $InfoCOESSS003D & @CRLF
    $as_Body[6] = "Freier Speicherplatz auf COESSS004 C:\ :" & $InfoCOESSS004C & @CRLF
    $as_Body[7] = "Freier Speicherplatz auf COESSS004 D:\ :" & $InfoCOESSS004D & @CRLF
    $as_Body[8] = "Freier Speicherplatz auf COESSS005 C:\ :" & $InfoCOESSS005C & @CRLF
    $as_Body[9] = "Freier Speicherplatz auf COESSS005 D:\ :" & $InfoCOESSS005D & @CRLF
    $as_Body[10] = "Freier Speicherplatz auf COESSS007 C:\ :" & $InfoCOESSS007C & @CRLF
    $as_Body[11] = "Freier Speicherplatz auf COESSS007 D:\ :" & $InfoCOESSS007D & @CRLF
    $as_Body[12] = "Freier Speicherplatz auf COESSS008 C:\ :" & $InfoCOESSS008C & @CRLF
    $as_Body[13] = "Freier Speicherplatz auf COESSS008 D:\ :" & $InfoCOESSS008D & @CRLF
    $as_Body[14] = "Freier Speicherplatz auf COESSS009 C:\ :" & $InfoCOESSS009C & @CRLF
    $as_Body[15] = "Freier Speicherplatz auf COESSS009 D:\ :" & $InfoCOESSS009D & @CRLF
    $Response = _INetSmtpMail($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $as_Body, @ComputerName, -1)
    $err = @error
    If $Response = 1 Then
    MsgBox(0, "Success!", "Mail sent")
    Else
    MsgBox(0, "Error!", "Mail failed with error code " & $err)
    EndIf

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

    Func _DriveInfo($sDriveCOESSS001)
    $nTotal = DriveSpaceTotal($sDriveCOESSS001) / 1024
    $nFree = DriveSpaceFree($sDriveCOESSS001) / 1024
    $nPer = $nFree / $nTotal * 100
    Return StringFormat("%.2f GB frei von %.2f GB = %.2f %", $nFree, $nTotal, $nPer)
    vorhergehende Zeile löschen
    EndFunc ;==>_DriveInfo

    [/autoit]

    mfg autoBert

  • Eine einzige Frage nooch, habe jetzt verschiedenes ausprobiert, aber kriege nur mit
    der Funktion ControlClick den OK Button bestätigt, geht es nicht auch mit SEND?

    Grüße Lupos

  • Sind die nutzlos, wenn ich eine email generiere?
    Möchte es mir ja jeden Tag shcicken lassen um 08:00 morgens.
    Also wenn ich keine MSGBox habe, habe ich auch kein Problem mit dem TimeOut-Parameter?
    Weiß aber nicht ob es funktioniert hat korrekt?

    Grüße Lupos

  • Hallo lupos,

    da das Skrip unbeaufsichtigt läuft bekommst du (egal wie du dafür sorgst dass die MsgBox [*] verschwindet) deine Rückmeldung über die EMail. Wenn du dokumentieren möchtest wann das Programm gesendet bzw. nicht gesendet hat kannt du ja stattdessen

    [autoit]

    _FileWriteLog

    [/autoit]

    einbauen.

    [*]kann ja nur noch eine der beiden sein:

    [autoit]

    If $Response = 1 Then
    MsgBox(0, "Success!", "Mail sent")
    Else
    MsgBox(0, "Error!", "Mail failed with error code " & $err)
    EndIf

    [/autoit]

    alle anderen habe ich ja schon herausgenommen,

    mfg autoBert

  • Eine Frage habe ich noch:
    Wie kann ich nun die email Adresse sehen in meinem Outlook zeigt er nur FreeDiskSpace@ an und nicht den dazugehörige .blabla.com an!
    Deshalb kann er es auch nicht sofort, in den Unterordner schieben!?!
    Irgend eine Lösung?

    Grüße Lupos