![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| shedon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1209 Регистрация: 17.1.2003 Где: Нижнiй Новгородъ Репутация: 4 Всего: 11 |
Пытаюсь получить скриншот с помощью след. кода
вопервых этот код медленный, как его ускорить, и в нём есть утечка памяити после каждого вызова исчезает 4 метра(!). Где здесь ошибки ? -------------------- Programming is like sex: One mistake and you have to support it your lifetime |
|||
|
||||
| shedon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1209 Регистрация: 17.1.2003 Где: Нижнiй Новгородъ Репутация: 4 Всего: 11 |
Переписал код след. образом, но утечка памяти всёравно продолжается
-------------------- Programming is like sex: One mistake and you have to support it your lifetime |
|||
|
||||
| shedon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1209 Регистрация: 17.1.2003 Где: Нижнiй Новгородъ Репутация: 4 Всего: 11 |
Сейчас вроде этот код заработал, но почему-то цвета через, раз инвертируются....
-------------------- Programming is like sex: One mistake and you have to support it your lifetime |
|||
|
||||
| Guest |
|
|||
|
Unregistered |
Имитация нажатия PrintScreen:
keybd_event(VK_SNAPSHOT, 0, 0 ,0); keybd_event(VK_SNAPSHOT, 0, KEYEVENTF_KEYUP,0); Затем достать из буфера HANDLE GetClipboardData( UINT uFormat // clipboard format ); |
|||
|
||||
| shedon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1209 Регистрация: 17.1.2003 Где: Нижнiй Новгородъ Репутация: 4 Всего: 11 |
Нет, такой способ не подходит.
-------------------- Programming is like sex: One mistake and you have to support it your lifetime |
|||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 2 Всего: 99 |
А bm.biWidth у тебя кратно четырем?
А вообще вот взгляни на один пример на VB, может на какую мыслю толкнет (там правда через Clipboard картинка идет, но это не важно): http://www.vbnet.ru/faq/showtopic.asp?id=343 Это сообщение отредактировал(а) cardinal - 28.9.2004, 20:24 -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| shedon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1209 Регистрация: 17.1.2003 Где: Нижнiй Новгородъ Репутация: 4 Всего: 11 |
А это имеет какое-то значение ? там 1024... -------------------- Programming is like sex: One mistake and you have to support it your lifetime |
|||
|
||||
| cardinal |
|
||||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 2 Всего: 99 |
Да, у bmp это имеет большое значение.
http://softs.h10.ru/literature.shtml?topic...ok=2&page=5.htm Но, в данном случае проблема думаю в другом... Пока тоже не понял в чем. А может у тебя память вообще в соседней процедуре еще выделяется?
А это вообще прикольно -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
||||
|
|||||
| shedon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1209 Регистрация: 17.1.2003 Где: Нижнiй Новгородъ Репутация: 4 Всего: 11 |
С памятью сейчас проблем нет, цвета инвертируются через раз, если я их отображаю на том же компе что, и получаю скриншот, а так, всё какбы фиолетовым цветом залито. Как быдто палитра меняется -------------------- Programming is like sex: One mistake and you have to support it your lifetime |
|||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 2 Всего: 99 |
А ты сравни два файла, чтобы понять что в них на самом деле по разному, только палитра ли? -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| shedon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1209 Регистрация: 17.1.2003 Где: Нижнiй Новгородъ Репутация: 4 Всего: 11 |
Файлы одинаковые, если скриншот всегда сохранять в файл, то он всегда будет с таким цветом, или смотреть с удал. комп., просто когда я смотрю с локалхоста, похоже когда один скриншот накладывается на другой получается, норм. цвет.
-------------------- Programming is like sex: One mistake and you have to support it your lifetime |
|||
|
||||
| cardinal |
|
||||||||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 2 Всего: 99 |
Чему у тебя в этом месте bm.biBitCount становится равным? А как насчет того, что ты как bmp файл сохраняешь, всегда одинаковое содержание?
Стопроцентно сказать не могу, но возможно здесь возникает ошибка, потому что иногда (в зависимости от bm.biBitCount) еще бывает палитра, размер которой тоже надо прибавить. Как он высчитывается я забыл, но ради прикола напиши +256.
Вот инфа о палитре:
http://softs.h10.ru/literature.shtml?topic...ok=2&page=5.htm -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
||||||||
|
|||||||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |