如何手动发送键盘扫描码?

tsi*_*ilb 4 c# sendkeys

我正在开发一个需要模拟Windows键的按键的项目.我试过SendKeys.Send无济于事.

具体来说,windows键需要与按钮一致.也就是说,我想发送Windows密钥和加/减.

el2*_*ot2 6

我想补充一点,你通常不太可能在.NET框架中找到类似这些的低级函数.如果你对为什么建议都指向"非C#"函数感到困惑,那么你可能会在P/Invoke上使用一些细节.

基本上有一些方法可以定义C#函数,将它们"绑定"到.NET程序集中不存在的Windows API函数(相反,它们通常用C++实现,可用作标准DLL).该过程被认为是"(Windows)平台调用"(因此是P/Invoke).

最初可能有点不稳定地匹配C++和C#样式调用之间的所有数据类型,但幸运的是,还有其他一些已经铺平了道路.

建议的函数SendInputPInvoke.net上有一个PInvoke包装器.这个包装类在程序集中可用时,允许您调用SendInput,就像它是C#函数一样.

PInvoke.net基本上是用于Windows中众所周知的API调用的PInvoke wiki,并且通常具有API调用的C#/ VB.NET包装器.