VBSからマウスクリックを送信する必要があります。 SendKeysのように。私は全体のGoogleを検索した、それはVBSのためのそのような機能はないようだ。解決策を教えてもらえますか?VBSはマウスクリックを送信しますか?
2
A
答えて
0
これらの作業のどちらもあなたのためならば、私は、その後、Autoitまたはautohotkeyのようなものを使用して、あなたがクリックを行うマクロを書くことができAutoHotkeyをを使用してお勧めし
Dim x
set x=createobject("wscript.shell")
x.sendkeys"{CLICK LEFT,50,60}"
または
x.SendKeys("+{F10}") 'for a right click
をお試しくださいVBScriptからスクリプトを呼び出します。
0
VBScriptだけでは不可能です。 nircmdのようなサードパーティツールを使用する必要があります。マウスを操作するには、setcursor
、setcursorwin
、movecursor
、およびコマンドを使用できます。
例えば、ここでは(左上から測定)座標と右クリックを実行し、画面にカーソルを移動する方法は次のとおりです。
With CreateObject("WScript.Shell")
.Run "nircmd setcursor 100 100", 0, True
.Run "nircmd sendmouse right click", 0, True
End With
は、パラメータ情報のためdocumentationを参照してください。
3
ここでは、VBA for Excelで(相対参照を使用して)ウィンドウに左クリックまたは右クリックを送信するルーチンがあります。 AppActivateと同様に、ウィンドウタイトルが必要です。あなたはSendClickルーチンを呼び出す
引数は次のとおりです。
- ウィンドウタイトル(文字列)
- ボタン(1 =左、2 =右、-1 =移動、マウスのみ、ノークリック) (左側のウィンドウに対する相対位置)
- X
- Y(ウィンドウの上部への相対位置)
お楽しみください!
'Declare mouse events
Public Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Public Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Public Const MOUSEEVENTF_LEFTDOWN = &H2
Public Const MOUSEEVENTF_LEFTUP = &H4
Public Const MOUSEEVENTF_RIGHTDOWN As Long = &H8
Public Const MOUSEEVENTF_RIGHTUP As Long = &H10
'Declare sleep
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
' Window location
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, lpRect As RECT) As Long
Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Public Function WindowHandle(ByVal sTitle As String) As Long
WindowHandle = FindWindow(vbNullString, sTitle)
End Function
Public Sub SendClick(sWnd As String, b As Integer, x As Long, y As Long)
Dim pWnd As Long, pRec As RECT
pWnd = WindowHandle(sWnd)
GetWindowRect pWnd, pRec
SetCursorPos pRec.Left + x, pRec.Top + y
Sleep 50
If b = 2 Then
mouse_event MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0
Sleep 50
mouse_event MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0
ElseIf b <> -1 Then
mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
Sleep 50
mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
End If
End Sub
関連する問題
- 1. Vbsを1行に送信
- 2. vbsでメールを送信
- 3. .vbsを使用してPHPにデータを送信
- 4. Scalaを使用したキーストロークとマウスクリックの送信
- 5. TCPはファンクション再送信ロジックを送信しますか?
- 6. startActivityはブロードキャストを送信しますか?
- 7. メールはローカルで送信しますが、サーバーでは送信しませんか?
- 8. VBSファイルの通信/実行
- 9. に送信しますか?
- 10. openlayer-3のマウスクリックをシミュレートしますか?
- 11. 送信時にフォームでthis.valのみを送信しますか?
- 12. どのOTRSアクションが送信メールを送信しますか?
- 13. フォームの送信ボタンの値を送信していますか?
- 14. 送信ボタンなしでPDFフォームを送信できますか?
- 15. Qt 5.5:ラズベリーパイのタッチスクリーンからマウスクリックを受信しなくなる
- 16. フォームを送信し、新しいページからajaxにフォームデータを送信します
- 17. Cakephp 1.3電子メールコンポーネントは、 "送信元"または "送信者"を使用して送信しません! (ubuntu 10.04!)
- 18. アンドロイドアプリにメッセージを送信しますか?
- 19. Facebookボットメッセンジャーリンクカードを送信しますか?
- 20. フォームをajaxで送信しますか?
- 21. ウェブサーバーにパケットを送信しますか?
- 22. 「コマンド」をリアクションコンポーネントに送信しますか?
- 23. esp8266でマルチキャストを送信しますか?
- 24. プラグインでカスタムフォームを送信しますか?
- 25. アンドロイドアプリケーションでボイスメッセージを送信しますか?
- 26. whatsapi.netでメッセージを送信しますか?
- 27. ベストプラクティスメールを送信していますか?
- 28. addhandlerにパラメータを送信しますか?
- 29. フォームをiframeに送信しますか?
- 30. フォームを送信し、同時にAJAX経由でデータを送信しますか?