Universal Windows App中的全局热键

问题描述 投票:3回答:1

因此,我创建了一个UWP应用,可以记录多条音频线,并将记录保存到MP3文件中以进行游戏中的多行记录,以后我可以分别编辑((游戏音频,麦克风,游戏通讯,语音通讯)] >因为NVidia ShadowPlay / Share还不支持此功能。我通过VAC实现了这种多线设置。

我有使用常规Windows WPF C#编写的此工具的版本,并且我具有开始/停止记录的系统范围内的热键Ctrl+Alt+R,因此当我在全屏游戏中时,无需退出就可以开始/停止记录全屏模式(切换窗口焦点)] ..

是否可以在UWP App中实现触发某些应用程序内事件的全局((系统范围内,应用程序窗口未处于焦点)热键?

我知道其他平台不支持该功能。但是我只需要它在Windows 10桌面上运行,并且对HotKey的支持是必需的。还是我可以通过其他任何方式实现UWP Apps的目标?

GOAL:系统范围内的组合键,可在UWP应用事件中触发,而无需切换窗口焦点和全屏游戏。

因此,我创建了一个UWP应用程序,可以记录多条音频线,并将记录保存到MP3文件中以进行游戏中的多行记录,以后可以分别编辑(游戏音频,麦克风,游戏通讯,...

]] >

目前尚无法彻底解决此任务。您面临UWP的两个限制,只能部分解决:

  • 生命周期:UWP应用在未集中时处于挂起状态。他们只是“阻塞”以消耗更少的资源(和电池)。对于移动设备来说,这是一个很棒的功能,但对您的项目而言却是个坏消息。您可以通过请求“ ExtendedExecutionSession”来解决此问题,如果“ attachpower”

  • 检测输入而没有焦点。在MSDN上明确指出UWP不支持键盘HOOKS(这是指SetWindowsHookEx)。他们重新发明了“ GetAsyncKeyState”,现在当Windows成为焦点时,它可以[[only使用。实际上,您可以在CoreWindow.GetAsyncKeyState()下找到它。如果只需要将F键用作热键,则仍然可以执行某些操作,例如“在最小化应用程序以激活功能时按F2键”。使用Stefan Wick example。他解决了部分问题。相反,如果您需要听很多键(或鼠标事件),则没有办法。您现在不能。

  • 好奇心

    UWP具有改写的功能,其中之一称为

    InputObservation”。目前尚无文档记录,无法实施,但应允许应用程序不受任何限制,并且不受最终目的地的限制,访问系统输入(键盘/鼠标..)。我认为此功能是系统范围内输入检测的关键。我找不到实现它的方法。

    亲切的问候
    c# uwp win-universal-app windows-10-universal
    1个回答
    0
    投票

    目前尚无法彻底解决此任务。您面临UWP的两个限制,只能部分解决:

    © www.soinside.com 2019 - 2024. All rights reserved.