|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
29.01.2012, 14:28 | #11 |
Форумчанин
Регистрация: 11.11.2008
Сообщений: 177
|
Код:
Код:
|
29.01.2012, 16:08 | #12 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Код:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
29.01.2012, 18:12 | #13 |
Форумчанин
Регистрация: 11.11.2008
Сообщений: 177
|
глупо будет звучать, а как же путь для сохранения) спасибо
|
29.01.2012, 21:19 | #14 |
Форумчанин
Регистрация: 30.10.2010
Сообщений: 524
|
Код:
|
03.02.2012, 18:21 | #15 |
CAE Engineer
Пользователь
Регистрация: 10.03.2011
Сообщений: 75
|
В продолжении этой темы...
А кто нибудь знает как (не используя хук) отловить нажатие Print Screen. В обработчике событий OnKeyDown если например выводить Key, то есть Код: Код:
|
03.02.2012, 18:41 | #16 |
Форумчанин
Регистрация: 30.10.2010
Сообщений: 524
|
Поставте в таймер на проверку:
Делал подобное давно, так что могут быть ошибки, пытайтесь: Код:
|
09.02.2012, 15:40 | #17 |
Регистрация: 09.02.2012
Сообщений: 8
|
Господа, требуется помощь профессионалов.
пытаюсь в службу вставить создание скриншотов (чтобы скрины делались каждую минуту), процедура имеет следующий вид: procedure TScreenMaker.OnExecuteProcedure(Sen der: TService); var JpegIm: TJpegImage; bm: TBitMap; i: integer; begin for I := 1 to 5 do begin bm := TBitMap.Create; bm.Width := Screen.Width; bm.Height := Screen.Height; BitBlt(bm.Canvas.Handle, 0, 0, bm.Width, bm.Height, GetDC(0), 0, 0, SRCCOPY); JpegIm := TJpegImage.Create; JpegIm.Assign(bm); JpegIm.CompressionQuality := 20; JpegIm.Compress; JpegIm.SaveToFile('C:\Projects\' + FormatDateTime('yyyymmddhhnn',now) + 'Screenshot.jpg'); bm.Destroy; JpegIm.Destroy; sleep(60000); end; end; пока все в цикле, но это не важно, просто тестирую вариант, дальше будут условия вызова. проблема в том, что создаются файлики картинок размером с экран, только они пустые (белые). В чем может быть косяк? Пытался вставить этот код в приложение, чтобы срабатывал по нажатию кнопки - все срабатывает замечательно. Почему не работает в службе? |
09.02.2012, 19:02 | #18 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
службы работают под другим пользователем, если не ошибаюсь.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
09.02.2012, 20:28 | #19 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Не-интерактивные службы не могут взаимодействовать с рабочим столом. А в Vista и старше вообще выполняются в отдельной терминальной сессии. Безопасность, знаете ли.
пыщь
|
10.02.2012, 11:45 | #20 |
Регистрация: 09.02.2012
Сообщений: 8
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Отображение картинки в C++ в формате jpeg, используя "путь" записанный в базе данных типа Access | Gared | Помощь студентам | 0 | 15.05.2011 17:29 |
Как сделать скриншот определенной части экрана? | JonMagon | Помощь студентам | 11 | 13.05.2011 09:45 |
Не получается сделать скриншот C# | Ski1alec | C# (си шарп) | 5 | 24.01.2011 22:56 |
как обрезать изоображение в формате jpeg | KWN, lnc | Мультимедиа в Delphi | 5 | 08.03.2010 13:52 |
как сделать скриншот | xakkkkker | Общие вопросы Delphi | 1 | 10.02.2008 15:24 |