如何获得主板序列号?

lqlling 2002-09-12 03:55:03
我用下面的代码为什么没法得到我得主板的序列号?
procedure TRegObj.SetSerial;
var
FSerial:string;
begin
//取得主板的序列号
FSerial := String(Pchar(Ptr($FEC71)));
end;
...全文
25 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
AleTiff 2002-09-18
  • 打赏
  • 举报
回复
老天啊,楼主要主板序列号,一个给系统版本号,一个给硬盘序列号,
难道我给个光盘序列号吗?:-)
关注。
lovedata 2002-09-17
  • 打赏
  • 举报
回复
如何获得HDD序列号


CoDelphi.com

 摘 要:以下代码获得指定硬盘的序列号,并以字符串的形式返回
 关键字:硬盘 序列号 获取
 类 别:API
--------------------------------------------------------------------------------
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);
except

end;
end;
lqlling 2002-09-12
  • 打赏
  • 举报
回复
to shanxia(山峡) :
OSVERESIONINFO是个什么类型?
运行后报了很多错:
[Error] test.pas(29): Undeclared identifier: 'OSVERESIONINFO'
[Error] test.pas(31): Missing operator or semicolon
[Error] test.pas(32): Types of actual and formal var parameters must be identical
[Error] test.pas(33): ')' expected but identifier 'dwMajorVersion' found
[Error] test.pas(33): 'END' expected but ')' found
[Fatal Error] p_test.dpr(5): Could not compile used unit 'test.pas'
shanxia 2002-09-12
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender:TObject);
var OSVI:OSVERESIONINFO;
begin
OSVI.dwOSVersionInfoSize:=sizeof(OSVERSIONINFO);
GetVersionEx(OSVI);
Edit1.text:=InttoStr(OSVI.dwMajorVersion)+'.'
+IntToStr(OSVI.dwMinorVersion)+'.'
+Inttostr(OSVI.dwBuildNumber)+'.'
+Inttostr(OSVI.dwPlatformid)+'.'
+OSVI.szCSDVersion;
end;
希望可以帮到你!

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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