Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Рабочий стол Добавлено: 20.01.09 20:02  

Автор вопроса:  lexei | ICQ: 464882716 
Как определить находиться ли пользователь сейчас на робочем столе? Пробовал сравнивать GetDesktopWindow и GetForegroundWindow, но чёт не получается...

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 Skywalker



ICQ: 300-70-6пятьЪ 

Вопросов: 62
Ответов: 545
 Web-сайт: iSkywalker.ru
 Профиль | | #1
Добавлено: 20.01.09 21:53
попробуй перебрать все окна, если они минимизированы, то на раб столе))

Ответить

Номер ответа: 2
Автор ответа:
 lexei



ICQ: 464882716 

Вопросов: 13
Ответов: 32
 Профиль | | #2 Добавлено: 20.01.09 22:22
А почему сравнение GetDesktopWindow и GetForegroundWindow не даёт требуемого результата?

Ответить

Номер ответа: 3
Автор ответа:
 lexei



ICQ: 464882716 

Вопросов: 13
Ответов: 32
 Профиль | | #3 Добавлено: 20.01.09 22:25
Пытаюсь, но чёт не могу разовратсо с функцией GetWindowPlacement, эт она кажись отвечает за, минимизировано ли окно...
И вообще - нет ли чегонить не такого хитрого, как переберать окна))?

Ответить

Номер ответа: 4
Автор ответа:
 Боцман



ICQ: 295725312 

Вопросов: 53
Ответов: 830
 Web-сайт: Rus-Skipper.narod.ru
 Профиль | | #4
Добавлено: 20.01.09 23:25
И вообще - нет ли чегонить не такого хитрого, как переберать окна))?


Я правда незнаю ответа, но может это где-то в области поверх всех?
Нет возможности поковырятся, а жаль.
Вот подумалось, нет ли хранения у винды последнего открытого окошка?
По идее оно поверх всех?

Ответить

Номер ответа: 5
Автор ответа:
 GDK



Вопросов: 13
Ответов: 348
 Профиль | | #5 Добавлено: 21.01.09 09:12
Не пробовал через Spy++ просмотреть все окна?

Ответить

Номер ответа: 6
Автор ответа:
 GDK



Вопросов: 13
Ответов: 348
 Профиль | | #6 Добавлено: 21.01.09 09:23
И ещё. По моему десктоп - это родительское окно для всех остальных, которые "верхнего уровня". Он же, вроде бы, содержит что то вроде Syslistview32, которое является дочерним для десктопа(все значки с надписями - его содержимое). Но не уверен. Попробуй перебрать все дочерние окна десктопа (чё то типа GetChildWindow) и сравни каждое с тем, что покажет GetForegroundWindow. Попробуй выяснять класс окна (API). Думаю поможет.

Ответить

Номер ответа: 7
Автор ответа:
 lexei



ICQ: 464882716 

Вопросов: 13
Ответов: 32
 Профиль | | #7 Добавлено: 21.01.09 17:54
GDK натолкнул на идейку... Что если сравниветь класс окна GetDesktopWindow (которая по идее должна возвращять нэндл десктопа) и класс GetForegroundWindow? Кажется класс по хэндлу можно узнать функцией на подобие GetClassName...

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам