探検


AutoHotkey スレッド part34

■ このスレッドは過去ログ倉庫に格納されています
2024/06/30(日) 02:12:16.24ID:JUH7aQw10
■公式サイト
https://www.autohotkey.com/

■解説等
・v1.1
AutoHotkey Wiki
http://ahkwiki.net/Top

・v2
クイックリファレンス|AutoHotkey v2
https://ahkscript.github.io/ja/docs/v2/
v1.1からの変更|AutoHotkey v2
https://ahkscript.github.io/ja/docs/v2/v2-changes.htm

■前スレ
AutoHotkey スレッド part33
https://egg.5ch.net/test/read.cgi/software/1705995058/
2024/06/30(日) 03:21:24.18ID:pSZ/VNNa0
>>1
乙
2024/06/30(日) 03:49:40.40ID:q/9cCDts0
おつ
2024/06/30(日) 17:31:27.63ID:fvC6Dnpu0
>>1
おつです
2024/06/30(日) 17:36:11.88ID:q/9cCDts0
v1 or v2 で毎日PM12:00 に特定のコマンド(Win標準のコマンド)を実行したいです
処理の順番は↓の感じでOK? ですか? ①はAutoHotkey上ではどの様に指定すれば良いですか?
素人で特定の時間指定のやり方がわかりません...

①特定の時間 毎日PM12:00を指定
②RUN でコマンド実行
2024/06/30(日) 17:46:30.86ID:Rxrj3FNY0
タスクスケジューラ使った方が簡単だし確実な気が
2024/06/30(日) 18:58:29.99ID:wE93JboF0
検索するかChatGPTに聞け
ちょっと検索したがOSによって方法が異なる
OSが機能を提供してるっぽい
2024/06/30(日) 19:25:30.45ID:Ys+CgLs30
>>5
SetTimerで12:00までの残り時間をマイナス値セットすればいい
2024/06/30(日) 20:55:15.17ID:fvC6Dnpu0
>>6
これに気づくまで結構時間かかって今は時報に成り下がったクソコードがある
2024/07/02(火) 02:33:28.45ID:PhHsFzgd0
中国語、韓国語があるのにwww.autohotkey.com/boardsのOther languagesに日本語の板がないのはなぜ?
日本民族はコミュニティを作る能力がない?
2024/07/02(火) 03:36:12.85ID:LrfyBt/t0
そう思った人が作るんです
2024/07/02(火) 07:18:40.97ID:jfsxeUc90
ここでええやんってなるやつ
2024/07/03(水) 18:25:20.27ID:fdjKKUbe0
今でこそreddit、4ch、discordなどコミュニティあるけど、日本の2chに相当する巨大な総合掲示板が当時の海外にはなかったから個別BBSが発達した。

という理解で合ってる?
だからahkの日本人板は不要
2024/07/03(水) 18:52:44.41ID:urwgK5E00
>>13
間違い
日本における個別掲示板としてwiki文化があった
でもwiki文化はアフィに飲み込まれて消えた
2024/07/03(水) 18:59:08.08ID:Iy7bUGwD0
>>13
「日本人板」ではなく「日本語板」
「だから」ではなく「その理解で合ってるとしたら」
になおすとしてその理解で合ってるとしたらahkの日本語板は不要になるのはなんで?
2024/07/03(水) 20:33:09.49ID:q64MhKTg0
>>15
日本人って言ってるから単に罵倒したいだけだから答え合わせはできないんじゃねぇかな
17名無しさん@お腹いっぱい。
垢版 |
2024/07/04(木) 19:29:09.11ID:JeuA7dqs0
順調に下がりすぎでは女をとっかえひっかえしてるプレイボーイのジェイクも悪くないよ
18名無しさん@お腹いっぱい。
垢版 |
2024/07/04(木) 19:43:45.79ID:XOIAAbU20
ロボット作りとかええんちゃう
19名無しさん@お腹いっぱい。
垢版 |
2024/07/04(木) 19:49:03.73ID:bAxmavr80
しかし
一切触れてないぞ
血糖値測定しながら
優勝なんだわ
一緒にいなくなって
2024/07/04(木) 21:13:31.61ID:nIlzy8Aa0
V1で、あるダイアログボックスの中の、タイトルではなく本文側の文字列を読み取って判定したいです

タイトルではなく 本文側の特定の文字列 "XYZ" が含まれていたら [OK] クリック
タイトルではなく 本文側の特定の文字列 "XYZ" が含まれていない場合は何もしない

の処理は可能ですか?

ダイアログ内の文字列読み取り関数は確かありましたが、やり方がいまいちわかりませんでした。
21名無しさん@お腹いっぱい。
垢版 |
2024/07/05(金) 04:23:29.82ID:oH0kvMH20
>>10
5chがあるからだろうと思う
ちょっとした質問を書きたいだけなのに、それぞれのサイトでアカウントを作らいないといけないというのは、
アカウントがたくさん増えてアカウント管理が面倒になったりするしね
がっつり使うならアカウントを作ってもいいと思うんだけど
2024/07/05(金) 04:40:48.17ID:KirSVQy20
ここで言う事でもないが人間の大半ってネットの中で奴隷と見紛う無思考ぶりが凄まじいんだわ
自分から進んでやるという意識がとんでもなく弱い
そして逆にカウント作成とかで逃げ場のない強要を他人からされると脳から快感物質が湧き出てくるらしい
コピペ荒らしに対してだって名前欄をスレ内で取り決めればそれを守らないレスを完全に無視して進行できるがそういうことを一切「やれない」
問題に対する解決策が目の前にあるのに協力体制を形成「できない」
そういうところが脆弱性になって悪意に付け込まれる
23名無しさん@お腹いっぱい。
垢版 |
2024/07/05(金) 04:58:30.54ID:oH0kvMH20
何を言っているのかよくわからないが、
「人間の大半って」云々って、当たり前のことというか、仕方のない事実なのでは
(それについて不平不満を言っても仕方ないのでは)
2024/07/05(金) 09:51:12.42ID:ITFWeMwS0
https://i.imgur.com/gTX5OLe.jpg
10日連続チェックインだけで5000P貰えます
2024/07/05(金) 10:52:16.00ID:FmZ6BJdU0
前スレにもあったけど俺もスクリプトがスタートアップしなくなったわ
コンパイルしたらあっさり起動したけど色々試して駄目だった
遅延起動、再インスコ、バージョンダウン、管理者権限、互換モード、置き場所の移動、Windows Defenderで除外を試して駄目
システムの復元で1ヶ月前に戻してもスタートアップしなかったので完全に原因不明だ
今までコンパイルせず問題無くスタートアップしてたんだけど意味がわからん
2024/07/05(金) 12:03:15.36ID:AUjcFmhC0
>>22
もう少し思考してから書き込んで?
2024/07/05(金) 12:26:42.28ID:aBWHZ0q+0
>>25
スタートアップに入れて何をするのかわからないが起動で困ったことがない
普通はコマンドプロンプトから起動したら標準出力にエラーを出すと思った
エラーログがないのもおかしいと思って調べたらこんなのを見つけた
#ErrorStdOut
スクリプトの起動を妨げる構文エラーは、ダイアログを表示するのではなく、標準エラーストリーム(stderr)に送信します。
"C:\Program Files\AutoHotkey\AutoHotkey.exe" /ErrorStdOut "My Script.ahk" 2>"Syntax-Error Log.txt"
ahkscript.github.io/ja/docs/v2/lib/_ErrorStdOut.htm
2024/07/05(金) 12:32:16.23ID:0OOq64Tu0
mouse gesture L がなんか知らん間に落ちてるんだけど、落ちないようにするのはどうしたら良いかな
2024/07/05(金) 12:45:50.09ID:sTZdfguX0
そりゃバグを修正するか、別のインスタンスに監視させて
落ちたら再起動かけるようにするしかないわ
2024/07/05(金) 19:01:59.04ID:0xh1q5tp0
AHK v2を使っています。
ChangeKeyを使ってCapsLockキーをRWinに変更して、その上でRWin(元CapsLock)の単独押下を無効化しようと以下のコードの(単独記述、同時記述ともに)いずれも試したのですが、無効化できませんでした。
試しにAHK v1で書くと RWin::return であっさり無効化できました。
AHK v2で無効化するにはどうすればいいかわかりますか?
(失敗例X)
RWin::return
sc15C::return ; RWinのスキャンコード
vk5C::return ; RWinの仮想キー


ちなみに単独押下のみ無理で、複数同時入力は sc15C 指定だとうまく機能します。
(成功例〇)
sc15C & vkBB::return
2024/07/05(金) 19:12:45.13ID:0xh1q5tp0
>>30
すみません、どうやら別に箇所に問題があるようで、そのコードの問題ではなかったようです。
取り下げます
2024/07/05(金) 20:03:37.66ID:0xh1q5tp0
問題部分がわかったので再度質問させてください

単独押下のみを無効化して、複数同時押しは有効化することはできますか?

sc15C::return

上記のように1つの記述だとRWinの単独押下は無効化されるのですが、
下記のように複数のコードを書くと、今度は sc15C & vkBB::return の部分はきちんと動くのに、sc15C::return が動かなくなり、RWinの単独押下が無効化できなくなります。

sc15C::return
sc15C & vkBB::return
2024/07/05(金) 20:38:06.15ID:gPpvjxyQ0
#がWinの修飾キー
プログラミングが難しくてバグってるか
他のキーにしようか
34名無しさん@お腹いっぱい。
垢版 |
2024/07/05(金) 21:00:47.97ID:J8LKe6lH0
3人以外に転用する場合は、善悪では
2024/07/05(金) 21:01:27.51ID:0xh1q5tp0
v1では動いたので、たぶんどこか自分の知らない仕様があるんだと思います。
例えば
Autohotkeyを用いずにRWin (元Caps)を押したらWindowsのスタートメニューが出るんですけど、

sc15C::return
だけを書くと、RWinが無効化されてスタートメニューが出なくなります。

次に
sc15C::return
sc15C & a::send "b"
と2つのコードを書くと、RWin + a で bが入力されるようになりますが、RWinを単独で押すとまたスタートメニューが出るようになってしまいます。

この理屈を知りたいのですがどなたか分かる人いませんか? 
Winキーはキーを押した時ではなく、離した時にスタートメニューが出てくるのが問題に関係してるんじゃないかと思ってるんですが…


あと、#がWinの修飾キーだと知っていて、他に使えるキーがないのでRwinキーを使いたいなと思っています。無理そうならChangeKeyでCapsLockを他のキーに割り当てようと思います。
36名無しさん@お腹いっぱい。
垢版 |
2024/07/05(金) 21:07:19.52ID:dYSqMiyW0
だって
はいぱーまほしか
言ってないのも基本的に動くような
37名無しさん@お腹いっぱい。
垢版 |
2024/07/05(金) 21:28:22.20ID:74It4rpY0
アイスタまた拾ったわ
まぁ2のベタ移植頼むわ
38名無しさん@お腹いっぱい。
垢版 |
2024/07/05(金) 23:02:35.65ID:8l1sh8aG0
野菜と肉魚を食っても廃業しないことです。
事務所早く否定してます、とかいう企画はホントやめとけ
39名無しさん@お腹いっぱい。
垢版 |
2024/07/06(土) 00:17:59.26ID:ES6ip1tQ0
コロナもウソ!? シギーは電話番号のこと
そのくせ他人に迷惑だわ。
2024/07/06(土) 09:36:55.44ID:TWEnra7l0
>>35
確かにv1ではその記述で両方無効化できますがv2ではできませんね
2.0.0でも試しましたが同じだったのでv2は最初からそういう仕様なのかもしれません

Winキー及びAltキーの単独押しは通常であればメニュー操作が発生しますが、修飾キーとして他のキーと同時に押した場合、メニューの操作はキャンセルされます
これはWindowsの仕様です
したがって、AHKではこれらのキーをホットキーとして使用する際に、予期せぬメニュー操作を防ぐため
状況によりこれらのキー押下時にMenuMaskKey(デフォルトはLCtrl)を送っています

本件のようなWinキーやAltキーの単独のキーを無効化した状態で、これらのキーとのコンビネーションキーが存在する場合
単独キー押下時点でv1ではMenuMaskKeyが送られていますが、v2ではそれがないのでバグかもしれません
ただし、CtrlやShiftの場合、本件と同様の記述ではv1でも単独押しと複合押しの両方の無効化はできないので、仕様として合わせたのかもしれません
つまりv1の挙動の方がバグという可能性もあります
どちらの挙動が正しいかという所まで知りたければlexikosに聞くしかなさそうです

とりあえず、下記以外の方法は思いつきませんでしたが、こんな感じで両方無効化することは可能です

#HotIf GetKeyState("sc15C", "P")
vkBB:: return
a:: Send("b")
#HotIf
sc15C:: return
2024/07/06(土) 10:59:45.25ID:TWEnra7l0
>>35
後で気づいたのですが、そもそもChangeKeyでCapsLockを変更しているなら
RWinではなくF13〜F24に割り当てるのでは駄目なんでしょうか?
2024/07/06(土) 16:28:09.75ID:jT9N0yxf0
次の例は、左Winでスタートメニューを起動する機能を無効にし、モディファイアとして使用できるようにしたものです
~LWin::Send "{Blind}{vkE8}"
ahkscript.github.io/ja/docs/v2/lib/A_MenuMaskKey.htm

~LWin:: Send "{Blind}{vkE8}"
LWin & a:: Send "b"
100%の解決策でないがこれは?
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況