Delphi
210
提示: SetParent 应该 Windows.SetParent, 因为 TForm 的父类有同名方法.//声明:{获取父窗口句柄}GetParent(hWnd: HWND): HWND;{指定父窗口}SetParent( hWndChild: HWND; {子句柄} hWndNewParent: HWND {父句柄}): HWND; {成功返回原父窗口句柄; 失败返回 0}{移动窗口}MoveWindow( hWnd: HWND;
120
WinAPI: GetWindowThreadProcessId - 获取指定窗口的进程 ID 或线程 ID//声明:GetWindowThreadProcessId( hWnd: HWND; {指定窗口句柄} lpdwProcessId: Pointer = nil {返回进程 ID 的指针}): DWORD; {返回线程 ID}//举例:unit Unit1;interfaceuses Windows, Message
32
WinAPI: IsIconic、IsZoomed - 分别判断窗口是否已最小化、最大化//声明:IsIconic( hWnd: HWND {窗口句柄}): BOOL;IsZoomed( hWnd: HWND {窗口句柄}): BOOL;
80
ShellExecute( hWnd: HWND; {指定父窗口句柄} Operation: PChar; {指定动作, 譬如: open、print} FileName: PChar; {指定要打开的文件或程序} Parameters: PChar; {给要打开的程序指定参数; 如果打开的是文件这里应该是 nil} Directory: PChar; {缺省目录} ShowCmd: Integer {打开选项}): HINST; {执行成功会
81
WinAPI: GetCurrentThread、GetCurrentThreadId、GetCurrentProcess、GetCurrentProcessId{返回当前线程的虚拟句柄}GetCurrentThread: THandle;{返回当前线程 ID}GetCurrentThreadId: DWORD;{返回当前进程的虚拟句柄}GetCurrentProcess: THandle;{返回当前进程 ID}GetCurrentProcessId: DWORD;提示:ID 是系统唯一的标识.所谓虚拟
105
//声明:{返回进程的句柄}OpenProcess( dwDesiredAccess: DWORD; {访问选项} bInheritHandle: BOOL; {能否继承; True 表示能用 CreateProcess 继承句柄创建新进程} dwProcessId: DWORD {指定进程 ID}): THandle; {成功会返回进程句柄; 失败返回 0}//dwDesiredAccess 可选值:PROCESS_TERMINATE
159
定义:GetModuleHandle( lpModuleName: PChar {模块名; 只能是映射到当前进程的模块}): HMODULE; {返回模块句柄; 0 表示失败}举例://获取当前模块的句柄var s: string; h: Cardinal;begin {先取得模块名} s := Application.ExeName; s := ExtractFileName(s); {获取参数只要模块名就够了; 不需要路径(测试中有路径也可以)} h := Get
56
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject);