Делать скриншоты под Mac OS X и Linux

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
teargas13
незнакомец
Сообщения: 3
Зарегистрирован: 29.04.2008 22:49:25

Делать скриншоты под Mac OS X и Linux

Сообщение teargas13 »

Задача состоит в следующем - необходимо делать скриншоты всего десктопа из под Линукс и МакОси. Помогите - в какую сторону копать.
ПС. Еще нужно из под этих же осей, грабить кейстроки и маус ивенты - если есть какие-то мысли по этому поводу - буду очень благодарен.

Спасибо!
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

есть компоненты vnc для лазаруса в них поглядиих, на форуме где-то был линки.
teargas13
незнакомец
Сообщения: 3
Зарегистрирован: 29.04.2008 22:49:25

Сообщение teargas13 »

Attid писал(а):есть компоненты vnc для лазаруса в них поглядиих, на форуме где-то был линки.



Спасибо большое. Попробую покопать в эту сторону.

Добавлено спустя 3 часа 28 минут 37 секунд:
Attid писал(а):есть компоненты vnc для лазаруса в них поглядиих, на форуме где-то был линки.


Попробовал порыть - ни чего не нашел. Ни по форума, ни в гугле. Единственное что есть - VNC клиент на фрипаскале без сорцев - на Саурсфордже. Все правильно - VNC компонентики?
Может быть я не коектно оптсал что мне нужно? Еще раз - нужно написать скриншотер для Мака и Линукса - который сидит себе и делает скриншоты экрана.

Спасибо.
Павел Ишенин
постоялец
Сообщения: 475
Зарегистрирован: 24.03.2007 09:16:52

Сообщение Павел Ишенин »

Так не пробовали?

Код: Выделить всё

Bitmap := TBitmap.Create;
Bitmap.LoadFromDevice(0);
Bitmap.SaveToFile('bla.bmp');


Есть еще программа называется Virtual Magnifying Glass - можно поискать ссылку в wiki. Это экранная лупа написанная на lazarus - там точно проблема снятия куска экрана решена.
teargas13
незнакомец
Сообщения: 3
Зарегистрирован: 29.04.2008 22:49:25

Сообщение teargas13 »

Павел Ишенин писал(а):Так не пробовали?

Код: Выделить всё

Bitmap := TBitmap.Create;
Bitmap.LoadFromDevice(0);
Bitmap.SaveToFile('bla.bmp');


Есть еще программа называется Virtual Magnifying Glass - можно поискать ссылку в wiki. Это экранная лупа написанная на lazarus - там точно проблема снятия куска экрана решена.


Да, это первое что я попробовал - делаю что то типа:

Код: Выделить всё

procedure TForm1.Button1Click(Sender: TObject);
var
Bitmap : TBitmap;
Desktop: HDC;
begin
oDESK:=GetDC(0);
Bitmap:= TBitmap.Create;
Bitmap.LoadFromDevice(Desktop);
Bitmap.SaveToFile('bla.bmp');
end;       


После чего под MacOS 10.4 приложение вылетает с ошибкой.

Virtual Magnifying Glass - спасибо. Буду пробовать.

Добавлено спустя 20 минут 23 секунды:
Павел Ишенин писал(а):Так не пробовали?

Код: Выделить всё

Bitmap := TBitmap.Create;
Bitmap.LoadFromDevice(0);
Bitmap.SaveToFile('bla.bmp');


Есть еще программа называется Virtual Magnifying Glass - можно поискать ссылку в wiki. Это экранная лупа написанная на lazarus - там точно проблема снятия куска экрана решена.



:) да - попробовал - под маком тоже Аксесс Виолейшн, что и в моеп приложении...
Павел Ишенин
постоялец
Сообщения: 475
Зарегистрирован: 24.03.2007 09:16:52

Сообщение Павел Ишенин »

Значит надо отписать в bug-tracker. Дальше будет Томас разбираться или Марк.
Ответить