Windows NT/2000中获取CPU使用率
Windows NT/2000中获取CUP使用率的方法与Windows 9x系统中所使用的方法不同,Windows NT/2000中获取CUP使用率不用"性能计数器"。而是使用一个NTDLL.DLL中未公开的API函数--NtQuerySystemInformation。
Windows 9x中获取CPU使用率
系统编程中常见的一个问题是如何获取或计算CPU的使用率。此源代码示范了在Windows 9x系统中获取CPU使用率的诀窍。
Windows NT/2000系统中如何确定进程中是否包含其他线程
有时候我们编程时需要知道自己的进程里除了主线程之外是否还有其他激活线程。例如,如果你写的一个应用程序要求创建许多独立线程,并且在关闭应用程序之前,你必须保证所有线程已经关闭。源代码将介绍一种在Windows NT/2000中判断某个进程中是否还有活动线程的方法。
Windows NT/2000系统中如何获取系统的启动时间
NTDLL.DLL中有很多鲜为人知的API函数,这些函数非常有用。本文将介绍用NtQuerySystemInformation来获取Windows NT/2000每次启动的时间记录。用这个函数几乎可以得到任何的本地系统信息。
Windows NT/2000中控制台程序的全屏模式开关
Windows NT/2000与Windows 9x中控制台程序的全屏模式开关处理方法是不一样的。不能通用。在Windows NT/2000中要使用两个未公开的Win32 API函数来存取控制台窗口。
Windows 9x中控制台程序的全屏模式开关
当你的程序以控制台方式运行时,按下ALT+ENTER可以将屏幕变成全屏模式。但如何在程序中用Win32 API函数来实现这个功能呢?据我所知,微软没有提供有关这方面的任何文档。但是,当用户按下ALT+ENTER时,Windows 9x用特殊的加速键ID发送WM_COMMAND消息到控制台窗口。
Windows 98/2000中激活指定窗口事件的源代码
我们知道,Windows 98/2000中的SetForegroundWindow函数当用户在操作另外一个窗口时,不能强制改变某个窗口的活动状态,而是激活窗口并调用FlashWindowEx函数通知用户。但在某些应用中,必须要激活另外的窗口并将这个窗口创建的线程放到最前面。这个时候可以用USER32.DLL中未公开的函数来实现......
Windows NT/2000中以用户系统级安全上下文方式创建进程的源代码
Windows NT/2000 为我们提供了CreateProcessAsUser函数,它类似于CreateProcess,所不同的是新进程以用户的安全上下文方式运行。有时必须以用户系统级的安全上下文方式运行进程,CreateProcessAsUser函数并不允许这样做,所以的找另外的解决办法。
Windows NT/2000中确定进程是否以管理优先级运行
有时在编程时要求确定进程是不是以管理优先级运行,例如在编写只有管理员才可以使用的实用程序时,实现的方法有很多,这里提供的代码根据进程记号(process
token)来实现上述的功能。
Windows NT/2000系统中获取父进程ID的代码
从所周知,NT环境中API的黑洞之一便是NTDLL.DLL,这个DLL包含了许多有用的函数,这些函数都是未公开的。此代码拟使用NTDLL.DLL中的NtQueryInformationProcess函数来获取任何指定进程之父进程的ID。
Windows NT/2000中获取窗口标题文本的更快速的方法
InternalGetWindowText函数为我们提供了获取Windows NT/2000系统中窗口标题的最快速的方法。它位于User32.dll。这个函数的功能类似于 GetWindowText,但是比GetWindowText快多了,因为它使用INT 2E 中断。InternalGetWindowText 是一个未公开的函数,它只能在Windows NT/2000 系统中使用,Windows 95/98系统中虽然也有这个函数,但只是摆摆样子而已,每次调用都返回错误代码 ERROR_CALL_NOT_IMPLEMENTED。