web-dev-qa-db-ja.com

フルスクリーンビューでローカルデスクトップとAWSワークスペースを切り替える方法はありますか?

AWSワークスペースをフルスクリーンビューで実行し、さまざまなウィンドウとアプリケーションを拡張デスクトップモードの2つの大きなモニターに分散させています。正常に動作します。しかし、どうすればローカルデスクトップに切り替えることができますか? Alt-Tabは、WSデスクトップで開いているウィンドウ間を循環するだけです。

AWSWSホットキーCtrl-Alt-Enterを押すと、全画面表示をすばやく終了してウィンドウに表示できることを知っています。しかし、それでも、Alt-Tabは、WSウィンドウで開いているウィンドウ間を循環するだけであり、ローカルで開いているウィンドウ間では循環しません。キーボードでそのウィンドウからジャンプするにはどうすればよいですか?

さらに悪いことに、全画面表示に戻ると、開いているすべてのウィンドウがウィンドウビューに収まるように再配置されています。フルスクリーンアプリはまだフルスクリーンっぽいですが、復元されたウィンドウサイズでロックされています。復元ボタンを2回クリックする必要があります。1回は疑似全画面から復元し、もう1回は真の全画面に戻ります。フルスクリーンのままで切り替えたいです。それはできますか?

それで、ホットキーはありますか?または、VB、JS、またはAHKでプログラムできるものは何ですか?また、WSウィンドウが通常のWindowsホットキー(コントロールバーのAlt-Space、ウィンドウのスナップ/最大化のWin+Arrowなど)に応答しないことにも注意してください。そのため、取得方法を探しています。開始しました。

TIA

6
PGilm

これに対する解決策を見つけましたが、ホットキーではありませんが、AWSを一時的にフルスクリーンのままにして、戻ったときにウィンドウの配置を同じに保つことができます。 -マウスを画面の上部に移動して、AmazonWorkSpacesメニューバーが表示されるようにします。 -「AmazonWorkSpaces」>「AmazonWorkSpacesについて」をクリックします。これにより、[アマゾンワークスペースについて]メニューが表示されます。[最新のクライアントをダウンロード]または[利用規約]をクリックすると、AWS Webサイトが開きますが、ローカルマシンに戻るはずです。 -AWSに戻るには、ローカルシステムトレイのクライアントアイコンをクリックするだけです。ただし、開いたままにすると次回は機能しないため、最初に[AmazonWorkSpacesについて]ウィンドウを閉じます。

3

切り替える方法を見つけました。
Windows10の実行
新しいデスクトップを開く(WinKey + Ctrl + D)
そこでAmazonWorkspaceを起動します-フルスクリーンモードで
ローカルデスクトップに戻すには、AWSで[バージョン情報]ポップアップを開きます
次に、WinKey + Tabをクリックします。これにより、さまざまなデスクトップを選択できます。
元のデスクトップに切り替えます
AWSに戻すには、WinKey + Tabをもう一度押して、AWSを実行しているデスクトップを選択します。

2
Manfred Just

このソリューションを試してください:

  1. 有効にするデスクトップモードでタスクバーを自動的に非表示にします
  2. 無効にするタスクバーをロックする
  3. Amazon WorkSpacesFullScreenを有効にします。
  4. これで、マウスを画面の下部に向けると、タスクバーローカルデスクトップが表示されます。
1
Marcin Gruca

私は同じ問題を扱ってきましたが、それは非常に迷惑です。可能であれば、ハートビートでRDPを使用しますが、代わりにAutoHotKey(AHK)でこのスクリプトを作成しました。 AWS Workspacesはキーボードをキャプチャしますが、それでもマウスの位置を取得できるため、フルスクリーンでAWSを最小化するか、マウスで画面の上部を左にスワイプするだけでプログラムがタスクバーに最小化されることがわかりました。

以下のコードをコピーしてテキストエディタに貼り付け、Slide Minimize.ahkとして保存し、実行してお楽しみください。

; Slide Minimize
; A handy tool for minimizing windows with a swipe mouse gesture
; Written By Travis Steichen

#NoEnv
SendMode Input 
SetWorkingDir %A_ScriptDir%
SetBatchLines -1
ListLines Off

CoordMode, Mouse, Screen

; Settings
global TopSlideArea := 16
global SlideDistance := 750
global SlideTime := 250

global TickRate := 10

global HelpMsg = ""
global State := "Waiting"
global CurrentSlideDistance := 0
global SlideLastX := 0

Menu, Tray, NoStandard
menu, tray, icon, C:\Windows\System32\Shell32.dll,35
menu, Adjust Slide Minimize Sensitivity, add, Slide Activation Distance, GUI_SlideActivationDistance
menu, Adjust Slide Minimize Sensitivity, add, Slide Activation Time, GUI_SlideActivationTime
menu, Adjust Slide Minimize Sensitivity, add, Slide Activation Area, GUI_SlideActivationArea
menu, tray, add, Adjust Slide Minimize Sensitivity, :Adjust Slide Minimize Sensitivity
menu, tray, add ; Create a separator line.
menu, tray, add, About, HelpAbout
menu, tray, add, Reload Program, TrayReloadProgram
menu, tray, add, Exit, TrayExitProgram

SettingsLoad()

HelpMsg =
(
Slide Minimize
Version 1.0.0

Written By Travis Steichen
Email: [email protected]

=== Instructions ===
Just move your mouse to the top of the screen and swipe somewhat fast and the window in focus will minimize
)

SetTimer, Tick, %TickRate%

#Z::

MsgBox, Ok...

return

;===============================================================================================================================================
;========    END    OF    AUTO    EXECUTE    ===================================================================================================
;===============================================================================================================================================
return


;===============================================================================================================================================
~^#F24::
; This does nothing other than prevent the script from existing as soon as it is started
return
;===============================================================================================================================================

SettingsLoad()
{
    if ( FileExist("Settings.ini") != "" )
    {
        iniSection := "Gestures"
        IniRead, TopSlideArea, Settings.ini, %iniSection%, TopSlideArea
        IniRead, SlideDistance, Settings.ini, %iniSection%, SlideDistance
        IniRead, SlideTime, Settings.ini, %iniSection%, SlideTime
    }
    else
    {
        SettingsSave()
    }

}

SettingsSave()
{
    iniSection := "Gestures"
    IniWrite, %TopSlideArea%, Settings.ini, %iniSection%, TopSlideArea
    IniWrite, %SlideDistance%, Settings.ini, %iniSection%, SlideDistance
    IniWrite, %SlideTime%, Settings.ini, %iniSection%, SlideTime
}

GUI_SlideActivationDistance:

msgCaption     := "Set Slide Activation Distance"
msgText        := "Slide Activation Distance is how many pixels the mouse must move left to minimize the current window in focus"
InputBox, SlideDistance, %msgCaption%, %msgText%,,,,,,,,%SlideDistance%
SettingsSave()

return

GUI_SlideActivationTime:

msgCaption     := "Set Slide Activation Time"
msgText        := "Slide Activation Time is how much time measured in milliseconds the mouse has to swipe left to minimize the current window in focus"
InputBox, SlideTime, %msgCaption%, %msgText%,,,,,,,,%SlideTime%
SettingsSave()

return

GUI_SlideActivationArea:

msgCaption     := "Set Slide Activation Area"
msgText        := "Slide Activation Area is how many pixels high from the top of the screen the mouse has to swipe left in minimize the current window in focus"
InputBox, TopSlideArea, %msgCaption%, %msgText%,,,,,,,,%TopSlideArea%
SettingsSave()

return

TrayExitProgram:

ExitApp

return

TrayReloadProgram:

Reload

return

HelpAbout:

HelpAbout()

return

Tick()
{
    MouseGetPos, mouseX, mouseY

    if ( mouseY < TopSlideArea )
    {
        if ( State == "Waiting" )
        {
            State := "Waiting For Slide"
            SetTimer, ResetSlide, %SlideTime%
            SlideLastX := mouseX
        }
        else if ( State == "Waiting For Slide" )
        {
            SlideDifference := SlideLastX - mouseX
            SlideLastX := mouseX

            if ( SlideDifference >= 0 )
            {    
                CurrentSlideDistance += SlideDifference

                if ( CurrentSlideDistance > SlideDistance )
                {
                    WinMinimize, A
                    ResetSlide()
                }
            }
            else
                ResetSlide()
        }
    }
    else if ( State != "Waiting" )
    {
        if ( State != "Reset" )
            ResetSlide()
        else
            State := "Waiting"
    }
}

ResetSlide()
{
    State := "Reset"
    CurrentSlideDistance := 0
    SetTimer, ResetSlide, OFF
}

HelpAbout()
{
    MsgBox, 64, Slide Minimize, %HelpMsg%
}

これは完璧な解決策ではありませんが、私のニーズに合っています。ワークスペースが各モニターをタスクバーのウィンドウとして扱うため、複数のモニターで問題が発生する可能性があります。そのため、フルスクリーンでワークスペースを最小化すると、そのモニターのワークスペースウィンドウが最小化されます。他の画面をクリックしてスワイプして最小化することで、これを回避できます。また、別の問題として、ワークスペースが各ワークスペースウィンドウのモニターを忘れてしまうことがあります。これにより、同じモニターに複数のワークスペースウィンドウが表示され、ワー​​クスペースを全画面に切り替えてから元に戻すことが唯一の解決策になります。

これがお役に立てば幸いです

0
Wildcard

完全に別の解決策は、ワークスペースクライアントの代わりにRDPクライアントを使用することです。私の意見では、これはとにかくはるかにうまく機能します。

ただし、AWSアカウントの管理者は、ファイアウォールを介してRDPを有効にする必要があります。

https://aws.Amazon.com/premiumsupport/knowledge-center/connect-workspace-rdp/

0
Rask