use unitformformname.edit.caption
解决方案 »
- 存储过程返回多列数据
- 求 两个 combobox 实现 地区 选择 二级连动的 代码, 要求不用数据库实现的!!!!!!!!!!!!!!!!!!!急!!!!!!!!!
- 关于动态创建类报错问题!!!!!!
- 问一个对系统操作的问题,是否有这样的API或控件?
- dbgrideh STFilter 问题到底有没有人会用啊?高手都去哪里了?
- FastReport报表的问题,还请各位帮忙看看,在线等
- 用memproof检查内存泄漏,发现一个执行 ADOQuery.open 时,有内存泄漏,为什么,怎么做??
- 我用ActionManage做出的菜单为何汉字显示总是最后一个字少半边?
- 问Fast Report 和Report Builder在那能下载到
- 哪位大虾给解决一下..不胜感激!
- BDE是如何访问数据库的?
- 小弟的代码错在哪里了,大侠进来看看。
大致是先找到其他程序的HANDLE
FINDWINDOW
然后发送消息
wm_gettext
在Unit1里边Uses Unit2
然后就可以用:Form2.Edit1.Text的用了.
1.在FORM1文件开始的 USE 部分添加上 USE ...,FORM2;
2.在FORM1便可以引用了: showmessage(form2.edit1.text);
HWND hWnd;
TPoint lpCurPos;
Longint lntLen;
char pchPass[255];
GetCursorPos(&lpCurPos);//获取当前鼠标位置
hWnd=WindowFromPoint(lpCurPos);//获取当前鼠标位置的窗口句柄
lntLen=SendMessage(hWnd,WM_GETTEXTLENGTH,0,0);
SendMessage(hWnd,WM_GETTEXT,lntLen+1,Integer(pchPass));//获取字符
ShowMessage(pchPass);
同意你的说法,但程序是取另一个程序里控件的值,但好象你没有HOOK?
EnumWindowsProc = function (Hwnd: THandle;
Param: Pointer): Boolean; stdcall;//Add the handle of the process and the window caption of a window found
// by EnumWindows routine to a ListBox, each item takes a line.
function GetTitle (Hwnd: THandle; Param: Pointer): Boolean; stdcall;
var
Text: string;
begin
SetLength (Text, 100);
GetWindowText (Hwnd, PChar (Text), 100);
Form1.ListBox1.Items.Add (IntToStr (Hwnd) + ': ' + Text);
Result := True;
end;procedure TForm1.BtnTitlesClick(Sender: TObject);
var
EWProc: EnumWindowsProc;
begin
ListBox1.Items.Clear;
EWProc := GetTitle;
EnumWindows (@EWProc, 0);
end;
如果方便,能给我留下你的 mail地址吗?这么说太麻烦了.多谢了.