读bois的程序:
procedure TForm1.Button1Click(Sender: TObject);
var data:Smallint;temp:byte;
decode,passwd:array [0..9] of char;count,I:integer;
begin
count:=0;
asm
mov al,29
out $70,al
mov ah,al
mov al,28
out $70,al
in al,$71
mov data,ax
end;
while data>0 do
begin
if (data<$80) then
begin
passwd[count]:=char(data);
break;
end
else
begin
temp:=data and $3f;
if (temp <= $20) then
temp:=temp or $30;
passwd[count]:=char(temp);
count:=count+1;
data:=data-temp;
data:=data shr 2;
end;
end;
i:=0;
while (count>=0) do
begin
decode[i]:=passwd[count];
count:=count-1;
i:=i+1;
end;
showmessage('the CMOS passwd= '+decode);
end;
procedure TForm1.Button1Click(Sender: TObject);
var data:Smallint;temp:byte;
decode,passwd:array [0..9] of char;count,I:integer;
begin
count:=0;
asm
mov al,29
out $70,al
mov ah,al
mov al,28
out $70,al
in al,$71
mov data,ax
end;
while data>0 do
begin
if (data<$80) then
begin
passwd[count]:=char(data);
break;
end
else
begin
temp:=data and $3f;
if (temp <= $20) then
temp:=temp or $30;
passwd[count]:=char(temp);
count:=count+1;
data:=data-temp;
data:=data shr 2;
end;
end;
i:=0;
while (count>=0) do
begin
decode[i]:=passwd[count];
count:=count-1;
i:=i+1;
end;
showmessage('the CMOS passwd= '+decode);
end;
解决方案 »
- 求 如何读取其它程序的数据
- 散分了,这个是散分贴的快捷方式!!!
- DBGrid即时检查录入资料的正确性?
- 【散分】冰天雪地裸体跪求都买不到车票,被逼提前十天步行回家过年
- fastreport打印DbGrid的问题
- 为何我在sql 里面使用 extract 来判断月份会出错阿
- 200分征求API函数NetUserSetInfo和NetUserSetGroups的用法和例子,up有分
- 有关FASTREPORT的一个大怪问题.
- 在公司成立初期如何分配项目股和技术股的比例?
- 利用DELPHI+SQLSERVER编写一个基于局域网机房的工业设备模拟控制系统
- 能不能探讨一下“PDOXUSRS.LCK”的问题??(实现最笨的网络连接)
- 新手请教: 如何把一查询结果生成一数据库,。DB。DBF类型。
因为口令等数据是会变化的。同硬盘序列号一样。
我会随后发一个控件给你,这个控件包含了在win98下读取BIOS、网卡信息的多个功能。********************************************
另外关于读取BIOS信息,你还不妨试一下以下语句:
procedure TForm1.Button1Click(Sender: TObject);
var
bn, bc, bd, bs: string;
begin
try
bn := String(Pchar(Ptr($FE061)));
bc := String(Pchar(Ptr($FE091)));
bd := String(Pchar(Ptr($FFFF5)));
bs := String(Pchar(Ptr($FEC71)));
except
bn := 'Unsupported';
bc := 'Unsupported';
bd := 'Unsupported';
bs := 'Unsupported';
end;
showmessage(
'[BiosName] ' + bn + #13 +
'[BiosCopyright] ' + bc + #13 +
'[BiosDate] ' + bd + #13 +
'[BiosSerial] ' + bs);
end;这段程序在我的三台机器上都通过。另外在一台DOS622机器上,用C语言编写程序读取
以上的四个地址都正确,还有直接用DEBUG也可以看到。
这个控件可以发给我吗?非常感谢!!!
sls