Mr.Pink » 28-11-2011 20:57:38

Проглядев по быстрому темы, ничего не нашел. Не бог есть какая проблема, но все же.

При запуске игры, не хочет запускаться в полноэкранном режиме. Если выбрать соответствующий пункт в настройках, то окно просто развернется с заданным разрешением, т.е. панель задач и caption окна все равно остается. Что характерно, при первом запуске игра нормально перешла в полноэкранный режим. Версия игры- от буки с поставленным сверху AE. Без даодана проблемы нет, но хотелось бы оценить игру и с новыми плюшками. Система: ХР sp3.

Sfeli » 28-11-2011 21:07:16

Не совсем понятно, что за настройки, но в Edition есть run_full.bat. Если нет (у меня почему-то нет), есть run_wind.bat, который можно скопировать и отредактировать любым Блокнотом, поменяв там -noswitch на -switch.

Mr.Pink » 28-11-2011 21:23:47

run_full не помогает. Правка батников, соответственно, тоже.

Sfeli » 30-11-2011 14:55:47

Попробовать -nomenu -noborder в дополнение к -switch в run_full.bat?
Скриншот?
Система 32-битная?
Что конкретно подразумевалось под "выбрать пункт в настройках"? Чьи настройки?

Mr.Pink » 30-11-2011 16:44:35

Система 32-бита. Про выбрать пункт "настройки" я наврал. Просто помнил, что выбор был, но он роли никакой не играл. Скриншот сделан с уже добавленными параметрами -nomenu -noborder.
http://i.piccy.info/i7/9cc871b7d66ff8c5f01e599aeb068ab5/1-5-2286/29678310/oni_500.jpg

Sfeli » 30-11-2011 20:23:15

Подтверждаю, воспроизвёл. Во-первых, в нормальной конфигурации (таскбар снизу, а не сверху), такого обычно не происходит – у Explorer и так всегда было не всё гладко с детектом полноэкранных приложений, а тут ещё таскбар не на месте. Во-вторых, с помощью магического пасса «клик-по-таскбару-клик-по-игре-клик-по-таскбару» эта проблема в большинстве случаев решается (с этой и любой другой игрой). В-третьих, скорее всего, в C-Daodan намудрили со стилями окна или с его размерами, завтра гляну код и скажу точно.

MSDN написал(а):

It is possible to cover the taskbar by explicitly setting the size of the window rectangle equal to the size of the screen with SetWindowPos. For Windows 2000 systems or later, the window must lack either WS_CAPTION or WS_THICKFRAME, or else the window must be sized so that the client area covers the entire screen.

Всё дело в волшебных пузырьках (это я себе на будущее).

Mr.Pink » 01-12-2011 18:31:53

Первые два пункта все равно не сработали. Даже с нормальным положением панели задач. Но все равно спасибо за помощь.

Sfeli » 01-12-2011 22:09:29

Глянул в исходники Даодана, там всё более-менее ок (ну, насколько может быть ок код, который мигрировал ещё с проекта OniUSB, который работает в отдельном потоке, и который зачем-то делает ненужный SetParent). Можно ещё простой тест ради интереса? В этой программе таскбар тоже не убирается? (Вирусов нет, исходник, если что, выход по нажатию Escape).

Может, софт какой-нибудь стоит ещё типа нескольких рабочих столов, другая переключалка окон по Alt+Tab, добавлялка кнопочек к заголовкам, минимизировалка любых окон в трей – вообще что-нибудь, что может вмешаться в работу с окнами? Просто на чистой XPSP3 всё «нормально» (можно обойтись магическими пассами).

А так, галка «Автоматически убирать с экрана» в настройках панели задач, как временное, но простое решение этой неведомой проблемы.

И, как вариант, можно попробовать другую версию C-Daodan (можно на OCF спросить). Тот, что у меня, например, отличается как минимум от исходников в SVN. А в исходниках есть поддержка опции -topmost, которая могла бы решить проблему.

Mr.Pink » 04-12-2011 10:04:36

Программа по ссылке разворачивается во весь экран нормально, таскбар исчезает. Из софта для работы с окнами только AeroSnap, но я уже проверял работу на этом же компьютере без неё(результат тот же). Теперь буду пробовать разные версии даодана. О результатах отпишусь.