确定一个应用程序是否没有响应

2016-02-19 15:16 9 1 收藏

今天图老师小编给大家展示的是确定一个应用程序是否没有响应,精心挑选的内容希望大家多多支持、多多分享,喜欢就赶紧get哦!

【 tulaoshi.com - 编程语言 】

  今天在MSN的核心讨论组上看到两篇文章.讨论的乃是应用程序是否没有响应.原文如下:

   How is it possible to determine a process is "not responding" like NT Task

   Manager do?

  The heuristic works only for GUI processes, and consists of calling

  SendMessageTimeOut() with SMTO_ABORTIFHUNG.

  There is any API call to do the job, or this status is simply a deduction

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  based on process counters, like that returned from call to GetProcessTimes

  API function?

  Use SendMessageTimeout with a value of WM_NULL. That's all Task

  Manager does to determine this AFAIK.

  --

  有理有理.当然,我这里还有一个UNDOCUMENTED函数,乃是其他的解决方案,NT和9X有个USER32.DLL的函数,IsHungAppWindow(NT)和IsHungThread(9X).使用起来简便无比.下面给出原型.

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  BOOL IsHungAppWindow (

  HWND hWnd, // handle to main app's window

  );

  BOOL IsHungThread (

  DWORD dwThreadId, // The thread's identifier of the main app's window

  );

  有了原型,连解释都不需要,好得不的了.:)不过调用时需要GetProcAddress.库里没有该函数.

来源:http://www.tulaoshi.com/n/20160219/1609254.html

延伸阅读
在我们的程序当中如果要实现类似《360软件管家》的功能,就要解决两个问题,首先是要判断该程序已有一个实例在运行,其次是要将已运行的应用程序实例激活,同时退出第二个应用程序实例。 对于第一个问题,我们可以通过设置命名互斥对象或命名信标对象,在程序启动的时候检测互斥对象或信标对象,如互斥对象或信标对象已存在,则可以判断此程序...
标签: Java JAVA基础
一个完整的Java应用程序,通常至少要有一个应用程序的结束点。对于一般程序来说,系统开发者根据需要和个人的偏好,会在程序结束位置,通过添加System.exit(0),或System.out(-1),来结束程序,或不加这些指令,让程序自然运行到结束。 如:下列典型代码 package untitled14; /** * This application is ...
标签: ASP
       作者:rainbow ASP动网先锋      3.0 选择一个编辑器      尽管我是一个顽固的Notepad狂,但这次我不建议用它编辑源码。原因是你正在与真正的编程语言打交道,使用Notepad编辑源码编译时可能产生大量的错误信息行(C++程序员知道我在说什么。)  &n...
本文利用C#和.NET提供的类来轻松创建一个抓取网页内容源代码的程序 。HTTP是WWW进行数据访问最基本的协议之一,在.NET的基本类型库类中提供了两个对象类:HTTPWebRequest和HTTPWebResponse,分别用来向某资源发送请求和获得响应。为了得到一个资源的内容,我们先指定一个想要抓取的URL地址,用HTTPWebRequest对象进行请求,用HTTPWebResponse对...
如何获得另一个应用程序窗口中的文本 编译/hangwire  本文示范源代码 问题:     我想从一个程序获得另一个程序编辑框的文本。用GetWindowText试了一下,它总返回NULL。请问大虾有没有办法来获得另一个程序窗口中的文本?如...

经验教程

296

收藏

30
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部