Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Desktops, monitors and show form
|
|||
|---|---|---|---|
|
#18+
Всем привет! Заинтересовался темой вывода формы Windows-приложения на любой из имеющихся мониторов и на любой из имеющихся рабочих столов. С мониторами еще более-менее понятно, а вот как переключаться между рабочими столами - пожалуйста, поделитесь информацией, у кого есть. Использую sysinternals: desktops.exe Известно, например, что при наличии 2х Monitors, мы можем иметь всего один, общий на все мониторы - Screen. А при наличии нескольких рабочих столов - будет несколько Screen ? Я заметил, что некоторые программы умеют открывать свои формы сразу на всех рабочих столах. Например - окно обновления то-ли firefox то ли adobe reader (не помню точно) приходится закрывать на всех рабочих столах, когда выскакивает. Интересно, что другие программы так себя не ведут. Как они это сделали ? Нужно для каждого рабочего стола свой экземпляр программы запускать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2014, 17:59 |
|
||
|
Desktops, monitors and show form
|
|||
|---|---|---|---|
|
#18+
Еще интересное наблюдение - даже если вручную запустить несколько копий программы - по одной на каждом рабочем столе, то реагировать на нажатия горячей кнопки, запрегистрированной через RegisterHotKey / UnregisterHotKey будет только программа лишь на одном из них. Т.е. та же программа и та же кнопка на других столах - не реагируют. Или надо как-то иначе регистрировать и ловить хоткей в каждой копии программы. Наверно, нужно будет по-честному создавать DLL для глобального хука, далее как-то разбираться с тем какая из копий программы должна это обработать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 01:01 |
|
||
|
Desktops, monitors and show form
|
|||
|---|---|---|---|
|
#18+
ART-CODEЯ заметил, что некоторые программы умеют открывать свои формы сразу на всех рабочих столах. Например - окно обновления то-ли firefox то ли adobe reader (не помню точно) приходится закрывать на всех рабочих столах, когда выскакивает. Интересно, что другие программы так себя не ведут. Как они это сделали ? Нужно для каждого рабочего стола свой экземпляр программы запускать ? они просто не видят другие свои экземпляры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 09:16 |
|
||
|
Desktops, monitors and show form
|
|||
|---|---|---|---|
|
#18+
ART-CODEто реагировать на нажатия горячей кнопки, запрегистрированной через RegisterHotKey / UnregisterHotKey будет только программа лишь на одном из них. Так и должно быть судя по хэлпу http://msdn.microsoft.com/en-us/library/windows/desktop/ms646309(v=vs.85).aspx Parameters hWnd [in, optional] Type: HWND A handle to the window that will receive WM_HOTKEY messages generated by the hot key. If this parameter is NULL, WM_HOTKEY messages are posted to the message queue of the calling thread and must be processed in the message loop. Вызывай RegisterHotKey() в той копии, которая должна обработать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 09:30 |
|
||
|
Desktops, monitors and show form
|
|||
|---|---|---|---|
|
#18+
HMONITOR and device Context http://msdn.microsoft.com/en-us/library/windows/desktop/dd144968(v=vs.85).aspx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 12:36 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38622492&tid=2019513]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
86ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 187ms |

| 0 / 0 |
