![]() |
|
![]() ![]() ![]() |
|
WinDev |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 25.12.2010 Репутация: нет Всего: нет |
Не удается активировать окно с помощью функции SetActiveWindow().
Имеется окно под многими остальными на рабочем столе. Задача - вывести его "наверх" и активировать. Следующий код не работает:
Правильный ли код? Если да, то почему он не работает? |
||||||
|
|||||||
WinDev |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 25.12.2010 Репутация: нет Всего: нет |
UPD: Случайно заметил, что в режиме Debug вышеприведенный код работает.. , баг Visual Studio?..
|
|||
|
||||
vol4ek |
|
|||
![]() конь в пальто ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 1.5.2011 Где: Минск Репутация: -1 Всего: 0 |
нет, не баг. У конфигураций Release и Debug разные настройки. Release для создания окончательного модуля, Debug отладочная. Причина в коде.
|
|||
|
||||
WinDev |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 25.12.2010 Репутация: нет Всего: нет |
А что не так в коде?
|
|||
|
||||
vol4ek |
|
|||
![]() конь в пальто ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 1.5.2011 Где: Минск Репутация: -1 Всего: 0 |
покажи весь.
|
|||
|
||||
WinDev |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 25.12.2010 Репутация: нет Всего: нет |
Зачем? Задавайте вопросы - отвечу.
Это сообщение отредактировал(а) WinDev - 8.11.2011, 19:50 |
|||
|
||||
vol4ek |
|
|||
![]() конь в пальто ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 1.5.2011 Где: Минск Репутация: -1 Всего: 0 |
у тебя там сишного кода нет? у меня как-то была прога на 3-х языках. C, C++ и модули ассемблерные в придачу. так в debug нормально собиралось, а Release тьму ошибок давал.
Добавлено через 1 минуту или устаревший код. |
|||
|
||||
WinDev |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 25.12.2010 Репутация: нет Всего: нет |
Давайте может будем исходить из специфики отличий разных видов сборок - debug и release. А то гадать здесь - это как иголку в стоге сена искать. Весь код скидывать я бы не хотел.. Программа написана с использованием MFC.
|
|||
|
||||
vol4ek |
|
|||
![]() конь в пальто ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 1.5.2011 Где: Минск Репутация: -1 Всего: 0 |
какие ошибки выдает?
|
|||
|
||||
WinDev |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 25.12.2010 Репутация: нет Всего: нет |
Никаких.
UPD: возникла идея, что при запуске из отладчика GetCurrentThreadId возвращает одно, а при запуске "самостоятельного" приложения - другое. Так ли это? P.S. Может как-то можно обойти проблему использованием другой функции? Это сообщение отредактировал(а) WinDev - 8.11.2011, 20:48 |
|||
|
||||
Lols |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 144 Регистрация: 21.10.2011 Репутация: нет Всего: нет |
Не работает и при этом не выдает ошибок. И это только в Release?
|
|||
|
||||
WinDev |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 25.12.2010 Репутация: нет Всего: нет |
Программа работает в Release, просто не выносит окно на топ.
|
|||
|
||||
500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: нет Всего: 14 |
а может все таки SetForegroundWindow ?
-------------------- |
|||
|
||||
WinDev |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 25.12.2010 Репутация: нет Всего: нет |
Просто мигает в трее и все, если использовать только SetForegroundWindow()
Это сообщение отредактировал(а) WinDev - 8.11.2011, 21:39 |
|||
|
||||
Albor |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 589 Регистрация: 28.2.2009 Репутация: 7 Всего: 9 |
Посмотри в сторону GetLastError() и FormatMessage(). Не плохо бы проверять возвращаемое значение (м.б. в фрагменте кода это просто не показано). Во всяком случае, можно попытаться локализовать место ошибки выбросом MessageBox-ов, если функция вернула что-то не то, а не гадать.
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |