var
driver:pchar;
sec1, byt1, cl1, cl2:longword;
begin
driver:='c:\';//要显示的驱动器名
GetDiskFreeSpace(driver, sec1, byt1, cl1, cl2);
cl1 := cl1 * sec1 * byt1;
cl2 := cl2 * sec1 * byt1;
Label1.Caption := '该驱动器总共容量' + Formatfloat('###,##0',cl2) + '字节';
Label2.Caption := '该驱动器可用容量' + Formatfloat('###,##0',cl1) + '字节';
end;
我用上面的代码得到的结果和实际结果不一致 为什么
driver:pchar;
sec1, byt1, cl1, cl2:longword;
begin
driver:='c:\';//要显示的驱动器名
GetDiskFreeSpace(driver, sec1, byt1, cl1, cl2);
cl1 := cl1 * sec1 * byt1;
cl2 := cl2 * sec1 * byt1;
Label1.Caption := '该驱动器总共容量' + Formatfloat('###,##0',cl2) + '字节';
Label2.Caption := '该驱动器可用容量' + Formatfloat('###,##0',cl1) + '字节';
end;
我用上面的代码得到的结果和实际结果不一致 为什么
解决方案 »
- delphi xe3编译的程序,右键菜单是英文的,怎么整成中文的啊?
- 用DELPHI的ADO+MYSQL做成的程序在用float(D,M)数据类型的问题??
- 关于如何从多条记录中取数据
- 用ADOSTOREDPROC执行一个内容是update存储过程,怎么知道一共修改了几条记录?
- 寻chart做曲线分析的例子,或chart的使用方法
- 有没有功能和DBGrid相同的控件,但要漂亮的。
- 怎样得到文件的16*16 的图标,extracticon?
- 有关NMSMTP发送HTML格式邮件的问题!
- 送分,旧帖重贴:精简版InterBase6.0大功告成!欢迎大家都来用,呵呵...(我脸皮真厚)....2.26M!
- 如何在程序中为某一控件添加自定义事件?
- 恭祝 CDSoftwareWj ---伯虎同志新婚快乐 白头到老
- 一个声明时的小问题啊!请大家帮我看看啊!我是小菜!谢谢大家了啊!!!!!!
GetDiskFreeSpace只能支持2GB的
见
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/getdiskfreespace.asp所以当然没正确结果了!MSDN
The GetDiskFreeSpace function cannot report volume sizes that are greater than 2 gigabytes (GB). To ensure that your application works with large capacity hard drives, use the GetDiskFreeSpaceEx function.用GetDiskFreeSpaceEx就OK
见
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/getdiskfreespaceex.asphttp://lysoft.7u7.net