Hallo,
ich würde gerne über Lotusscript den freien Speicherplatz der Laufwerke des Servers ermitteln.
Da es ja hierfür keine direkte Möglichkeit gibt, dachte ich an die Windows API.
Declare Function GetDiskFreeSpace Lib "Kernel32" Alias _
"GetDiskFreeSpaceA" (ByVal lpRootPathName As String, _
lpSectorsPerCluster As Long, lpBytesPerSector As Long, _
lpNumberOfFreeClusters As Long, lpTtoalNumberOfClusters _
As Long) As Long
Sub Initialize
Dim drv As String
Dim ret As Long
Dim sectors As Long
Dim bytes As Long
Dim free As Long
Dim total As Long
drv = "C:\"
ret = GetDiskFreeSpace(drv, sectors, bytes, free, total)
MessageBox "S=" & sectors & " B=" & bytes & " F=" & free
End Sub
Für Laufwerk C:\ bekomme ich einen Wert zurück: S=8 N=512 F=36.264.391
Meinem Verständnis nach sollte sectors * bytes * free den freien Platz ermitteln.
Das Betriebssystem selber zeigt mir an: 37.992.173.568
Ich hab keinen Schimmer, was das also für Werte sind, bzw. wie ich auf den tatsächlichen freien Platz kommen kann.
Wenn ich als Laufwerk D:\ angebe, dann gibt mir die Funktion überall 0 zurück?
Wieso funktioniert die Funktion nur bei C:\ ?
Weiß jemand, wie ich die korrekten Werte für alle lokalen Laufwerke ermitteln kann?