Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Вниз

смена координат Десктопа   Найти похожие ветки 

 
cerber1 ©   (2004-10-13 23:23) [0]

Как сменить координаты Десктопа, чтобы , например верхний левый угол был не (0,0) а (1,1). При этом необходимо, чтобы это изменение коснулось всех приложений которые имеют окна(чтобы их окна синхронно уплыли), а вокнах имеющих фокус ввода не было проблем с прорисовкой текста. Задач конечно много скажите хотябы в какую сторону копать?


 
DVM ©   (2004-10-13 23:42) [1]

Лучше скажи зачем, может есть решение попроще?


 
Cobalt ©   (2004-10-13 23:51) [2]

Может, добавление панели, типа как у MSOffice? Она ведь отнимает у рабочего стола.


 
DVM ©   (2004-10-13 23:56) [3]

Тогда пусть и делает AppBar - эксплорер окна и подвинет сам.


 
cerber1 ©   (2004-10-14 22:30) [4]

Я видел решение этой проблемы двумя путями:
1 производим задержку выода информации на екран на один кадр(помоему ето возможно сделать програмно, правда не для всех видеокарт) , а затем выводим этот кадр синхронно с разверткой но уже смещщенным
2 Изменять базовые координаты монитора через АПИ (правда нет нормального helpa по GDI), но не нашел никаких функций кроме масшитабирования.

Пробовал через systemparameterinfo(SPI_SETWORKAREA...) но там  ошибка. А если пробовать
MoveWindow(WindowFromDC(getdc(0)),1,1,1024,768,true) то ничего не получается.

2 ALL
Проблема связана с необходимостью динамичеси(1раз в 10сек прибл.) искажать(именно путем смещения) всю информацию выводимую на екран, но при этом должна обеспечиваться нормальная функциональность в окнах клавиатурного ввода. Т.е тупо bitblt(getdc(0)...getdc(0)..)не катит.


 
Cobalt ©   (2004-10-15 08:45) [5]

2 cerber1 ©  
Может, скажешь - зачем?


 
Rem   (2004-10-15 10:07) [6]

>>Может, скажешь - зачем?

Чтобы в сильную качку изображение двигалось в противофазе, оставаясь для конечного пользователя неподвижным. :)


 
Dimosha   (2004-10-15 11:11) [7]

А как ICQ сдвигает все окна?


 
Игорь Шевченко ©   (2004-10-15 11:13) [8]


> Проблема связана с необходимостью динамичеси(1раз в 10сек
> прибл.) искажать(именно путем смещения) всю информацию выводимую
> на екран


Советы, как напакостить будем в другом месте спрашивать, ладно ?


 
Nick Denry ©   (2004-10-15 14:35) [9]

Rem   (15.10.04 10:07) [6]
Игорь Шевченко ©   (15.10.04 11:13) [8]

Я сори за лол"ы но это орех!!!!


 
DVM ©   (2004-10-15 15:33) [10]


> А как ICQ сдвигает все окна?

Ничего она не двигает, двигает эксплорер. Функция ShAppBarMessage(). Ну а эксплорер двигает как и положено функцией MoveWindow(), перебирая в цикле все окна и отбирая нужные.


 
wicked ©   (2004-10-15 16:56) [11]

гы, орех...
а вот за это
> MoveWindow(WindowFromDC(getdc(0)),1,1,1024,768,true)
нужно отрывать руки.... по шею....


 
DVM ©   (2004-10-15 16:59) [12]


> wicked ©   (15.10.04 16:56) [11]

Да мне кажется, что ничего не произойдет при выполнении этой строки.


 
wicked ©   (2004-10-15 18:03) [13]

как раз подчеркнутое - отличнейший resource leak...
а потом появляются вопросы - а чего это моя программа ресурсы отжирает (и быстро валится на win9x)?...


 
DVM ©   (2004-10-15 18:44) [14]


> как раз подчеркнутое - отличнейший resource leak...

Я не уверен, но вроде бы в данном случае GetDC вернет не копию DC, а описатель уже существующего контекста, который потом надо будет просто освободить (ReleaseDC).


 
cerber1 ©   (2004-10-15 22:29) [15]

2 Игорь Шевченко ©   (15.10.04 11:13) [8]

and 2 all

Пишу дисер(себе) по защите визуальной информации от перехвата по... дальше не буду. Так вот один из способов защиты, от накопления энтропийно связанной информации это смещение параметров изображения(на практике проверенно, аппартно). Хотелось бы программно.  

2 DVM ©   (15.10.04 16:59) [12]

практически ничего не происходит: по краям засерается экран


 
Игорь Шевченко ©   (2004-10-15 23:14) [16]

cerber1 ©   (15.10.04 22:29) [15]


> Пишу дисер(себе)



> Так вот один из способов защиты, от накопления энтропийно
> связанной информации это смещение параметров изображения(на
> практике проверенно, аппартно). Хотелось бы программно.
>  


ScreenSaver запускать :)


 
cerber1 ©   (2004-10-18 22:52) [17]

Проблема была решена другим путем:
лучше двигать активные окна чем стол.
но почему нельзя двигать ДЕсктоп - по моему в МСДН нет на него никаких ограничений?


 
DVM ©   (2004-10-19 12:07) [18]


> но почему нельзя двигать ДЕсктоп - по моему в МСДН нет на
> него никаких ограничений?

Потому, что он будет сопротивляться своему перемещению.


 
cerber1 ©   (2004-10-20 23:57) [19]

Это я понял. Но почему?


 
KSergey ©   (2004-10-21 10:13) [20]

Защита - это хорошо.. Но бедный пользователь... Или защита - важнее?


 
cerber1 ©   (2004-10-21 20:30) [21]

2 KSergey ©   (21.10.04 10:13) [20]

Я-Я!!!



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.037 c
4-1097695561
cerber1
2004-10-13 23:26
2004.12.05
Вызов неэкспортируемых функций


1-1101198501
hgd
2004-11-23 11:28
2004.12.05
Компоненты с torry


1-1100429494
Артем Владимирович
2004-11-14 13:51
2004.12.05
Как сделать приложение мультиплатформенным?


1-1100876680
Shamansky
2004-11-19 18:04
2004.12.05
Событие при перемещении формы


1-1100678158
Ega23
2004-11-17 10:55
2004.12.05
TTreeNodes.Delete





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский