XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEExtension.NetCore.InputSimulator

【DLL】XFE各类拓展的模拟键盘输入

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFEExtension.NetCore.InputSimulator

重构 InputSimulator:架构升级与功能增强

- 用 SendInput 扫描码后端替换旧实现,支持更准确的物理按键表达,消除对虚拟键码依赖 - 新增 IInputBackend 接口,支持自定义输入后端,便于测试和扩展 - 引入 InputController,独立管理输入生命周期、组合键、长按、取消、异常恢复和资源释放,支持多实例并发 - InputSimulator 静态类重写,所有输入操作委托给共享 InputController,保留原有 API 兼容性,补充 ScanCode、组合键、Unicode 文本、侧键、滚轮等新特性 - 增强组合键、异步输入、Unicode 文本、侧键、水平滚轮、多屏定位、平滑拖动、输入序列等高级功能 - 鼠标和键盘输入支持作用域持有,嵌套与重叠释放安全 - 严格参数校验,异常防护,支持 DPI 感知和物理像素坐标 - 新增 ScanCode 枚举,MouseButton 支持 XButton1/XButton2,保留旧 API 兼容性,移除 keybd_event/mouse_event 相关实现 - 新增 xUnit 测试项目,覆盖主要场景,提供 RecordingBackend 测试后端 - Win32 互操作集中到 Native 命名空间,底层实现优化,代码风格现代化,支持 .NET 8 - README.md 全面更新,详细注释和参数说明

61b9958
XFE工作室室长 <mail@xfegzs.com>
提交于

代码差异

19 个文件 +1889 -385
Modified README.md +148 -21
Added XFEExtension.NetCore.InputSimulator.Tests/ControllerTests.cs +275 -0
Added XFEExtension.NetCore.InputSimulator.Tests/NativeEncodingTests.cs +122 -0
Added XFEExtension.NetCore.InputSimulator.Tests/RecordingBackend.cs +35 -0
Added XFEExtension.NetCore.InputSimulator.Tests/SequenceTests.cs +50 -0
Added XFEExtension.NetCore.InputSimulator.Tests/XFEExtension.NetCore.InputSimulator.Tests.csproj +23 -0
Modified XFEExtension.NetCore.InputSimulator.sln +7 -1
Added XFEExtension.NetCore.InputSimulator/IInputBackend.cs +21 -0
Added XFEExtension.NetCore.InputSimulator/InputController.cs +413 -0
Added XFEExtension.NetCore.InputSimulator/InputSequence.cs +101 -0
Modified XFEExtension.NetCore.InputSimulator/InputSimulator.cs +133 -357
Modified XFEExtension.NetCore.InputSimulator/MouseButton.cs +5 -1
Added XFEExtension.NetCore.InputSimulator/Native/InputValidation.cs +31 -0
Added XFEExtension.NetCore.InputSimulator/Native/KeyboardMapping.cs +52 -0
Added XFEExtension.NetCore.InputSimulator/Native/NativeMethods.cs +77 -0
Added XFEExtension.NetCore.InputSimulator/Native/WindowsDesktop.cs +77 -0
Added XFEExtension.NetCore.InputSimulator/ScanCode.cs +214 -0
Added XFEExtension.NetCore.InputSimulator/SendInputBackend.cs +99 -0
Modified XFEExtension.NetCore.InputSimulator/XFEExtension.NetCore.InputSimulator.csproj +6 -5