Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ПРивет всем ! 1) Написал небольшую программу. На COM-порту ждет дискретный сигнал и по нему должна свернуть все окна (типа как нажатие Win+M или Win+D) и показать другое окно. Писал на MVC++6. Как чисто программно свернуть все окна не разобрался и сделал упрощённый вариант: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Компилирую. Под XP SP3 работает, как часы. Сегодня поставили на комп Win-7 Proff - этот же екзешник уже нифига не работает ! Более того, запустить этот файл через проводник или тотал - то же самое. Ни какого результата. Как быть ? Подскажите плизз, пример кода, чтобы сворачивал все окна ! SendMessage() коды клавиш (win+D) почему-то тоже не работает, хотя не уверен, что правильно посылал месаги... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 20:30 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ВадимиусКак чисто программно свернуть все окна не разобрался Шарахнуть броадкастом WM_SYSCOMMAND c SC_MINIMIZE не пробовал? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 20:44 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, чуть проясните: SendMessage( HWND hWnd, WM_SYSCOMMAND, _In_ WPARAM wParam, _In_ LPARAM lParam ); а SC_MINIMIZE - это WParam или lParam ?? (Если вызываю внутри метода главной формы, то hWnd не пишу ) Или я не про ТО ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 20:55 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
SendMessage(WM_SYSCOMMAND, SC_MINIMIZE,0 ); благополучно свернуло СЕБЯ :) но остальные окна винды не тронуло ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 20:58 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
SendMessage function : hWnd [in] Type: HWND A handle to the window whose window procedure will receive the message. If this parameter is HWND_BROADCAST ((HWND)0xffff), the message is sent to all top-level windows in the system, including disabled or invisible unowned windows, overlapped windows, and pop-up windows; but the message is not sent to child windows. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 21:02 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Вадимиус, ну дык хэндл для броадкаста - HWND_BROADCAST ((HWND)0xffff) небось какой MFC есть или другая лабуда? ::SendMessage звать нужно с полным набором параметров в таком случае ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 21:05 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ИзопропилВадимиус, ну дык хэндл для броадкаста - HWND_BROADCAST ((HWND)0xffff) небось какой MFC есть или другая лабуда? ::SendMessage звать нужно с полным набором параметров в таком случае Оооо! Только что малость не опупел: ::SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MINIMIZE,0 ); Рабочий стол заполнило ну... штук так 50-60 непонятных заголовков окон, включая какие-то из систрея, какие-то вообще никогда не видимые. До сих пор некоторые не убираются ! Буду перегружаться :-))) это или не ТО решение, или я не туда кнопаю...... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 21:14 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Вадимиус, если что - мопед не мой, я только объяву подал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 21:16 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ИзопропилВадимиус, если что - мопед не мой, я только объяву подал Ну эт понятно..... броадкаст не подходит видимо... ибо: "including disabled or invisible unowned windows, overlapped windows, and pop-up windows" - т.е. всем всем всем - не нужно отправлять сий меседж.... Что , искать все видимые окна и только им посылать минимизацию ?? Через FindWindow ?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 21:26 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ВадимиусЧто , искать все видимые окна и только им посылать минимизацию ?? Через FindWindow ?? через EnumWindows и внимательно смотреть - кому посылать, а кому нет. Гугл в помощь внутренний голос говорит однако, что должен быть путь через шелл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 21:32 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ИзопропилВадимиусЧто , искать все видимые окна и только им посылать минимизацию ?? Через FindWindow ?? через EnumWindows и внимательно смотреть - кому посылать, а кому нет. Гугл в помощь внутренний голос говорит однако, что должен быть путь через шелл Да да, EnumWindows - читаю. Но что-то мне не понятно про параметры WNDENUMPROC lpEnumFunc , // указатель на функцию обратного вызова LPARAM lParam // определяемое программой значение Никогда еще не сталкивался. Как заюзать ? Кстати хороший голос про шелл.... тем более про совместимость с Win 7... У кого голос что-то говорит ? Мой пока молчит гад.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 21:43 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ВадимиусУ кого голос что-то говорит ? Мой пока молчит гад.... Когда молчит голос - спрашивай гугль: http://www.google.com/search?nord=1&sclient=psy-ab&q=MSDN MinimizeAll C &btnG= Он тебя легко выведет на http://stackoverflow.com/questions/6582000/executing-show-desktop-from-c Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 22:13 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, О! Получилось: ! Код: plaintext 1. 2. 3. 4. Замечтательно свернуло все окна кроме моего. Ну с моим - не проблема. Как его сворачивать - знаю ))))))))) Спааасибочки за подсказку, готовую к употреблению :-) Вот интересно, откуда человек догадался, что #define MIN_ALL 419, а не 580 или 23009 ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 22:35 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Кстати еще вопрос: 1) откомпилю на VC++6. На XP+SP3 - уже работает. Если на WIn 7 не заработает, куда рыть ? 2) АНахронизЬм конечно, мой древний VC++6, но все же. Проекты старые нормально будут компилиться на , допустим VC2005 или VC2008 ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 22:41 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ВадимиусЕсли на WIn 7 не заработает, куда рыть ? проблемы следует решать по мере возникновения. ВадимиусПроекты старые нормально будут компилиться на , допустим VC2005 или VC2008 ??? конвертнутся и скомпилятся(если фокусов никаких нет) а если фокусы есть - напильник текстовый редактор (к файлам проекта) решит любую проблему ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 23:05 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Вадимиускуда рыть ? По второй приведённой ссылке было три способа. Почему ты ухватился за самый хакерский? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 23:16 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
http://msdn.microsoft.com/en-us/library/windows/desktop/bb774094(v=vs.85).aspx Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 23:20 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovВадимиускуда рыть ? По второй приведённой ссылке было три способа. Почему ты ухватился за самый хакерский? 2 способ: "C++ version:" - не понятен. Первый - на С# (не работал на нем) 3-й хакерский ? По-моему, самый простой. И сработал сразу ))) Стало сразу понятна суть, за исключением класса окна "Shell_TrayWnd" Хотя гугл мне поведал, что "Shell_TrayWnd" - класс окна панели задач ! Сразу вопрос: Как бы мне понять, что за сворачивание всех окон отвечает ПАНЕЛЬ ЗАДАЧ ??? Как бы для меня - это узкая полоска УЖЕ свернутых окон ??? Ну и вообще, откуда программеры знают, что в сообщении SYS_COMMAND нужно передать именно MIN_ALL ?? И откуда взялась такая точная цифра в строчке #define... ?? ОДни вопросы блин... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 23:27 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov http://msdn.microsoft.com/en-us/library/windows/desktop/bb774094(v=vs.85).aspx Спасибо ! Наслаждаюсь неведомым ранее :) Не в тему: смайлики в сообщениях не вставляются ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 23:30 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ВадимиусНу и вообще, откуда программеры знают, что в сообщении SYS_COMMAND нужно передать внутренний голос подсказывает для начала внимательное чтение документации, затем изучение заголовочных и интерфейсных (idl) файлов, файлов с отладочной информацией (pdb) далее запуск всевозможных шпиёнов, DDK даёт информацию в блогах майкрософтных проскакивает информация отладчик и дизассемблер в конце концов и дальше по кругу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 23:37 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
ВадимиусНе в тему: смайлики в сообщениях не вставляются ?неа, не вставляются ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 23:39 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
egorychВадимиусНе в тему: смайлики в сообщениях не вставляются ?неа, не вставляются шаман ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 23:42 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Мдя, есть над чем мозговать.... Спасибо за помощь, коллеги, вправили немного мозги Завтра этот код попробую на семёрке ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 23:52 |
|
||
|
Свернуть все окна, горячие клавиши
|
|||
|---|---|---|---|
|
#18+
Привет, коллеги, если ещё не надоел ))) Код, приведенный вами и вставленный в прогу - работает. Откомпилировано на VC++6 (опробовано на XP, 7) На работе поставил VC++2008. В принципе всё собралось и там, но некоторые строчки кода просто не работают. Например: Код: plaintext 1. 2. 3. 4. 5. не работает. Справка неприятно удивила "функция устарела, пользуйся WM_CTLCOLOR " ну да хрен с ним. Не совсем понял, почему не открывается дизайнер фомы... "opened in another editor" ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2014, 22:47 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38792274&tid=2019247]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 10ms |
| total: | 155ms |

| 0 / 0 |
