![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Здравствуйте все!!!
Все обстоит вот как... 1)Есть программа, которая делает скриншоты и сохраняет их в *.png. 2)Естественно эта программа если запускать ее из под SYSTEM (сервис виндовс) нормально работать не может(и не только она), поэтому была написана другая программа, которая запускает эту в контексте активного рабочего стола. Так вот! В ХР все работает прекрасно: из службы делаем WinExec('runprc.exe scrsht.exe "scr.png"',0); то есть запускаем runprc.exe с параметром 'scrsht.exe "scr.png"' - и получаем скриншот в файле scr.png. Внимание, вопрос! Почему такой метод не работает в Win 7 ? Вот исходник программы runprc.exe Код:
Хотелось бы аналогичную функцию, но для семерки. Лучше в исходнике, но советам тоже буду рад. Заранее спасибо. Последний раз редактировалось makshimik, 25.05.2010 в 23:27. |
#2
|
|||
|
|||
![]() потому что под 7 больше нет интерактивных служб. Точнее есть, но их заводить нужен специальный бубен.
|
#3
|
|||
|
|||
![]() Так дайте же!!! Дайте же мне етот бубен!!!
![]() Может быть есть какой-то способ запустить прогу не под SYSTEM, а под текущим пользователем??? Ведь нужна же все-таки интерактивность, причем довольно многим сервисам! Последний раз редактировалось makshimik, 26.05.2010 в 20:44. |
#4
|
||||
|
||||
![]() Ну как вариант запустить из службы некий процесс под учеткой активного юзера. Ну или создать процесс от имени юзера, запустить в нем поток с твоим кодом.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#5
|
|||
|
|||
![]() Цитата:
|