Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Запустить окно игры, развернуть на весь экран, убрать рамку окна, перекрыть пуск

Ответить
Настройки темы
Запустить окно игры, развернуть на весь экран, убрать рамку окна, перекрыть пуск

Ветеран


Сообщения: 531
Благодарности: 4

Профиль | Отправить PM | Цитировать


Здравствуйте, подскажите реально ли запустить игру в окне, развернуть на весь экран, убрать рамку вокруг окна и перекрыть этим окном пуск?
У меня почти все работает, только вот пуск остается поверх игры. Знаю что можно скрыть пуск стандартными средствами, но придется его постоянно при выходе из игры обратно включать. Может можно скрипт подправить, чтобы у него был приоритет перед пуском?


Код: Выделить весь код
; Запуск игры
ShellExecute ( "C:\Games\Warcraft 3 Frozen Throne\war3.exe" , "-window")

; Ждем появления окна (10 сек)
$hWnd = WinWaitActive("[CLASS:Warcraft III]", "", 10) ; без таймаута (5) ожидание бесконечно
If Not $hWnd Then
    MsgBox(4096, 'Сообщение', 'Долго запускается... перезапустите')
    Exit
EndIf


; Разворачиваем на весь экран
WinSetState ('Warcraft III', '', @SW_MAXIMIZE)


; Убираем рамку, но пуск снизу не много закрывает((
#include <GuiMenu.au3>
#include <WinAPI.au3>
#include <WinAPIConstants.au3>
#include <WindowsConstants.au3>

Local $hMenu, $hWnd = WinWait('Warcraft III') ; Some window
; ---
_MakePopup($hWnd)

; Спрятать меню окна
$hMenu = _GUICtrlMenu_GetMenu($hWnd)
If $hMenu Then _
    _GUICtrlMenu_SetMenu($hWnd, 0)

; Восстановить
;_GUICtrlMenu_SetMenu($hWnd, $hMenu)

Func _MakePopup($hWnd)
    Local $iOldStyle
    ; ---
    $iOldStyle = _WinAPI_GetWindowLong($hWnd, $GWL_STYLE)
    If BitAnd($iOldStyle, $WS_CHILD) Then  _
        Return SetError(1, 0, False)

    $iOldStyle = BitAnd($iOldStyle, BitNot($WS_CAPTION))
    _WinAPI_SetWindowLong($hWnd, $GWL_STYLE, BitOr($iOldStyle, $WS_POPUP))
    _WinAPI_SetWindowPos($hWnd, 0, 0, 0, 0, 0, BitOr($SWP_NOMOVE, $SWP_NOSIZE, $SWP_NOZORDER, $SWP_FRAMECHANGED))
    ; ---
    Return True
 EndFunc


Думаю, что лучше не создавать новую тему, а в этой написать...

Не могу убрать рамку игры Killing Floor (запущенной в оконном режиме). Скрипт, который выше, не справляется. Может у кого - нибудь есть более жесткий вариант

Отправлено: 19:45, 08-07-2017

 


Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Запустить окно игры, развернуть на весь экран, убрать рамку окна, перекрыть пуск

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Темы и Стили - Как убрать рамку окна в Windows 8? VlastelinK Оформление Windows 11/ 10 / 8 / 7 / Vista 2 05-05-2015 21:04
2007 - [решено] MS Excel | Как развернуть лист на весь экран ssoll Microsoft Office (Word, Excel, Outlook и т.д.) 3 17-08-2012 18:01
Разное - DOSовские окна на весь экран akalibr Microsoft Windows 2000/XP 2 19-06-2010 14:08
[решено] Как развернуть свёрнутое окно на панели пуск??? Если несколько вариантов-пишите ВСЕ=) sashadeg AutoIt 1 25-02-2009 16:40
Как развернуть IE на весь экран? YPit Microsoft Windows 95/98/Me (архив) 4 09-02-2004 14:05




 
Переход