![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 11.06.2011
Сообщений: 54
|
![]()
Доброго времени суток, товарищи. Встретился на повестке дня я с станной странностью..
Началось всё с того, что мой товарищ попросил сделать ему "экстренную" сворачивалку для всяких приложений, а то мол приходят к нему клиенты, а у него всякие плееры и т. д. открыто Элементарно! подумал я, всё что нужно - выцепить дескриптор окошка да отправить ему сообщение sw_hide но не тут то было! радостные и веселые сворачивали мы всё, что можно.. И работало без нареканий... пока не наткнулись на клиент Aion'a (многопользовательская задротская игра, для тех, кто не в курсе).. Ну и вся проблема в том, что она просто игнорирует эту команду... И как теперь скрывать - идей не очень много... я бы сказал, они стремятся к нулю... может кто чего подсоветует?)
Здесь могла бы быть ваша реклама
|
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 12.09.2012
Сообщений: 1,030
|
![]()
А SendMessage не пробовали? Попробуйте. Если не получится, то нужно лезть в параметры окон приложения.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби. ![]() |
![]() |
![]() |
![]() |
#3 | |
Форумчанин
Регистрация: 30.06.2015
Сообщений: 353
|
![]() Цитата:
Хотя TopLevel ToolWindow вроде не сворачивает, посмотрю ваш Aion'a. Как сейчас делаете, где код-то? |
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 11.06.2011
Сообщений: 54
|
![]() ![]() Будь то хоть win+d, хоть win+m, в альт-табе да и на панели отчётливо виднеются гадские значки ![]() делаем "на коленке", всего 2 строки пока что в таймере получаю хэндл активного окна memo1.Lines.Add(IntToStr(GetForegro undWindow)); после чего шлём сообщение ShowWindow(StrToInt(edit1.Text), SW_HIDE); Работает со всем, кроме этого гадкого окна...
Здесь могла бы быть ваша реклама
Последний раз редактировалось Stilet; 14.08.2015 в 10:39. |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 01.06.2015
Сообщений: 497
|
![]()
WhatO_o?!, проверьте или узнайте, стоят ли на клиенте игры Aion какие-либо защиты, возможно они и мешают свернуть окно.
Еще попробуйте слать игре другие сообщения, и проверьте, будет ли она воспринимать их.
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 07.11.2011
Сообщений: 178
|
![]()
так:
Код:
ps: 2-й способ скорей всего скроет в том числе и из панели задач, восстановить можно будет заменив флаг "SWP_HIDEWINDOW" на "SWP_SHOWWINDOW" Последний раз редактировалось DIONISKA; 14.08.2015 в 00:26. Причина: upd |
![]() |
![]() |
![]() |
#7 |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
![]()
А мож просто заюзать 2-й рабстол?
Окно игры поверх всего, да? Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
![]() |
![]() |
![]() |
#8 | ||
Пользователь
Регистрация: 11.06.2011
Сообщений: 54
|
![]() Цитата:
Окно игнорирует ShowWindow(StrToInt(edit1.Text),SW_ MINIMIZE); ShowWindow(StrToInt(edit1.Text),SW_ HIDE); и т.п. но SendMessage(StrToInt(edit1.Text), WM_SYSCOMMAND,SC_MINIMIZE,0); её спокойно сворачивает Цитата:
SetWindowPos(handle,0,0,0,0,0,SWP_H IDEWINDOW or SWP_NOSIZE or SWP_NOZORDER); не дало результата SetWindowPos(handle,-2 ,0,0,0,0,SWP_HIDEWINDOW or SWP_NOSIZE); ругается на -2 Нет, окно самое что есть обычное, даже предусмотрен оконный режим, в котором можно его спокойно растягивать и сворачивать... ![]()
Здесь могла бы быть ваша реклама
|
||
![]() |
![]() |
![]() |
#9 | ||
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
![]() Цитата:
Код:
Цитата:
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
||
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 11.06.2011
Сообщений: 54
|
![]()
увы, так тоже не скрылось
Да, убрать с панели задач и из альт-таба... Как раз то, что делает sw_hide...
Здесь могла бы быть ваша реклама
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
SW_HIDE не блокирует вывод программы | Effort | Помощь студентам | 1 | 15.06.2011 22:06 |
ShowWindow(...., SW_SHOW) возвращает 0 | Парсифаль | Win Api | 4 | 12.03.2010 04:21 |
Как узнать handle окна имея handle обного из его компонентов | SeRhy | Win Api | 2 | 18.10.2009 19:31 |
Как имея handle окна узнать handle edit-a который находится в етом окне | SeRhy | Общие вопросы Delphi | 1 | 20.07.2008 13:48 |