SendInput и keybd_event на уровне 'Local System'

Тема в разделе "WASM.WIN32", создана пользователем nbyte, 29 дек 2007.

  1. nbyte

    nbyte New Member

    Публикаций:
    0
    Регистрация:
    27 май 2007
    Сообщения:
    161
    Здравствуйте.
    Столкнулся с проблемой.
    Использоваю keybd_event для эмуляции клавиш.
    Когда прога работает под юзером то функция работает нормально.
    Но если сделать сервис (который работает под 'Local System'), то при диалоге выбора юзера эта функция почемуто неработает (при этом я уверен что она выполняется).
    Пробовал сделать с SendInput, но тоже самое.
    Подскажите пожалуйста кто знает хотя-бы причину почему эта функция несробатывает?
     
  2. ECk

    ECk Member

    Публикаций:
    0
    Регистрация:
    9 апр 2004
    Сообщения:
    454
    Адрес:
    Russia
    Local System наверное подразумевает запуск из сервиса?
    Если так, то у сервисов по умолчанию десктоп отличается от десктопа Default.
    Есть два пути - или открывать десктоп и устанавливать потоку данный десктоп, или в свойствах сервиса поставить флаг - INTERACTIVE (который по дефолту ставит юзерский десктоп сервису).
     
  3. nbyte

    nbyte New Member

    Публикаций:
    0
    Регистрация:
    27 май 2007
    Сообщения:
    161
    Да дело в этом.
    Я в Delphi поставил INTERACTIVE у класса TService.
    Когда юзер залоген, то все работает. А когда он делает LogOff то появляется диалог выбора юзера и вот тут почемуто эта функция и еше некоторые неработают.
    Я как я понимаю что когда неодин юзер незалоген то десктопа нету. А как тогда быть :| ?
     
  4. nbyte

    nbyte New Member

    Публикаций:
    0
    Регистрация:
    27 май 2007
    Сообщения:
    161
    Может я чтото нетак говорю?
     
  5. ECk

    ECk Member

    Публикаций:
    0
    Регистрация:
    9 апр 2004
    Сообщения:
    454
    Адрес:
    Russia
    Десктоп есть, но он винлогоновский. Если INTERACTIVE есть по умолчанию, но юзера нет - нужно открывать десктоп винлогона.
     
  6. nbyte

    nbyte New Member

    Публикаций:
    0
    Регистрация:
    27 май 2007
    Сообщения:
    161
    Вроде уже стал на правильный путь.
    Спасибо ECk за помошь.