次のコードを使用して特定のアプリケーションにキーを送信していますが、一部の PC では機能しません。ほとんどのコンピュータで問題なく動作するため、コード自体は問題ないはずです。一部のコンピューターでは機能しないだけです。キーを何度も送信するか、まったく送信しません。グーグルで調べたところ、一部のマザーボードでよくある問題であることがわかったので、同じことを行うより信頼性の高いコードを実装したいと思います。
更新: 別のウィンドウをアクティブに設定する必要があるため、私のコードでは機能しないため、INPUTSIMULATOR はオプションではありません。(ちょうどそれをテストしました)
次のコードをより信頼性の高い方法で実現するにはどうすればよいですか?
....
Key = Sender.Tag
If Key = "{SPACE}" Then Key = " "
SetActiveWindow(Form1.activewin)
If IsNumeric(Key) Then
SendKeys.Send(Key)
Else
SendKeys.Send(Special & IIf(CapsLock.Checked, UCase(Key), Key))
End If
Application.DoEvents()
....
ありがとう