tempad
Readygo技术搜索引擎 >>ASP技术 >> 高分请教:如何监视程序的运行!(高手请进)

高分请教:如何监视程序的运行!(高手请进)

Readygo技术搜索引擎 网络搜索 efish 2008-1-14 6:26:11

高分请教:如何监视程序的运行!(高手请进)

楼主Roisen(薄荷~第八月危机)2002-05-14 15:01:06 在 VB / 基础类 提问

我想用vb来做一个系统监视的程序,但是我不想用timer控件来循环检测,我只是希望我想检测的情况发生以后可以通知我的程序。  
  比如举个例子,我想检测ie程序的运行情况,但是我不知道用户什么时候会打开一个ie程序,只有知道用户什么时候打开了ie,才可以获得ie的句柄,进而监视ie.我希望用户在打开ie的时候可以通知我的vb程序。这个怎么样实现?  
  如果用timer来循环检测是一个很笨的办法,我希望可以有一个高效的办法。  
  另外,怎么获得一个运行的程序的句柄?  
  救命!高分答谢  
  问题点数:0、回复次数:2Top

1 楼gump2000(阿甘)回复于 2002-05-14 15:27:16 得分 0

您可以使用FindWindow  
   
  【函数】  
  FindWindow  
   
  【操作系统】  
  Win9X:Yes  
  WinNT:Yes  
   
  【声明】  
  FindWindow   Lib   "user32"   Alias   "FindWindowA"   (ByVal   lpClassName   As   String,   ByVal   lpWindowName   As   String)   As   Long  
   
  【说明】  
   
      寻找窗口列表中第一个符合指定条件的顶级窗口(在vb里使用:FindWindow最常见的一个用途是获得ThunderRTMain类的隐藏窗口的句柄;该类是所有运行中vb执行程序的一部分。获得句柄后,可用api函数GetWindowText取得这个窗口的名称;该名也是应用程序的标题)    
   
  【返回值】  
   
      Long,找到窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError    
   
  【其它】  
   
      很少要求同时按类与窗口名搜索。为向自己不准备参数传递一个零,最简便的办法是传递vbNullString常数  
      示例  
      Dim   hw&   ,   cnt&  
      Dim   rttitle   As   String   *   256  
      hw&     =   FindWindow("ThunderRT5Main",   vbNullString)   "   ThunderRTMain   under   VB4  
      cnt   =   GetWindowText(hw&   ,   rttitle,   255)  
      MsgBox   Left$(rttitle,   cnt),   0,   "RTMain   title"  
   
  【参数表】  
      lpClassName   ----     String,指向包含了窗口类名的空中止(C语言)字串的指针;或设为零,表示接收任何类  
   
      lpWindowName   ---     String,指向包含了窗口文本(或标签)的空中止(C语言)字串的指针;或设为零,表示接收任何窗口标题  
   
  不用   Timer   如何检测:)   任务管理器还是用Timer的了  
  Top

2 楼Roisen(薄荷~第八月危机)回复于 2002-05-16 09:25:13 得分 0

非常感谢,但是我希望可以有人提供像钩子函数那样的方法,自动监视系统的消息或者进程。Top

责任编辑: efish 参与评论 查找更多:
相关文章
求关于字符串的最好算法,要精品 求关于字符串的最好算法,要精品
有关简单的类型转换? 有关简单的类型转换?
VC中的同步机制,欢迎参与讨论------来者有分! VC中的同步机制,欢迎参与讨论------来者有分!
ado+sql server为何这么慢? ado+sql server为何这么慢?
如何对SYBASE数据库做日常备份,十万火急 如何对SYBASE数据库做日常备份,十万火急
从SQL SERVER里读数据到ACCESS里,但有3万多条,速度… 从SQL SERVER里读数据到ACCESS里,但有3万多条,速度太慢,怎么解决??
用什么工具能改变应用程序的图标?? 用什么工具能改变应用程序的图标??
如何在用无线网卡的CE环境下,用程序直接连SQL Serv… 如何在用无线网卡的CE环境下,用程序直接连SQL Server数据库啊?
请教打开access窗体时的条件语句、 请教打开access窗体时的条件语句、
鱼龙混杂的垃圾论坛!!!!!!!! 鱼龙混杂的垃圾论坛!!!!!!!!
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn

分类导航
Readygo技术搜索引擎