主板Bios的问题 (50分)

C

caoliu

Unregistered / Unconfirmed
GUEST, unregistred user!
with Memo1.Lines do
begin
Add('MainBoardBiosName:'+^I+string(Pchar(Ptr($FE061))));
Add('MainBoardBiosCopyRight:'+^I+string(Pchar(Ptr($FE091))));
Add('MainBoardBiosDate:'+^I+string(Pchar(Ptr($FFFF5))));
Add('MainBoardBiosSerialNo:'+^I+string(Pchar(Ptr($FEC71))));
end;
帮我看看在win2000下编译出错,我是在网上下的!

还有
if (sys.OpenKey('HARDWARE/DESCRIPTION/System',false))=true then
begin
sys.ReadBinaryData('SystemBiosVersion', bios, sizeof(bios));
sys.CloseKey ;
end;
with TreeView1.Items.AddChild(TreeView1.Items[8],'Bios: '+bios) do
begin
ImageIndex:=TreeView1.Items.Item[8].ImageIndex +2;
SelectedIndex:=TreeView1.Items.Item[8].SelectedIndex +2;
end;

同是win2000 server,技嘉的主板;装inter 的cpu可以得到主板Bios,AMD的不可以;主板行号不同;
我查了一下装AMD的注册表'SystemBiosVersion'是空的,这是?????
它写到那里去了???
 
^I 这里是不是有问题啊?
 
什么提示
 
ptr()函数直接read内存地址,在98中该地址未被OS保护,win2k对地址进行了保护,所以出错。。。
 
Ptr($FE061),Ptr($FE091),....是什么意思?
^I是什么意思?
 
读取主板BIOS,你到网上搜索Bioshelp.pas单元吧,很不错,适用于所有MS操作系统
 
shenloqi给我一个网址好吗,
我搜索了,早不到
 
win2000里不允许直接访问硬件,你的代码在2000里无法运行
 
win2000下是不允许直接读取内存地址的
 
^I是什么意思?
 
if (sys.OpenKey('HARDWARE/DESCRIPTION/System',false))=true then
begin
sys.ReadBinaryData('SystemBiosVersion', bios, sizeof(bios));
sys.CloseKey ;
end;
with TreeView1.Items.AddChild(TreeView1.Items[8],'Bios: '+bios) do
begin
ImageIndex:=TreeView1.Items.Item[8].ImageIndex +2;
SelectedIndex:=TreeView1.Items.Item[8].SelectedIndex +2;
end;

同是win2000 server,技嘉的主板;装inter 的cpu可以得到主板Bios,AMD的不可以;主板行号不同;
我查了一下装AMD的注册表'SystemBiosVersion'是空的,这是?????
它写到那里去了???
 
shenloqi:
能否将BIOSHELP.pas发一份给我?
xueziying@cn99.com
 
我的机器坏了,等过两天吧:(
 
shenloqi:
能否将BIOSHELP.pas发一份给我?
wjchenxx@sina.com
 
楼顶的,留下email吧,或者是写信给我(Chinbo#eyou#com)
 
我的email: tidecl@vip.sina.com
 
to shenloqi
也发一份给我吧,谢谢了
lark_2k1@163.com
 
我也要。。。
nplk@vip.sina.com
 
OK!已发送,不再发送了,请不要留Email了。
 
to shenloqi
谢谢,不错!研究中……要有Demo就好了,呵呵!还好比较easy
 
顶部