GUISetStyle funktioniert nicht

  • Hallo,

    Wollte mir ein kleines Tool basteln, womit ich Skyrim automatisch zu einem "Borderless Fullscreen Window" machen kann. Es wird im Windowed Mode gestartet.
    Mein Problem ist, dass lediglich WinMove funktioniert, GUISetStyle jedoch nicht (Rand und Titel sollen verschwinden).
    Habe ich dabei was übersehen / den Befehl falsch verwendet?

    [autoit]

    #RequireAdmin
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

    [/autoit][autoit][/autoit][autoit]

    HotKeySet ("{F7}", "skyrimfull")

    [/autoit][autoit][/autoit][autoit]

    Func skyrimfull ()

    [/autoit][autoit][/autoit][autoit]

    $skyrimhandle = WinGetHandle("Skyrim")

    [/autoit][autoit][/autoit][autoit]

    GUISetStyle($WS_BORDER, -1, $skyrimhandle)
    GUISetStyle($WS_DLGFRAME, -1, $skyrimhandle)

    [/autoit][autoit][/autoit][autoit]

    WinMove("Skyrim", "", 0, 0, 1920, 1080)

    [/autoit][autoit][/autoit][autoit]

    EndFunc

    [/autoit][autoit][/autoit][autoit]

    While 1
    Sleep (100)
    Wend

    [/autoit]

    MfG ExChill

    Einmal editiert, zuletzt von ExChill (7. Juli 2013 um 19:18)

  • GUISetStyle lässt sich meines Wissens nach nur auf eigene (mit GUICreate erstellte) Fenster anwenden.
    Ich kenne aber auch keine Lösung, da es WinSetStyle leider nicht gibt.

  • Schade, hatte sowas in der Richtung schon befürchtet :/
    Gibt es in der WinAPI.au3 vielleicht einen Befehl dafür?

  • [autoit]

    _WinAPI_SetWindowLong($skyrimhandle, $GWL_STYLE, BitOR($WS_BORDER, $WS_DLGFRAME))
    _WinAPI_RedrawWindow($skyrimhandle)

    [/autoit]
  • Thx erstmal, für die Antwort :)
    Beim ersten Mal hats funktioniert aber danach nicht mehr :/

    Nochmal der komplette Code:

    [autoit]

    #include <WinAPI.au3>
    #include <Constants.au3>
    #include <WindowsConstants.au3>

    [/autoit][autoit][/autoit][autoit]

    HotKeySet ("{F7}", "skyrimfull")

    [/autoit][autoit][/autoit][autoit]

    Func skyrimfull ()

    [/autoit][autoit][/autoit][autoit]

    $skyrimhandle = WinGetHandle("Skyrim")

    [/autoit][autoit][/autoit][autoit]

    _WinAPI_SetWindowLong($skyrimhandle, $GWL_STYLE, BitOR($WS_BORDER, $WS_DLGFRAME))
    _WinAPI_RedrawWindow($skyrimhandle)
    WinSetState("Skyrim", "", @SW_SHOW)

    [/autoit][autoit][/autoit][autoit]

    WinMove("Skyrim", "", 0, 0, 1920, 1080)

    [/autoit][autoit][/autoit][autoit]

    EndFunc

    [/autoit][autoit][/autoit][autoit]

    While 1
    Sleep (100)
    Wend

    [/autoit]

    Musste das SW_SHOW einbauen, da nach dem anklicken vom Taskbar Icon nichts passiert ist (gleicher Effekt mit SW_RESTORE).
    Zurzeit passiert das, was ich im ersten Post beschrieben hab. WinMove funktioniert, der Rest nicht.