Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.19;
Скачать: CL | DM;

Вниз

Нашел решиние на вставку текста в чужое окно ...   Найти похожие ветки 

 
QUE ©   (2003-03-20 12:57) [0]

Если интересно, то решиние такое ... ТОлько вот осталось выяснить почему эта фишка не работает с WORD"ом, пока только вот этот баг нашел. Огромное спасибо Aleksey_sv он меня натолкнул ...

if AttachThreadInput(GetWindowThreadProcessid(GetForegroundWindow,nil),GetCurrentThreadId,true) then
begin
{Здесь работает Getfocus!}
HW:=GetFocus;
SendMessage(HW, WM_COPY, 0, 0);
Delay(100);
if Clipboard.HasFormat(CF_TEXT) then
begin
//Мои действия с текстом
...
//Мои действия с текстом
Clipboard.AsText := Text;
Delay(100);
SendMessage(HW, WM_PASTE, 0, 0);
end;
end else ToLog("Ошибка получения дескриптора окна ...");


 
Clickmaker ©   (2003-03-20 13:30) [1]

А ворду попробуй юникод подсунуть. Он будет счастлив.

procedure SetClipboardText(const S: string);
var
wsz: PWideChar;
dwSize: Cardinal;
hData: Cardinal;
begin
if (Win32Platform = VER_PLATFORM_WIN32_NT) then begin

dwSize := (Length(S)+1) * SizeOf(WideChar);
hData := GlobalAlloc(GMEM_MOVEABLE or GMEM_DDESHARE, dwSize);
wsz := PWideChar(GlobalLock(hData));
StringToWideChar(S, wsz, Length(S)+1);
GlobalUnlock(hData);
Clipboard.SetAsHandle(CF_UNICODETEXT, hData);
end else // В 9х бесполезно заморачиваться с юникодом
Clipboard.AsText := S;
end;


 
Aleksey_sv ©   (2003-03-20 16:59) [2]


> QUE ©

Всегда пожалуста



Страницы: 1 вся ветка

Текущий архив: 2003.05.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
7-59958
Sergeys
2003-03-22 10:42
2003.05.19
Как переименовать директорию


14-59870
vopros
2003-04-29 11:57
2003.05.19
Никак не могу найти сайт о Киеве.


3-59580
msoftware
2003-04-26 04:58
2003.05.19
Проблемы с Autoincrement полями в INTERBASE


8-59805
Vbmen
2003-02-08 09:39
2003.05.19
Работа со звуком


1-59770
KSergey
2003-05-05 11:17
2003.05.19
TAction и кнопка