[Feature] Executable to show the menu (#276), version 1.2.0.9

This commit is contained in:
Markus Hofknecht 2022-01-01 22:22:18 +01:00
parent 057e2281a6
commit 7e1f646783

View file

@ -35,6 +35,11 @@ namespace SystemTrayMenu.Utilities
List<VirtualKeyCode> virtualKeyCodesModifiers = new List<VirtualKeyCode>(); List<VirtualKeyCode> virtualKeyCodesModifiers = new List<VirtualKeyCode>();
foreach (string key in modifiers.ToString().ToUpperInvariant().Split(", ")) foreach (string key in modifiers.ToString().ToUpperInvariant().Split(", "))
{ {
if (key == "NONE")
{
continue;
}
VirtualKeyCode virtualKeyCode = VirtualKeyCode.LWIN; VirtualKeyCode virtualKeyCode = VirtualKeyCode.LWIN;
switch (key) switch (key)
{ {
@ -51,21 +56,14 @@ namespace SystemTrayMenu.Utilities
} }
VirtualKeyCode virtualKeyCodeHotkey = 0; VirtualKeyCode virtualKeyCodeHotkey = 0;
object virtualKeyCodeHotkeyObject; if (Enum.IsDefined(typeof(VirtualKeyCode), (int)hotkey))
if (!Enum.TryParse(typeof(VirtualKeyCode), hotkey.ToString().ToUpperInvariant(), out virtualKeyCodeHotkeyObject))
{ {
Enum.TryParse(typeof(VirtualKeyCode), $"VK_{hotkey.ToString().ToUpperInvariant()}", out virtualKeyCodeHotkeyObject); virtualKeyCodeHotkey = (VirtualKeyCode)(int)hotkey;
}
if (virtualKeyCodeHotkeyObject != null)
{
virtualKeyCodeHotkey = (VirtualKeyCode)virtualKeyCodeHotkeyObject;
} }
new InputSimulator().Keyboard.ModifiedKeyStroke(virtualKeyCodesModifiers, virtualKeyCodeHotkey); new InputSimulator().Keyboard.ModifiedKeyStroke(virtualKeyCodesModifiers, virtualKeyCodeHotkey);
success = false;
// how to solve with several modifier keys? success = false;
} }
catch (Exception ex) catch (Exception ex)
{ {