■公式サイト
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 スレッド part34
https://egg.5ch.net/test/read.cgi/software/1719681136/
探検
AutoHotkey スレッド part35
2024/12/11(水) 12:17:01.35ID:pfy66vhl0
2025/01/13(月) 17:25:45.78ID:oKut4+YE0
なんか高速の対抗からレーザーポインター照射したらサロンでやります。
国会でなく有効期限やセキュリティコードなど、暴力革命を阻止するための金持ちのほうが勝てる可能性ある
このペースだと俺も今日気づいた奴を社内政治ですぐ乗っ取って追いつけないからチケット売れない
国会でなく有効期限やセキュリティコードなど、暴力革命を阻止するための金持ちのほうが勝てる可能性ある
このペースだと俺も今日気づいた奴を社内政治ですぐ乗っ取って追いつけないからチケット売れない
161名無しさん@お腹いっぱい。
2025/01/13(月) 17:39:01.24ID:JTk1Y7n502025/01/13(月) 18:06:47.05ID:3fpplPZD0
家には合わんかったけど最近は海外逃亡中)
「失うもののちょくちょく新規タイトル出しとるよな
「失うもののちょくちょく新規タイトル出しとるよな
2025/01/13(月) 18:07:01.09ID:UO6D6J+80
そろそろ出始めてる気がするのに
164名無しさん@お腹いっぱい。
2025/01/13(月) 18:38:34.18ID:Kr0sQFGO0 ほれみのるはこそはつすかおくまあけせぬめすのるあみねむたけまおしちろすらころにこまれえしよれなくゆへそそけさむ
165名無しさん@お腹いっぱい。
2025/01/13(月) 18:44:22.73ID:vVEFHmWJ0 とうこよやつはもからやそやりへたるえかれとむそむたててとるみそるめんむそらんこいみのさのへんのぬさめる
2025/01/13(月) 20:55:21.73ID:EA7bBnc10
>>154
ありがとうございます
発生条件はFirefoxでyoutubeタブを70個程開くとその後時間差はありますが100%症状出ます
>・同スクリプト内の他条件のホットキーやコードによる影響 (最小機能スクリプトのみでも発生するか)
最小スクリプトでも発生しました
>・他のアプリのフックによる影響 (問題発生時後に一旦サスペンドして解除により改善するか)
症状出た後リロードすると一発で解消します
>・XButton1にチャタリングが発生している (KeyHistory見ながらカチャカチャグリグリしてみる)
チャタリングチェックサイトで確認したところチャタリングは発生していませんでした
>・メモリの高使用時におけるページファイルへのアクセス時のカクつき等により、一部の処理がロストしている (見た感じと操作感)
かくつきはあまり感じません。
xbutton1 & rbutton の他に xbutton1 & lbutton、 xbutton1 & mbutton と複数コンビネーションキーを設定しているのですが、
そのうちランダムでコンビネーションキーが効かなくなります。
気になるところは、リロードで症状解消する、コンビネーションキーのホットキーの内ランダムでいくつかが効かなくなるが
キー1つだけのホットキーは問題無いといったところです。
何か対策はないでしょうか。。。
ありがとうございます
発生条件はFirefoxでyoutubeタブを70個程開くとその後時間差はありますが100%症状出ます
>・同スクリプト内の他条件のホットキーやコードによる影響 (最小機能スクリプトのみでも発生するか)
最小スクリプトでも発生しました
>・他のアプリのフックによる影響 (問題発生時後に一旦サスペンドして解除により改善するか)
症状出た後リロードすると一発で解消します
>・XButton1にチャタリングが発生している (KeyHistory見ながらカチャカチャグリグリしてみる)
チャタリングチェックサイトで確認したところチャタリングは発生していませんでした
>・メモリの高使用時におけるページファイルへのアクセス時のカクつき等により、一部の処理がロストしている (見た感じと操作感)
かくつきはあまり感じません。
xbutton1 & rbutton の他に xbutton1 & lbutton、 xbutton1 & mbutton と複数コンビネーションキーを設定しているのですが、
そのうちランダムでコンビネーションキーが効かなくなります。
気になるところは、リロードで症状解消する、コンビネーションキーのホットキーの内ランダムでいくつかが効かなくなるが
キー1つだけのホットキーは問題無いといったところです。
何か対策はないでしょうか。。。
167名無しさん@お腹いっぱい。
2025/01/13(月) 21:00:29.02ID:fVSc6PKE0 パン
麺
ほんと
しかし
2週間で3本にあっさり超されるなんて悪そのもあるみたいなので辞めない方がよい
麺
ほんと
しかし
2週間で3本にあっさり超されるなんて悪そのもあるみたいなので辞めない方がよい
2025/01/13(月) 21:34:35.30ID:jSUONNb10
しかし
配信やってそう
山の方いって
普通にパンに乗せてくると思うんだけど
配信やってそう
山の方いって
普通にパンに乗せてくると思うんだけど
169名無しさん@お腹いっぱい。
2025/01/13(月) 21:38:34.02ID:FTty8y550 いるわうてしそんそはれしひるよのふすてやをかなさろおめたのてれいつやこほををせかうしうほへつすのゆてき
2025/01/14(火) 19:15:38.72ID:WnRj1F4f0
>>166
リロードではなくサスペンドして解除で試してみてください
AHKのマウスボタンのホットキーはUseHookの指定の有無に関係なくマウスフックによって実現されます
フックは後からフックされた物が優先されるため、AHKのスクリプト起動後に他のアプリがマウスフックを使用した場合、AHK側で不具合が発生することがあります
したがって、フック絡みの問題が疑われる場合、再度AHK側でフックすることで問題が解消するかどうかを試してみる価値があります
他のアプリのフックの状態や、現在使用されているフックの順番を取得する方法はないため、断定することはできませんが
同時にスクリプトやプロセスの初期化も行われるリロードによる再フックよりも
影響の少ないサスペンド→解除による再フックで問題が解消するのであれば、他のアプリにフックを奪われている可能性が高い、と推定できます
他にマウスフックを使用するアプリが常駐しているなら、そのアプリをどうにかしないと根本的には解決しません
仮にサスペンド→解除では解消せず、リロードでないとダメだった場合
最小スクリプトでも問題発生したとありますが、その最低限のコード内容により問題が発生している可能性も出てきます
暫定的かつ包括的な対策として、あまりスマートではないかもしれませんが
定期的か特定のタイミングでサスペンド→解除、またはリロードするようなスクリプトを組むと言う方法が考えられます
個別の対策としては、面倒ですが各コンビネーションキーでフラグ管理のような処理を入れれば、それを元にXButton1単独の誤爆回避は可能と思われます
また、XButton1の単独使用は難しくなりますが、コンビネーションキーに問題が出るなら
#HotIfか各キー側でGetKeyState("XButton1", "P")により分岐させる方法もあります
他にも別の問題が発生する可能性もありますが、XButton1をCtrlやShiftにリマップして、ホットキーは^RButton::などで使用する方法も考えられます
いずれにせよ、根本的な問題を特定して解消できない場合、プログラミング的な物も含めて試行錯誤の上実現するか
どこかを妥協して諦める、といったことが必要になると思われます
リロードではなくサスペンドして解除で試してみてください
AHKのマウスボタンのホットキーはUseHookの指定の有無に関係なくマウスフックによって実現されます
フックは後からフックされた物が優先されるため、AHKのスクリプト起動後に他のアプリがマウスフックを使用した場合、AHK側で不具合が発生することがあります
したがって、フック絡みの問題が疑われる場合、再度AHK側でフックすることで問題が解消するかどうかを試してみる価値があります
他のアプリのフックの状態や、現在使用されているフックの順番を取得する方法はないため、断定することはできませんが
同時にスクリプトやプロセスの初期化も行われるリロードによる再フックよりも
影響の少ないサスペンド→解除による再フックで問題が解消するのであれば、他のアプリにフックを奪われている可能性が高い、と推定できます
他にマウスフックを使用するアプリが常駐しているなら、そのアプリをどうにかしないと根本的には解決しません
仮にサスペンド→解除では解消せず、リロードでないとダメだった場合
最小スクリプトでも問題発生したとありますが、その最低限のコード内容により問題が発生している可能性も出てきます
暫定的かつ包括的な対策として、あまりスマートではないかもしれませんが
定期的か特定のタイミングでサスペンド→解除、またはリロードするようなスクリプトを組むと言う方法が考えられます
個別の対策としては、面倒ですが各コンビネーションキーでフラグ管理のような処理を入れれば、それを元にXButton1単独の誤爆回避は可能と思われます
また、XButton1の単独使用は難しくなりますが、コンビネーションキーに問題が出るなら
#HotIfか各キー側でGetKeyState("XButton1", "P")により分岐させる方法もあります
他にも別の問題が発生する可能性もありますが、XButton1をCtrlやShiftにリマップして、ホットキーは^RButton::などで使用する方法も考えられます
いずれにせよ、根本的な問題を特定して解消できない場合、プログラミング的な物も含めて試行錯誤の上実現するか
どこかを妥協して諦める、といったことが必要になると思われます
2025/01/15(水) 01:05:32.77ID:P+0SW/PR0
2025/01/16(木) 23:17:39.06ID:uInzy8xy0
v1でハッシュのキーの削除って普通どうやるの?
h := {foo:123, bar:456, baz:789}
for i,v in h
if(i = "bar")
h.Delete(i)
と書けば行けるけど
h.Delete("bar")だと駄目っぽい
iの型ってなんなんだろうか
h := {foo:123, bar:456, baz:789}
for i,v in h
if(i = "bar")
h.Delete(i)
と書けば行けるけど
h.Delete("bar")だと駄目っぽい
iの型ってなんなんだろうか
2025/01/17(金) 06:09:16.79ID:ZVEBLnPZ0
全角スペース……?
2025/01/17(金) 07:53:50.34ID:c4iWUun20
5chでインデントつけるためだろ
2025/01/17(金) 08:10:42.62ID:2ZdaQM670
>>172
駄目っぽくないが
駄目っぽくないが
2025/01/17(金) 12:50:36.35ID:36Bp/RJe0
>>172
普通に消えますよ
h := {foo:123, bar:456, baz:789}
MsgBox, % h.bar "," h.HasKey("bar") ; 456,1
h.Delete("bar")
MsgBox, % h.bar "," h.HasKey("bar") ; ,0
普通に消えますよ
h := {foo:123, bar:456, baz:789}
MsgBox, % h.bar "," h.HasKey("bar") ; 456,1
h.Delete("bar")
MsgBox, % h.bar "," h.HasKey("bar") ; ,0
2025/01/17(金) 14:29:32.51ID:SXNaXem00
初心者はv2から使ったほうが絶対にいい
2025/01/17(金) 14:33:45.32ID:dGTSA74W0
v1用のサンプルがたくさん見つかるのが負の遺産だな
2025/01/17(金) 16:22:19.50ID:VjJUxeHq0
v2に書き直す気力がなかなか起きない
コンバーターとかあるのか?
コンバーターとかあるのか?
2025/01/17(金) 22:06:02.75ID:YtyJvo5X0
>>179
あるっぽいけど結局手動で書き直さないと駄目とかって、前にこのスレで見たような。
あるっぽいけど結局手動で書き直さないと駄目とかって、前にこのスレで見たような。
2025/01/17(金) 22:07:20.76ID:dGTSA74W0
ahk使うなら必須技能
そんな大したもんでもない
そんな大したもんでもない
2025/01/17(金) 23:26:53.32ID:NuvW/Xln0
2025/01/18(土) 10:48:24.26ID:f4L2WzXg0
あー生成AIでどうにかなりそうだな
ミスが多いけど全部の言語知ってるプログラマーをコキ使えるようなもんだからな
会社では専用の環境でコキ使ってるわ
プライベートでは試すのも億劫なおっさんだけど
ミスが多いけど全部の言語知ってるプログラマーをコキ使えるようなもんだからな
会社では専用の環境でコキ使ってるわ
プライベートでは試すのも億劫なおっさんだけど
2025/01/18(土) 11:21:53.99ID:sE609x0f0
2025/01/18(土) 11:44:27.96ID:f4L2WzXg0
これはたすかる(やる気なし)
2025/01/18(土) 11:45:18.19ID:f4L2WzXg0
感謝するべきだと頭では分かっている
2025/01/18(土) 11:50:00.65ID:f4L2WzXg0
しかしいい加減Windows10をWindows11にリプレースして
いろんな糞ったれでつまらないトラブルを解決する作業を済ませないといけないように
必要なことではあるのでそのためのツールがありがたいことは間違いないのだが
それでも俺の心は1ミリも震えないのである(ただの無意味なポエム)
いろんな糞ったれでつまらないトラブルを解決する作業を済ませないといけないように
必要なことではあるのでそのためのツールがありがたいことは間違いないのだが
それでも俺の心は1ミリも震えないのである(ただの無意味なポエム)
2025/01/18(土) 15:38:59.22ID:jCmYV0Zc0
AHKがレジストリエディタ上だと効いてくれないのです
何故ですか?
何故ですか?
2025/01/18(土) 15:52:44.09ID:IFRc3ikb0
UACから別の権限で動かしてるけどAHKはユーザー権限、
とかやってるんだろ
とかやってるんだろ
2025/01/19(日) 14:44:03.33ID:QkECgsBq0
win10が無料でwin11にできるのはそのうち終わるらしいぞ
2025/01/19(日) 20:49:09.85ID:HhzUII4q0
…何の関係が?
2025/01/23(木) 00:15:06.14ID:6ZVQesKa0
()や「」を入力したら自動でカーソルが真ん中に移動するようにできないですかね?
できればIMEオンオフ関係なくやりたい
できればIMEオンオフ関係なくやりたい
2025/01/23(木) 00:19:01.34ID:sldD39Ao0
edgeのリンクのコピーと、リンクをクリックした時の開くをキーでやれるようにしたら快適
マウス必須のUIを設計する意味が判らん
マウス必須のUIを設計する意味が判らん
2025/01/23(木) 01:45:33.16ID:QMPLgVGb0
スクリプト作成依頼はダメ
途中でいいから自分で作ったスクリプトを見せてレスをもらうのはいい
途中でいいから自分で作ったスクリプトを見せてレスをもらうのはいい
2025/01/23(木) 07:33:50.65ID:AagTQ2W80
ウザいマイルール厨がまた湧いてる
2025/01/23(木) 08:02:14.44ID:MRWFiCXh0
何か透明あぼーんが働いてるかな
どこに依頼があったのか見つからない
どこに依頼があったのか見つからない
2025/01/23(木) 21:39:03.13ID:jTkXV6uR0
v2でのMDIのコントロールの取得がさっぱりわかりません
ChatGPTに訊いてもハルシネーションばかりで困っています
参考サイトなどありましたらご教示をお願いします
ChatGPTに訊いてもハルシネーションばかりで困っています
参考サイトなどありましたらご教示をお願いします
2025/01/23(木) 21:42:35.50ID:qiOTmtEg0
v1で書くとどうなるの
2025/01/23(木) 21:52:43.60ID:V6rKnoRb0
autohotkey MDI control - Google 検索
https://www.google.com/search?q=autohotkey+MDI+control
で、何か見つかるんじゃねぇの?
https://www.google.com/search?q=autohotkey+MDI+control
で、何か見つかるんじゃねぇの?
2025/01/24(金) 01:31:46.52ID:ufvHkJD60
>>197
公式フォーラムかredditで検索が基本
公式フォーラムかredditで検索が基本
2025/01/24(金) 16:54:48.29ID:ahvqkTZ70
Redditに助けられたこと・・・、ない!
2025/01/24(金) 17:47:02.05ID:Tw6AG7Rc0
Redditは5chだから5chに助けられたことないということ
5chのAHKスレに来るなw
5chのAHKスレに来るなw
2025/01/25(土) 18:37:43.03ID:eCw4ff7D0
例のごとく setup.exe の方は Trojan:Win32/Wacatac.B!ml やでと怒られるかもw
Release v2.0.19 · AutoHotkey/AutoHotkey
https://github.com/AutoHotkey/AutoHotkey/releases/tag/v2.0.19
Release v2.0.19 · AutoHotkey/AutoHotkey
https://github.com/AutoHotkey/AutoHotkey/releases/tag/v2.0.19
2025/01/25(土) 18:49:33.83ID:m3bNAlk20
fixしかなくて草
2025/01/25(土) 18:54:26.55ID:ZpEnnoF30
開発ブランチという概念は無いからな
2025/01/26(日) 00:18:02.87ID:T6xQ+v7E0
>>203
githugにissueがない
なにかあったときissueをあげようといえない
公式フォーラムにあげようといえる
v2.0.19に15+1つのうち1つのPull requestsしかとりこまれてない
ReleaseのあとにCommitsがあるからつぎのReleaseがある
githugにissueがない
なにかあったときissueをあげようといえない
公式フォーラムにあげようといえる
v2.0.19に15+1つのうち1つのPull requestsしかとりこまれてない
ReleaseのあとにCommitsがあるからつぎのReleaseがある
2025/02/04(火) 14:34:10.89ID:giGxUr2+0
前スレでdataclassとスクリプト間通信教えてくれた人、まじでありがとう!
最初はレジストリに値記録してただけど、読み書きでレジストリ壊れて大変な目にあったのでdataclass用のプロセス作ったら俺の環境だと40msec以内くらいで処理できるようになった!まじでありがとう!
最初はレジストリに値記録してただけど、読み書きでレジストリ壊れて大変な目にあったのでdataclass用のプロセス作ったら俺の環境だと40msec以内くらいで処理できるようになった!まじでありがとう!
2025/02/06(木) 15:19:45.27ID:/Nk+Ly6y0
UWSCからAutoHotkeyにきたが
まじでいいなこれ Guiも簡単だし WebViewTooとか使えばWindowsだけなら正直一番早くアプリ作れる
まじでいいなこれ Guiも簡単だし WebViewTooとか使えばWindowsだけなら正直一番早くアプリ作れる
2025/02/06(木) 16:00:46.02ID:o4I53aNV0
>>208
UWSCからだったらAutoHotkeyと違いキーリマップに特化してないAutoItってのもいいと思うよ
UWSCからだったらAutoHotkeyと違いキーリマップに特化してないAutoItってのもいいと思うよ
2025/02/06(木) 19:36:47.62ID:zde19nXk0
用途がかなり違わないか
211名無しさん@お腹いっぱい。
2025/02/06(木) 23:59:11.95ID:4qPR8Osq0 すいません、v1からv2に以降するツール、日本語の注釈がすべて文字化けするのですがどうしようもないでしょうか?
https://images2.imgbox.com/d9/97/8MfK9xf5_o.png
QuickConvertorV2.ahk というものです。
また、こちらでコンバートしてもエラーが出てしまいます。
ワンクリックで現在の日付を入力するものが
!1::InsertDate("yyyy_MMdd_")
InsertText(Content) {
cb_bk := ClipboardAll()
A_Clipboard := Content
Send("^v")
Sleep(100)
A_Clipboard := cb_bk
}
InsertDate(format) {
TIMEv2String := FormatTime(, format)
InsertText(TimeString)
}
Return
ですが機能しません。
https://images2.imgbox.com/6a/d4/w3PKwxeM_o.png
こちら分かる方いませんでしょうか?よろしくお願いいたします。
https://images2.imgbox.com/d9/97/8MfK9xf5_o.png
QuickConvertorV2.ahk というものです。
また、こちらでコンバートしてもエラーが出てしまいます。
ワンクリックで現在の日付を入力するものが
!1::InsertDate("yyyy_MMdd_")
InsertText(Content) {
cb_bk := ClipboardAll()
A_Clipboard := Content
Send("^v")
Sleep(100)
A_Clipboard := cb_bk
}
InsertDate(format) {
TIMEv2String := FormatTime(, format)
InsertText(TimeString)
}
Return
ですが機能しません。
https://images2.imgbox.com/6a/d4/w3PKwxeM_o.png
こちら分かる方いませんでしょうか?よろしくお願いいたします。
2025/02/07(金) 00:02:44.48ID:HggB2B0e0
ある程度はツールにやらせてもいいけど、
基本的にはそのくらい自分でもできないとその後が使えないやろ
基本的にはそのくらい自分でもできないとその後が使えないやろ
2025/02/07(金) 00:10:21.20ID:uwAqqtsb0
214名無しさん@お腹いっぱい。
2025/02/07(金) 00:28:13.56ID:PFbhh6eV0 >>213
!1のalt+1のショートカットが悪いと出ていますが、ここをどんなショートカットに変えてもエラーが出てしまいます。
v2のwikiでの模範のものをコピペしてもエラーが出てもう意味不明になっています。
https://images2.imgbox.com/70/c3/ESlJ4KZ0_o.png
vk1D & Z でも出る
!1のalt+1のショートカットが悪いと出ていますが、ここをどんなショートカットに変えてもエラーが出てしまいます。
v2のwikiでの模範のものをコピペしてもエラーが出てもう意味不明になっています。
https://images2.imgbox.com/70/c3/ESlJ4KZ0_o.png
vk1D & Z でも出る
2025/02/07(金) 00:30:09.34ID:HggB2B0e0
とりあえず動くものを作るのは簡単なんだよな
でも大抵安定しない
ちゃんと動くようにするのに膨大なノウハウが要る
でも大抵安定しない
ちゃんと動くようにするのに膨大なノウハウが要る
216名無しさん@お腹いっぱい。
2025/02/07(金) 00:38:26.71ID:PFbhh6eV0 https://qiita.com/DaijiroNozaki-afk/items/925f4cbbe58bf7e139ac
こちらのページのコードを丸コピペしてもエラーが出てしまいます。
https://images2.imgbox.com/9d/83/qdXJNTPS_o.png
::q[[::
{
TimeString := FormatTime(,"yyyyMMdd")
Send TimeString
}
で::q[[::のままでもだめですし別の組み合わせにしてもだめです。
v1のように日付をワンクリックで出したいだけなのにエラーが出続けてしまいます。おわかりの方ご教授お願いします。
こちらのページのコードを丸コピペしてもエラーが出てしまいます。
https://images2.imgbox.com/9d/83/qdXJNTPS_o.png
::q[[::
{
TimeString := FormatTime(,"yyyyMMdd")
Send TimeString
}
で::q[[::のままでもだめですし別の組み合わせにしてもだめです。
v1のように日付をワンクリックで出したいだけなのにエラーが出続けてしまいます。おわかりの方ご教授お願いします。
2025/02/07(金) 02:30:56.61ID:HGAX6BxI0
>>211
文字コードUTF8にした?BOMありなし2つある
文字コードUTF8にした?BOMありなし2つある
2025/02/07(金) 02:36:04.80ID:HGAX6BxI0
2025/02/07(金) 12:26:19.90ID:uuSqUfJ50
>>216
Errorの概要にある通りです
ホットキー/ホットストリングは関数またはクラスの中では許可されていません
つまり、ahk v2 convert.ahkの89行目は関数かクラスの{}内にあるので動きませんと言う事です
QuickConvertorV2の文字化けについては、とりあえず最新版でなければgithubから最新版をDLしてください
QuickConvertorV2のウィンドウにコピペする際に、クリップボード拡張アプリを使用しているか
クリップボードの内容を随時チェックしているようなアプリが起動しているなら、終了してからコピペしてみてください
そのような物が起動してない場合、一旦メモ帳等に貼り付けてからそれを再度コピペしてみてください
Errorの概要にある通りです
ホットキー/ホットストリングは関数またはクラスの中では許可されていません
つまり、ahk v2 convert.ahkの89行目は関数かクラスの{}内にあるので動きませんと言う事です
QuickConvertorV2の文字化けについては、とりあえず最新版でなければgithubから最新版をDLしてください
QuickConvertorV2のウィンドウにコピペする際に、クリップボード拡張アプリを使用しているか
クリップボードの内容を随時チェックしているようなアプリが起動しているなら、終了してからコピペしてみてください
そのような物が起動してない場合、一旦メモ帳等に貼り付けてからそれを再度コピペしてみてください
2025/02/07(金) 15:56:55.17ID:4X5h+U6w0
>>216
エラーからするとそのコードの前に関数やクラスの閉じていない書きかけ(と見なされ得るもの)があるんでしょう
89という行番号からしてもその部分だけではないだろうし
まず1つのファイルの中にその5行のコードだけ書いたものを実行してみたら
エラーからするとそのコードの前に関数やクラスの閉じていない書きかけ(と見なされ得るもの)があるんでしょう
89という行番号からしてもその部分だけではないだろうし
まず1つのファイルの中にその5行のコードだけ書いたものを実行してみたら
2025/02/07(金) 21:37:44.39ID:WP1TaeCW0
テストコードは
test.ahkに最小のコードを書いて
対象を
__TEST__.txt ahk_exe notepad.exe
にしてやるといいぞ
test.ahkに最小のコードを書いて
対象を
__TEST__.txt ahk_exe notepad.exe
にしてやるといいぞ
2025/02/07(金) 21:44:00.80ID:WP1TaeCW0
あと無理にホットキー形式にしないで
OutputDebugしてDebugView++でキャプチャするとめっちゃわかりやすい
OutputDebugしてDebugView++でキャプチャするとめっちゃわかりやすい
2025/02/07(金) 22:58:40.67ID:Hifxdlug0
こんなペースト太郎に、遭遇しても親切しないほうがいいよ。
2025/02/09(日) 00:17:34.52ID:qAcPaRKR0
AHKとは直接関係の無いことなのですが質問させて下さい。
自分の使っている約1万行のAHKスクリプトを編集しようと、メモ帳や秀丸エディタで開いたところ
今までは瞬間に開けていたのに急に開くのに5〜10秒掛かるようになりました。
そこでPCを再起動(高速スタートアップはオフにしてある)してみたのですが変わりませんでした。(数回試したが同じ)
仕方なく今度はシャットダウン→しばらく放置→起動、とするとなぜかまたメモ帳や秀丸で一瞬で開けるようになりました。
再起動と、シャットダウン→しばらく放置→起動 は何か違いはあったのでしょうか?
自分の使っている約1万行のAHKスクリプトを編集しようと、メモ帳や秀丸エディタで開いたところ
今までは瞬間に開けていたのに急に開くのに5〜10秒掛かるようになりました。
そこでPCを再起動(高速スタートアップはオフにしてある)してみたのですが変わりませんでした。(数回試したが同じ)
仕方なく今度はシャットダウン→しばらく放置→起動、とするとなぜかまたメモ帳や秀丸で一瞬で開けるようになりました。
再起動と、シャットダウン→しばらく放置→起動 は何か違いはあったのでしょうか?
2025/02/09(日) 00:19:59.08ID:OVE/Aae60
キャッシュに入ってるとHDDではなくRAMから読むので速い
2025/02/09(日) 04:09:48.88ID:77TrQ7e50
v2ってすべてのArrayに自動で独自メソッド生やせるようになった?
[3,2,1].Sort().Show()
みたいな感じで
[3,2,1].Sort().Show()
みたいな感じで
2025/02/09(日) 10:55:51.32ID:RNHqEW9L0
>>226
自動で と言うのは分かりませんが独自メソッドは定義できます
Array.Prototype.DefineProp("Sort", { Call: ArraySort })
Array.Prototype.DefineProp("Show", { Call: ArrayShow })
ArraySort(arr, *) {
for v in arr
res .= v "`n"
return StrSplit(Sort(res), "`n")
}
ArrayShow(arr, *) {
for v in arr
res .= v
MsgBox(res)
}
_ := [3, 2, 1].Sort().Show() ; 123
[3, 2, 1].Sort().Show() をそのまま記述すると有効なアクションとは見なされないので
上記のように式中に含めるか、一度変数に代入し arr.Sort().Show() のように必要があります
この手のライブラリなら公式フォーラムとGithubにいくつかあるので必要なら探してみてください
自動で と言うのは分かりませんが独自メソッドは定義できます
Array.Prototype.DefineProp("Sort", { Call: ArraySort })
Array.Prototype.DefineProp("Show", { Call: ArrayShow })
ArraySort(arr, *) {
for v in arr
res .= v "`n"
return StrSplit(Sort(res), "`n")
}
ArrayShow(arr, *) {
for v in arr
res .= v
MsgBox(res)
}
_ := [3, 2, 1].Sort().Show() ; 123
[3, 2, 1].Sort().Show() をそのまま記述すると有効なアクションとは見なされないので
上記のように式中に含めるか、一度変数に代入し arr.Sort().Show() のように必要があります
この手のライブラリなら公式フォーラムとGithubにいくつかあるので必要なら探してみてください
2025/02/10(月) 02:14:17.68ID:ZLtTGvar0
2025/02/10(月) 20:02:02.03ID:+gzUMK3l0
VIA対応キーボードにしたらリマップから簡単なマクロまで組めるからahk卒業しそうだわ
これまでありがとう
これまでありがとう
2025/02/10(月) 20:25:56.35ID:e6xOcmLT0
2025/02/10(月) 20:57:12.50ID:+gzUMK3l0
>>230
一番のメリットはキーボードに直接書き込むのでフック特有の不安定さがないしPCを変えても変更が維持されるしBIOSでも使える
例えばcapsとctrlを交換しても誤認識されることは100%ないし単打ち長押しで修飾キー押しっぱなしも起こらない
一番のメリットはキーボードに直接書き込むのでフック特有の不安定さがないしPCを変えても変更が維持されるしBIOSでも使える
例えばcapsとctrlを交換しても誤認識されることは100%ないし単打ち長押しで修飾キー押しっぱなしも起こらない
2025/02/10(月) 21:14:42.73ID:C6SBR5hu0
BIOSを除外すると、VIAでできることはレジストリでできるのでは
2025/02/10(月) 22:18:58.56ID:gnORNCJm0
何を言っているのか分からない
2025/02/11(火) 01:34:14.15ID:eXxkRJ6N0
VIA対応キーボードの簡単なマクロって本当に簡単なマクロでHELLOくらいじゃねーかwww
ahkは本当に複雑なプログラムが書けるから単なるリマップと違う
時間を損した
ahkは本当に複雑なプログラムが書けるから単なるリマップと違う
時間を損した
2025/02/11(火) 08:16:32.06ID:i0v4lAOV0
236名無しさん@お腹いっぱい。
2025/02/11(火) 14:03:25.85ID:TcJ4A/SL0 >>218
UTF-8のBOM付き、ありでもどちらでも駄目でした。
https://i.imgur.com/loofcAc.png
https://i.imgur.com/ltSCJVq.png
1行にショートカットだけ記載していますがそこだけエラーが出ます。
https://qiita.com/DaijiroNozaki-afk/items/925f4cbbe58bf7e139ac(こちらのものをコピペ)
なぜなんでしょうか・・。途方に暮れています。
UTF-8のBOM付き、ありでもどちらでも駄目でした。
https://i.imgur.com/loofcAc.png
https://i.imgur.com/ltSCJVq.png
1行にショートカットだけ記載していますがそこだけエラーが出ます。
https://qiita.com/DaijiroNozaki-afk/items/925f4cbbe58bf7e139ac(こちらのものをコピペ)
なぜなんでしょうか・・。途方に暮れています。
237名無しさん@お腹いっぱい。
2025/02/11(火) 14:14:11.59ID:TcJ4A/SL0 また、ボタンを押しっぱなしにしたときにツールチップで出すものもv2ではエラーが出てしまいます。
https://i.imgur.com/7spFDBd.png
エラーがこんな感じで出てしまい、v2への変換では駄目、ネットでv2での押しっぱなしを表示するスクリプトを探してもヒットしません。
https://i.imgur.com/Y4UL2rS.png
こちらv2でも再現可能でしょうか?
https://i.imgur.com/7spFDBd.png
エラーがこんな感じで出てしまい、v2への変換では駄目、ネットでv2での押しっぱなしを表示するスクリプトを探してもヒットしません。
https://i.imgur.com/Y4UL2rS.png
こちらv2でも再現可能でしょうか?
2025/02/11(火) 14:25:50.61ID:hvrdtsnx0
2025/02/11(火) 14:44:57.82ID:hvrdtsnx0
::q[[::
{
TimeString := FormatTime(, "yyyyMMdd")
Send TimeString
}
はv2だが、
v2を、v1からv2にconvert(変換)しようとしてない?
{
TimeString := FormatTime(, "yyyyMMdd")
Send TimeString
}
はv2だが、
v2を、v1からv2にconvert(変換)しようとしてない?
2025/02/11(火) 14:58:44.74ID:hvrdtsnx0
v2は%なんか使わない
%A_LoopField%はA_LoopFieldにしてみれば?
%A_LoopField%はA_LoopFieldにしてみれば?
241名無しさん@お腹いっぱい。
2025/02/11(火) 15:03:55.48ID:TcJ4A/SL0 >>238
すいません。文字化けはVSCODEに入れて文字コードを変更すると直りました。
ありがとうございます。
UTF-8に直すのは文字化けの方ではなく、エラーが治る可能性があるのでコードを変えたほうがいい、という意味と思っていました。
すいません。文字化けはVSCODEに入れて文字コードを変更すると直りました。
ありがとうございます。
UTF-8に直すのは文字化けの方ではなく、エラーが治る可能性があるのでコードを変えたほうがいい、という意味と思っていました。
242名無しさん@お腹いっぱい。
2025/02/11(火) 15:06:54.31ID:TcJ4A/SL0 >>240
%A_LoopField%をA_LoopFieldにしてみました。
https://i.imgur.com/558etmP.png
;押され続けていることをツールチップで知らせる対策
#SingleInstance
Persistent
keys := "Ctrl|Shift|Alt|LWin|RWin"
alertDur := "3000" ;(ms)
SetTimer(Alerter,200)
return
Alerter()
{ ; V1toV2: Added bracket
global ; V1toV2: Made function global
alert := ""
Loop Parse, keys, "|"
{
A_LoopField := !GetKeyState(A_LoopField) ? 0 : !A_LoopField ? A_TickCount : A_LoopField
alert .= (A_LoopField && (A_TickCount - A_LoopField) > alertDur) ? "[" A_LoopField ": " (A_TickCount - A_LoopField) "ms]" : ""
}
ToolTip(alert)
}
%A_LoopField%をA_LoopFieldにしてみました。
https://i.imgur.com/558etmP.png
;押され続けていることをツールチップで知らせる対策
#SingleInstance
Persistent
keys := "Ctrl|Shift|Alt|LWin|RWin"
alertDur := "3000" ;(ms)
SetTimer(Alerter,200)
return
Alerter()
{ ; V1toV2: Added bracket
global ; V1toV2: Made function global
alert := ""
Loop Parse, keys, "|"
{
A_LoopField := !GetKeyState(A_LoopField) ? 0 : !A_LoopField ? A_TickCount : A_LoopField
alert .= (A_LoopField && (A_TickCount - A_LoopField) > alertDur) ? "[" A_LoopField ": " (A_TickCount - A_LoopField) "ms]" : ""
}
ToolTip(alert)
}
2025/02/11(火) 15:28:50.18ID:yC9vFMMi0
2025/02/11(火) 15:33:13.87ID:3hmxavYH0
>A_LoopField := !GetKeyState(・・・
v2って組み込み変数に代入できんの?
v2って組み込み変数に代入できんの?
2025/02/11(火) 15:42:33.64ID:1w0YfMSU0
v2エキスパート様の指示に従っただけだろ
2025/02/11(火) 18:14:03.80ID:Anqf/YPY0
>>244
A_LoopField はできるかどうか知らんけど(多分できないっぽいけど)、A_Index はできる。
A_LoopField はできるかどうか知らんけど(多分できないっぽいけど)、A_Index はできる。
2025/02/11(火) 22:38:08.90ID:Hb9fTKS90
今でもインデックス見たかったらA_Indexが必須なんだっけ?
2025/02/12(水) 07:50:00.61ID:ZgbeZc7Z0
>>247
わざわざ自前でループカウンタの管理をする必要性も感じないし、A_Index で良いんじゃね?
A_Index に代入するのは、例外処理等でループを終了させたいときとかやろ。
公式のリファレンスにコード例があるで。
わざわざ自前でループカウンタの管理をする必要性も感じないし、A_Index で良いんじゃね?
A_Index に代入するのは、例外処理等でループを終了させたいときとかやろ。
公式のリファレンスにコード例があるで。
2025/02/12(水) 09:00:17.26ID:/0lqAyhh0
keys := StrSplit("Ctrl|Shift|Alt|LWin|RWin", "|")
for i,v in keys
自分ならこうだな
最初にばらした方が速いしloop構文キモイ
for i,v in keys
自分ならこうだな
最初にばらした方が速いしloop構文キモイ
250名無しさん@お腹いっぱい。
2025/02/12(水) 15:46:40.17ID:Y+gunsEw0 loop使わないなら最初から配列かオブジェクトでいい気がする
|区切りって配列が面倒くさかったころの古いノウハウだし
|区切りって配列が面倒くさかったころの古いノウハウだし
2025/02/12(水) 16:02:21.54ID:NzbvN+Ov0
互換性なんかなくなっていいからまともな文法にするべきだな
2025/02/13(木) 14:21:52.11ID:l8L1M8QT0
nirsoftがなんか便利なの作ってた
https://www.nirsoft.net/utils/gui_prop_view.html
https://www.nirsoft.net/utils/gui_prop_view.html
2025/02/13(木) 14:49:05.75ID:GRxp5KCl0
GUIでなくてよくないか
2025/02/13(木) 17:13:32.64ID:GoXVam/80
2025/02/13(木) 17:31:43.66ID:GRxp5KCl0
powershellなら1行で書けそうなんだよな
2025/02/13(木) 17:33:53.01ID:GRxp5KCl0
最前面に表示させときたいアプリがあって
ahkがあれば簡単だけど会社のPCなので、
powershellでできないか頑張ったけど無理だった
似たようなことしてるサンプルを丸コピーしても無理
なんでこんなにハードル高いのか意味判らん
ahkがあれば簡単だけど会社のPCなので、
powershellでできないか頑張ったけど無理だった
似たようなことしてるサンプルを丸コピーしても無理
なんでこんなにハードル高いのか意味判らん
2025/02/13(木) 18:03:56.17ID:2nd5jquI0
>>254
各ウインドウのハンドルとかIDとかポジションとか調べられるし、操作もできる
各ウインドウのハンドルとかIDとかポジションとか調べられるし、操作もできる
2025/02/14(金) 19:46:49.55ID:q8lgCfFr0
edgeの開くを押すのが面倒だから自動で押せるようにしてたのに、
また体裁が変わった
また体裁が変わった
2025/02/14(金) 19:51:40.41ID:YyCUWdwR0
2025/02/15(土) 01:11:26.59ID:DYvmQeHk0
ChatGPTの4oはAutohotkey v2に対応してるな
ほかのAIはv1ばっかり吐き出すけど
v1使ってる奴は早くv2に移れ
ほかのAIはv1ばっかり吐き出すけど
v1使ってる奴は早くv2に移れ
レスを投稿する
ニュース
- 【インバウンド】中国からの“渡航自粛”…ツアー1000人分の直前キャンセル「キャンセル料は免除してくれ」 ことしいっぱいキャンセルに [1ゲットロボ★]
- 「国民の憤りを引き起こした」中国側“高市首相発言の撤回改めて要求” [どどん★]
- 【芸能】日中関係悪化でエンタメ業界に大ダメージ… JO1の中国でのイベント中止、邦画は公開延期、STARTOアイドルへの影響も [冬月記者★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- 【ローソン】ロゴの「L」で誤解生んだコーヒーカップ、デザイン変更へ 在庫使い切る3か月後にリニューアル [ぐれ★]
- パラドゲーやってる人に聞きたい総理の発言がそのまま国家意思になるって中世かよ [279479878]
- 【速報】Gemini 3 正式リリース。世界最強 LLMs の座は再び Google へ [803137891]
- 【高市早苗】バス会社、中国からのキャンセルで12月で2000万円~3000万円の損失へ [115996789]
- 米シンクタンク「アメリカは台湾問題で"あいまい戦略"を取っている。高市早苗はこの方針から逸脱している」 [603416639]
- かしこいワンコっていうVtuberの子知ってる?
- インバウンド観光客は経済のアヘン。不景気の鎮痛はできるが中毒になり破滅する。止めるには苦しみが伴う💉 [422186189]
