在深入钻取网页之后,这是我的代码,遗憾的是,它不会将密钥作为大写发送:/
MapVirtualKey实现:
const uint MAPVK_VK_TO_VSC = 0x00;
const uint MAPVK_VSC_TO_VK = 0x01;
const uint MAPVK_VK_TO_CHAR = 0x02;
const uint MAPVK_VSC_TO_VK_EX = 0x03;
const uint MAPVK_VK_TO_VSC_EX = 0x04;
[DllImport("user32.dll")]
public static extern int MapVirtualKey(uint uCode, uint uMapType);
Run Code Online (Sandbox Code Playgroud)
SendInput实现:
struct INPUT
{
public UInt32 Type;
public MOUSEKEYBDHARDWAREINPUT Data;
Run Code Online (Sandbox Code Playgroud)
}
[StructLayout(LayoutKind.Explicit)]
struct MOUSEKEYBDHARDWAREINPUT
{
[FieldOffset(0)]
public MOUSEINPUT Mouse;
[FieldOffset(0)]
public KEYBDINPUT Keyboard;
[FieldOffset(0)]
public HARDWAREINPUT Hardware;
}
[DllImport("user32.dll", SetLastError = true)]
static extern UInt32 SendInput(UInt32 numberOfInputs, INPUT[] inputs, Int32 sizeOfInputStructure);
Run Code Online (Sandbox Code Playgroud)
现在为方法:
此方法将键发送为字符串,通过远程桌面可以正常工作:
public …Run Code Online (Sandbox Code Playgroud)