На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ раздела Delphi · Книги по Delphi
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Следующие вопросы задаются очень часто, подробно разобраны в FAQ и, поэтому, будут безжалостно удаляться:
1. Преобразовать переменную типа String в тип PChar (PAnsiChar)
2. Как "свернуть" программу в трей.
3. Как "скрыться" от Ctrl + Alt + Del (заблокировать их и т.п.)
4. Как прочитать список файлов, поддиректорий в директории?
5. Как запустить программу/файл?
... (продолжение следует) ...

Вопросы, подробно описанные во встроенной справочной системе Delphi, не несут полезной тематической нагрузки, поэтому будут удаляться.
Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.


Внимание
Попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...
Модераторы: jack128, D[u]fa, Shaggy, Rouse_
  
> Не работает Ctrl+A в окне UTorrent
    Обнаружил странность, подскажите, в чём дело.
    При нажатии на кнопку, нахожу окно uTorrent, активирую его, и эмулирую Ctrl+A - не работает почему то, при этом если с клавы нажать эту комбинацию - работает, торенты в списке все выделяются.
    Попробовал с другими окнами - работает...
    Версия uTorrent 1.8.2, на всякий случай..

    Код эмуляции вроде стандартный и распространённый...
    ExpandedWrap disabled
        keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), 0, 0);
        keybd_event(Ord('A'), MapVirtualKey(Ord('A'), 0), 0, 0);
        keybd_event(Ord('A')  , 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL,0), KEYEVENTF_KEYUP, 0);
    Сообщение отредактировано: areame -
      Мало активации одного лишь окна, ещё нужно сэмулировать клик в грид utorent-a, иначе ctrl+A не сработает даже с клавы.
      Или найти окно этого грида и ему послать комбинацию клавишь.
      Сообщение отредактировано: Jiro -
        Да грид(SysListView32) активен\зафокусен естесно, предварительно кликом зафокусен грид, и потом при активаци окна Торрента, этот грид так и остаётся быть зафокусеным, это видно по фокусной рамке на одной из строк внутри грида, перед тем как с клавы нажимать, или из моей проги эмулировать. С клавы работает, из моей проги не работает, в других окнах в других прогах из моей проги эмуляция работает.
        Я даже в Window-Detective смотрел сообщения для грида - приходят идентичные пакеты сообщений, что от нажатия на клаве, что от моей эмуляции. Только после нажатия на клаве - список торрентов выделяется, после эмуляции из моей проги - ничего не выделяется. В других окнах после моей эмуляции всё выделяется нормально. Ничего не понимаю, что за.
        Сообщение отредактировано: areame -
          Народ, есть решение\мысли, как такое может быть? Окно uTorrent - единственное в системе, которое игнорит эмуляцию Ctrl+A, и при этом на физическое нажатие на клаве Ctrl+A - реагирует
            Я делал нажатие так(своих конопок):
            Перед keybd_event
            ExpandedWrap disabled
              SendMessage(h, WM_SYSCOMMAND, SC_HOTKEY, h);


            И стало быть h типа HWND ссылается на окно ввода
            "Воля - это то, что заставляет тебя побеждать, когда твой рассудок говорит тебе, что ты повержен" Карлос Кастанеда
            1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script Execution time: 0,0741 ]   [ 15 queries used ]   [ Generated: 22.07.19, 05:39 GMT ]