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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.12.2009, 23:06   #1
zotox
Форумчанин
 
Регистрация: 09.09.2008
Сообщений: 395
По умолчанию keybd_event обрабатывается не правильно, в чем дело?

Код:
 for i:=1 to 32 do
  begin
    s:=Memo1.Lines.Strings[m];
    //пусть m будет - 0
    keybd_event(ord(s[i]), 0,0,0);
    keybd_event(ord(s[i]), 0,KEYEVENTF_KEYUP,0);
  end;
Что мемо:
2142f739ba514095049b905188e4cbcd

Результат такой:
21426739215140950492905188543234

(Вместо букв пишутся цифры)(Т.е. видно по красным отметкам)
Почему так происходит и как это исправить? (однако если регистр букв изменить на высший то будут выводится мелкие буквы а не цифры (знаю проблема была у многих с подобным))

Последний раз редактировалось zotox; 01.12.2009 в 23:12.
zotox вне форума Ответить с цитированием
Старый 01.12.2009, 23:17   #2
notHaker
Форумчанин
 
Аватар для notHaker
 
Регистрация: 01.12.2009
Сообщений: 569
По умолчанию

http://www.programmersforum.ru/showthread.php?t=6074

там обсуждается проблема... не флаги ли мозги пудрят?
Код - это работа, а работа стоит денег.

pz-game.ru. 2d зомби-сурвивал для олдфагов.
notHaker вне форума Ответить с цитированием
Старый 01.12.2009, 23:32   #3
Gerzs
Форумчанин
 
Аватар для Gerzs
 
Регистрация: 23.07.2009
Сообщений: 185
По умолчанию

С маленькими буквами проблема:
Код:
var
S:string;
i:integer;
begin
s:=AnsiUpperCase(Form11.Memo1.Lines.Strings[0]);
for i:=1 to 	Length(s) do
  begin
    keybd_event(Ord(s[i]), 0,0,0);
    keybd_event(Ord(s[i]), 0,KEYEVENTF_KEYUP,0);
  end;
end;
Gerzs вне форума Ответить с цитированием
Старый 01.12.2009, 23:36   #4
zotox
Форумчанин
 
Регистрация: 09.09.2008
Сообщений: 395
По умолчанию

Цитата:
Сообщение от Gerzs Посмотреть сообщение
С маленькими буквами проблема:
Код:
var
S:string;
i:integer;
begin
s:=AnsiUpperCase(Form11.Memo1.Lines.Strings[0]);
for i:=1 to 	Length(s) do
  begin
    keybd_event(Ord(s[i]), 0,0,0);
    keybd_event(Ord(s[i]), 0,KEYEVENTF_KEYUP,0);
  end;
end;
О, респект
zotox вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с прогой. Не врублюсь в чем дело. djon_limit Общие вопросы C/C++ 2 07.11.2009 23:07
Подскажите в чем тут дело!!! Aigul1 Общие вопросы C/C++ 1 03.10.2009 21:17
В чем дело ? не понимает бейсик код бедный_студент Помощь студентам 3 08.05.2009 21:09
Integer and Extended,в чем дело? Ciberal Общие вопросы Delphi 3 31.10.2008 19:06
Резидентно подглядываем за st(0) и виснем. В чем дело? Jolyk Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 05.06.2008 17:14