就是每次format都改变的那一种

解决方案 »

  1.   

    以下是我找来的,不一定对,自已试吧uses
    SysUtils, Windows;function Get_DiskSerialNo(DriveID : char) : string;
    var
    VolumeSerialNumber : DWORD;
    MaximumComponentLength : DWORD;
    FileSystemFlags : DWORD;
    begin
    result := '';
    try
    GetVolumeInformation(PChar(DriveID + ':\'),
    nil, 0, @VolumeSerialNumber,
    MaximumComponentLength, FileSystemFlags,
    nil, 0);
    result := IntToHex(HiWord(VolumeSerialNumber), 4) +
    '-' + IntToHex(LoWord(VolumeSerialNumber), 4);
    exceptend;
    end;
      

  2.   

    Get_DiskSerialNo('b:\');
    Get_DiskSerialNo('c:\');
    Get_DiskSerialNo('d:\');
    Get_DiskSerialNo('g:\');
    怎么都一样啊,我没有b盘啊,而且g是第二个硬盘,不是应该每个盘符的序列号都不一样吗?
      

  3.   

    应为 Get_DiskSerialNo('g');
    'char'只取一个字符。
      

  4.   

    卷标号,出厂id号,这是不同的,等我手头的事做完,给你发一个,win9x,win2000通用,元旦后
      

  5.   

    http://www.csdn.net/Expert/topic/360/360257.shtm
      

  6.   

    to liuyb() 
    我用Get_DiskSerialNo('g');
    结果也是一样,一样,一样的!
    WHY?
      

  7.   

    http://news1.gznet.com/download/download.asp?fid=612&lsort=35&sort=11
      

  8.   

    去http://delphi.mychangshu.com下吧 win2000/win9x通用的DLL,还有DELPHI例子