请问如何编写一个程序,监控系统中指定的应用程序的操作(执行、关闭)

minded 2003-08-21 12:01:16
我家买的电视卡,不带遥控关机的功能!我想

写个监控程序,监控电视卡附带的播放器,当

我遥控关闭该应用程序时,顺带把电脑也关了

!要不每次想睡了,还给起来关机,又有精神

了!!还请高人指点 :)
...全文
154 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chifengwatch 2003-08-21
  • 打赏
  • 举报
回复
bluecyclone(小学生&c++) 说的对,显示器关不了呀。
bluecyclone 2003-08-21
  • 打赏
  • 举报
回复
可以,但是你关不掉显示器!~哈哈!~
chifengwatch 2003-08-21
  • 打赏
  • 举报
回复
我的观点是,单独做一个程序,开个线程监视播放器的进程(简单的办法是用定时器),发现播放器的进程关闭,发个关机的消息。
BCB自带的列举系统进程的例子或许有帮助。
warton 2003-08-21
  • 打赏
  • 举报
回复
呵呵!!
关显示器!
lvjack 2003-08-21
  • 打赏
  • 举报
回复
思路:
1、定时检测他是否在运行,findwindow
2、由你的程序运行那个程序然后监视其退出

它山之石:
判断一个32位程序是否结束


Windows 3.1允许程序员用GetModuleUsage()函数来测试一个程序或模块是否仍在运行。但在Windows95及Windows NT下,每个程序都独立地运行在单独的环境中,因此就排除了测试过程的状态。

Microsoft 提供了少量的函数,如:WaitForSingleObject和 WaitForMultipleObjects 来完成该功能。尽管如此,这些函数并不是时时都有效。举例来说,如果你调用WaitForSingleObject函数监测Internet Explorer的运行,同时你又选择了“帮助”菜单中的“教程”项,结果将会是系统死锁,你不得不终止WaitForSingleObject函数的运行。造成这种结果的 原因是你点选了“教程”后,会返回给Internet Explorer一个地址,告诉浏览器转到下一个网址。这种情况通常发生在一个程序是由调用它的父程序中的一个过程或对象所启动,反过来却要等待父程序的结束。

本文的目的就是要解决这个问题。

Declare

Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredaccess&, ByVal bInherithandle&, ByVal dwProcessid&) As Long

Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpexitcode As Long) As Long



' Required Constants
Const STILL_ACTIVE = &H103
Const PROCESS_QUERY_INFORMATION = &H400

Code

Sub ShellWait(cCommandLine As String)

Dim hShell As Long
Dim hProc As Long
Dim lExit As Long

hShell = Shell(cCommandLine, vbNormalFocus)

hProc = OpenProcess(PROCESS_QUERY_INFORMATION, False, hShell)

Do

GetExitCodeProcess hProc, lExit

DoEvents

Loop While lExit = STILL_ACTIVE

End Sub

调用 ShellWait,控制权将不会交给一个过程,直到调用该过程的程序结束

minded 2003-08-21
  • 打赏
  • 举报
回复
谢谢了!!显示器关不关无所谓的,关机就行了。chifengwatch(chifengwatch)有没有具体实现的例程啊?我没写过监视播进程的程序 :)
ccrun.com 2003-08-21
  • 打赏
  • 举报
回复
把显示器的电源线接在主机箱上就行了。不过你的机箱要是新的话,可能没有那种插口。嘿嘿。

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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