可以用获取。
function GetHDSerialNumber(Drv : String): String;
var
VolumeSerialNumber : DWORD;
MaximumComponentLength : DWORD;
FileSystemFlags : DWORD;
begin
if Drv[Length(Drv)] =':' then Drv := Drv + '\';
GetVolumeInformation(pChar(Drv), nil ,0 ,@VolumeSerialNumber,
MaximumComponentLength,nil, FileSystemFlags, 0);
Result := IntToHex(HiWord(VolumeSerialNumber)4) + '-' +
IntToHex(LoWord(VolumeSerialNumber)4);
end;
function GetHDSerialNumber(Drv : String): String;
var
VolumeSerialNumber : DWORD;
MaximumComponentLength : DWORD;
FileSystemFlags : DWORD;
begin
if Drv[Length(Drv)] =':' then Drv := Drv + '\';
GetVolumeInformation(pChar(Drv), nil ,0 ,@VolumeSerialNumber,
MaximumComponentLength,nil, FileSystemFlags, 0);
Result := IntToHex(HiWord(VolumeSerialNumber)4) + '-' +
IntToHex(LoWord(VolumeSerialNumber)4);
end;
解决方案 »
- 请问怎么改变toolbar(showcaptions=true)上面的按钮大小?
- pagecontrol有多个页面,如何选中中间的一个页面后,使它前面的所有页面都处于不能选择的状态?
- 各位大侠,小弟刚学delphi 问个问题 ,救急啊!!谢谢(关于分班的问题)
- 刚学习delphi,遇到一个DBGridEh显示和保存信息的问题,请各位帮忙解决。。。
- progressbar 移动 最小化 // 问题请教
- 200分求购DBGrid打印代码或者第三方控件!
- 想转Delphi,大家提点建议,给点经验
- listbox组件怎样用呀
- 找一个delphi高手,做一个socket方面的编程
- 局域网内用Delphi连接Firebird报错,INET/inet_error: connect errno = 10060
- 请问网上哪里有关于api 的比较完整的资料
- 那里有类似OICQ的原代码,最好是用DELPHI写的。
var
SerialNum : pdword;
a, b : dword;
Buffer : array [0..255] of char;
begin
if GetVolumeInformation('c:\', Buffer, SizeOf(Buffer), SerialNum, a, b, nil, 0) then
Label1.Caption := IntToStr(SerialNum^);
end;