一个具有战略意义的问题(50分)

  • 主题发起人 主题发起人 我爱PASCAL
  • 开始时间 开始时间

我爱PASCAL

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样让自已的程式第一个运行,这样除了windows,你就是系统的主导者,
一人之下,万人之上。
我想有几个方法:
1.注册表run项
2.编一个服务
3.给explorer加一个shell
请问到底谁先加载,
还有没有更先的方法。
 
如果做成硬件驱动一样的话,可能最先加载

瑞星好象在explorer之前就加载了
 
注册表Run项是由资源管理器加载的。资源管理是WinLogon加载的。
服务是在登录前就加载了的。
如果是写驱动的方式确实是加载的比较早的。驱动配置的注册表项Start值0是最早的,系统还没有启动起来已经加载了,这个比较麻烦。很多系统功能都不能调用;Start=1的时候是稍晚一些,系统已经启动起来,系统功能都可以调用了。Start=3则是由应用程序去启动的。
还有一个地方是配置Winlogon启动时加载哪些DLL的,可以在登录前加载。
Window提供了GINA接口,可以自己做Windows的登录界面。可以写一个GINA的DLL所有的接口都调用系统原来的。在登录的时候就加载了我们程序。
 
看来电脑越来越普及,对系统不了解的人越来越多了。。。。。。。。
看看让Bill Gates都佩服的softice的启动吧——比Windows都先加载到内存中。
像真正无所不为的驱动(vxd、wdl)、内核对象等等,哪一个是“1、注册表run项 2.编一个服务 3.给explorer加一个shell”这样在windows保护模式下来工作的???!!!
 
谢谢楼上几位的详解,要上加载得太早,连api都不能调就麻烦了,应在windows那几个dll
运转之后运行就行了,编一个服务的话我觉得还是可以,编驱动的话水平又不够。
 
后退
顶部