Проблема такая, пишется что-то вроде контекстного словаря и соответственно есть необходимость, при допустим, клике получать СЛОВО над которым находится указатель мыши. На данный момент есть такой "топорный код": Код (Text): invoke SetTimer,ebx,ebx,100,OFFSET ClickTranslate *********** ClickTranslate PROC invoke GetAsyncKeyState,VK_LCONTROL call AnalyseState jl TheEnd invoke GetAsyncKeyState,VK_LBUTTON call AnalyseState jl TheEnd invoke GetForegroundWindow @@:mov esi,eax invoke GetCursorPos,OFFSET pt invoke ScreenToClient,esi,OFFSET pt mov edi,eax invoke ChildWindowFromPoint,esi,pt.x,pt.y cmp eax,esi jnz @B mov eax,esi mov eax,pt.y shl eax,16 mov ax,WORD PTR pt.x mov edi,eax invoke SendMessage,esi,WM_LBUTTONDOWN,MK_LBUTTON,edi invoke SendMessage,esi,WM_LBUTTONUP,MK_LBUTTON,edi invoke SendMessage,esi,WM_LBUTTONDBLCLK,MK_LBUTTON,edi invoke SendMessage,esi,WM_LBUTTONUP,MK_LBUTTON,edi TheEnd:ret AnalyseState:xor ebx,ebx mov ecx,33 GetBit:dec ecx bt eax,ecx jnc @F inc ebx @@:test ecx,ecx jnz GetBit cmp ebx,16 retn ClickTranslate ENDP Приведённый код довольно сносно выделяет слово при нажатом LCTRL и клике мышкой, но проблема с копированием текста. WM_COPY работает только с edit, и к тому-же возникают проблемы с кодировкой... Сообственно вопрос: как скопировать выделенный текст ??? P.S. Также приветствуются любые идеи по получению текста под курсором, так как чуствую, что я двигаюсь, мягко говоря, не в том направлении.