!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
■配布元
http://ahkscript.org/download/
■前スレ
AutoHotkey スレッド part26
https://egg.5ch.net/test/read.cgi/software/1524647289/
■日本語解説等
AutoHotkey Wik
http://ahkwiki.net
AutoHotkeyを流行らせるページ(ミラー)
http://ahk.xrea.jp/ (不調時は http://hdd.s300.xrea.com/ahk/ )
AutoHotkeyJp(過去ログdatあり)
http://sites.google.com/site/autohotkeyjp/
Autohotkey日本語ヘルプ(chmファイル)
http://www6.atwiki.jp/eamat/
Autohotkey専用うpろだ
http://ux.getuploader.com/autohotkeyl/
簡易スクリプト掲示板
http://pastebin.com/
■派生版
IronAhk (.NET製、クロスプラットフォーム)
https://github.com/polyethene/IronAHK
AutoHotkey.dll (真のマルチスレッド対応など, AHKLの派生)
http://www.autohotkey.com/board/topic/39588-autohotkeydll/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)
AutoHotkey スレッド part27
■ このスレッドは過去ログ倉庫に格納されています
1名無しさん@お腹いっぱい。 (ワッチョイ 3b70-YIQo)
2019/04/20(土) 23:32:53.28ID:cTmLtZyf0763名無しさん@お腹いっぱい。 (ワッチョイ a70f-FkkX)
2020/01/24(金) 23:17:45.16ID:RQUs/BcE0 >>762
いや、全く各箇所の記述の動作を逐一なんてつもりはないです。
>>現行の環境では動かない といっているように、全く同じ内容で別環境では動いていており
動作の本筋に関しては本質的に間違っている箇所があるとはおもえません。
ただ環境が異なるため、恐らく何かver改訂やOSによる仕様変更のせいで何かが引っかかってると思い、
何か心当たりがあるならそれと照らし合わせもらうために情報を晒したにすぎません。
言葉が足りなくて申し訳ありません。
いや、全く各箇所の記述の動作を逐一なんてつもりはないです。
>>現行の環境では動かない といっているように、全く同じ内容で別環境では動いていており
動作の本筋に関しては本質的に間違っている箇所があるとはおもえません。
ただ環境が異なるため、恐らく何かver改訂やOSによる仕様変更のせいで何かが引っかかってると思い、
何か心当たりがあるならそれと照らし合わせもらうために情報を晒したにすぎません。
言葉が足りなくて申し訳ありません。
764名無しさん@お腹いっぱい。 (ワッチョイWW 87e5-vv9f)
2020/01/24(金) 23:45:49.31ID:jm14eODy0 全直し希望じゃなくても
人が作ったスクリプトを自分は一切手を着けてない状態で貼ってたら丸投げ言われるわな
おいそれと弄れないにしても自分なりに調べて方向性だけでも書いてそれでいけそうか事前に聞くとかさ
環境依存部分はともかくホットキー起動に関してはいくつかの方法は考えられるでしょ
人が作ったスクリプトを自分は一切手を着けてない状態で貼ってたら丸投げ言われるわな
おいそれと弄れないにしても自分なりに調べて方向性だけでも書いてそれでいけそうか事前に聞くとかさ
環境依存部分はともかくホットキー起動に関してはいくつかの方法は考えられるでしょ
765名無しさん@お腹いっぱい。 (ワッチョイ 87b1-XSlX)
2020/01/24(金) 23:58:06.64ID:NZ31hmj/0 >>762
あ、そうですか
あ、そうですか
766名無しさん@お腹いっぱい。 (ワッチョイ a70f-FkkX)
2020/01/25(土) 01:01:04.90ID:mylHY5dE0 >>764
761氏のおっしゃるようにmsgboxで探すのは質問前からもうやっていますし
最終的には
Rotation:
If (A_TimeIdlePhysical>timeout)
Msgbox,%A_TimeIdlePhysical%
Return
で正常な値がでることも確認しているんでお手上げなんですよ
だから
無変換キーを vk1Dsc07B → vk1D みたいな変更のように
仕様変更だったり、もしくば既知のバグのように
知らなきゃどうしようもないようなことに心当たりありませんかと聴いているんです
検索はすでにしていますが見つからないのでここで訪ねている次第です
それにホットキーに関しては本丸が出来ていないのでまだ取り掛かりようがないです
761氏のおっしゃるようにmsgboxで探すのは質問前からもうやっていますし
最終的には
Rotation:
If (A_TimeIdlePhysical>timeout)
Msgbox,%A_TimeIdlePhysical%
Return
で正常な値がでることも確認しているんでお手上げなんですよ
だから
無変換キーを vk1Dsc07B → vk1D みたいな変更のように
仕様変更だったり、もしくば既知のバグのように
知らなきゃどうしようもないようなことに心当たりありませんかと聴いているんです
検索はすでにしていますが見つからないのでここで訪ねている次第です
それにホットキーに関しては本丸が出来ていないのでまだ取り掛かりようがないです
767名無しさん@お腹いっぱい。 (ワッチョイ a70a-V1vN)
2020/01/25(土) 02:51:12.13ID:7N2llbO10 >>766
そもそも謎の前環境でも動くわけが無い
> #InstallKeybdHook
> If (A_TimeIdlePhysical>timeout)
> で正常な値がでることも確認しているんでお手上げなんですよ
正常な値なわけが無い、A_TimeIdlePhysicalは対応するフックで動作するので
「マウスフック」を使わなければマウスの動作は無視される
> カーソルを時計/半時計に回ると左右に動くというものなんですが、
> key=Left
> key=Right
> Send,{%key% %freq%}
クリックに見えますが?
そもそも謎の前環境でも動くわけが無い
> #InstallKeybdHook
> If (A_TimeIdlePhysical>timeout)
> で正常な値がでることも確認しているんでお手上げなんですよ
正常な値なわけが無い、A_TimeIdlePhysicalは対応するフックで動作するので
「マウスフック」を使わなければマウスの動作は無視される
> カーソルを時計/半時計に回ると左右に動くというものなんですが、
> key=Left
> key=Right
> Send,{%key% %freq%}
クリックに見えますが?
768名無しさん@お腹いっぱい。 (ワッチョイ a70a-V1vN)
2020/01/25(土) 07:14:29.13ID:7N2llbO10769名無しさん@お腹いっぱい。 (ワッチョイ 7ff2-Jq7D)
2020/01/25(土) 15:37:47.39ID:jE5Psj+a0 >>766
MsgBoxよりもTooltipの方がいいと思うよ
うちの環境だと、とりあえず If (A_TimeIdlePhysical〜の2行をコメントアウトして、strに初期値を入れたら動く様になった
TooltipでA_TimeIdlePhysicalを表示させたら、マウスを動かしても上がり続けたので、いっそのことPhysicalとったらリセットされるようになったよ
ただのTimeOut判定だから無くてもさほど困らないだろうし、A_TimeIdlePhysicalにこだわらなくても、自前のカウンターって手もあるね
あと、キー仕様を疑うなら、Sendの行付近に %key% をtooltipで表示して、表示されたキーを押すだけの別スクリプトで試してみるべきだよ
MsgBoxよりもTooltipの方がいいと思うよ
うちの環境だと、とりあえず If (A_TimeIdlePhysical〜の2行をコメントアウトして、strに初期値を入れたら動く様になった
TooltipでA_TimeIdlePhysicalを表示させたら、マウスを動かしても上がり続けたので、いっそのことPhysicalとったらリセットされるようになったよ
ただのTimeOut判定だから無くてもさほど困らないだろうし、A_TimeIdlePhysicalにこだわらなくても、自前のカウンターって手もあるね
あと、キー仕様を疑うなら、Sendの行付近に %key% をtooltipで表示して、表示されたキーを押すだけの別スクリプトで試してみるべきだよ
770名無しさん@お腹いっぱい。 (バッミングク MM4f-bNzE)
2020/01/27(月) 12:37:39.85ID:EYLpIN0yM エクスプローラーで選択中のファイルが、特定の拡張子だったときだけサクラエディタで開きたいのですが、うまく動いてくれません。
どうすればよろしいでしょうか、、、
#ifWinActive ahk_exe explorer.exe
;ctrl+Eでサクラエディタで起動
^e::
Send, ^c
Sleep,100
if ( %Clipboard% = "*.拡張子" ){
Run, C:\Program Files\sakura\sakura.exe %Clipboard%
}
else{
Send, ^{e}
}
return
#ifWinActive
どうすればよろしいでしょうか、、、
#ifWinActive ahk_exe explorer.exe
;ctrl+Eでサクラエディタで起動
^e::
Send, ^c
Sleep,100
if ( %Clipboard% = "*.拡張子" ){
Run, C:\Program Files\sakura\sakura.exe %Clipboard%
}
else{
Send, ^{e}
}
return
#ifWinActive
771名無しさん@お腹いっぱい。 (ワッチョイ 8711-qKTN)
2020/01/27(月) 13:50:13.61ID:ILzVRi6q0 それは「*.拡張子」と完全一致する時しか真にならないから
772名無しさん@お腹いっぱい。 (ワッチョイWW 87e5-vv9f)
2020/01/27(月) 14:35:43.55ID:PCCRfwfV0 instrかstringgetposかregexmatchを使う
いずれにしてもワイルドカードは使えないので
正確にやるならお尻から3文字切り出してから比較などの工夫が必要
いずれにしてもワイルドカードは使えないので
正確にやるならお尻から3文字切り出してから比較などの工夫が必要
773名無しさん@お腹いっぱい。 (ワッチョイWW 5ffa-TZXF)
2020/01/27(月) 16:02:46.81ID:o+dKNXE50 1
セットタイトルマッチモードの仕様が書いてないからどれで突き合わせてるかわからん
2
IF文中にワイルドカードって使えたっけ?
使えたらごめんよ
でもその条件ならIF contains式でいいんちゃう?
3
そもそもの話としてAutohotkeyのClipboard関係は信用が置けないので一工夫がいるのも気をつける
測ってみたところ300ms後にクリップボードがうまるようなファイルもあった
セットタイトルマッチモードの仕様が書いてないからどれで突き合わせてるかわからん
2
IF文中にワイルドカードって使えたっけ?
使えたらごめんよ
でもその条件ならIF contains式でいいんちゃう?
3
そもそもの話としてAutohotkeyのClipboard関係は信用が置けないので一工夫がいるのも気をつける
測ってみたところ300ms後にクリップボードがうまるようなファイルもあった
774名無しさん@お腹いっぱい。 (ワッチョイWW 879b-bNzE)
2020/01/27(月) 18:30:10.90ID:dv4SnxNn0 皆様ご回答ありがとうございます。
ワイルドカード使えなかったの知りませんでした、すみません。
おっしゃるとおり、拡張子の3文字を取り出すstringright関数でできました。
大変助かりました。
ワイルドカード使えなかったの知りませんでした、すみません。
おっしゃるとおり、拡張子の3文字を取り出すstringright関数でできました。
大変助かりました。
775名無しさん@お腹いっぱい。 (ワッチョイ 870d-V1vN)
2020/01/28(火) 04:02:03.76ID:uvycofvT0776名無しさん@お腹いっぱい。 (ワッチョイ 870d-V1vN)
2020/01/28(火) 04:22:38.07ID:uvycofvT0777名無しさん@お腹いっぱい。 (ワッチョイWW 87e5-vv9f)
2020/01/28(火) 09:13:48.16ID:N1Ohwwsr0 RegExでやるならループ使わなくても最初の行の最後のドット以降の文字を切り出せるので
もうちょい圧縮はできそう
もうちょい圧縮はできそう
778名無しさん@お腹いっぱい。 (ワッチョイWW ff73-b9Ji)
2020/01/28(火) 09:18:08.14ID:VrzJrfuI0 4文字取り出せばいいだけ
といってもRegEx使ったほうがいいと思うけど
といってもRegEx使ったほうがいいと思うけど
779名無しさん@お腹いっぱい。 (ワッチョイ 870d-V1vN)
2020/01/28(火) 09:58:42.42ID:uvycofvT0780名無しさん@お腹いっぱい。 (ワッチョイ ffbe-V1vN)
2020/01/28(火) 10:07:38.51ID:S4ZqAouK0 Forループ版
Exts := "ahk,bat,ps1" ;コンマ区切り
Send ^c
For i, v in StrSplit(Clipboard, "`n") {
SplitPath, v,,, Ext
if Ext contains %Exts% ;in不可
MsgBox, %v%
}
Exts := "ahk,bat,ps1" ;コンマ区切り
Send ^c
For i, v in StrSplit(Clipboard, "`n") {
SplitPath, v,,, Ext
if Ext contains %Exts% ;in不可
MsgBox, %v%
}
781名無しさん@お腹いっぱい。 (ワッチョイ 870d-V1vN)
2020/01/28(火) 10:24:34.42ID:uvycofvT0 >>780
部分一致は駄目でしょうが
部分一致は駄目でしょうが
782名無しさん@お腹いっぱい。 (ワッチョイWW ff73-b9Ji)
2020/01/28(火) 11:47:45.97ID:VrzJrfuI0783名無しさん@お腹いっぱい。 (ワントンキン MM3f-VQnw)
2020/01/28(火) 13:50:01.87ID:27uwmOduM 当人しか使わない個人的なスクリプトに関しては無理に完璧を記さなくても限られた状況下でだけ動けばいい場合も多いし
利用者本人が想定してないことまで無理に盛り込まんでもいいとは思うね
完全なコードを他人が丸ごと貼ってやっても理解できないことの方が多いだろうし
細かいとこは不完全でも本人が考えて書いたものを問題を感じた時に改修してく感じでいいんでない
多分そういう前提でヒントレスしてる人が多いと思う
利用者本人が想定してないことまで無理に盛り込まんでもいいとは思うね
完全なコードを他人が丸ごと貼ってやっても理解できないことの方が多いだろうし
細かいとこは不完全でも本人が考えて書いたものを問題を感じた時に改修してく感じでいいんでない
多分そういう前提でヒントレスしてる人が多いと思う
784名無しさん@お腹いっぱい。 (ワッチョイ 0705-V1vN)
2020/01/28(火) 14:58:38.88ID:rsW/ZSX50 USキーボードは変換・無変換無双ができないから
大・大・大・嫌いだわ
大・大・大・嫌いだわ
785名無しさん@お腹いっぱい。 (オッペケ Sr7b-TZXF)
2020/01/28(火) 18:46:04.61ID:EA3Cj+61r 動きゃいいだろ
786名無しさん@お腹いっぱい。 (ワッチョイWW 5f6f-GzfQ)
2020/01/28(火) 19:23:28.69ID:Ec0nt9VJ0787名無しさん@お腹いっぱい。 (ワッチョイWW c7b1-K+7m)
2020/01/28(火) 20:07:29.82ID:ockOGIFp0 質問です。こういう転記作業ってAHKで出来るのでしょうか?
転記元Excelファイル
転記先IEのシステム
Excelファイルから任意のセルをコピーして、IEの入力欄に貼り付け、
登録ボタンを押下後、またExcelに戻って先程の一行下のセルをコピーして…
の繰り返しの作業です。
なんとなく出来そうな気はするのですが、AHKのスキルってどうやって
勉強したら身に付きますか?
転記元Excelファイル
転記先IEのシステム
Excelファイルから任意のセルをコピーして、IEの入力欄に貼り付け、
登録ボタンを押下後、またExcelに戻って先程の一行下のセルをコピーして…
の繰り返しの作業です。
なんとなく出来そうな気はするのですが、AHKのスキルってどうやって
勉強したら身に付きますか?
788名無しさん@お腹いっぱい。 (ワッチョイ a7fc-Jq7D)
2020/01/28(火) 20:50:59.82ID:n9Nej2Np0789名無しさん@お腹いっぱい。 (ワッチョイ a7dc-D7No)
2020/01/28(火) 20:58:15.96ID:hIp7G51I0 そんなのマクロでやりなさいって話だわ
790名無しさん@お腹いっぱい。 (ワッチョイWW 87e5-MXRD)
2020/01/28(火) 21:16:05.75ID:N1Ohwwsr0 uwscとかのほうが得意そうな案件ではあるな
791名無しさん@お腹いっぱい。 (ドコグロ MM8b-VJNl)
2020/01/28(火) 21:34:48.42ID:3FNQgvymM >>787
その作業は画面見ずにキーボードだけで完結できる?出来るのであれば、その操作通りにsendし、適宜sleepするだけで完成だ。
マウス操作必須だったり、条件で動作が変化するなら、その箇所に処理を加えたり、その箇所の自動化を諦めると良い。
その作業は画面見ずにキーボードだけで完結できる?出来るのであれば、その操作通りにsendし、適宜sleepするだけで完成だ。
マウス操作必須だったり、条件で動作が変化するなら、その箇所に処理を加えたり、その箇所の自動化を諦めると良い。
792名無しさん@お腹いっぱい。 (ワッチョイ 870d-V1vN)
2020/01/28(火) 21:36:17.98ID:uvycofvT0793名無しさん@お腹いっぱい。 (オッペケ Srbd-CNbV)
2020/01/29(水) 09:18:20.40ID:QBb2aEnKr HOOK表記なくてもループにゃならんぞ
やってみ?
やってみ?
794名無しさん@お腹いっぱい。 (ワッチョイ 6911-unxX)
2020/01/29(水) 10:54:03.74ID:DzR487gV0 「無限」をはしょるのはすごくもやもやする
795名無しさん@お腹いっぱい。 (ワッチョイ 6a07-i7CI)
2020/01/29(水) 11:15:57.58ID:1KxMz8CE0 OutputVar := GetKeyState(Shift, P)
ToolTip, 【%OutputVar%】, 0, 0
1か0が入ると思ったのに空っぽのように見えるのは
何か根本的に間違えているのでしょうか
ToolTip, 【%OutputVar%】, 0, 0
1か0が入ると思ったのに空っぽのように見えるのは
何か根本的に間違えているのでしょうか
796795 (ワッチョイ 6a07-i7CI)
2020/01/29(水) 11:19:05.97ID:1KxMz8CE0 OutputVar := GetKeyState("Shift", P)
こうみたいでした。
済みません。
こうみたいでした。
済みません。
797名無しさん@お腹いっぱい。 (ワッチョイ 66ac-unxX)
2020/01/29(水) 11:43:53.12ID:pPBTsOGr0 厳密に言うと、"P"もだよ
Pだと変数扱いだから、多分、=0で、記述が無効になってる
Pだと変数扱いだから、多分、=0で、記述が無効になってる
798名無しさん@お腹いっぱい。 (ニククエ 6a07-i7CI)
2020/01/29(水) 12:01:24.36ID:1KxMz8CE0NIKU799名無しさん@お腹いっぱい。 (ワッチョイ 6632-unxX)
2020/01/30(木) 03:03:10.18ID:hLaC5ZDt0 質問です。
ホットキー指定で~をつけると、イベントを乗っ取らずそのままシステムに通しますが
その後の処理で、システムに通さないよう分岐する方法はありますか?
イメージは以下のような感じです
~RButton Up::
MouseGetPos, mx, my, hwnd, ClassNN
if ( ClassNN <> "ListView321" )
return ; そのままシステムに通してなにもしない
; 以下コンテキストメニューを表示してシステムに通さない
ホットキー指定で~をつけると、イベントを乗っ取らずそのままシステムに通しますが
その後の処理で、システムに通さないよう分岐する方法はありますか?
イメージは以下のような感じです
~RButton Up::
MouseGetPos, mx, my, hwnd, ClassNN
if ( ClassNN <> "ListView321" )
return ; そのままシステムに通してなにもしない
; 以下コンテキストメニューを表示してシステムに通さない
800名無しさん@お腹いっぱい。 (ワッチョイWW 5de5-a91N)
2020/01/30(木) 03:06:06.96ID:yfl1OPJr0 ない
801名無しさん@お腹いっぱい。 (ワッチョイ 59fc-unxX)
2020/01/30(木) 03:25:52.11ID:yIeYXuFa0802名無しさん@お腹いっぱい。 (ワッチョイ 5d0d-Y6bJ)
2020/01/30(木) 06:48:31.85ID:2Pg1PDf70 >>799
ホットキーの割り当て変更 か 自前でSend
Upを設定すると自動でDownも乗っ取られるから
~つけない場合ちょっと工夫が必要になる
~RButton Up::
if (Flag := !Flag) {
Hotkey, RButton Up, ~RButton Up
ToolTip そのままシステムに通してなにもしない
} else {
Hotkey, ~RButton Up
ToolTip 横取り
}
return
; ------
RButton::
if (!Flag)
Send, {RButton Down}
return
RButton Up::
if (Flag := !Flag) {
Send, {RButton Up}
ToolTip そのままシステムに通してなにもしない
} else
ToolTip 横取り
return
ホットキーの割り当て変更 か 自前でSend
Upを設定すると自動でDownも乗っ取られるから
~つけない場合ちょっと工夫が必要になる
~RButton Up::
if (Flag := !Flag) {
Hotkey, RButton Up, ~RButton Up
ToolTip そのままシステムに通してなにもしない
} else {
Hotkey, ~RButton Up
ToolTip 横取り
}
return
; ------
RButton::
if (!Flag)
Send, {RButton Down}
return
RButton Up::
if (Flag := !Flag) {
Send, {RButton Up}
ToolTip そのままシステムに通してなにもしない
} else
ToolTip 横取り
return
803名無しさん@お腹いっぱい。 (ワッチョイ 66ac-unxX)
2020/01/30(木) 11:44:29.07ID:lhlDpunT0 >>799
#If 使って事前にはじくとか
#If (CNN()="ListView321")
RButton Up::
Tooltip, Listview
return
CNN()
{
MouseGetPos, mx, my, hwnd, ClassNN
return ClassNN
}
#If 使って事前にはじくとか
#If (CNN()="ListView321")
RButton Up::
Tooltip, Listview
return
CNN()
{
MouseGetPos, mx, my, hwnd, ClassNN
return ClassNN
}
804名無しさん@お腹いっぱい。 (ワッチョイ 6632-unxX)
2020/01/30(木) 13:00:18.71ID:hLaC5ZDt0805名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/01/31(金) 15:15:41.79ID:Qxhc6BbA0 質問です
MouseGestureL が常に管理者権限で動いている状況下で
後から任意のタイミングで実行するスクリプトから
マウスのボタンの押し下げを知りたい場合に
MouseGestureL の中に "適当な関数名" でGetKeyStateする箇所を
あらかじめ準備しておき、自前スクリプト側で
SendMessage, DllCall("RegisterWindowMessage", "Str", "適当な関数名", "UInt"),,,,
C:\AutoHotkey.ahk ahk_class AutoHotkey
こんな感じに呼び出していました
最近OSを変えるまではUACを全部切ってたのでこれで問題ありませんでしたが
切らずに運用してみたところ自前スクリプトも管理者権限にしないと
アプリ間通信自体ができないみたいで困ってます
MouseGestureL が常に管理者権限で動いている状況下で
後から任意のタイミングで実行するスクリプトから
マウスのボタンの押し下げを知りたい場合に
MouseGestureL の中に "適当な関数名" でGetKeyStateする箇所を
あらかじめ準備しておき、自前スクリプト側で
SendMessage, DllCall("RegisterWindowMessage", "Str", "適当な関数名", "UInt"),,,,
C:\AutoHotkey.ahk ahk_class AutoHotkey
こんな感じに呼び出していました
最近OSを変えるまではUACを全部切ってたのでこれで問題ありませんでしたが
切らずに運用してみたところ自前スクリプトも管理者権限にしないと
アプリ間通信自体ができないみたいで困ってます
806名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/01/31(金) 15:16:15.19ID:Qxhc6BbA0 情報後出しにならないように使用環境も書きます
右ボタン、中ボタン、左ボタンはそのまま、それ以外の残りの5ボタンを
F16,F17,F18,F19,F20キーにマウスドライバ側で割り当ててあり
MouseGestureL側ではこの5ボタンでジェスチャー認識させてます
便宜上子スクリプトと呼びましたが、任意のタイミングで
個別に実行されるスクリプトでMouseGestureLから実行するわけではないです
コンパイルして特定の拡張子と関連付けしてあり
ファイル実行時にこのマウスボタンが同時に押されていたらこのアプリを
こっちのボタンならこのアプリをといった感じでラッパーとして機能させてます
特にアプリ間通信にこだわらず
一般ユーザ権限の子スクリプトがマウスのボタンの押し下げを知る方法ならなんでもいいです
よろしくお願いします
右ボタン、中ボタン、左ボタンはそのまま、それ以外の残りの5ボタンを
F16,F17,F18,F19,F20キーにマウスドライバ側で割り当ててあり
MouseGestureL側ではこの5ボタンでジェスチャー認識させてます
便宜上子スクリプトと呼びましたが、任意のタイミングで
個別に実行されるスクリプトでMouseGestureLから実行するわけではないです
コンパイルして特定の拡張子と関連付けしてあり
ファイル実行時にこのマウスボタンが同時に押されていたらこのアプリを
こっちのボタンならこのアプリをといった感じでラッパーとして機能させてます
特にアプリ間通信にこだわらず
一般ユーザ権限の子スクリプトがマウスのボタンの押し下げを知る方法ならなんでもいいです
よろしくお願いします
807名無しさん@お腹いっぱい。 (ワッチョイWW 5de5-SuLP)
2020/01/31(金) 17:22:07.16ID:s1HRUi470 OSとahkのバージョンは?
win10からはadmin←→非admin間制御系が分断されてるので
UAC切ってても管理者権限で動いてるahkからは一般的権限のアプリの制御ができなくなってるはずだけど
そもそもMouseGestureL はまともに機能しているん?
win10からはadmin←→非admin間制御系が分断されてるので
UAC切ってても管理者権限で動いてるahkからは一般的権限のアプリの制御ができなくなってるはずだけど
そもそもMouseGestureL はまともに機能しているん?
808名無しさん@お腹いっぱい。 (ワッチョイ 5936-unxX)
2020/01/31(金) 17:44:49.94ID:SUSq+Cgw0 >UAC切ってても管理者権限で動いてるahkからは一般的権限のアプリの制御ができなくなってるはずだけど
質問者じゃないけどこれ何言ってんだ?
Win10で管理者権限で動いてるahkから一般権限のアプリは制御できるぞ
一般権限で動いてるahkから管理者権限で動いてるアプリの制御は当然出来ないけど
質問者じゃないけどこれ何言ってんだ?
Win10で管理者権限で動いてるahkから一般権限のアプリは制御できるぞ
一般権限で動いてるahkから管理者権限で動いてるアプリの制御は当然出来ないけど
809名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/01/31(金) 18:15:40.06ID:Qxhc6BbA0 レスありがとうございます
OS:Windows10 Home
AHK:v1.1.32.00 - November 24, 2019
MouseGestureL.ahk:Version 1.32 (2020/01/28)
UACは切らずに運用してます
MouseGestureL は管理者権限で起動してます
他のアプリで意図的に管理者権限で起動しているものは
システム監視系のアプリぐらいですが、そのアプリに対しても
一般ユーザ権限のアプリでも問題なくMouseGestureLで制御できています
MouseGestureL から何かを起動する場合はRunは使用せずに
ComObjCreateを利用して一般権限で起動するようにしています
OS:Windows10 Home
AHK:v1.1.32.00 - November 24, 2019
MouseGestureL.ahk:Version 1.32 (2020/01/28)
UACは切らずに運用してます
MouseGestureL は管理者権限で起動してます
他のアプリで意図的に管理者権限で起動しているものは
システム監視系のアプリぐらいですが、そのアプリに対しても
一般ユーザ権限のアプリでも問題なくMouseGestureLで制御できています
MouseGestureL から何かを起動する場合はRunは使用せずに
ComObjCreateを利用して一般権限で起動するようにしています
810名無しさん@お腹いっぱい。 (アウアウウーT Sa21-RCOk)
2020/01/31(金) 21:36:49.69ID:v8RZrb+0a ファイルかクリップボードを経由してやりとりするというのはどう
たとえば
クリップボードを監視して値を要求する特定の文字列が入っていたら
クリップボードに要求された値を返すとか
値を得るタイミングはもっさりするだろうけど
たとえば
クリップボードを監視して値を要求する特定の文字列が入っていたら
クリップボードに要求された値を返すとか
値を得るタイミングはもっさりするだろうけど
811名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/01/31(金) 23:57:38.75ID:Qxhc6BbA0 やっぱりその辺りを経由するしか方法ないですかね
MouseGestureLはとてもいいスクリプトなので
監視ルーチンを寄生させるとかは避けたかったですが
ファイルやクリップボード経由しか手段がないならば
マウスボタンの押し始めタイミング自体は
改変しなくともMouseGestureL側で検知できると思うので
ボタンの押し始めに所定の位置にあるファイル名xxxをyyyにリネーム
ボタンが離されたらファイル名をxxxに戻す
子スクリプトは起動時にそのファイル名をチェック
とかの方法でやってみようかと思いました
アドバイスありがとうございました!
MouseGestureLはとてもいいスクリプトなので
監視ルーチンを寄生させるとかは避けたかったですが
ファイルやクリップボード経由しか手段がないならば
マウスボタンの押し始めタイミング自体は
改変しなくともMouseGestureL側で検知できると思うので
ボタンの押し始めに所定の位置にあるファイル名xxxをyyyにリネーム
ボタンが離されたらファイル名をxxxに戻す
子スクリプトは起動時にそのファイル名をチェック
とかの方法でやってみようかと思いました
アドバイスありがとうございました!
812名無しさん@お腹いっぱい。 (ワッチョイ ad05-Y6bJ)
2020/02/01(土) 00:43:32.08ID:ka52WFEb0 マウス操作を記録する機能は持ってないからなあ
AHKスクリプトにするツールもない
AHKスクリプトにするツールもない
813名無しさん@お腹いっぱい。 (ワッチョイ 5d0d-Y6bJ)
2020/02/01(土) 01:59:53.61ID:2stcDCgC0814名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/02/01(土) 06:49:34.23ID:RcLxcGeu0 やりたいことは>>806に書いた通りです
>個別に実行されるスクリプトでMouseGestureLから実行するわけではないです
>コンパイルして特定の拡張子と関連付けしてあり
>ファイル実行時にこのマウスボタンが同時に押されていたらこのアプリを
>こっちのボタンならこのアプリをといった感じでラッパーとして機能させてます
MouseGestureLとは一切関係なく、ある拡張子のファイルを実行したときに
たとえば拡張子.txtならば本来のメモ帳の前にシステム側から関連付け設定で呼び出され
8ボタンマウスの5つの拡張ボタンのどれかを押す押さないで
実際に実行するアプリをメモ帳から他の物へ変更するラッパーを作ってて
管理者権限でMouseGestureLがつかんでるマウスボタン押下の情報を
一般権限しかもたないこのラッパーに伝達したい、というものです
>個別に実行されるスクリプトでMouseGestureLから実行するわけではないです
>コンパイルして特定の拡張子と関連付けしてあり
>ファイル実行時にこのマウスボタンが同時に押されていたらこのアプリを
>こっちのボタンならこのアプリをといった感じでラッパーとして機能させてます
MouseGestureLとは一切関係なく、ある拡張子のファイルを実行したときに
たとえば拡張子.txtならば本来のメモ帳の前にシステム側から関連付け設定で呼び出され
8ボタンマウスの5つの拡張ボタンのどれかを押す押さないで
実際に実行するアプリをメモ帳から他の物へ変更するラッパーを作ってて
管理者権限でMouseGestureLがつかんでるマウスボタン押下の情報を
一般権限しかもたないこのラッパーに伝達したい、というものです
815名無しさん@お腹いっぱい。 (ワッチョイ 7db1-b3gp)
2020/02/01(土) 08:24:10.05ID:+/Lmpd8T0 未だに何やりたいのかがハッキリと分からないけど、
ファイルをダブルクリック(またはエンターキー押下)した"後"に開くアプリをいくつかの選択肢から選びたい、ってこと?
ならMGL側じゃなく実行するスクリプト側でGetKeyStateして何ボタンが押されてるか取得すればいいのでは?
管理者権限とか一般権限とかの話はよく分からんので適当
ファイルをダブルクリック(またはエンターキー押下)した"後"に開くアプリをいくつかの選択肢から選びたい、ってこと?
ならMGL側じゃなく実行するスクリプト側でGetKeyStateして何ボタンが押されてるか取得すればいいのでは?
管理者権限とか一般権限とかの話はよく分からんので適当
816名無しさん@お腹いっぱい。 (ワッチョイ c558-unxX)
2020/02/01(土) 10:26:51.57ID:bRlwZEbJ0817名無しさん@お腹いっぱい。 (ワッチョイ c558-unxX)
2020/02/01(土) 10:34:43.14ID:bRlwZEbJ0 逆だった
自前⇒MGLね
自前⇒MGLね
818名無しさん@お腹いっぱい。 (ワッチョイ 5994-unxX)
2020/02/01(土) 14:06:32.32ID:3oSMwgZs0 ラッパーって何だYO!
819名無しさん@お腹いっぱい。 (ワッチョイWW 2afa-CNbV)
2020/02/01(土) 16:04:24.14ID:ONoXH+kb0 なんか独自関連付けしたいって話に見える
そんならうぷろだに前俺が作った独自関連付けプラグインがあるからそれ見てみりゃいい
そんならうぷろだに前俺が作った独自関連付けプラグインがあるからそれ見てみりゃいい
820名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/02/01(土) 20:38:42.73ID:RcLxcGeu0 説明が拙くて申し訳ありません
目的は関連付けされたコンパイル済みスクリプトの動作ではありますが
そこ自体はちゃんと動いてるので、質問したいのはこのスクリプトが実行される瞬間に
「どのマウスボタンが同時に押されていたか知りたい」ということです
x1 := GetKeyState("XButton1", "P")
x2 := GetKeyState("XButton2", "P")
Msgbox, %x1% %x2%
Return
このスクリプトをマウスの拡張ボタンを押しながらダブルクリックしても
MouseGestureL が動いていると、GetKeyStateではボタンの状態を見れませんでした
MouseGestureL を終了させると拡張1・2のボタンがそれぞれ 1 となります
目的は関連付けされたコンパイル済みスクリプトの動作ではありますが
そこ自体はちゃんと動いてるので、質問したいのはこのスクリプトが実行される瞬間に
「どのマウスボタンが同時に押されていたか知りたい」ということです
x1 := GetKeyState("XButton1", "P")
x2 := GetKeyState("XButton2", "P")
Msgbox, %x1% %x2%
Return
このスクリプトをマウスの拡張ボタンを押しながらダブルクリックしても
MouseGestureL が動いていると、GetKeyStateではボタンの状態を見れませんでした
MouseGestureL を終了させると拡張1・2のボタンがそれぞれ 1 となります
821名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/02/01(土) 20:39:30.24ID:RcLxcGeu0 そこでスクリプトをこうして
DetectHiddenWindows, On
SendMessage, DllCall("RegisterWindowMessage", "Str", "何か適当な関数名", "UInt"),,,, "ここはMouseGestureLのスクリプトまでのパス" ahk_class AutoHotkey
x1 := (ErrorLevel & 2)
x2 := (ErrorLevel & 1)
Msgbox, %x1% %x2%
Return
更にMouseGestureL側のAuto-executeセクションに
"何か適当な関数名" := DllCall( "RegisterWindowMessage", "Str", "WM_USER_XBUTTONREQ", "UInt" )
OnMessage( WM_USER_XBUTTONREQ, "RsvMessage" )
こう書いて、あとはMouseGestureLのどこかに下の関数を定義しておけば
RsvMessage( wp, lp, msg, hWnd ) {
global WM_USER_XBUTTONREQ
r := 0
If( msg == WM_USER_XBUTTONREQ )
{
If GetKeyState("XButton1", "P")
r += 2
If GetKeyState("XButton1", "P")
r += 1
}
Return r
}
先ほどの子スクリプトはアプリ間でうまく通信してちゃんと
マウスボタンの押し下げを検知します
DetectHiddenWindows, On
SendMessage, DllCall("RegisterWindowMessage", "Str", "何か適当な関数名", "UInt"),,,, "ここはMouseGestureLのスクリプトまでのパス" ahk_class AutoHotkey
x1 := (ErrorLevel & 2)
x2 := (ErrorLevel & 1)
Msgbox, %x1% %x2%
Return
更にMouseGestureL側のAuto-executeセクションに
"何か適当な関数名" := DllCall( "RegisterWindowMessage", "Str", "WM_USER_XBUTTONREQ", "UInt" )
OnMessage( WM_USER_XBUTTONREQ, "RsvMessage" )
こう書いて、あとはMouseGestureLのどこかに下の関数を定義しておけば
RsvMessage( wp, lp, msg, hWnd ) {
global WM_USER_XBUTTONREQ
r := 0
If( msg == WM_USER_XBUTTONREQ )
{
If GetKeyState("XButton1", "P")
r += 2
If GetKeyState("XButton1", "P")
r += 1
}
Return r
}
先ほどの子スクリプトはアプリ間でうまく通信してちゃんと
マウスボタンの押し下げを検知します
822名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/02/01(土) 20:40:45.88ID:RcLxcGeu0 ただ、OSを入れ替えたのを機にもうさすがにUACを全オフするのはないかなと思い
MouseGestureLを除いて全部一般の権限で使ったらアプリ間で通信できなくなり
代替え案はありませんか?と質問した次第です
現在もMouseGestureLを一般権限で動かせばちゃんと動作しますが
それだと管理者権限でしか動かないアプリを制御できないので案としては除外してます
MouseGestureLを除いて全部一般の権限で使ったらアプリ間で通信できなくなり
代替え案はありませんか?と質問した次第です
現在もMouseGestureLを一般権限で動かせばちゃんと動作しますが
それだと管理者権限でしか動かないアプリを制御できないので案としては除外してます
823名無しさん@お腹いっぱい。 (ワッチョイ 5957-unxX)
2020/02/01(土) 20:52:59.53ID:4DvAyfEb0 >>822
じゃあそのスクリプトも管理者権限で動かせばいいじゃん?
じゃあそのスクリプトも管理者権限で動かせばいいじゃん?
824名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/02/01(土) 21:25:17.41ID:RcLxcGeu0 >>806,814,820に書いてある通りこれはファイルに関連付けされて動作するスクリプトなので
プロパティから「管理者としてこのプログラムを実行する」にレ点を入れてしまうと
ファイルを開くたびに管理者権限での動作を許可するか確認するダイアログが出るので
とてもとてもやりたくないのです(txt,zip,jpgなど殆どをスクリプト経由にしてます)
タスクスケジューラでタスクを事前に定義しておき
そのタスクの「全般」タグにある「最高位の特権で実行する」にレ点を入れて
Run, C:\Windows\System32\schtasks.exe /run /tn "事前に定義したタスクの名前"
と実行させてUACのメッセージを回避する方法もすでに試してはいたのですが
そうすると実行する度に変化する引数をスクリプトまで渡す方法が見つからずに断念してました
プロパティから「管理者としてこのプログラムを実行する」にレ点を入れてしまうと
ファイルを開くたびに管理者権限での動作を許可するか確認するダイアログが出るので
とてもとてもやりたくないのです(txt,zip,jpgなど殆どをスクリプト経由にしてます)
タスクスケジューラでタスクを事前に定義しておき
そのタスクの「全般」タグにある「最高位の特権で実行する」にレ点を入れて
Run, C:\Windows\System32\schtasks.exe /run /tn "事前に定義したタスクの名前"
と実行させてUACのメッセージを回避する方法もすでに試してはいたのですが
そうすると実行する度に変化する引数をスクリプトまで渡す方法が見つからずに断念してました
825名無しさん@お腹いっぱい。 (ワッチョイ 5957-unxX)
2020/02/01(土) 21:37:19.74ID:4DvAyfEb0 >>824
管理者権限での動作を許可するか確認するダイアログはUACレベル下げれば出ないように出来る
俺もいくつか必要に応じて管理者権限で実行してるからUACの設定下げて確認ダイアログは出ないようにしてる
所詮UACなんて初心者に対する注意喚起でしかないんだから通知オフで何も問題はない
どのプログラムが管理者権限で動いているかをしっかり把握できてりゃいいだけ
管理者権限での動作を許可するか確認するダイアログはUACレベル下げれば出ないように出来る
俺もいくつか必要に応じて管理者権限で実行してるからUACの設定下げて確認ダイアログは出ないようにしてる
所詮UACなんて初心者に対する注意喚起でしかないんだから通知オフで何も問題はない
どのプログラムが管理者権限で動いているかをしっかり把握できてりゃいいだけ
826名無しさん@お腹いっぱい。 (ワッチョイ 5957-unxX)
2020/02/01(土) 21:51:39.45ID:4DvAyfEb0 ちなみに管理者権限で動いてるスクリプトから一般権限でアプリケーションを起動したい場合は
Run, Explorer "(一般権限で起動したいプログラムのフルパス).exe"
で一般権限で起動出来る
Run, Explorer "(一般権限で起動したいプログラムのフルパス).exe"
で一般権限で起動出来る
827名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H)
2020/02/01(土) 22:01:30.61ID:RcLxcGeu0 回答ありがとうございます
あと勘違いさせていたらごめんなさい
この問題自体は>>810さんのアドバイスを元に>>811で書いた通り
MouseGestureL側でマウスのボタンが押される度にあるファイルをリネームして
ボタンが離されたら元に戻すというめちゃくちゃなゴリ押しで解決しており
今は望んだ状態で快適に使ってます
なのでもしもアドバイスいただけるとしたら
「自分の希望する前提条件をひっくり返せ」ではなく前提条件の元でなにか他の手段があるよ
だととても助かります、まぁすでに解決済みなので
「そんな手段ないよ」とかでも「ですよねー」といった感じです
>ちなみに管理者権限で動いてるスクリプトから一般権限でアプリケーションを起動したい場合は
の件は>>809に書いてますが
>MouseGestureL から何かを起動する場合はRunは使用せずに
>ComObjCreateを利用して一般権限で起動するようにしています
本家フォーラムにLexikosさんが投稿していらっしゃったのを参考に
ComObjCreate("{9BA05972-F6A8-11CF-A442-00A0C90A8F39}")系でわたしはやってました
教えていただいてありがとうございます
あと勘違いさせていたらごめんなさい
この問題自体は>>810さんのアドバイスを元に>>811で書いた通り
MouseGestureL側でマウスのボタンが押される度にあるファイルをリネームして
ボタンが離されたら元に戻すというめちゃくちゃなゴリ押しで解決しており
今は望んだ状態で快適に使ってます
なのでもしもアドバイスいただけるとしたら
「自分の希望する前提条件をひっくり返せ」ではなく前提条件の元でなにか他の手段があるよ
だととても助かります、まぁすでに解決済みなので
「そんな手段ないよ」とかでも「ですよねー」といった感じです
>ちなみに管理者権限で動いてるスクリプトから一般権限でアプリケーションを起動したい場合は
の件は>>809に書いてますが
>MouseGestureL から何かを起動する場合はRunは使用せずに
>ComObjCreateを利用して一般権限で起動するようにしています
本家フォーラムにLexikosさんが投稿していらっしゃったのを参考に
ComObjCreate("{9BA05972-F6A8-11CF-A442-00A0C90A8F39}")系でわたしはやってました
教えていただいてありがとうございます
828名無しさん@お腹いっぱい。 (ワッチョイ 7d76-unxX)
2020/02/01(土) 22:06:21.69ID:1OVWO3Ck0 無駄な長文が多すぎて前提とか知らねえから
UACレベル下げてやりたいことが出来ればそれでいいだろ
UACレベル下げてやりたいことが出来ればそれでいいだろ
829名無しさん@お腹いっぱい。 (ワッチョイWW b673-k9qz)
2020/02/01(土) 22:18:23.85ID:Iz5L6+2y0 UACの回避法についての質問であってAutoHotkey関係ない件
830名無しさん@お腹いっぱい。 (アタマイタイーWW 2afa-CNbV)
2020/02/02(日) 04:24:20.95ID:fsCu82Qy00202 Runasで解決しそうじゃん
831名無しさん@お腹いっぱい。 (アタマイタイー 7db1-b3gp)
2020/02/02(日) 05:00:56.00ID:mNfoQi9a00202 >>829
長文レスの連続だったが結局はahk関係ないよな、マジで同意する
長文レスの連続だったが結局はahk関係ないよな、マジで同意する
832名無しさん@お腹いっぱい。 (アタマイタイー 4a09-unxX)
2020/02/02(日) 06:07:36.95ID:xJqdmfyP00202 UACの設定下げる事を拒む理由も分からん
833名無しさん@お腹いっぱい。 (アタマイタイー 6644-oZmp)
2020/02/02(日) 16:06:20.48ID:ua+O16JY00202 Gui,Add,UpDownって0.1〜10.0みたいな小数点対応はしていないのですか?。
834787 (アタマイタイーWW b5b1-9jkA)
2020/02/02(日) 20:35:45.97ID:BBAscVbG00202 >>788-791
レスありがとうございます
休みの間色々検討した結果、意図することは、マクロで出来そうな気がしてきました
マクロでIEとの連携ですね
uwscというのも良さげですが、既存のもの使って、となるとやはりマクロかなと
AHKは、マウスジェスチャーで使ってるのですが、連携となるとマクロに分がありそうですね
レスありがとうございます
休みの間色々検討した結果、意図することは、マクロで出来そうな気がしてきました
マクロでIEとの連携ですね
uwscというのも良さげですが、既存のもの使って、となるとやはりマクロかなと
AHKは、マウスジェスチャーで使ってるのですが、連携となるとマクロに分がありそうですね
835名無しさん@お腹いっぱい。 (アタマイタイー MM92-k9qz)
2020/02/02(日) 20:38:57.45ID:4FWtWLmZM0202 uwscはマクロの一種です
スクリプトも書けますが手順の保存再生できるので
スクリプトも書けますが手順の保存再生できるので
836名無しさん@お腹いっぱい。 (ワッチョイ 5d0d-Y6bJ)
2020/02/03(月) 02:26:25.69ID:YrlH3/AV0 >>833
アップダウンコントロールの増減量を変更
UpDown - Non-unitary increments.ahk
http://numeric.nerim.net/AutoHotkey/Scripts/UpDown%20-%20Non-unitary%20increments.ahk
https://www.autohotkey.com/boards/viewtopic.php?p=75010#p75010
修正版: x64対応、指定ミス
https://pastebin.com/5h8rySan
https://pastebin.com/KAggw1PP
アップダウンコントロールの増減量を変更
UpDown - Non-unitary increments.ahk
http://numeric.nerim.net/AutoHotkey/Scripts/UpDown%20-%20Non-unitary%20increments.ahk
https://www.autohotkey.com/boards/viewtopic.php?p=75010#p75010
修正版: x64対応、指定ミス
https://pastebin.com/5h8rySan
https://pastebin.com/KAggw1PP
837名無しさん@お腹いっぱい。 (ワッチョイ 66ac-unxX)
2020/02/03(月) 09:03:46.86ID:JFIzm4Vd0 >>835
834の言ってるはExcelVBAマクロの事だと思うよ
UWSCもAHKもExcelVBAもマクロ
ただ、当のExcelVBAについては、操作手順を記述してるわけじゃないから、マクロからかなり逸脱してる感あって、
一番マクロじゃないのだけをマクロと呼んでる事に、もやっとする
834の言ってるはExcelVBAマクロの事だと思うよ
UWSCもAHKもExcelVBAもマクロ
ただ、当のExcelVBAについては、操作手順を記述してるわけじゃないから、マクロからかなり逸脱してる感あって、
一番マクロじゃないのだけをマクロと呼んでる事に、もやっとする
838名無しさん@お腹いっぱい。 (ワッチョイWW 5de5-SuLP)
2020/02/03(月) 10:56:49.47ID:llPhOCHJ0 VBAには自動記録機能あるよ
そういう意味ではVBAもUWSCもAHKもマクロ機能のあるスクリプトだ
旧ahkには一応マクロ化ツールのAutoScriptWriterが同梱されてたが
なんか不完全でうまく記録されなかった記憶
ほとんどの人は使っておらず話題にもならなかった
そういう意味ではVBAもUWSCもAHKもマクロ機能のあるスクリプトだ
旧ahkには一応マクロ化ツールのAutoScriptWriterが同梱されてたが
なんか不完全でうまく記録されなかった記憶
ほとんどの人は使っておらず話題にもならなかった
839834 (ワッチョイWW b5b1-9jkA)
2020/02/03(月) 20:49:50.35ID:ZP73R6UN0 >>834です
当方の意図してたのはExcelVBAマクロです
マクロって、調べたらプログラミング全般の概念なんですね。言葉足らずでした
で、そのVBAで今日出社してやってみたんですが、オートメーションエラー連発!
なかなか難しいですね
当方の意図してたのはExcelVBAマクロです
マクロって、調べたらプログラミング全般の概念なんですね。言葉足らずでした
で、そのVBAで今日出社してやってみたんですが、オートメーションエラー連発!
なかなか難しいですね
840名無しさん@お腹いっぱい。 (ワッチョイ b758-56gX)
2020/02/07(金) 02:45:59.20ID:3oIzKiS00 ・DOSコマンドをDOS窓表示せずにahkから実行したい
現在はDOSコマンドを拡張子.cmd のファイルに書き込んで保存し、
DOS窓を非表示にするためVBSファイルを作成してVBScriptから上記cmdファイルを vbHide 付けて実行
さらにahkからそのVBSファイルを実行する
という三度手間?な方法をやってるんだけど、もう少しスマートな方法ありませんか?
現在はDOSコマンドを拡張子.cmd のファイルに書き込んで保存し、
DOS窓を非表示にするためVBSファイルを作成してVBScriptから上記cmdファイルを vbHide 付けて実行
さらにahkからそのVBSファイルを実行する
という三度手間?な方法をやってるんだけど、もう少しスマートな方法ありませんか?
841名無しさん@お腹いっぱい。 (ワッチョイ 7fbe-RXZG)
2020/02/07(金) 03:11:52.27ID:y2s/VZ9K0 >>840
Run, Target,, Hide
Run, Target,, Hide
842名無しさん@お腹いっぱい。 (ワッチョイ b758-56gX)
2020/02/07(金) 03:38:26.96ID:3oIzKiS00843名無しさん@お腹いっぱい。 (オッペケ Sr0b-mA3f)
2020/02/07(金) 05:15:25.66ID:gVGECi9Gr てか確かrunからDOSコマンド使えたような気がする
844名無しさん@お腹いっぱい。 (ワッチョイ b758-56gX)
2020/02/07(金) 05:52:57.08ID:3oIzKiS00 >>843
run, %comspec% /c でAHKからDOSコマンド実行できるみたいですが
一つのDOS窓で複数行のコマンド実行する方法が分からず
cmdファイルに書き込んでから実行してます
後出しになってしまい申し訳ありません
run, %comspec% /c でAHKからDOSコマンド実行できるみたいですが
一つのDOS窓で複数行のコマンド実行する方法が分からず
cmdファイルに書き込んでから実行してます
後出しになってしまい申し訳ありません
845名無しさん@お腹いっぱい。 (ワッチョイ b758-56gX)
2020/02/07(金) 06:28:10.70ID:3oIzKiS00846名無しさん@お腹いっぱい。 (ワッチョイ d7dc-8Apu)
2020/02/09(日) 00:12:08.21ID:x40WBKc10 WinHide, ahk_class Button
たまにWinShowしてもウィンドウズボタンが表示されなくなるんだけど、解決策ないかな?。
今は仕方なく再ログインしてる。
たまにWinShowしてもウィンドウズボタンが表示されなくなるんだけど、解決策ないかな?。
今は仕方なく再ログインしてる。
847名無しさん@お腹いっぱい。 (ワッチョイ d7dc-8Apu)
2020/02/09(日) 00:17:35.36ID:x40WBKc10 あごめん、WinHide, ahk_class Shell_TrayWndだった。
848名無しさん@お腹いっぱい。 (ワッチョイ 376e-56gX)
2020/02/09(日) 00:54:57.92ID:bRFqNBrR0 >>847
Shell_TrayWndってタスクバーのことだろ?
F1::
WinHide, ahk_class Shell_TrayWnd
Return
F2::
WinShow, ahk_class Shell_TrayWnd
Return
だけのスクリプトで試したけど何も問題無いぞ
そもそもこんなことしなくてもOS側設定の自動的に隠すオンと、WinActivateだけで事足りると思うんだが
Shell_TrayWndってタスクバーのことだろ?
F1::
WinHide, ahk_class Shell_TrayWnd
Return
F2::
WinShow, ahk_class Shell_TrayWnd
Return
だけのスクリプトで試したけど何も問題無いぞ
そもそもこんなことしなくてもOS側設定の自動的に隠すオンと、WinActivateだけで事足りると思うんだが
849名無しさん@お腹いっぱい。 (ワッチョイ 370a-RXZG)
2020/02/09(日) 03:21:09.07ID:zu3MaBNR0 >>846-848
タスクバーとスタートボタンは別なので両方操作する必要がある
OnExitでスクリプト終了時にはWinShowさせると安全
ahk_exe Explorer.EXE ahk_class Shell_TrayWnd ; Taskbar
ahk_exe Explorer.EXE ahk_class Button ; Start Button
タスクバーとスタートボタンは別なので両方操作する必要がある
OnExitでスクリプト終了時にはWinShowさせると安全
ahk_exe Explorer.EXE ahk_class Shell_TrayWnd ; Taskbar
ahk_exe Explorer.EXE ahk_class Button ; Start Button
850名無しさん@お腹いっぱい。 (ワッチョイ 57b8-56gX)
2020/02/09(日) 03:25:44.77ID:xdymvCRc0851名無しさん@お腹いっぱい。 (ワッチョイ 370a-RXZG)
2020/02/09(日) 04:19:29.40ID:zu3MaBNR0 >>850
win7以前 タスクバーとスタートボタンが別
win8 スタートボタンがない
win8.1以降 タスクバーとスタートボタンが一体型
スタートボタンだけ消えるならwin7以前だと思われるのでボタンも指定しないと
win7以前 タスクバーとスタートボタンが別
win8 スタートボタンがない
win8.1以降 タスクバーとスタートボタンが一体型
スタートボタンだけ消えるならwin7以前だと思われるのでボタンも指定しないと
852名無しさん@お腹いっぱい。 (ワッチョイ 57b8-56gX)
2020/02/09(日) 04:59:21.08ID:xdymvCRc0 まだ7なんて使ってる奴居んのか・・・
もう完全にサポート終わってんのに
もう完全にサポート終わってんのに
853名無しさん@お腹いっぱい。 (ワッチョイ ff44-8Apu)
2020/02/09(日) 15:43:04.49ID:Ocp+8UND0 >>836
イエース!有難う。
イエース!有難う。
854名無しさん@お腹いっぱい。 (ワッチョイ d7dc-8Apu)
2020/02/11(火) 23:56:48.73ID:x/+BH3gC0 みんなタスクバーの件すまない。
Classic Shell絡みの問題で、完全に環境依存だった・・・。
Classic Shell絡みの問題で、完全に環境依存だった・・・。
855名無しさん@お腹いっぱい。 (ワッチョイ cb76-gRil)
2020/02/13(木) 09:14:54.16ID:esDus5ra0 式展開、変数展開を一切しないただのヒアドキュメントってどうやって書くんですか?
urls=
(
http://www.foo.net/search?q=aaa%20bbb
)
とかくと変数20bbbを展開しようとしたけどできなかった的なエラーが出てしまいます
ヒアドキュメントの中身をエスケープせずにエラーを取り除きたいです
urls=
(
http://www.foo.net/search?q=aaa%20bbb
)
とかくと変数20bbbを展開しようとしたけどできなかった的なエラーが出てしまいます
ヒアドキュメントの中身をエスケープせずにエラーを取り除きたいです
856名無しさん@お腹いっぱい。 (ワッチョイ 1f11-swhV)
2020/02/13(木) 09:29:49.82ID:cbImo1Ju0857名無しさん@お腹いっぱい。 (ワッチョイ b7be-Bd93)
2020/02/13(木) 09:29:59.61ID:UHeFoqSi0 (%
hoge
)
hoge
)
858名無しさん@お腹いっぱい。 (ワッチョイ dfb1-mCmx)
2020/02/13(木) 21:49:14.43ID:dCULbdKN0 「%」が一個だけなら「`%」でも良いのかな?よく分からんけど
数十個とか数多い時は>>857だよね当然
数十個とか数多い時は>>857だよね当然
859名無しさん@お腹いっぱい。 (ワッチョイW 63bc-bduJ)
2020/02/14(金) 03:33:04.21ID:pw6jil4Z0 Windows10 x64日本語、AutoHotkey U64の環境で
WinTitle系の引数に日本語を書いたスクリプトをUTF-8で保存するとタイトルがマッチしないのはなんで?
ASCII文字だけにするとマッチするのは確認してます
あと何故かShift JISで保存するとマッチする
Unicode版とは一体
WinTitle系の引数に日本語を書いたスクリプトをUTF-8で保存するとタイトルがマッチしないのはなんで?
ASCII文字だけにするとマッチするのは確認してます
あと何故かShift JISで保存するとマッチする
Unicode版とは一体
860名無しさん@お腹いっぱい。 (中止 b702-OOeE)
2020/02/14(金) 08:26:21.34ID:hIxdQ+FM0St.V ちゃんとBOM付けて保存してるか?
861名無しさん@お腹いっぱい。 (中止W 63bc-bduJ)
2020/02/14(金) 19:10:29.35ID:pw6jil4Z0St.V >>860
完全にそれが原因でしたありがとう
完全にそれが原因でしたありがとう
862名無しさん@お腹いっぱい。 (ワッチョイ 0358-D5WE)
2020/02/19(水) 21:51:29.80ID:PeAf8/1k0 古い自社製アプリの画面に、CB FF 00..などのデータが
EXCELのセル状に縦横に並んでいます。
Windows spyで調べると、ClassNN:MSFlexGridWndClass##と表示されました。
この中から或る位置のセルの値を取り出したいのですが、方法が分からないです。
どうすればよいか、何か情報頂きたいです。
EXCELのセル状に縦横に並んでいます。
Windows spyで調べると、ClassNN:MSFlexGridWndClass##と表示されました。
この中から或る位置のセルの値を取り出したいのですが、方法が分からないです。
どうすればよいか、何か情報頂きたいです。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国国連大使「日本が中国に武力行使すると脅しをかけたのは初めて」 国連事務総長に書簡★3 [♪♪♪★]
- 台湾有事での集団的自衛権行使に「賛成」が48.8%、「反対」が44.2% ★8 [♪♪♪★]
- 【芸能】44歳・池脇千鶴、激変ぶりにネット衝撃 「まるで別人…」「変化が凄い!!」の声 [冬月記者★]
- 【🐼】パンダ、日本で会えなくなる? 中国との関係悪化で不安の声 [ぐれ★]
- 【立憲民主党】「質問レベルの低さが立憲の存立危機事態」台湾有事発言を引き出した立憲“執拗追及”が波紋… ★2 [尺アジ★]
- 【芸能】aiko「50歳になりました!」 祝福&驚きの声続々「20代にしか見えない」「何で年取らないの」 [冬月記者★]
- 中国「ごめん、色々やりすぎた謝るから和解してほしい」高市首相「舐めてんの?」 [834922174]
- 🏡😡
- 高市のマウント発言って誰のせいにされると思う? [237216734]
- 空気変わったな
- 中国「国連さん聞いて!日本が反省しないの!日本は武力介入しようとしてるよ!」
- 【悲報】フィギュアスケート人気、めちゃくちゃ落ちる💥💥wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww [573041775]
