寻求思路:关键字【TSR,系统重启,Win98,MSDOS,实模式,保护模式】

OverIsOver 2003-08-21 11:27:48
我想要实现下面的功能,请各位大虾指点一下思路啊:
编制一个TSR驻留程序A,放到Win98的autoexec.bat中,如果Win98正常启动后则会启动程序B。
B运行后会发送UDP消息给服务器端的程序C,通知C说自己(该Win98)已经正常启动,并卸载A。
如果A隔了一段时间后没有发现B在运行,则说明Win98启动失败,此时就应该进行重启动该
Win98系统。
现在B和C都已经做好了,是用的Delphi。我想请问,这个TSR驻留程序A,该用C还是汇编呢?
而且,如果系统存在驻留程序的时候,Win.com能够正常运行吗?

恩,简单地说,我想实现的就是使用程序A自动控制Win98(在启动失败的时候)的重启动。
比如有这个情况,如果Win98注册表错误并需要恢复的时候,系统会蓝屏并提示说需要重启动以恢复注册表,此时用户按回车也就可以重启动的;但是如果用户不在电脑前,我想通过
我的这个TSR程序进行重启动电脑。
...全文
42 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
OverIsOver 2003-08-25
  • 打赏
  • 举报
回复
此贴已结,请勿回复^_^
Areslee 2003-08-23
  • 打赏
  • 举报
回复
对WINDOWS9X都有用的
紫郢剑侠 2003-08-22
  • 打赏
  • 举报
回复
版主就是版主, 高!
收藏!
OverIsOver 2003-08-22
  • 打赏
  • 举报
回复
谢谢Areslee(易水)
http://missdeer.topcities.com/os/windows/1.htm
=======================
INT 2FH是Win3.x和DOS集成系统的一个接口。
当Windows启动或是退出时,它发出四个INT 2FH广播,称为启动,启动完成,开始退出,退出。在windows之前装入的DOS设备驱动程序和TSR能挂接2FH接收windows启动和退出通知。
INT 2FH并未成为Win API的一部分,它仅仅对windows之前装入的软件即DOS软件有用。
=======================
INT 2FH对Win98有用的吗?如果我的TSR可以接收到“启动完成”的通知,其实那我也就不用
再判断我的程序B是否在运行了哈~
Areslee 2003-08-22
  • 打赏
  • 举报
回复
不需要太多处理,你只需要驻留,然后在WINDOWS初始化广播时声明自己需要保留的信息就行
WINDOWS初始化广播是INT 2FH的160XH功能
OverIsOver 2003-08-22
  • 打赏
  • 举报
回复
刚才试了下W32API(李诚) 的,我现在autoexec.bat加载了一个驻留程序,进入Win98后提示
说有MsDos的格式的程序在运行。使用mem /c/p可以看到该驻留程序,但是使用热键不能呼叫
出该驻留程序(是不是就是说该程序根本就已经失效了?)使用“退回MsDos方式后”,再使
用Exit命令能够正常返回Win98,而且此时使用 mem /c/p,仍然能看到该驻留程序。
W32API 2003-08-21
  • 打赏
  • 举报
回复
:O WIN98。。。。。。
这样的话有点麻烦。。。你可以让你的代码去占用 BIOS 的空间试试。。。不过 WIN 应该会把 BIOS 也清理掉的,从操作系统的角度而言,它也确实应该完全的独占系统资源。你试试 98 行不行了,我曾在纯 DOS 下启动 UCDOS 然后不退出就启动 WIN,进去之后被提示系统有 DOS 格式的东西存在。。。我的理解是这个时候 DOS 格式的东西无法从 WIN 手上拿到任何 CPU 时间的(UCDOS 也是驻留程序)。这样你的驻留程序能不能得到所需要的 CPU 资源是个问题?
andywolf 2003-08-21
  • 打赏
  • 举报
回复
在bat中用lh命令,把驻留程序加载到高端去!
OverIsOver 2003-08-21
  • 打赏
  • 举报
回复
autoexec.bat 是先于win.com执行的吧?win.com执行后,就有可能注册表错误、KERNEL32.DLL错误、EMM386错误之类的~
W32API 2003-08-21
  • 打赏
  • 举报
回复
我倒~~~~~你的 WIN98 系统能启动到运行 autoexec.bat 这步,基本就不会有问题了的。。。

21,453

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧