ホイールのデルタの取得
投稿者 daive  (社会人)
投稿日時
2015/11/3 11:06:42
>SetWindowsHookExでマウスをフックしています
Hookを使わなければ出来ない事かどうか書かれていませんが、
ゲームなどの自動化ツール(俗に云う、升ツール)は、犯罪行為となる場合があります。
正しい用途で使う場合は、
適切な検索ワードで、グールグル検索を行えば情報が出てきます。
.NETであれば、System.Windows.Input 名前空間
>System.Windows.Input >MouseWheelEventArgs クラス > MouseWheelEventArgs プロパティ
MouseWheelEventArgs.Delta
>vb.net2005です
ツールが古すぎです、特別な理由がなければ、
無償版の場合は、
VS2013 / VS2015 Express Editonの用途に応じたもの。
VS2013 / VS2015 Community Editon
を、検討してください。
’
WindowsAPIや、Hook系の古くからの情報は、
「猫でもわかるプログラミング」のサイト情報を、
読替て、理解できる能力が必要かも。
Hookを使わなければ出来ない事かどうか書かれていませんが、
ゲームなどの自動化ツール(俗に云う、升ツール)は、犯罪行為となる場合があります。
正しい用途で使う場合は、
適切な検索ワードで、グールグル検索を行えば情報が出てきます。
.NETであれば、System.Windows.Input 名前空間
>System.Windows.Input >MouseWheelEventArgs クラス > MouseWheelEventArgs プロパティ
MouseWheelEventArgs.Delta
>vb.net2005です
ツールが古すぎです、特別な理由がなければ、
無償版の場合は、
VS2013 / VS2015 Express Editonの用途に応じたもの。
VS2013 / VS2015 Community Editon
を、検討してください。
’
WindowsAPIや、Hook系の古くからの情報は、
「猫でもわかるプログラミング」のサイト情報を、
読替て、理解できる能力が必要かも。
投稿者 魔界の仮面弁士  (社会人)
投稿日時
2015/11/4 07:33:26
> ホイールの回転量がwParamの上位バイトとありますが
上位ワードではなく、上位バイトですか?
> どうやってそれを取り出せばいいのか分かりません
やり方はいろいろありますが、上位の取得なら、\ 演算子で割るか、
ビットシフト演算子でずらせば良いと思います。
たとえば、元の wParam が UInt32 型だとすれば、
Dim 最上位のバイト As UInt32 = wParam \ &H1000000UI
Dim 上位のワード As UInt32 = wParam \ &H10000UI
などで取り出せます。
上位ワードではなく、上位バイトですか?
> どうやってそれを取り出せばいいのか分かりません
やり方はいろいろありますが、上位の取得なら、\ 演算子で割るか、
ビットシフト演算子でずらせば良いと思います。
たとえば、元の wParam が UInt32 型だとすれば、
Dim 最上位のバイト As UInt32 = wParam \ &H1000000UI
Dim 上位のワード As UInt32 = wParam \ &H10000UI
などで取り出せます。
投稿者 rcb400  (社会人)
投稿日時
2015/11/5 07:07:03
魔界の仮面弁士様
> 上位ワードではなく、上位バイトですか?
勘違いしてました
> Dim 上位のワード As UInt32 = wParam \ &H10000UI
結局wParamからはどうしても取れなかったのでMSLLHookStructのmouseDataから
この方法で取得出来ました
ありがとうございました
> 上位ワードではなく、上位バイトですか?
勘違いしてました
> Dim 上位のワード As UInt32 = wParam \ &H10000UI
結局wParamからはどうしても取れなかったのでMSLLHookStructのmouseDataから
この方法で取得出来ました
ありがとうございました
SetWindowsHookExでマウスをフックしています
ホイールの回転量がwParamの上位バイトとありますが、どうやってそれを取り出せばいいのか分かりません
どうすればいいのでしょうか
(一応ホイールメッセージの受け取りまでは出来ているのですが)