Windows下biosinfo.inf的用处

Windows为了解决硬件兼容性,会使用C:/WINDOWS/inf/biosinfo.inf。

该文件在必要的时候由ntldr加载,ntoskrnl执行。如果在需要的时候加载该文件失败的话会无法启动的。

该文件中最重要的一个节[MachineDescription]。

该节下列出了有多少种主板需要识别,我们拿其中一项来说明

AMIBios1

该项对应了一个同名的节

[AMIBios1]

memory=f000,8100,S,"AMIBIOS"
memory=f000,813A,S,"07/08/94"
install=Disable_APM_Install

 

ntoskrnl会根据节下面的数据来操作。

比如第一行的意思就是F000:8100为"AMIBIOS"的字符串,

第二行表示在F000:813A位置应该是"07/08/94"的字符串

第三行表示要执行的操作

[Disable_APM_Install]
AddReg=DisableApmAddReg


[DisableApmAddReg]
HKLM,System/CurrentControlSet/Control/Biosinfo/APM,Attributes,0x00010001,00000002

意思就是要在对应的注册表下面建个键值。

 

ntoskrnl解析该文件的时候会对每种主板进行识别一次,以便去修正主板的一些BUG。

该文件在同一台机器上只会执行一次,执行后会将BIOS特征写入注册表,下次ntldr检测到该标志后就不会再载入该文件了。

 

运行获取系统配置信息的应用程序时报错: 应用程序中发生了未经处理的异常 未将对象引用设置到对象的实例 有关调用实时(JIT)调试而不是此对话框的详细信息, 请参见此消息的结尾。 ************** 异常文本 ************** System.NullReferenceException: 未将对象引用设置到对象的实例。 在 SystemInfo.SystemInfo.GetBIOSInfoEx() 在 SystemInfo.SystemInfo.SystemInfo_Load(Object sender, EventArgs e) 在 System.Windows.Forms.Form.OnLoad(EventArgs e) 在 System.Windows.Forms.Form.OnCreateControl() 在 System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible) 在 System.Windows.Forms.Control.CreateControl() 在 System.Windows.Forms.Control.WmShowWindow(Message& m) 在 System.Windows.Forms.Control.WndProc(Message& m) 在 System.Windows.Forms.ScrollableControl.WndProc(Message& m) 在 System.Windows.Forms.ContainerControl.WndProc(Message& m) 在 System.Windows.Forms.Form.WmShowWindow(Message& m) 在 System.Windows.Forms.Form.WndProc(Message& m) 在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) 在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) ************** 已加载的程序集 ************** mscorlib 程序集版本:4.0.0.0 Win32 版本:4.8.9290.0 built by: NET481REL1LAST_C 基本代码:file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll ---------------------------------------- SystemInfo 程序集版本:1.0.0.0 Win32 版本:1.0.0.0 基本代码:file:///C:/SMT_V1.7_250426/SystemInformation/SystemInfo.exe ---------------------------------------- System.Windows.Forms 程序集版本:4.0.0.0 Win32 版本:4.8.9256.0 built by: NET481REL1LAST_B 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- System 程序集版本:4.0.0.0 Win32 版本:4.8.9282.0 built by: NET481REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- System.Drawing 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- System.Configuration 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll ---------------------------------------- System.Xml 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll ---------------------------------------- Accessibility 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll ---------------------------------------- Common 程序集版本:1.0.0.0 Win32 版本:1.0.0.0 基本代码:file:///C:/SMT_V1.7_250426/SystemInformation/Common.DLL ---------------------------------------- mscorlib.resources 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/mscorlib.resources.dll ---------------------------------------- System.Windows.Forms.resources 程序集版本:4.0.0.0 Win32 版本:4.8.9032.0 built by: NET481REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.Windows.Forms.resources.dll ---------------------------------------- ************** JIT 调试 ************** 要启用实时(JIT)调试, 该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置 jitDebugging 值。 编译应用程序时还必须启用 调试。 例如: <configuration> <system.windows.forms jitDebugging="true" /> </configuration> 启用 JIT 调试后,任何未经处理的异常 都将被发送到在此计算机上注册的 JIT 调试程序, 而不是由此对话框处理。
05-06
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值