ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование_OLD > С/С++, C#, Delphi, .NET, Asm
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #3171  
Старый 30.03.2009, 21:55
Nizhegorodets
Участник форума
Регистрация: 21.03.2009
Сообщений: 207
Провел на форуме:
554850

Репутация: 119
Отправить сообщение для Nizhegorodets с помощью ICQ
По умолчанию

Народ может об этом уже спрашивали, но на 318 страницах найти не смог...Слишком много букфф.
Короче суть проблемы вот в чем.
Как сделать так , чтобы при нажатии на батон три огонька на клавиатуре поочередно зажигались и гасли (типа гирлянда)
Понятное дело нужно съэмулировать нажатия на клавиши нумлок,капс и скрол.

Но как это сделать??? Погуглил нашел пару статей...Но самих исходников нету(((
Научился только пуск через кнопку открывать...
Кто знает плиз поделитесь исходниками...
С меня +)
 

  #3172  
Старый 30.03.2009, 22:03
НTL
Постоянный
Регистрация: 26.01.2008
Сообщений: 796
Провел на форуме:
5209663

Репутация: 357


Отправить сообщение для НTL с помощью ICQ
По умолчанию

Цитата:
Сообщение от Nizhegorodets  
Народ может об этом уже спрашивали, но на 318 страницах найти не смог...Слишком много букфф.
Короче суть проблемы вот в чем.
Как сделать так , чтобы при нажатии на батон три огонька на клавиатуре поочередно зажигались и гасли (типа гирлянда)
Понятное дело нужно съэмулировать нажатия на клавиши нумлок,капс и скрол.

Но как это сделать??? Погуглил нашел пару статей...Но самих исходников нету(((
Научился только пуск через кнопку открывать...
Кто знает плиз поделитесь исходниками...
С меня +)
эти кнопки называются #....номер кнопки... если найти эти номера и заставить прогу "Нажимать" на них то можно добится такова эфекта
 

  #3173  
Старый 30.03.2009, 22:08
Nizhegorodets
Участник форума
Регистрация: 21.03.2009
Сообщений: 207
Провел на форуме:
554850

Репутация: 119
Отправить сообщение для Nizhegorodets с помощью ICQ
По умолчанию

Цитата:
Сообщение от НTL  
эти кнопки называются #....номер кнопки... если найти эти номера и заставить прогу "Нажимать" на них то можно добится такова эфекта
Спасибо)Надо попробовать)
 

  #3174  
Старый 30.03.2009, 22:09
art2222
Участник форума
Регистрация: 28.04.2008
Сообщений: 172
Провел на форуме:
1191083

Репутация: 270
Отправить сообщение для art2222 с помощью ICQ
По умолчанию

Цитата:
Как сделать так , чтобы при нажатии на батон три огонька на клавиатуре поочередно зажигались и гасли (типа гирлянда)
[code]
type
TKeyType = (ktCapsLock, ktNumLock, ktScrollLock);

procedure SetLedState(KeyCode: TKeyType; bOn: Boolean);
var
KBState: TKeyboardState;
Code: Byte;
begin
case KeyCode of
ktScrollLock: Code := VK_SCROLL;
ktCapsLock: Code := VK_CAPITAL;
ktNumLock: Code := VK_NUMLOCK;
end;
GetKeyboardState(KBState);
if (Win32Platform = VER_PLATFORM_WIN32_NT) then
begin
if Boolean(KBState[Code]) <> bOn then
begin
keybd_event(Code,
MapVirtualKey(Code, 0),
KEYEVENTF_EXTENDEDKEY,
0);
keybd_event(Code,
MapVirtualKey(Code, 0),
KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,
0);
end;
end
else
begin
KBState
Код:
 := Ord(bOn);
    SetKeyboardState(KBState);
  end;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  SetLedState(ktCapsLock, True);  // CapsLock on
  SetLedState(ktNumLock, True);  // NumLock on
  SetLedState(ktScrollLock, True);  // ScrollLock on
end;
пользуй.

Последний раз редактировалось art2222; 30.03.2009 в 22:12..
 

  #3175  
Старый 30.03.2009, 22:10
FindeR
Участник форума
Регистрация: 15.11.2006
Сообщений: 259
Провел на форуме:
2589211

Репутация: 151
По умолчанию

Цитата:
Сообщение от НTL  
как правельно сказать ему что тогда не надо вписывать эти буквы
Код:
if (Key in ['А'..'Я','а'..'я']) then key := char(0);
Вэлкам
 

  #3176  
Старый 30.03.2009, 22:12
Nizhegorodets
Участник форума
Регистрация: 21.03.2009
Сообщений: 207
Провел на форуме:
554850

Репутация: 119
Отправить сообщение для Nizhegorodets с помощью ICQ
По умолчанию

Цитата:
Сообщение от art2222  
Код:
VAR 
KS: TKeyboardState; 
begin
GetKeyboardState(KS); 
KS[020] := KS[020] XOR 1; //Caps Lock
KS[144] := KS[144] XOR 1; //Num Lock
KS[145] := KS[145] XOR 1; //Scroll Lock
SetKeyboardState(KS); 
end;
пользуй.
Спасибо за исходник)
 

  #3177  
Старый 30.03.2009, 22:13
art2222
Участник форума
Регистрация: 28.04.2008
Сообщений: 172
Провел на форуме:
1191083

Репутация: 270
Отправить сообщение для art2222 с помощью ICQ
По умолчанию

Цитата:
Спасибо за исходник)
Пардон, не пашет, я в посте поправил.
 

  #3178  
Старый 30.03.2009, 22:19
НTL
Постоянный
Регистрация: 26.01.2008
Сообщений: 796
Провел на форуме:
5209663

Репутация: 357


Отправить сообщение для НTL с помощью ICQ
По умолчанию

Цитата:
Сообщение от FindeR  
Код:
if (Key in ['А'..'Я','а'..'я']) then key := char(0);
Вэлкам
Пробел тоже не нужен, как это написать?

Рус буквы можно вставить при помощи Ctrl + V , поэтому надо будит написать в обработчики батона код что типа если здесь (edit1) есть рус буква или провел то....
 

  #3179  
Старый 30.03.2009, 22:22
Nizhegorodets
Участник форума
Регистрация: 21.03.2009
Сообщений: 207
Провел на форуме:
554850

Репутация: 119
Отправить сообщение для Nizhegorodets с помощью ICQ
По умолчанию

art2222

ругается на строчку

TKeyType = (ktCapsLock, ktNumLock, ktScrollLock);

пишет

" expected ':' but '=' found "


может в uses чего еще добавить надо?

Последний раз редактировалось Nizhegorodets; 30.03.2009 в 22:24..
 

  #3180  
Старый 30.03.2009, 22:24
art2222
Участник форума
Регистрация: 28.04.2008
Сообщений: 172
Провел на форуме:
1191083

Репутация: 270
Отправить сообщение для art2222 с помощью ICQ
По умолчанию

Цитата:
Пробел тоже не нужен, как это написать?
Делай так:
Цитата:
if (key in ['А'..'Я','а'..'я',' '] then key:=#0;

Последний раз редактировалось art2222; 30.03.2009 в 22:46..
 
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ