- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
1 :名無しさん@お腹いっぱい。 転載ダメ©2ch.net (ワッチョイ f977-fKjf)[]:2017/09/14(木) 11:52:40.84 ID:uijNj4qb0 -
■配布元 http://ahkscript.org/download/ ■前スレ AutoHotkey スレッド part24 http://egg.2ch.net/test/read.cgi/software/1487149472/ ■日本語解説等 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: checked:vvvvv:1000:512:----: EXT was configured 👀 Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
2 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 11:53:33.21 ID:uijNj4qb0 - ■重要事項
オリジナルである、旧 "AutoHotKey" の開発は2009年9月で終了している。 現在は、そこからフォークした "AutoHotkey_L" が主流となり、2014年1月からは後のLが取れ 正式にAutohotkeyとして扱われるようになりました。 よって古いスクリプト(主にDllCall()を利用しているスクリプト)は最新Verで動作しないものがあり、 その場合はスクリプトの修正が必用です。 旧版のAHKとの変更点多数。新しい仕様や互換性についてはドキュメントを良く読むこと。 →http://ahkscript.org/docs/AHKL_Features.htm →http://ahkwiki.net/Addition_L ※新規利用者には最新版を推奨しますが、旧AHK(2009年9月までのVer)の利用者は新AHKへの移行に際して 少なからず改修が必要となります。特に、旧流行らせるページの配布物(MouseGesture等)の多くは そのままでは動作しません。安定利用できている環境を崩して移行するかどうかは各人の判断による。 MouseGestureについては有志の方が最新AHK対応版(MouseGestureL.ahk)を配布しているのでそれを 利用するのもありです。 http://hp.vector.co.jp/authors/VA018351/mglahk.html http://code.google.com/p/mousegesturel/ ※ACC.ahk(旧版用)とCOM.ahkはフォーラムのリンク先にファイルが存在しませんので下記から入手してください。 http://ux.getuploader.com/autohotkeyl/download/24/ACC%2BCOM.zip ※Unicode版のACC.ahkは下記(AccInfoViewer.ahk付き)またはフォーラムから入手してください。 http://ux.getuploader.com/autohotkeyl/download/76/ACC_Unicode_and_AccInfoViewer_kai.zip ■質問に際して OSの種類(XP/Vista/7)や32/64ビット版の違い、利用するAutoHotkeyのバージョンを明記すること。 また、操作したいソフト・やりたい処理などは具体的に書いた方がレスが付きやすい傾向にある。 2chの仕様の関係で、このスレではインデントに全角スペースを使ってコードを貼り付ける事があるので、 レスをコピペして利用する場合は行頭の全角スペースをタブ等に置換してから利用すること。 👀 👀 Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
3 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 11:54:40.33 ID:uijNj4qb0 - ■過去スレ
Part1 http://pc7.2ch.net/test/read.cgi/software/1098531338/ Part2 http://pc7.2ch.net/test/read.cgi/software/1129836713/ Part3 http://pc11.2ch.net/test/read.cgi/software/1157043396/ Part4 http://pc11.2ch.net/test/read.cgi/software/1184556627/ Part5 http://pc11.2ch.net/test/read.cgi/software/1201502896/ Part6 http://pc11.2ch.net/test/read.cgi/software/1219130051/ Part7 http://pc12.2ch.net/test/read.cgi/software/1230694774/ Part8 http://pc12.2ch.net/test/read.cgi/software/1243005818/ Part9 http://pc12.2ch.net/test/read.cgi/software/1253888736/ Part10 http://pc12.2ch.net/test/read.cgi/software/1265518996/ Part11 http://hibari.2ch.net/test/read.cgi/software/1280482227/ Part12 http://hibari.2ch.net/test/read.cgi/software/1296446228/ Part13 http://anago.2ch.net/test/read.cgi/software/1317156599/ Part14 http://anago.2ch.net/test/read.cgi/software/1333372506/ Part15 http://anago.2ch.net/test/read.cgi/software/1349735581/ Part16 http://anago.2ch.net/test/read.cgi/software/1367725658/ Part17 http://anago.2ch.net/test/read.cgi/software/1383384464/ Part18 http://anago.2ch.net/test/read.cgi/software/1398655195/ Part19 http://anago.2ch.net/test/read.cgi/software/1411360229/ Part20 http://anago.2ch.net/test/read.cgi/software/1422427426/ Part21 http://anago.2ch.net/test/read.cgi/software/1437910497/ Part22 http://potato.2ch.net/test/read.cgi/software/1452881399/ Part23 http://potato.2ch.net/test/read.cgi/software/1470936221/ Part24 http://egg.2ch.net/test/read.cgi/software/1487149472/
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
4 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 11:55:20.32 ID:uijNj4qb0 - 以下FAQ等
■実行環境 Q1:スクリプトに書いた日本語が文字化けしちゃうんだけど... A1:スクリプトファイルを「UTF-8」の「BOM」付きで保存する。(AHK1.1の場合) Q2:初めて使うけどどれを使えばいいの? A2:AHK1.1のユニコード版を推奨。 旧流行らせるページの配布物をそのまま使う場合は本家をそのまま利用する事。 64ビットOSでAHK1.1 32ビット版の使用は制約が多いので、64ビット版を強く推奨。 ■ リマップ・ホットキー割り当て Q1:[CapsLock(英数)][ひらがな][全角/半角]キーの割り当てがうまくいかないよ A1:OSのローカライズ段階で発生してる問題なので日本語環境だとLock系キーの動作は不定。 OS側がキーUp/Down情報を正しく返してこないのでAHKのみで対処は無理です。 レジストリ変更等で別キーへ再配置を行い、AHKで割り当てを行うという二段構えが必要。 例) ChangeKeyを使って[ひらがな]を[F13]にする AutoHotkeyで任意のキーをF13にリマップする(例えばF12をF13にリマップし、スクリプトを実行)。 F12::F13 Changekeyを起動する。( http://www.forest.impress.co.jp/library/software/changekey/ ) 「調査」→「どのキーなのか?またはスキャンコードでキーを変更します」を選択。 F12を押すとスキャンコード(0x0064はF13)が表示されるので覚えておき「終了」をクリック。 「ひらがな」キーをクリックすると「【ひらがな】キーをどのキーに変更しますか?」という ウィンドウが表示されるので右上の「Scan code」をクリック。 覚えておいたスキャンコード(0064)を入力し、「OK」ボタンをクリック。 「登録」をクリックし、Windowsを再起動する。
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
5 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 11:55:58.23 ID:uijNj4qb0 - Q2:「^1::Esc」とリマップ定義したけど [Ctrl]+[1] を押したらスタートメニューが出ちゃうけどどうすればいいの?
A2:リマップは修飾キー(Ctrl,Shift,Alt,Win)の押下状態を引き継いでキー発行するので、[Ctrl]+[Esc] がキー送信されるため。 これを避けるには、「Send」コマンドを利用して明示的に修飾キーなしのキーを発行をすればよい。 ^1::Send, {Esc} Q3:[Shift], [Ctrl], [Alt], [Win]以外を修飾キーとしてキー割り当てしたいよ A3:コンビネーションキーの機能で実現ができる。 例) 無変換 + IKJLキーをそれぞれ「↑↓←→」に割り当てたい場合は以下のように記述する。 sc07B & I::Send, {Blind}{Up} sc07B & K::Send, {Blind}{Down} sc07B & J::Send, {Blind}{Left} sc07B & L::Send, {Blind}{Right} Q4:「XX hotkeys have been received in the last XXXXms.」って怒られるんだけど、、、(XXは環境による) A4:多分自分自身のキーを送って無限ループになっている。 例) 「a::Send, a 」 先頭に $ を付ければ回避できる(NT系のみ)。 例) 「$a::Send, a」 #UseHookで全部にキーボードフックを適応する方法でも可。 Q5:キーリマップを使うとキー押下中に連打するけど、マウスボタンの場合は連打しない… A5:マウスはキーリピートしないので、Loopなどを使って自前でリピートさせてください。 Q6:ジョイスティックのリマップがうまくいきません!!助けて A6:ジョイスティックではリマップできない。「Send」コマンドでキー発行する必要がある。 × Joy1::Esc ○ Joy1::Send, {Esc} Q7:ジョイスティックの上下左右に割り当てたいけど、JoyLeft,JoyUpってホットキーは無いの? A7:無い。AHKのジョイスティックサポートはかなり貧弱なのでプログラマブルにやる必要がある。
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
6 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 11:57:01.04 ID:uijNj4qb0 - Q8:ジョイスティックのボタン1とボタン2の入れ替えなどはどうやってやるの?
A8:AutoHotkeyではできない。 Q9:[Ctrl][Shift][Alt]が押されっぱなしになる時がある。これってAHKのせい? A9:AHKが原因の場合とそうでないときがある ○AHKが原因の場合 AHKには、以下のような修飾キー付きのホットキーで修飾キー無しでキーを発効する場合、 一時的に修飾キー押下を解除して、発効後に押下状態を再度設定する機構がある。 しかしこのように発効するキーストロークが多い場合は、Sendコマンドが完了する前に 物理キーが押下解除されてしまっている場合がある。この齟齬が押しっぱなしの原因となる。 例) ^W::Send, {w 30} これを回避するためには、以下の方法をとればよい: ・キー押下状態を常に監視するキーボードフックを導入する(#InstallKeybdHook) ・キー発効のコマンドを SendInput, SendPlay にする(SendModeで一括指定でもよい) ・上記二つが出来ない場合は、SetKeyDelay, 0 等としてキー発効をなるべく早く行うか、 #HotkeyModifierTimeout で修飾キー押下のタイムアウト値を長めに設定をする。 なお、他のキー発効を行うツール(クリップボードユーティリティやマウスジェスチャツールなど)が、 発効する修飾キーが原因となる場合もあるが、フックの導入でほぼ解決出来ると思われる。 ○AHK以外が原因の場合: 環境により異なるので何とも言えないが、以下のような環境の場合発生する事が報告されている。 ・ Logicool(Logitec)のマウスユーティリティSetPoint(verによっては問題ない事もあるとか)など他多数 ・VirtualPC, WMWare, 窓使いの憂鬱 等のキーボードフィルタドライバを用いるアプリケーションを使っている
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
7 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 11:57:51.02 ID:uijNj4qb0 - ■ IME関連
Q1:IMEのOn/Offの切り替えや、状態を得るにはどうすればいいの? A1:http://www6.atwiki.jp/eamat/pages/17.html の「IME.ahk」を使いましょう。 Q2:IMEが現在文字を入力している、または変換中であるかどうかを得ることはできる? A2:↑のIME.ahkで一部可能(IEやFirefox,MS-Wordのようにインライン化しているアプリでは無理) ■ その他 Q1:「a=abc」と「a:="abc"」って違いがある? / 「If a=1」と「If (a=1)」って違いがある? A1:意味としては違いは無い。単体では、コマンド形式(共に前者)の方が「式」形式(同後者)より*少し*速い。 複数条件の場合、IfのネストよりはAND(&&)条件で「式」を並べた方が速い。 が、バッチでかなりの回数(数万↑〜)回したりする場合以外は、体感出来るほどの差はない。 Q2:テキストエディタでキーワードの色づけなどをしたいんだけど。 A2:wikiに各種エディタの定義ファイル及びキーワード一覧あり。( http://ahkwiki.net/Tools ) Q3:GUI作るのめんどくせ〜〜 A3:海外の有志が作ったツールを使うと楽。 SmartGUI Creator ( http://www.autohotkey.com/board/topic/738-smartgui-creator/ ) GUI Creator ( http://ahkscript.org/boards/viewtopic.php?f=6&t=303 ) Q4:AHKってマルチスレッドじゃないの? タイマーやMsgBox, WinWait, KeyWaitを使ってるけど思った通りに動かない。 A4:「擬似マルチスレッド」です。最後に割り込んだスレッドが終わるまで元スレッドは動きません。 MsgBox、WinWait、KeyWait、Process,WaitClose などをタイマーで複数動かす時は注意。 > 要は処理系統が複数同時に走らないってこと。図にするとこんな感じ。 > → 実行中、 …:割り込み終了待ち > 元スレッド →→→→→→……………………………………→→→→ > ★割込 ↑再開 > 割り込みスレ →→→→…………→→→→→→END > ◆割込 ↑再開 > 更に割り込み →→→END
|
- AutoHotkey スレッド part24 [無断転載禁止]©2ch.net
997 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[]:2017/09/14(木) 12:08:58.65 ID:uijNj4qb0 - 次スレです。
AutoHotkey スレッド part25 http://egg.2ch.net/test/read.cgi/software/1505357560/ 連投規制でテンプレを最後まで貼れなかったので、誰かヨロ。
|
- AutoHotkey スレッド part24 [無断転載禁止]©2ch.net
998 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[]:2017/09/14(木) 12:12:14.96 ID:uijNj4qb0 - あ、しまった、いま気付いたけど、
「!extend:checked:vvvvv:1000:512と次スレを立てる際は1行目に記入してください」 は>>1の頭に2回書かないといけないのか。 最近の2chは色々と難しいなあ…。
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
8 :>>1より、テンプレに割り込んで業務連絡。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 12:15:31.88 ID:uijNj4qb0 - 次スレを立てる際は、1行目に「!extend:checked:vvvvv:1000:512」と記入してください。
その行はスレが立った時点で消えてなくなるので、 告知のため、その呪文を2行目以降に再度書いてください。
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
9 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 12:17:11.83 ID:uijNj4qb0 - Q5:AHK(A32)、AHKLx86(U32)、AHKLx64(U64)の共存は出来る?
A5:それぞれを違うフォルダにインストールする(最新版は分ける必要無し) 但し、インストーラーを使って最後にインストールしたAutohotkeyに対して ahkファイルの関連付けが行われるので、レジストリエディタ(Regedit.exe)や FileTypesMan等のツールを使って関連付を変更してください。 ahkファイルをAHK(A32)、ahlファイルをAHKLx86(U32)、ah6ファイルをAHKLx64(U64) といったように別々の拡張子に関連付けが可能です。 それぞれに関連付けしたファイルに対してドラッグアンドドロップを有効にするにはレジストリの [HKEY_CLASSES_ROOT\ファイルタイプの名前\ShellEx\DropHandler] の (規定) のデータを {86C86720-42A0-1069-A2E8-08002B30309D} にする。
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
10 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 12:17:32.04 ID:uijNj4qb0 - Q6:Windows Vista(以降)で管理者権限のウィンドウ操作やSendPlayが効かないんだけど?
A6:OSのセキュリティ機能であるユーザーアカウント制御(UAC)にブロックされている。 ■回避策 1:管理者として実行 Autohotkey.exeを右クリックしてプロパティを開き、「互換性」→「管理者としてこのプログラムを実行する」にチェック。 スクリプトに記載する方法もある( http://www.autohotkey.com/board/topic/94126-ahk-problem-with-uac-and-privileges/ ) 2:対策パッチ 実行ファイルのマニフェスト書き換え、自己署名証明書のインストールが行われる。 ※AutoHotkey.exeはProgram Files以下に置く必要がある。 http://www.autohotkey.com/board/topic/70449-enable-interaction-with-administrative-programs/ 3:UAC停止 ※注意!! 必ずHIPS機能がある他のセキュリティ対策ソフトを導入してください。 「コントロールパネル」→「ユーザーアカウント」 Vista:「ユーザーアカウント制御の有効化または無効化」→ チェックボックスをオフ。 7/8/8.1:「ユーザーアカウント制御設定の変更」→ スライドバーを一番下に。 ※Windows 8/8.1では上記に加えレジストリを変更する必要があります。(注意:Windowsストアアプリが実行できなくなる) HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System 「EbableLUA」の値を「0」に変更。
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
11 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 12:18:05.36 ID:uijNj4qb0 - ■AutoHotkeyの系譜
┌ AHK64(統合) │ AutoIt .│ ┌ AHK_U(統合) │ │ │ AutoHotkey(1.0) ─ Autohotkey_L ┬ Autohotkey(1.1) ←いまここ │ │ │ └ IronAHK× │ └ Autohotkey v2(α版) │ │ └ AutoHotkey.dll .├ AutoHotkey_H v2 │ │ │ │ └ AutoHotkey_H │ └ AutoHotkey_N× ■メインストリーム AutoHotkey 1.0(開発終了) http://www.autohotkey.com/ Autohotkey 1.1 (Autohotkey_L) http://ahkscript.org/ ■開発中 Autohotkey v2(下位互換性を排除して操作利便性の向上) http://ahkscript.org/v2/
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
12 :名無しさん@お腹いっぱい。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 12:18:34.38 ID:uijNj4qb0 - ■派生版
IronAhk(.NET製、クロスプラットフォーム。開発終了) http://www.ironahk.net/ AutoHotkey.dll(真のマルチスレッド対応) http://www.autohotkey.com/board/topic/39588-autohotkeydll/ AutoHotkey_N(開発終了) AutoHotkey_H http://www.autohotkey.net/~HotKeyIt/AutoHotkey/files/AutoHotkey-txt.html ■統合 AHK_U(Unicode版) http://www.autohotkey.com/board/topic/46563-unicode-version-of-autohotkey/ AHK64(64bit版) http://www.autohotkey.com/board/topic/53878-autohotkey64-64-bit-autohotkey-l-updated-62410/ ■スクリプト作成支援ツール AutoHotKey専用エディター ※必須ではありあせん。 SciTE4AutoHotkey http://fincs.ahk4.net/scite4ahk/ GUI作成ツール SmartGUI Creator http://www.autohotkey.com/board/topic/738-smartgui-creator/ GUI Creator http://ahkscript.org/boards/viewtopic.php?f=6&t=303 AutoGUI https://www.autohotkey.com/boards/viewtopic.php?t=10157 ※テンプレここまで
|
- AutoHotkey スレッド part25 [無断転載禁止]©2ch.net
13 :>>1より業務連絡。 (ワッチョイ c977-fKjf)[sage]:2017/09/14(木) 12:21:12.97 ID:uijNj4qb0 - テンプレの一部(このスレの>>9-10)は前スレではまとめて1つのレスだったのですが、
スレを埋め立てているのではと判定されてしまったため、 今回は分割して貼り込んであります。
|