|
|
发表于 2018-5-6 13:23:55
|
显示全部楼层


用nim写了一个,表示很开心:- type
- WINBOOL* = uint32
- s64* = uint64
- proc getDiskFreeSpaceEx*(name: cstring, freeBytes,
- lpTotalNumberOfBytes,lpTotalNumberOfFreeBytes: var s64): WINBOOL
- {.stdcall, dynlib: "kernel32", importc: "GetDiskFreeSpaceExA", discardable.}
- proc getusedspace*(name: cstring):auto {.discardable.} =
- var freeBytes, totalBytes, totalFreeBytes: s64
- getDiskFreeSpaceEx(name, freeBytes, totalBytes,totalFreeBytes)
- result = ((totalBytes - freeBytes) div 1024 div 1024)
- echo "已经使用:", getusedspace("c:\\EFI"), "MB"
复制代码 |
|