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
] #include < INet.au3 >
#include <string.au3>
;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS001
$sInfoCOESSS001C = _DriveInfo("\\COESSS001\c$")
$sInfoCOESSS001D = _DriveInfo("\\COESSS001\d$")
;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS002
$sInfoCOESSS002C = _DriveInfo("\\COESSS002\c$")
$sInfoCOESSS002D = _DriveInfo("\\COESSS002\d$")
;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS003
$sInfoCOESSS003C = _DriveInfo("\\COESSS003\c$")
$sInfoCOESSS003D = _DriveInfo("\\COESSS003\d$")
;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS004
$sInfoCOESSS004C = _DriveInfo("\\COESSS004\c$")
$sInfoCOESSS004D = _DriveInfo("\\COESSS004\d$")
;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS005
$sInfoCOESSS005C = _DriveInfo("\\COESSS005\c$")
$sInfoCOESSS005D = _DriveInfo("\\COESSS005\d$")
;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS007
$sInfoCOESSS007C = _DriveInfo("\\COESSS007\c$")
$sInfoCOESSS007D = _DriveInfo("\\COESSS007\d$")
;Ausrechnung des freien Speichers auf Laufwerk C:\ & D:\ auf dem Server //COESSS008
$sInfoCOESSS008C = _DriveInfo("\\COESSS008\c$")
$sInfoCOESSS008D = _DriveInfo("\\COESSS008\d$")
;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
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
mfg autoBert