Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.11.2014, 18:52   #1
WPW
 
Регистрация: 10.11.2014
Сообщений: 3
По умолчанию Найдите ошибку в коде

Код:
Function SetTextWnd(_new:string):boolean;
var
 hFocusedWnd : HWND;
 dwThreadID : DWORD;
 dwBytesNeeded : DWord;
 pszWindowText : PChar;
begin
 dwThreadID := GetWindowThreadProcessId(GetForegroundWindow, nil);
 if dwThreadID <> 0 then
  begin
   if AttachThreadInput(GetCurrentThreadId, dwThreadID, True) then
    begin
     hFocusedWnd := GetFocus;
     if hFocusedWnd <> 0 then SendMessage(hFocusedWnd, WM_SETTEXT, 0, lParam(PChar(_new)));
     AttachThreadInput(GetCurrentThreadId, dwThreadID, False);
    end;
  end;
end;
 
procedure TForm2.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
 begin
if key = VK_F2 then
begin
SetTextWnd('текст');
...
Тоесть при нажатии на ф2 в любое активное окно должно вписываться слово текст. Не работает....

Последний раз редактировалось Stilet; 10.11.2014 в 19:41.
WPW вне форума Ответить с цитированием
Старый 10.11.2014, 19:03   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

для начала – вотЪ.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 10.11.2014, 19:21   #3
WPW
 
Регистрация: 10.11.2014
Сообщений: 3
По умолчанию

Это не нормальный форум, если бы здесь были бы скрипты под каждый язык, как к примеру на киберфоруме, тогда было бы лучше.
WPW вне форума Ответить с цитированием
Старый 10.11.2014, 19:43   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Это не нормальный форум
Что же ты тогда здесь делаешь, если мы ненормальные?
Цитата:
Не работает....
А зачем нужны такие сложности?
Простого SendMessage(GetForegroundWindow, WM_SETTEXT, 0, lParam(PChar(_new))); не хватает?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найдите ошибку в коде Igogo Общие вопросы C/C++ 8 29.11.2011 00:31
Найдите ошибку в маленьком коде Crabobass Помощь студентам 3 07.03.2011 09:41
Найдите ошибку в коде Arch0000 Общие вопросы C/C++ 0 29.05.2010 07:32
найдите ошибку в коде TopoRRR Помощь студентам 6 15.12.2009 10:30
найдите ошибку в коде pony Помощь студентам 1 14.09.2009 10:03