摘要:
procedure TForm1.Timer1Timer(Sender: TObject);var pt: TPoint; arr: array[0..254] of Char;begin if GetCursorPos(pt) then {如果能获取点} begin h := WindowFromPoint(pt); {返回句柄} GetClassName(h, arr, Length(arr)); {获取该句柄窗口的类名} Text := arr; {显示在标题} end;end; 阅读全文
摘要:
TSynThread=class(TThread) Buf:TStringList; List :TStrings; procedure AddDate; constructor Create(CreateSuspended: Boolean); procedure Execute; override; procedure Terminate; end;{------------- TSynThread impl -----------------------------------------}constructor TSynThread.Creat... 阅读全文
摘要:
QmyShareMem=record name:array[0..20] of Char; birthday:TDateTime; note:array[0..50] of Char; end;{程序一 创建 共享内存}procedure TForm1.Button2Click(Sender: TObject);var hFileMapping:THandle;begin hFileMapping:=openfilemapping(File_MAP_ALL_ACCESS,False,PChar('ftwsnow')); if hFileMapping=0 then ... 阅读全文
摘要:
1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接WNetAddConnection2 创建同一个网络资源的连接WNetAddConnection3 创建同一个网络资源的连接WNetCancelConnection 结束一个网络连接WNetCancelConnection2 结束一个网络连接WNetCloseEnum 结束一次枚举操作WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接WNetDisconnectDialog 启动一个标准对话框,以便断开同网络资源的连接WNetEnumResource 枚举网络资源WNe 阅读全文
摘要:
WinAPI: AddAtom、DeleteAtom、FindAtom、GetAtomName、GlobalAddAtom、GlobalDeleteAtom、GlobalFindAtom、GlobalGetAtomName这是储存字符串的一组 API.通过 AddAtom 储存一个字符串, 返回一个 ID;GetAtomName 通过这个 ID 可返回储存的字符串;还可以用 FindAtom 查找、用 DeleteAtom 删除已储存的字符串.这个储存区有分本地(程序级)和全局(系统级)两种, 带 Global 前缀的是全局的[但在 Win32 下它们是否还有区别还有待考究].表中的字符串不分 阅读全文
摘要:
IdIcmpClient1: TIdIcmpClient; IdIcmpClient1.Host:='192.168.0.99'; IdIcmpClient1.Ping('cccc');procedure TForm1.IdIcmpClient1Reply(ASender: TComponent; const AReplyStatus: TReplyStatus);var sTime:string;beginif (AReplyStatus.MsRoundTripTime = 0) then sTime := '<1'else sTime 阅读全文
摘要:
EnumWindows 的功能是遍历所有顶层窗口 function EnumWindows( lpEnumFunc: TFNWndEnumProc; {回调函数指针} lParam: LPARAM {给回调函数的参数, 它对应回调函数的第二个参数}): BOOL; stdcall; //成功与否, 其实是返回了回调函数的返回值EnumWindows 专用的回调函数的格式: function EnumWindowsProc( hwnd: HWND; {找到的窗口句柄} lParam: LPARAM {EnumWindows 传给的参数; 因... 阅读全文
摘要:
varhWindow: HWND; { 窗体句柄 }dwProcessID: DWORD; { 进程 ID }hProcess: THandle; { 进程句柄 }begin{ 根据标题获取窗体的句柄 }hWindow := FindWindow(nil, '标题');{ 通过窗体句柄获取进程 ID }GetWindowThreadProcessId(hWindow, dwProcessID);{ 通过进程 ID 获取进程句柄 }hProcess := OpenProcess(PROCESS_ALL_ACCESS, False, dwProcessID);{ 结... 阅读全文
摘要:
{隐藏任务栏}var hTray:HWND;begin hTray:=FindWindow('Shell_TrayWnd',nil); ShowWindow(hTray,SW_HIDE);end;{显示任务栏}var hTray:HWND;begin hTray:=FindWindow('Shell_TrayWnd',nil); ShowWindow(hTray,SW_SHOW);end; 阅读全文
摘要:
{FindWindow 的两个参数: 第一个: 是类名, 计算器的类名是: SciCalc 第二个: 是标题名 两个参数有其一即可,格式: }h := FindWindow('SciCalc', nil);h := FindWindow(nil, '计算器'); procedure SendMsg(AppName,Msg:string);var ds: TCopyDataStruct; handle:THandle;begin ds.cbData:=Length(Msg)+1; GetMem(ds.lpData,ds.cbData); try StrCopy(d 阅读全文