hongdou
驱动牛犊
驱动牛犊
  • 注册日期2004-06-15
  • 最后登录2006-03-10
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2203回复:15

请问我有没有办法在驱动中判断系统是在安全模式还是普通模式

楼主#
更多 发布于:2004-08-06 11:30
如体
我现在想禁用安全模式,有什么更好的办法么??
水来啊
zfw
zfw
驱动小牛
驱动小牛
  • 注册日期2001-12-16
  • 最后登录2006-09-01
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-08-06 13:22
关注...
zfw
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
板凳#
发布于:2004-08-06 13:59
写一个在安全模式下也加载的驱动,和一个只在正常模式下加载的驱动,后者在前面先加载,当安全模式下也加载的驱动启动的时候检测前面哪个是否加载了,如没有,那可能在安全模式下,然后。。。。。。。
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
hongdou
驱动牛犊
驱动牛犊
  • 注册日期2004-06-15
  • 最后登录2006-03-10
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-08-06 14:03
嗯,谢谢老大
能不能顺便告诉我,什么样的驱动在正常模式加载,什么样的在安全模式加载????
水来啊
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
地下室#
发布于:2004-08-06 14:09
好象INSIDE WIN2000里有介绍的,你看看先。。。。。。
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
terrychen
驱动小牛
驱动小牛
  • 注册日期2002-04-15
  • 最后登录2014-03-13
  • 粉丝0
  • 关注0
  • 积分174分
  • 威望68点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-08-06 14:15
不确定是不是 start值为0的service
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-08-06 17:17
wowocock兄,这是你判断是否为安全模式的方法???????????

terrychen 老弟,你使用InitSafeBootMode来判断吧,这个比较简单些。
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
7楼#
发布于:2004-08-06 18:37
The Windows 2000 kernel scans boot parameters in search of the safe-mode switches early during the boot and sets the internal variable InitSafeBootMode to a value that reflects the switches the kernel finds. The kernel writes theInitSafeBootMode value to the registry value HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Option\OptionValue so that user-mode components, such as the SCM, can determine what boot mode the system is in. In addition,if the system is booting safe mode with command prompt, the kernel sets the HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Option\UseAlternate Shell value to 1. The kernel records the parameters that Ntldr passes to it in the value HKLM\SYSTEM\CurrentControlSet\Control\SystemStartOptions.

RED_spring
驱动中牛
驱动中牛
  • 注册日期2002-07-28
  • 最后登录2016-11-06
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望19点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
  • 社区居民
8楼#
发布于:2004-08-06 19:03
2000看文章看的真细!
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
9楼#
发布于:2004-08-06 20:13
good ,heihei
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
10楼#
发布于:2004-08-06 20:40
过奖过奖,不过是有些印象,然后再翻书的

HKLMSYSTEM\\CurrentControlSet\\Control\\SafeBoot\\Option\\OptionValue
hongdou
驱动牛犊
驱动牛犊
  • 注册日期2004-06-15
  • 最后登录2006-03-10
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2004-08-09 14:55
谢谢各位老大指点,这回有救了
水来啊
hongdou
驱动牛犊
驱动牛犊
  • 注册日期2004-06-15
  • 最后登录2006-03-10
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2004-08-09 15:28
我又有点想法了,是不是在安全模式下由注册表的某一部分决定系统加载那些东西,不加载那些,那如果我修改了这些内容,是不是可以在安全模式下也同样可以自动启动我的程序???
水来啊
zgc7622
驱动小牛
驱动小牛
  • 注册日期2003-02-24
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分136分
  • 威望15点
  • 贡献值0点
  • 好评度13点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2004-09-19 17:51
arthurtu
你说的键在我的系统怎么没有:
我的
HKLM\\SYSTEM\\CurrentControlSet\\Control\\SafeBoot\\
下面就只有Minimal和Network两个子项了,没有Option子项呀!!!!!
hongdou
驱动牛犊
驱动牛犊
  • 注册日期2004-06-15
  • 最后登录2006-03-10
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2004-09-20 17:50
进安全模式就有了
水来啊
JenyCheng
驱动小牛
驱动小牛
  • 注册日期2005-07-26
  • 最后登录2021-01-24
  • 粉丝2
  • 关注0
  • 积分57分
  • 威望646点
  • 贡献值0点
  • 好评度119点
  • 原创分0分
  • 专家分0分
  • 社区居民
15楼#
发布于:2009-03-18 16:51
Windows 内核导出了一个变量.一个 ULONG 类型的指针.InitSafeBootMode .用于确定系统运行于何种模式下.驱动程序可以用这个导出的变量来判断系统当前处于何种模式下.下列是关于这个变量的一些取值的说明:

Value Mode
0 The operating system is not in Safe Mode.
1 SAFEBOOT_MINIMAL
2 SAFEBOOT_NETWORK
3* SAFEBOOT_DSREPAIR(仅用于windows 域控制器)

要使用这个变量可以参考如下:

extern PULONG InitSafeBootMode;


然后便可以使用类似如下的代码片断做判断.

if (*InitSafeBootMode > 0) {
// The operating system is in Safe Mode.
// Take appropriate action.
//
}
游客

返回顶部