急,delphi如何取得磁盘C的剩余空间

fangkuaile 2012-11-18 08:07:09
我想取得磁盘C的剩余空间
var
FreeS,TotalS:Int64;
TotalF:Int64;
begin
GetDiskFreeSpaceEx('c:',FreeS,TotalS,@TotalF);
end;
这里编译会报错,不能为int64型,使用Integer型是可以的,但这里的返回值是字节,使用int32型肯定是不行的,那该怎么做呢?
急求大侠帮忙啊
...全文
407 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
fangkuaile 2012-11-19
  • 打赏
  • 举报
回复
回复#10,gust2012 这个可以 太厉害了,谢谢啦
gust2012 2012-11-19
  • 打赏
  • 举报
回复
方法应该很多吧,

var
  d1,d2,d3,d4: DWORD;
begin
  GetDiskFreeSpace('C:',d1,d2,d3,d4);

  Memo1.Clear;
  with Memo1.Lines do
  begin
    Add(Format('一个簇内的扇区数: %d',[d1]));
    Add(Format('一个扇区内的字节数: %d',[d2]));
    Add(Format('剩余簇数: %d',[d3]));
    Add(Format('总簇数: %d',[d4]));
    Add(Format('剩余空间: %f GB',[d3/1024/1024/1024*d2*d1]));
    Add(Format('总空间: %f GB',[d4/1024/1024/1024*d2*d1]));
  end;
end;
fox600123 2012-11-19
  • 打赏
  • 举报
回复
D3还有人用啊?我见都没见过D3
luxuewei5214 2012-11-18
  • 打赏
  • 举报
回复
同情中,我们用的是delphi5
hsfzxjy 2012-11-18
  • 打赏
  • 举报
回复
D3是32位下的么。。
fangkuaile 2012-11-18
  • 打赏
  • 举报
回复
公司要用的就是这个古老的东西,木有办法啦
SQLDebug_Fan 2012-11-18
  • 打赏
  • 举报
回复
Delphi3太久了,不能升级?
fangkuaile 2012-11-18
  • 打赏
  • 举报
回复
忘记说明是Delphi3,我现在做的程序是在这个环境下的,不知道怎么办了
fangkuaile 2012-11-18
  • 打赏
  • 举报
回复
delphi3不一样啊,头痛了
蓝色光芒 2012-11-18
  • 打赏
  • 举报
回复
奇怪,为什么我这里可以呢,D7,D2010测试都可以,为什么你那里不行呢? 你这样试一下

begin
  Windows.GetDiskFreeSpaceEx('c:',FreeS,TotalS,@TotalF);
end;
强制指明函数出处
fangkuaile 2012-11-18
  • 打赏
  • 举报
回复
我是菜鸟,刚接触delphi,在线等回复

1,184

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧