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

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

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.08.2012, 03:05   #1
exxer
 
Регистрация: 14.08.2012
Сообщений: 4
По умолчанию Отправить текст в другое приложение (сэмулировать ввод).

Здравствуйте!

Пытаюсь сделать функцию для автоматического ввода текста в чужое приложение.

Все получается, но НЬЮАНС: текст передается без форматирования (Заглавные/строчные буквы). Все пишется строчными буквами. как исправить?

Заранее благодарен!

Сейчас код такой:
Код:
// Send text to current window
function TypeStr(s:string): boolean;
var Symbol: word;
    A,B: DWORD;
var i,n:integer;
begin
  A := GetCurrentThreadId;
  B := GetWindowThreadProcessId(GetForegroundWindow, nil);
  if A<>B then AttachThreadInput(A, B, True);

  for i:=1 to Length(s) do
  begin
    Symbol := Word(s[i]);
    if (ord(s[i]) = 13) or (ord(s[i]) = 10) then
    begin
      PostMessage(GetFocus, WM_KEYDOWN, ord(s[i]), 1);
      PostMessage(GetFocus, WM_KEYUP, ord(s[i]), 1);
    end
    else
      PostMessage(GetFocus, WM_IME_CHAR, Symbol, 1);
  end;

  if A<>B then AttachThreadInput(A, B, false);
  Result := Symbol <> 0;
end;
exxer вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как программно закрыть другое приложение(программу) masicev C# (си шарп) 14 07.07.2012 15:57
Передача информации в другое приложение и выполнение в нем действий!!! Andersen1313 Общие вопросы Delphi 2 17.04.2011 13:55
Отправить команду в консольное приложение Shouldercannon Общие вопросы Delphi 5 13.08.2009 16:27
Передача символов в другое приложение mytant712 Win Api 6 12.09.2008 21:14