2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

AutoHotkey スレッド part27

1 :名無しさん@お腹いっぱい。 :2019/04/20(土) 23:32:53.28 ID:cTmLtZyf0.net
!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)


2 :名無しさん@お腹いっぱい。 :2019/04/20(土) 23:33:51.96 ID:cTmLtZyf0.net
■重要事項
オリジナルである、旧 "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)


3 :名無しさん@お腹いっぱい。 :2019/04/21(日) 00:01:56.16 ID:jvh47c/h0.net
■過去スレ
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/
Part25 https://egg.5ch.net/test/read.cgi/software/1505357560/

4 :名無しさん@お腹いっぱい。 :2019/04/21(日) 00:02:41.14 ID:jvh47c/h0.net
以下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を再起動する。

5 :名無しさん@お腹いっぱい。 :2019/04/21(日) 00:03:14.16 ID:jvh47c/h0.net
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のジョイスティックサポートはかなり貧弱なのでプログラマブルにやる必要がある。

6 :名無しさん@お腹いっぱい。 :2019/04/21(日) 00:03:53.53 ID:jvh47c/h0.net
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, 窓使いの憂鬱 等のキーボードフィルタドライバを用いるアプリケーションを使っている

7 :名無しさん@お腹いっぱい。 :2019/04/21(日) 00:04:25.65 ID:jvh47c/h0.net
■ 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

8 :名無しさん@お腹いっぱい。 :2019/04/21(日) 01:36:47.15 ID:jvh47c/h0.net
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} にする。

9 :名無しさん@お腹いっぱい。 :2019/04/21(日) 01:37:17.74 ID:jvh47c/h0.net
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」に変更。

10 :名無しさん@お腹いっぱい。 :2019/04/21(日) 01:37:53.10 ID:jvh47c/h0.net
■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/

11 :名無しさん@お腹いっぱい。 :2019/04/21(日) 01:38:28.96 ID:jvh47c/h0.net
■派生版
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

※テンプレここまで

12 :名無しさん@お腹いっぱい。 :2019/04/21(日) 15:50:19.34 ID:M3X0BWV50.net
下記のスクリプトを作りました
関数fffで、引数としてジャンプの飛び先ラベル名を入力してそこに飛んで行きたいのですが出来ません
出来る方法はありませんか
ラベルが関数内にあれば出来るようですが、関数外のラベル名に飛びたいのです

fff( "labelJ" )
return

fff( la )
{
MsgBox %la%
goto %la%
}

labelJ:
MsgBox Label J!
return

q::ExitApp, 0

13 :名無しさん@お腹いっぱい。 :2019/04/21(日) 15:59:56.89 ID:2WbJZntU0.net
ラベルやめて関数にすればいい

14 :名無しさん@お腹いっぱい。 :2019/04/21(日) 16:05:53.19 ID:jO7wRSRO0.net
>>12
Gosub
ttp://ahkwiki.net/Function#.E9.96.A2.E6.95.B0.E5.86.85.E3.81.8B.E3.82.89.E3.81.AEGosub.2FGoto.2FExit

15 :名無しさん@お腹いっぱい。 :2019/04/21(日) 16:09:53.75 ID:M3X0BWV50.net
背景を説明すると、もともと、
fff( la )
{
loop, 100
{
処理
}
}
という関数があるのですが、処理に時間がかかってその間他の処理ができなくなるので、これを分けて、
fff( la )
{
static cnt = 0
labelStart:
{
処理
cnt := cnt+1
if( cnt > 100 )
{
goto %la%
return
}
SetTimer, labelStart, -50
return
return
}
として、途中で他の処理が割り込めるようにしようとしたのです。 そしてこの処理が終わった時にジャンプで
外に飛び出したいのです

16 :名無しさん@お腹いっぱい。 :2019/04/21(日) 16:35:49.77 ID:M3X0BWV50.net
>>14
そうか。 gosubを使えばなんとかなるかもですね

17 :989 :2019/04/21(日) 16:36:26.18 ID:gr8NQEgj0.net
前スレ989です

$WheelDown::
Send, {WheelDown}

If( GetKeyState( "RButton", "P" ) ) {

Send, ^w
}
Return

$RButton::
Send, {RButton Down}
KeyWait RButton
Send, {RButton Up}
Return

で、「右ボタンを押しながらホイールダウンしたらブラウザのタブを閉じる」
というマウスジェスチャーを作ったのですが
このままだとタブを閉じたあとに{RButton Up}に反応して右クリックメニューが開かれてしまうのをどうにかしたいと思っています

RButton & WheelDown:: Send, ^w
とかだと右ボタンを離すまで{RButton Down}もされなくなるのが困るので別の方法を取りたいのですが…

MouseGesture.ahkのソースは読んでみましたがちょっと長くてすぐには把握できませんでした…

18 :名無しさん@お腹いっぱい。 :2019/04/21(日) 19:11:52.24 ID:bZs3NeUp0.net
>>17
これから出かけるので未確認&質問を勘違いしてるかもだけど
~RButton & WheelDown:: Send, ^w
だけで出来ない?

19 :名無しさん@お腹いっぱい。 :2019/04/21(日) 19:44:25.53 ID:Xq2qDZMO0.net
>>18
勘違いしてるね

20 :名無しさん@お腹いっぱい。 :2019/04/21(日) 19:52:38.92 ID:Xq2qDZMO0.net
>>17
>>18のだけだと結局右クリメニューが表示されるので
右クリ離してメニュー表示された直後にESCでメニューを即キャンセルすればいいんじゃね

~RButton & WheelDown::
Send, ^w
KeyWait, RButton
Send, {ESC}
Return

21 :名無しさん@お腹いっぱい。 :2019/04/21(日) 20:00:03.37 ID:Xq2qDZMO0.net
補足
場合によってはSend,{ESC}の前にsleep遅延入れた方がいいかも

22 :名無しさん@お腹いっぱい。 :2019/04/22(月) 10:43:52.59 ID:HbehiDV40.net
>>17
>右ボタンを離すまで{RButton Down}もされなくなるのが困る

ジェスチャを聞かせたいアプリ(ウィンドウ)とそうでないものを#IfWinActiveで分ける
前者の中の右ボタンを押しはGetKeyStateなりKeyWaitなりで監視して自分で面倒を見る
簡単にやりたいならこれくらいじゃないかね

MGLが難解すぎるというなら簡易マウスジェスチャのMoGe.ahkあたりを見てみたら?
dllcall()使いまくりなのでこれはこれで理解はしんどいが
コメントちゃんと書いてあるので具体的に何やってるかが分かりやすい
https://sites.google.com/site/agkh6mze/strage

23 :名無しさん@お腹いっぱい。 :2019/04/22(月) 18:36:26.25 ID:Cf6Byjh40.net
Firefoxを使ってるんですが、他のウィンドウでは効くのですが、Wordとタスクマネージャーのみで効きません。
タスクマネージャーはどうでもいいので、Wordで使えるように修正して下さい。

「ホイールクリックでウィンドウを閉じる」
~MButton up:: ;タイトルバーをホイールクリック = alt + F4
CoordMode,Mouse,Screen
MouseGetPos, x, y, h
SendMessage,0x84,0,% x|y<<16,,ahk_id %h%
WinGetClass, win_class, ahk_id %h%
;chromeが誤作動するのでchrome以外
If((ErrorLevel=2) && WinActive("ahk_id " . h) && (win_class!="Chrome_WidgetWin_1"))
{
Send,!{F4} ;alt + F4
}
return

24 :名無しさん@お腹いっぱい。 :2019/04/22(月) 18:38:11.43 ID:uGZ/Ojuh0.net


25 :名無しさん@お腹いっぱい。 :2019/04/22(月) 19:13:28.93 ID:e8jPGGEhM.net
お断りします

26 :名無しさん@お腹いっぱい。 :2019/04/22(月) 19:16:52.34 ID:bz+OEW0X0.net
>>23
スクリプトを管理者権限で実行しな
それそのまま試したけどタスクマネージャーでも使えたよ

27 :名無しさん@お腹いっぱい。 :2019/04/22(月) 19:37:54.76 ID:Cf6Byjh40.net
>>26
言われた通りにしたら、タスクマネージャーでは効くようになりましたけど、
やっぱりWordでは効かないですね。

28 :名無しさん@お腹いっぱい。 :2019/04/22(月) 21:00:28.94 ID:EuNz4YJIa.net
時々効かないソフトある
Chromeも無理

29 :名無しさん@お腹いっぱい。 :2019/04/22(月) 23:23:40.11 ID:HbehiDV40.net
うちだとOfficeもChromeも>23で取れてるけどなあ
win10 pro 1809 (ビルド17763.437) / Office365 / AHK 1.1.30.03 (管理者じゃない権限で実行)

けど自作関数見直したらoffice用にタイトルバー検出追加してあったんで
(今はその部分なくても動いてるけど)一応上げときます。
https://gist.github.com/eamatt
https://www6.atwiki.jp/eamat/pages/27.html

30 :名無しさん@お腹いっぱい。 :2019/04/23(火) 07:39:50.20 ID:jY3CUCgpa.net
MGLは当然判別方法にAHKのものを使っている
条件指定をうまくやればできるものもある

31 :名無しさん@お腹いっぱい。 :2019/04/23(火) 11:07:32.28 ID:F5d1wnL0H.net
無変換+カーソル移動を上下左右のホイール回転に割り当てることは可能ですか?

32 :名無しさん@お腹いっぱい。 :2019/04/23(火) 12:48:09.92 ID:dpZFa0jN0.net
>>31
可能です

33 :名無しさん@お腹いっぱい。 :2019/04/23(火) 17:24:15.86 ID:EodBErIWM.net
その心は?

34 :名無しさん@お腹いっぱい。 :2019/04/24(水) 21:43:23.72 ID:Z7F8AeLba.net
前スレのタイマーでのすり抜け防止、一番効果あった
理屈がわかればなるほどだわな

35 :名無しさん@お腹いっぱい。 :2019/04/26(金) 21:43:07.89 ID:YRa+WZQz0.net
数週間前からWheelをからめたスクリプトが急に動かなくなったりするようになったんだけどみんなはそんなことない?
Xbutton1 & Wheel downで動かすスクリプトがあるんだけどこれが急に動かなくなったりする
そうなったらリロードしてスクリプトを読み直すしかない
Windows10のアップデートのせいかなとか思ったんだけど原因がわからず

36 :名無しさん@お腹いっぱい。 :2019/04/26(金) 22:02:35.14 ID:1gkLgiIn0.net
>>35
ないよ

37 :名無しさん@お腹いっぱい。 :2019/04/26(金) 23:53:20.29 ID:VcGv9X7K0.net
vk1Dsc07B:: ;無変換
Flag += 1 ;判定用に変数に加算していく
If Flag = 1
{
MsgBox,1回目
Return
}
If Flag = 2
{
MsgBox,2回目

Return
}
〜〜〜〜〜〜〜〜〜〜〜〜〜中略〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
MsgBox,4回目
Flag = ;変数を空にして1回目に戻る
Return

wikiのサンプルコードに、前回このキーを押してから、3秒以内にこのキーの入力がなければ
Flag=1に戻るコードを組み込みたいんですが、どうしたらいいですか?
※のところに下記コードを入れてみたんですけど何が間違っているんでしょうか?

KeyWait,{vk1Dsc07B},T3
If(ErrorLevel=1)
{
Flag =
}
else
{
}
return

38 :名無しさん@お腹いっぱい。 :2019/04/27(土) 02:54:37.85 ID:7YPJPIal0.net
>>37
ツッコミどころ多いんだがとりあえず仮想キーの書き方は今のバージョンだと
vk1D か sc07B のどちらかにしないとwikiのサンプルコードのままではエラー出る
貼るならちゃんと動くコード貼ろうな

で本題の3秒以内に入力がなければって話だけど、最初のIf分岐の前に
SetTimer, Label, -3000
を入れてサブルーチンでFlagを空にすれば良いだけ
-3000は「3秒後に1回実行」の意味ね

これで3秒以内に無変換押せばFlagは2→3→4と増えて、3秒以内に押さなければ次に押した時は1に戻る

39 :名無しさん@お腹いっぱい。 :2019/04/27(土) 17:04:01.77 ID:wIf5xZ/l0.net
A_PriorHotkey
A_ThisHotkey
A_TimeSincePriorHotkey

この辺組み合わせて適当に判定文をつくる

40 :名無しさん@お腹いっぱい。 :2019/04/27(土) 19:45:13.25 ID:JMzBdnzD0.net
>>38
無事望む結果が得られましたありがとうございます
>>39さんのようにキーを指定することも考えていたのですが
こっちの方がシンプルでいいですね

41 :名無しさん@お腹いっぱい。 :2019/04/27(土) 22:30:24.55 ID:as/WLoHe0.net
autohotkey で、ファイルから読み取った16進文字列を
変数に格納するエレガントな方法はないでしょうか。

いまのコードは長すぎて・・・

StringLen _len, aStr
uc := 0
loop,%_len%
{
 StringMid, c, aStr, A_Index, 1
 _code := Asc(c)
 if _code in 48,49,50,51,52,53,54,55,56,57
 {
  uc := uc*16 + _code - Asc("0")
 } else if _code in 65,66,67,68,69,70
 {
  uc := uc*16 + _code - Asc("A") + 10
 } else {
  uc := uc*16 + _code - Asc("a") + 10
 }
}

aStr に入った16進文字列を数値に変換して 変数 uc に格納するコードです。
もっとエレガントな方がいい。

42 :名無しさん@お腹いっぱい。 :2019/04/28(日) 00:05:30.68 ID:MHWE0sUc0.net
こういうことではなくて?

aStr := "0x0A"
SetFormat, INTEGER, D
dec := aStr + 0
SetFormat, INTEGER, H
hex := aStr + 0
msgbox,% "aStr=" aStr "`ndec=" dec "`nhex=" hex

43 :名無しさん@お腹いっぱい。 :2019/04/28(日) 02:49:42.39 ID:hWAEyTOu0.net
見識のある方いれば…

GetKeyState関数で修飾キー(alt)を検知しようとするとアクティブウィンドウへの入力を食ってしまうようなのですが、なにか良い回避策無いでしょうか?

やりたいこととしては、同一ゲーム(ff14)を2画面起動して同時操作のために1つのキーボードから入力をそれぞれのゲームウィンドウに送りたいのです。
実装内容としては、while無限ループ内で修飾キー+英字キーで該当する組み合わせ(今試しているのだとAlt+j)をgetkeystateで検知してcontrolsendでアクティブでない方のウィンドウにjを送信しています。
困っているのは、このプログラムを起動するとアクティブウィンドウへが修飾キー+英字キーではなく単なる英字キーが入力された時のように挙動することです。(alt+jではなくただのjとして動く)非アクティブウィンドウのもう一つのアプリは意図した通りに動いております。

ちなみにalt+jをほぼ同タイミングで押すとちゃんとアクティブウィンドウがalt+jとして動作しました。結構タイミングはシビアですが。

どなたか思い当たることある方いましたらなんでも良いので教えて下さいm(_ _)m

44 :名無しさん@お腹いっぱい。 :2019/04/28(日) 08:03:59.19 ID:RLac010E0.net
>>41
16進数を10進数にするだけの話ならFormat()

45 :名無しさん@お腹いっぱい。 :2019/04/28(日) 09:38:37.03 ID:RQlzQ/nr0.net
>>42 さん
ありがとうございました。16進数は4桁固定を想定なので、ちょっと追加

aStr := W0x0123W 
SetFormat, INTEGER, D 
dec := aStr + 0 
SetFormat, INTEGER, H
hex := dec + 0 
hex := W0000W . substr(hex,3)
StringRight,hex,hex,4
hex := W0xW . hex
msgbox,% WaStr=W aStr W`ndec=W dec W`nhex=W hex

46 :名無しさん@お腹いっぱい。 :2019/04/28(日) 09:41:18.54 ID:RQlzQ/nr0.net
先の書き込みを確認される際には、例えば
Word に貼り付けて全選択したのち、
ホームリボンの「文字種の選択」から、半角をクリックしてください。

半角で投稿しようとしたら、5ch.net に「不正なコードを含む書き込み」として
ブロックされました。

47 :名無しさん@お腹いっぱい。 :2019/04/28(日) 09:47:34.77 ID:RQlzQ/nr0.net
>>44
Format関数は、Integer値を16進文字列に変換するときに使えそうです。
ありがとうございました。

aVal := 291
sdec := aVal
shex := Format("0x{4:x}", aVal)
msgbox,% "aVal=" aVal "`sdec=" sdec "`shex=" shex

48 :名無しさん@お腹いっぱい。 :2019/04/28(日) 10:01:03.91 ID:RQlzQ/nr0.net
>>43
自分はDllcall を使ってキー状態を調べています。多分、副作用はない筈。

vKey0 := 164 // 多分、左Alt
vKey1 := 165 // 多分、右Alt
stCurr := DllCall("GetKeyState", "UInt", vkey0) & 128
stCurr :=(DllCall("GetKeyState", "UInt", vkey1) & 128) | stCurr

49 :名無しさん@お腹いっぱい。 :2019/04/28(日) 10:49:09.47 ID:MHWE0sUc0.net
>>45
確認してないけど多分それだとhexの入力値は数値じゃなくて文字列になってるで

数値の場合 0x000Aと0xAは記述方法が違うだけで値は同じなのでゼロサプレスする必要はない

50 :名無しさん@お腹いっぱい。 :2019/04/28(日) 12:45:22.14 ID:xdMVJpEwp.net
>>48
ありがとうございます😊!
今帰省中でコードが手元にないですが帰ってみたらすぐに試してみますね!

51 :名無しさん@お腹いっぱい。 :2019/04/28(日) 14:00:44.23 ID:pYczIjyR0.net
>>36
となると自分の環境が問題か
どうも

52 :名無しさん@お腹いっぱい。 :2019/04/28(日) 18:17:38.17 ID:nX/tX0040.net
>>51
今まで問題なかったモノが急に使えなくなったと言うことですか?
windows update以外に何か環境は変えましたか?

自分はwin8.1ですが、1年以上前、AHK使い始めた時からからずっとwheel絡めたスクリプトは全て急に動かなくなります。

スクリプト開始から5分後に使えなくなることもあれば数時間後に使えなくなることもある。

以前ここでこの症状について質問し、もらった回答全て試したり、違うメーカーのマウスとドライバに変えても駄目でした。

海外掲示板見てみても同じ症状の人がいて、色々対策書いてあったけど、効かない人には効かないみたい。

自分は諦めました。

53 :名無しさん@お腹いっぱい。 :2019/04/28(日) 18:48:48.93 ID:JP0Kc6aT0.net
>>51
あたしもロックなどの復帰後そうなります

Win7 x64 / 1.1.30.03

54 :名無しさん@お腹いっぱい。 :2019/04/28(日) 21:59:53.64 ID:fWI8wbzJM.net
最近の話じゃないけど
リダイレクトホイールでホイールが急に遅延して
その間まったくスクロールが効かなくなることはよくあった
そのまましばらく放置してると忘れた頃にアクティブウィンドウがスクロールしまくる
最近はだいぶ頻度は下がった

55 :名無しさん@お腹いっぱい。 :2019/04/29(月) 04:37:49.10 ID:QZTb/6eG0.net
>>48
うーん、ダメでした…
メインウィンドウをメモ帳とかにしても同じように修飾キーの入力が食われてしまうのでゲームの方の問題じゃないみたいですね…

osはwindows10ですがバージョンが悪さしてるのでしょうか

56 :名無しさん@お腹いっぱい。 :2019/04/29(月) 04:39:55.03 ID:QZTb/6eG0.net
ちなみに今のコードはこんな感じです。

#InstallKeybdHook
#UseHook

SetKeyDelay,10,100
subPid = 22460
Loop
{
stCurr := DllCall("GetKeyState", "UInt", 164) & 128
stCurr2 := DllCall("GetKeyState", "UInt", 74) & 128
If stCurr && stCurr2
{
ControlSend, , j, ahk_pid %subPid%
}
}

57 :名無しさん@お腹いっぱい。 :2019/04/29(月) 05:02:47.41 ID:p8hzRzQr0.net
FF14とかネトゲでAHKみたいな外部ツールを使うのは不正行為
別に運営じゃないしFF14もやってないので不正をするなとは言わないけど
不正行為の「やり方」を恥ずかしげもなく人様に聞くのはみっともない
自分で考えて誰にもバレないように使え
それが出来なけりゃ潔く諦めろ

58 :名無しさん@お腹いっぱい。 :2019/04/29(月) 06:20:21.96 ID:en4uZx+d0.net
はぁ〜い、トゥイマッテーンw

59 :名無しさん@お腹いっぱい。 :2019/04/29(月) 06:28:55.14 ID:gsQYWf6/0.net
ただの池沼だった

60 :名無しさん@お腹いっぱい。 :2019/04/29(月) 07:17:19.72 ID:IqJQ2Tg/a.net
年寄りは説教が好き

61 :名無しさん@お腹いっぱい。 :2019/04/29(月) 07:18:41.98 ID:6WmDA0bLM.net
俺が若い頃はあ〜(以下略

62 :名無しさん@お腹いっぱい。 :2019/04/29(月) 08:46:17.18 ID:PffOSWws0.net
ゴメ…

63 :名無しさん@お腹いっぱい。 :2019/04/29(月) 09:17:42.22 ID:YyTDcGy20.net
>>55
Win32のGetKeyState関数は静的状態を取得するものなので、
変化を検知して出力する方がよいです。
Notepad.exe を非アクティブウインドウとして、
サクラエディタをアクティブウインドウとしたとき、"j"キーを両方に出力するサンプルです。

#InstallKeybdHook
#UseHook

SetKeyDelay,10,100
Loop
{
Sleep,16
stCurr2 := DllCall("GetKeyState", "UInt", 74) & 128 ; VK_J
If(stCurr2=128 && stLast2= 0)
{
ControlSend, , {j down}, ahk_class Notepad
} else If(stCurr2=0 && stLast2= 128)
{
ControlSend, , {j up}, ahk_class Notepad
}
stLast2 := stCurr2
}

現状、このソフトウェアを持っていないので再現できないのですが、
非アクティブウインドウに Alt-JをControlsend できるならば、
寧ろ、Alt + j をホットキー登録して、Autohotkeyにキーを喰わせたのち、
アクティブウインドウと非アクティブウインドウに Alt-J を Controlsend してはどうでしょうか。

その場合、ループ処理と、GetKeyState関数は不要となります。

64 :名無しさん@お腹いっぱい。 :2019/04/29(月) 10:37:23.86 ID:kkLjthPU0.net
>>56
メイン秀丸 サブメモ帳でsubPidだけ変えて実行してみたが
アクティブウィンドウはちゃんとAlt+Jのショートカット動作したし
subPidの非アクティブウィンドウもちゃんと j が入力されたよ

つかFF14の2画面動作時の挙動は知らんけど
2ウィンドウで両方とも同じ挙動させたいのに非アクティブのほうに Alt 送らなくて大丈夫なの?

「アクティブのAltが食われてる」のではなく j しか送ってないsubPidのほうをメインだと思ってて
「非アクティブにAltが送られてない」状態を「食われてる」と勘違いしてたりしない?

65 :名無しさん@お腹いっぱい。 :2019/04/29(月) 13:49:17.48 ID:Bj2ge2Bl0NIKU.net
Pictureコントロールで画像の比率を維持したまま固定の枠内に収める事ってできませんか?
比率を維持するには縦横どちらか片方だけを指定すればいいようなんですが
簡易のビューアのように縦長や横長のいろんな画像をそこに表示したいので
画像によってどちらを固定サイズにするか変わってきちゃうんです
その画像が縦長か横長なのかだけでも判断できれば行けそうなんですがAHKの機能だけでは無理なんでしょうか?

66 :名無しさん@お腹いっぱい。 :2019/04/29(月) 14:37:18.14 ID:QZTb/6eG0NIKU.net
お二方共ありがとうございますm(__)m
ダメもとで書いてみましたがこんなに反応していただいて感謝感激です。

>>63
>>64
> 非アクティブウインドウに Alt-JをControlsend できるならば
> 非アクティブのほうに Alt 送らなくて大丈夫なの?
ControlSendでAlt送らなくてよいかという話ですが、自分の環境だとうまくいかなかった経緯があって抜いています。
ネットで同じようなQ&Aあって最終的には次の二通りの記述方法でやってみたのですがうまくいかずでした。
ControlSend, , ^v, ahk_pid %subPid%
ControlSend, , {ctrl down}{v}{ctrl up}, ahk_pid %subPid%
一応ゲームの方でキーバインドは変更できるので、サブの方は修飾キー使わない配置でもいいかなぁと思いメインにのみ修飾キーつける形にしてます。

> 寧ろ、Alt + j をホットキー登録して
たしかにそうですね…しかし↑のショートカットコマンドControlSendできない問題が解決しないとちょっと厳しいです。
もちろんメインの方も修飾キー使わないキーバインド配置にすれば可能なのですが、基本的にはメインの1画面だけでプレイしているのがほとんどなのでなるべくそういう時はautohotkeyを使いたくないのです。最終手段としては検討したいですが。

> アクティブウィンドウはちゃんとAlt+Jのショートカット動作したし
すみません書きそびれていましたが、タイミングによってはちゃんとアクティブウィンドウにAlt+jが送信されてました。
ですが確率でいうと成功するのは半分いかないくらいで、どんな時に成功するかの傾向もいまいち判断つきにくい状況です。
こころなしか>>48さんのコードを反映してから成功する確率は増した気がしますが…

> 「非アクティブにAltが送られてない」状態を「食われてる」と勘違いしてたりしない?
一応まったく別のキーの組み合わせでも試しているのでこちらは大丈夫だと思います。

67 :名無しさん@お腹いっぱい。 :2019/04/30(火) 01:28:07.47 ID:K0TtcLI00.net
>>52
原因はよくわからない
5ちゃんみるのにJane つかってるんだけど
image viewerが立ち上がるときにマウスホイールのスクリプトがかなりの確率で動かなくなる
あとXbutton & Lbutton でうごくやつを用意してるけどこれもだめになる

68 :名無しさん@お腹いっぱい。 :2019/04/30(火) 14:09:40.67 ID:w21JuZ030.net
autohotkey で exe ファイルを作ったとき、
タスクアイコンを右クリックしたときのメニューに
"Suspend hotkeys" と "Pause Script" が表示されないようにしたい。

どなたかご存知でしょうか。

69 :名無しさん@お腹いっぱい。 :2019/04/30(火) 14:21:09.74 ID:+yW1x6hb0.net
menu,tray,

70 :名無しさん@お腹いっぱい。 :2019/04/30(火) 15:09:34.34 ID:ujDAUdDr0.net
>>69
68じゃないけど、トレイのメニューは無理なのでは?
Menu, Tray, Delete, Suspend Hotkeys
だとエラー吐くんだけど
"Suspend Hotkeys"にしてもダメだった

71 :名無しさん@お腹いっぱい。 :2019/04/30(火) 16:43:23.50 ID:ZVDWFksOr.net
>>68
MenuをExitだけにする例
Menu, Tray, NoStandard
Menu, Tray, Add, Exit, Menu_Exit
default項目で他に追加したければAdd, 表示名, Label名

72 :名無しさん@お腹いっぱい。 :2019/04/30(火) 17:04:55.31 ID:w21JuZ030.net
>>71
ありがd、できますた。

Menu, Tray, NoStandard
Menu, Tray, Add, Exit, Menu_Exit
return

Menu_Exit:
exitapp

a::return
a up::return

73 :名無しさん@お腹いっぱい。 :2019/05/01(水) 12:43:11.11 ID:jXRa0IGJa0501.net
>>35
Win10にしたとかアップデートしたとかで効かなくなるものはある

74 :名無しさん@お腹いっぱい。 :2019/05/01(水) 18:22:04.79 ID:SieO+8nP00501.net
ピリオド〜ピリオドに囲まれた範囲を削除したいんですが、
アイデアってありますでしょうか?

英文を書いていて、一文削除したいんです。
カーソルの位置はその文の任意の場所にあります。

75 :名無しさん@お腹いっぱい。 :2019/05/01(水) 18:32:15.71 ID:sBOO+Ynz00501.net
クリップボードに取り込んで、変数に入れてからループ処理かなぁ

ふんわりは思いつくけど条件はめんどくさそう

76 :名無しさん@お腹いっぱい。 :2019/05/01(水) 19:47:01.77 ID:RadfMNGN00501.net
カーソルの位置でどうこうするならエディタのマクロでやったほうが楽そう

77 :名無しさん@お腹いっぱい。 :2019/05/01(水) 20:06:08.82 ID:VU2a+akWr0501.net
ControlGetText
RegExReplace
FileDelete(あるいはバックアップ)
FileAppendでできるんじゃね

78 :名無しさん@お腹いっぱい。 :2019/05/01(水) 20:17:10.20 ID:SieO+8nP00501.net
>>75
1文の長さもバラバラですし、正規表現難しいですよね。
と言いますか、「特定範囲を選択」するコマンドがAHKにないような。^aだと範囲が広すぎるし。
ワンプッシュでサクっと消えてほしいんですけど。

>>76
やっぱりエディタのマクロですかね……。

79 :名無しさん@お腹いっぱい。 :2019/05/01(水) 20:20:21.68 ID:a/vdThoT00501.net
テキスト編集に特化したエディタならそういうコマンドくらいデフォで入ってそうだけど
あるいはそういうプラグインがありそうな開発環境向けの高機能エディタ使うか

80 :名無しさん@お腹いっぱい。 :2019/05/01(水) 21:06:04.46 ID:VU2a+akWr0501.net
>78
>1文の長さもバラバラ
何のための正規表現だよw
ましてや英文なら一番簡単パターンだろ
最短マッチ
var := RegExReplace(var, "s`n),[\w\x20'\.\-]*?,", ",,")
最長マッチ
var := RegExReplace(var, "s`n),.+,", ",,")

81 :名無しさん@お腹いっぱい。 :2019/05/01(水) 21:28:56.54 ID:dvQIbYdE00501.net
英文ならクリック3回くらい押せば1文選択できるだろうし(そのエディタでは出来ない?)
クリック3回のDeleteって簡単にやっちゃダメなん?

82 :名無しさん@お腹いっぱい。 :2019/05/01(水) 21:35:56.09 ID:dvQIbYdE00501.net
1文じゃなくて段落での選択だったわすまん

83 :名無しさん@お腹いっぱい。 :2019/05/01(水) 21:56:16.89 ID:SieO+8nP00501.net
>>80
ありがとうございます。
でも、これってカーソルのある一文だけマッチさせれます?

84 :名無しさん@お腹いっぱい。 :2019/05/02(木) 00:45:45.54 ID:mNYgW5tn0.net
>>83
; xxx,yyy,zzz,test,
; xxx,yyy,zzz,test,
; xxx,yyy,zzz,test,

F1::DeleteGroup()

DeleteGroup(String=",", Wait=0.3) {
ClipSaved := ClipboardAll
Clipboard =
Send ^x
ClipWait %Wait%
if (ErrorLevel) {
Send +{Home}^x
ClipWait %Wait%
Forward := Clipboard
if (Pos := InStr(Forward, String,, 0)) {
Clipboard =
Send +{End}^x
ClipWait %Wait%
Clipboard := RegExReplace(Forward Clipboard, String ".+?" String, String String,, 1, Pos)
Send ^v
} else
Send ^z
} else {
Clipboard := RegExReplace(Clipboard, "s)" String ".+?" String, String String,, 1)
Send ^v
}
Clipboard := ClipSaved
}

85 :名無しさん@お腹いっぱい。 :2019/05/02(木) 19:21:43.94 ID:ahrZkCUy0.net
>>84
ありがとうございます。
勉強してみます。
やっぱり、Editorのマクロのほうがスマートに書けそうですね。

86 :名無しさん@お腹いっぱい。 :2019/05/05(日) 13:28:02.42 ID:8PqDYwmd00505.net
.ahkファイルの9割はエディタに関連付けしたほうが扱いやすいと気がついたんだが
インクルードされる専の.ahk以外で名の通った拡張子ってないの?

87 :名無しさん@お腹いっぱい。 :2019/05/05(日) 13:35:33.46 ID:M2iqQKSj00505.net
>>86
俺はahkファイルをそのままランチャーに登録したりしてるからエディタに関連付けたら使い物にならなくなるわ
その代わり常駐スクリプトなどはトレイアイコンダブルクリックでエディタ起動するようにしてる

88 :名無しさん@お腹いっぱい。 :2019/05/05(日) 13:52:31.18 ID:K9EFe5ps00505.net
>>86
txt

89 :名無しさん@お腹いっぱい。 :2019/05/06(月) 13:02:36.04 ID:ul+3fNQG0.net
ファイラー使ってエディタ起動はEキーでとかだから困ること無いな

90 :名無しさん@お腹いっぱい。 :2019/05/07(火) 17:39:26.46 ID:TrTdwL+B0.net
win10で2chMateを使いたくてエミュ導入したのですが
google日本語入力の109A選択で日本語/英語の切り替えがShift+Ctrlと押しづらい
「全角/半角」→認識なし?
「Del」→「.」
ってことでAutoHotkeyを使ってみました。

「半角/全角」を置換元キーにすると不安定。1回置きに指定リマップされてる?
置換先キーにShiftとCtrlの同時押しもうまくいきません

結局、今は無変換キーをShift、変換キーをCtrl に指定
無変換と変換キー同時押しで、Shift+Ctrl「日本語/英語切り替え」にはなりました。

#IfWinActive ahk_exe BlueStacks.exe
vk1C::Shift
vk1D::Ctrl
#IfWinActive

「半角/全角」を押してShift+Ctrl出力で日本語/英語切り替え
ができたら理想なのです、ご指導いただけたら嬉しいです。
ついでにDeleteキー復活もお願いします。

BlueStacks 4.60.20.1002
google日本語入力 109A
2chMate 0.8.10.45/

91 :名無しさん@お腹いっぱい。 :2019/05/07(火) 18:41:35.58 ID:QBfahZsV0.net
ChMateのためだけにBlueStacksは重くない?
まあ好き好きだけど
MEmuならAHKなしwin10側デフォルトのMS IMEでエミュのキーボード制御なしで行けたよ

92 :名無しさん@お腹いっぱい。 :2019/05/07(火) 20:15:43.46 ID:hH7zKgci0.net
>>91
そうなんですか、明日やってみます
ありがとうございます。

93 :名無しさん@お腹いっぱい。 :2019/05/07(火) 23:26:24.76 ID:qVvoJ1Im0.net
IME.ahk

94 :名無しさん@お腹いっぱい。 :2019/05/08(水) 16:06:11.53 ID:a/Pr15AK0.net
>>91
MEmuですけど、google日本語入力と物理キーボードが上手く動かないのと、
ChMateでもカクカク動作になるので、今の所は敬遠します。

なんかかっこ悪いけど、一応AutoHotkeyで念願の様に組めました。

なぜか置換先にShiftとCtrl同時押しができませんが、
無意味なキー(vkF4)を含めた(+^vkF4)で代用ができました。
「半角/全角」(vkF3)を、日本語/英語の切り替え(+^vkF4)にリマップ
使ってなさそうな「カタカナ/ひらがな」(vkF2)も(+^vkF4)にリマップ

AndroidにはDelキーが無い?ので
→の後、BackSpaceでカーソル右側1文字削除を再現しました。


#IfWinActive ahk_exe BlueStacks.exe
vkF3::+^vkF4
vkF2::+^vkF4
Del::
send,{Right}
send,{BS}
return
#IfWinActive

AutoHotkey 1.1.30.03
BlueStacks 4.60.20.1002
google日本語入力 109A
2chMate 0.8.10.45/

95 :名無しさん@お腹いっぱい。 :2019/05/08(水) 16:17:30.41 ID:nwM5gvVs0.net
>>94
俺はNOX使ってる
ChMateも動くし全/半キーで日本語オンに出来るしDELキーも使える
BlueStacksは昔一度使ってみて色々糞だったからすぐ消したわ

96 :名無しさん@お腹いっぱい。 :2019/05/08(水) 16:29:04.22 ID:a/Pr15AK0.net
>>95
NOXはBlueStacksより嫌な噂が多いからなぁ
まぁ個人情報を使わねれば問題ないのだけど
って
Noxだとgoogle日本語入力109キーボード認識でDelキー使えるの?

97 :名無しさん@お腹いっぱい。 :2019/05/08(水) 16:39:29.99 ID:nwM5gvVs0.net
>>96
だから使えると言ってんじゃん
俺はBlueStacksの嫌な噂の方が多く聞くぞ

98 :名無しさん@お腹いっぱい。 :2019/05/08(水) 16:43:21.78 ID:a/Pr15AK0.net
>>97
そうなんだ、現状BlueStacksで不満なくなったけど
せっかくなんでNOXも使ってみる

ありがとうございます。スレチ話題ですまんかったです。

99 :名無しさん@お腹いっぱい。 :2019/05/08(水) 18:46:11.81 ID:3WHtVALo0.net
ていか泥の中のgoogle日本語入力を動かすことにこだわってるようだけど
PC側のIMEそのまま使うんじゃダメなの?
MEmuだと(泥の中ではなくエミュ側の)設定からソフトキーボード閉じれるので
わざわざ泥内のIME使う必要ないんだけど

一応 MEmuはブルスタやNOXより軽いと言われてる、怪しさに関しては目くそ鼻くそだが
カクついて遅いのはVT-xやOpenGLが有効になってないか泥のバージョンのせいかも
うちは泥バージョンをデフォルト(5.1)から7.1にしたら安定した

100 :名無しさん@お腹いっぱい。 :2019/05/08(水) 20:00:47.98 ID:CdsMQfK20.net
なんか、目的なしに泥エミュ使ってみたくなった
スレチだけど過疎ってるしありかwww

101 :名無しさん@お腹いっぱい。 :2019/05/10(金) 11:09:21.05 ID:uOTPr9gE0.net
初歩的なことですがおしえてください

・セミコロンだけを押すと→enterが押下され
・シフト+セミコロン→+が入力され(そのまま)
・コントロールとセミコロンのキーを押すと→セミコロン ; が押下されるようにしたい

のですがうまくいきません。以下のようにしてみましたが
コントロール+セミコロンでもEnterが押されてしまいます。

vkBBsc027::Send, {Enter}
^vkBBsc027::Send, {vkBBsc027}

お知恵をください

102 :名無しさん@お腹いっぱい。 :2019/05/10(金) 11:31:25.99 ID:6IH15nFv0.net
$

103 :名無しさん@お腹いっぱい。 :2019/05/10(金) 11:59:25.20 ID:JSwH/yYX0.net
>>101
キーリスト[sc---]いらんよ
vkBB::Enter
^vkBB::vkBB
でいいんじゃね?

104 :名無しさん@お腹いっぱい。 :2019/05/10(金) 12:48:54.10 ID:uOTPr9gE0.net
>>103
できません。

>>102
再帰性が問題になるのかな。
このヒントあればたどり着けて当然なんでしょうね。
どこに入れるんだ
わからん....2行目のほうが問題なんだろうな

105 :名無しさん@お腹いっぱい。 :2019/05/10(金) 12:51:39.21 ID:uOTPr9gE0.net
以下で成功しました

^sc027::Send, {sc027}
sc027::Send, {Enter}

vkBBを削除しただけでいけました。
なにがだめだったんだろう・・・
ありがとうございました。103さんの助言をヒントにいけました

106 :名無しさん@お腹いっぱい。 :2019/05/10(金) 13:43:00.74 ID:JSwH/yYX0.net
>>105
vkBB::Enter
^vkBB::Send, {vkBB}
これでもいけるでしょ、vk--sc---って連続表記は使わなくなったようだよ

107 :名無しさん@お腹いっぱい。 :2019/05/10(金) 14:52:49.85 ID:uOTPr9gE0.net
>>106
だめです。それだと
どちらもセミコロンしか出力されません。
enterになりません。

108 :名無しさん@お腹いっぱい。 :2019/05/10(金) 15:03:43.53 ID:JSwH/yYX0.net
>>107
win10?うちのPCならこれでも要望通りになるけどな

109 :名無しさん@お腹いっぱい。 :2019/05/10(金) 15:06:39.63 ID:uOTPr9gE0.net
>>108
win10です。
わたしの環境依存かもしれませんね。
たびたびお手数かけてるようで

110 :名無しさん@お腹いっぱい。 :2019/05/10(金) 15:26:52.21 ID:n2J8MLXc0.net
>>109
普通に>>106のでも動く
なにか勘違いしてんだろ

111 :名無しさん@お腹いっぱい。 :2019/05/10(金) 16:39:26.39 ID:JSwH/yYX0.net
スキャンコード(sc) が使えて、仮想キーコード(vk) が使えない環境かな
vkBB::Enter で「;」がそのまま出力されるみたいだからな

112 :名無しさん@お腹いっぱい。 :2019/05/10(金) 17:28:11.48 ID:KC145d5/a.net
vk使えないのは新しいAHK

113 :名無しさん@お腹いっぱい。 :2019/05/11(土) 08:29:28.11 ID:0qFFuv3w0.net
^a::Send, {ユニコード}
^b::Send, {ユニコード}
^c::Send, {ユニコード}

といった形でコントロールと文字キーを押して別の文字を
出せるようにしてあるのですが、

例えばF1を押したら常にコントロールを押した状態になって
あとはa, b, c, ...と打つだけで登録した文字を好きに打てて、
もう一度F1を押したら解除されて普通のキーボードに戻る
ようなことは可能ですか?

114 :名無しさん@お腹いっぱい。 :2019/05/11(土) 09:50:54.26 ID:VISQT7EV0.net
>>113
{Ctrl Down} {Ctrl Up} で分ければ出切るが
Ctrl押したままはいろいろ誤操作誘発するので止めたほうがいい
登録した物を切り替えるだけなら必要ない

KeyChange = 0
F1::KeyChange := !KeyChange ; 0/1
F2::(KeyChange = 2) ? KeyChange:=0 : KeyChange+=1 ; 0/1/2

1::ToolTip 1
2::ToolTip 2
3::ToolTip 3

#If KeyChange = 1
1::ToolTip x
2::ToolTip y
3::ToolTip z
#If

#If KeyChange = 2
1::ToolTip xx
2::ToolTip yy
3::ToolTip zz
#If

115 :名無しさん@お腹いっぱい。 :2019/05/11(土) 10:06:22.79 ID:kH9aKoH20.net
一番わかり易いのはモード変更ダイアログボックス出して
そのダイアログがあるかどうかで分岐
野暮ったいが誤動作誤操作はしなくなる
クリップボードフィルタ&FIFOユーティリティ関連でこのやり方使ってるな

^F1::  ; 特殊モード発動
run,特殊モード.ahk
return

F1::
IfWinExist,特殊モード
...
else
...

特殊モード.ahkの中身
help=
(
F1: aaa
F2: bbb
F3: ccc
)
msgbox,,特殊モード,%help%

116 :名無しさん@お腹いっぱい。 :2019/05/11(土) 10:10:41.95 ID:H4XAT+3F0.net
2ストロークキーのサンプルだったら流行らせるページ跡地にあったはず
http://lukewarm.s101.xrea.com/myscripts/

117 :名無しさん@お腹いっぱい。 :2019/05/11(土) 11:31:25.11 ID:ZMMlxjL2r.net
>>113
俺なら素直にこうする
script _a.ahk ;通常入力用
F1::
Run, script_b.ahk
ExitApp

script_b.ahk ;Unicode入力用
a::Send, Unicode ;(可能ならControl,EditPasteのほうがいいかも)
F1::
Run, script_a.ahk
ExitApp

118 :名無しさん@お腹いっぱい。 :2019/05/16(木) 06:42:10.73 ID:hupmSm4w0.net
イヤホンのリモコンでYouTubeプレイリストを次の曲へ飛ばせるようにしたいんですけど
もしかしてVivaldiってControlSend働かなかったりしますか?
アクティブウィンドウにすればもちろん届くんですけど...

$Media_Next::
SetTitleMatchMode,2
ControlSend, , +n, ahk_class Chrome_WidgetWin_1, YouTube
return


動いた方↓

$Media_Next::
SetTitleMatchMode,2
WinActivate, YouTube ahk_class Chrome_WidgetWin_1
send,+n
return

119 :名無しさん@お腹いっぱい。 :2019/05/18(土) 22:25:29.83 ID:YTsL4HgD0.net
>114-117
ありがとうございます。順番に試しながらヒントにして
少しずつ追加したり入れ替えたりなんとかやってます。

理想的には秀丸マクロで

[Ctrl] [@] [a] で &aacute;
[Ctrl] [Shift] [@] [a] で &agrave;

としているのでそれをAHKでも再現したいのですが、
3つ以上はダメらしいですので、せめて
外国語キーボードにある、[@] と [a] で &aacute;、
[Shift] と [@] と [a] で &agrave; といった出し方はAHKでは再現
できないんでしょうか?

120 :名無しさん@お腹いっぱい。 :2019/05/19(日) 09:09:14.32 ID:KWlh8/PJ0.net
>>101
3ストロークだろうが4ストロークだろうがInputで入力待ちするなり
フラグ立ててフェーズ分けするなりすりゃ行けるんじゃないの
ようはスプリクトの組み方次第だと思うが

121 :名無しさん@お腹いっぱい。 :2019/05/19(日) 09:14:15.36 ID:KWlh8/PJ0.net
レス番超間違いすまん
>120は>119へのレス

122 :名無しさん@お腹いっぱい。 :2019/05/19(日) 21:49:43.64 ID:u1McXRZM0.net
うーん、まだ自分がよく解っていないようです。

ちなみにホットストリングで修飾キーは使えないんですか?

:*:@a::{u+00e1}

は機能するのに

:*:^@a::{u+00e1} や :*:^@::{u+00e1}

は機能しないんですが・・・。

123 :名無しさん@お腹いっぱい。 :2019/05/19(日) 22:11:49.46 ID:shAc6I6q0.net
>>122
ホットストリングは入力されたテキストを置換するコマンドなんだからCtrlが機能しないの当たり前
ホットキーの機能と混同してないか?

124 :名無しさん@お腹いっぱい。 :2019/05/20(月) 01:33:16.42 ID:1TQOMk6E0.net
>>123
なるほど。かといって

^@a::Send, {u+00e1}

としても使えないんですよねぇ。

^a::
If GetKeyState("@", "T")
Send, {U+00E1}
Else
XXXXX
Return

で取り敢えず ^@a::Send, {U+00E1} 状態を作れました。
同時押しではなくて時間差を認める調整は必要ですが。

ただ、これだと通常のCtrl と aで「すべて選択」が効かなくなる
のですが、@を押していない場合のElseのXXXXX部分、
どう書いたら良いのでしょう?

125 :名無しさん@お腹いっぱい。 :2019/05/20(月) 01:54:05.75 ID:xmYDYS/R0.net
なんでわざわざそんな変な使い方しなきゃならねえんだ
^@::Send, {u+00e1}
とか
^+@::Send, {u+00e1}
とかでいいだろ

126 :名無しさん@お腹いっぱい。 :2019/05/20(月) 08:56:51.64 ID:1TQOMk6E0.net
ですね。あとで気づきました。

^@::
If GetKeyState("a", "T")
Send, {U+00E1}
Return



^@::Send, {u+00e1}

^+@::Send, {u+00e1}

とせず ^@a にこだわるのは、あとで
^@e や ^ta とか、^+@a や ^+@e でも
使うつもりだからです。

127 :名無しさん@お腹いっぱい。 :2019/05/20(月) 12:08:02.73 ID:yF4IvTXT0.net
話の趣旨が変わってね? 同時押しじゃなくて順次入力で認識させたかったんじゃないの?

そもそもが
[Ctrl]→[Shift]→[@]→[a] なのか
[Ctrl]+[Shift]+[@]+[a] なのか
指定がないのでようわからんが

真にやりたかったのは
[Ctrl]+[Shift]+[@]→[a] なのでは?
http://codepad.org/TkxXCpoa

128 :名無しさん@お腹いっぱい。 :2019/05/20(月) 12:37:55.01 ID:yF4IvTXT0.net
訂正
多段ストロークでも動くようにするならこう
http://codepad.org/rW4gY0an

129 :名無しさん@お腹いっぱい。 :2019/05/21(火) 05:23:14.44 ID:7W5GDYJe0.net
>>127
不慣れでわからないことだらけなので
まずは3〜4つのキーで目的の文字を出せるようにして、
キーの押し方はそのあとで考えようと思っていました。

リンクありがとうございます。あとで試してじっくり読んでみようと
思います。

とりあえず>120でヒントをもらったインプットを使って

^@::
Input,InputChar,C I L1 T10,{Esc},a
if ErrorLevel=Match
{
if InputChar=a
Send,{U+00E1}
}
return

としても ^@a は機能しました。数を増やしていくと何か
問題が出るのかはまだ検証してませんが。

130 :名無しさん@お腹いっぱい。 :2019/05/21(火) 05:57:15.89 ID:zoAcTfZP0.net
>>129
>キーの押し方はそのあとで考えようと思っていました

いやそれは先にハッキリさせるべきところだろ
3キー同時押しなのか順番押しなのか、それによってやり方も全然変わってくるんだから
質問するなら正確に何をやりたいのか伝えるのが礼儀ってもんだ
でないと答える側はお前が何やりたいのか全く分からねえし話がズレてくだけ
最初にF1で切り替えとか言ってた話はどこ行ったんだよと

131 :名無しさん@お腹いっぱい。 :2019/05/22(水) 20:17:54.08 ID:/ee0fjiV0.net
>>130
すいません。全部説明するとけっこう長くなるのと、
AHKではやりかたが変わるのかあとづけで修正が容易なのかも
はっきり知らなかったので1つずつ試行錯誤しながら質問していました。

F1の件は最低限の組み合わせを作ってテストしてうまくいきました。
F1はラテン文字以外のユニコード文字のまとまりを
複数切り替える想定のもので、^@aの話は日本語キーボードの
英数モードの拡張として試しているものです。

^@a でやっていることの全体像としては、1つのラテン文字
キーボードでできるだけ多くの音声記号つき文字や欧文で使う
合字・記号を出せるようにしようというものです。
ウィンドウズで設定できる外国語キーボードを調べるとどれも
一長一短で、また最も出せる文字が多いと思われるものでも
不足を感じたのと、どうせ切り替えるなら日本語の半角英数モードに
まとめてしまった方がいいのでは?と思いました。
@aや+@aの順次押しのようなやりかたは外国語キーボードで
使われているものです。^を加えたのは秀丸マクロで同じ事をする
場合、日本語英数モードの一部なので同じ場所が@になり、
@も残すために加えていたやり方を援用しようとしただけです。

なのでその先の話としては、^@aでアキュートつきaを出すのは
日本語キーボードの英数モードでのみにするとか、^+@aに更に
キャップスロックが加わる場合とか、英数モードへの集約に問題が
あって断念した場合、通常の言語切り替えで言語別にキーの
修正の仕方を変えられるのか?ということも調べようかと考えて
いました。

 上で教えていただいたリンクのkeysUpdateやKeysCheckや
KeysClearというのはAHKwikiには解説の項目がありませんが、
どういった物を読めば使い方がわかりますか?

132 :名無しさん@お腹いっぱい。 :2019/05/22(水) 20:23:04.87 ID:MZL3QspE0.net
伝えるべきことを簡潔に伝えられない
これがアスペってやつか

133 :名無しさん@お腹いっぱい。 :2019/05/22(水) 21:17:29.23 ID:oe8s41BQ0.net
動機や理由は該当の外国語キーボードとやらを知らない人には細かく書いてもわからないそれより動作仕様を簡潔にまとめよう

>128のkeysなんとか()はユーザー関数
複数にホットキーでほぼ同じことの繰り返し作業になるから纏めてあるだけ
新規.ahkに全文コピペで一通り動くように作ってあるんでとりあえず試してみて

関数についての解説はこの辺
http://ahkwiki.net/Function

134 :名無しさん@お腹いっぱい。 :2019/05/22(水) 21:38:52.02 ID:1pCKYHNG0.net
ahkwikiって誰も更新しなくなったけどなんで?

135 :名無しさん@お腹いっぱい。 :2019/05/23(木) 11:42:50.67 ID:mjktGPuh0.net
^ & [::Send, ^l
これが動作しないのですがどこが間違っているんでしょう

136 :名無しさん@お腹いっぱい。 :2019/05/23(木) 11:55:59.07 ID:37i5KL+N0.net
おま環

137 :名無しさん@お腹いっぱい。 :2019/05/23(木) 17:32:46.46 ID:ekgN0E6H0.net
ちゃんとここ押してるか?
https://i.imgur.com/1ktXRRa.png

ちなみに出力されるのはこれだぞ
https://i.imgur.com/g1EAYDF.png


コンビネーションキーは+^!#で修飾キーを追加したりは出来ない。
Ctrl+[ を指定したいなら
^[:: もしくは ctrl & [::

^ を出力したいなら
send,{^}[

138 :名無しさん@お腹いっぱい。 :2019/05/25(土) 05:32:06.78 ID:MJ2GF8zW0.net
最後に閉じたフォルダ/ソフトを開くホットキー作りたいんですけど
閉じる前にWinGetで格納したウィンドウハンドルを保持し続けることってできますか?

139 :名無しさん@お腹いっぱい。 :2019/05/25(土) 10:04:03.67 ID:6d36mUsG0.net
スクリプトを常駐させるなら変数に保持させることは出来る
非常駐ならiniやtxtファイルに書き出しておけばいい

140 :名無しさん@お腹いっぱい。 :2019/05/25(土) 12:21:35.07 ID:GKynUIXB0.net
ウィンドウ閉じたらそのハンドルは破棄されるので
ハンドル保持したままにしたいなら閉じないでWinHideで非表示にして後でWinShowするしかない

完全に閉じた状態から復活(ソフト再起動)したいなら
・WinGet,...,ProcessPath でソフトのパスを覚えておく
・必要ならコマンドライン引数も取得しておく
・WinGetTitle / StatusBarGetText 等でタイトルバーやステータスバー上のフォルダパスを取得して覚えておく

で Run, %apppath% %option%

141 :名無しさん@お腹いっぱい。 :2019/05/25(土) 19:22:51.38 ID:MJ2GF8zW0.net
>>139
>>140
アドバイスありがとうございます
しばらく時間ができたらつくってみようと思います

142 :名無しさん@お腹いっぱい。 :2019/05/27(月) 19:34:10.13 ID:TeG2ijze0.net
MouseWithoutBordersを使って他のPCにマウスカーソルが移動している時に、
ControlSendを使ってウインドウを操作しようとするとおかしくなるのですが、何かいい対処法はないでしょうか?

MouseWithoutBordersのキーボードショートカットを使ってAHKを実行しているPCに移動させようとしても、別PCにマウスカーソルが移っている場合これも動きませんでした

143 :名無しさん@お腹いっぱい。 :2019/05/30(木) 13:21:26.98 ID:jpyz9lJs0.net
WinCloseした時に対象ウィンドウが応答なし状態だと、次行以降のスクリプトが停止する事があります。
これを回避する方法はありますか?。

144 :名無しさん@お腹いっぱい。 :2019/05/30(木) 17:37:28.38 ID:KRcnBsNi0.net
>>143
WinCloseしたあと Process, WaitClose や Process, Exist でプロセス終了したか確認して
もし終了してなければ Process, Close で強制終了させるとか

145 :名無しさん@お腹いっぱい。 :2019/05/30(木) 17:49:54.54 ID:7Ufw480c0.net
LAltを2連打するとaキーを発行、押しっぱなしならALTキーを活かすという設定を作りたく書き始めたところ、

<!a::send,c ;<!で始まればなんでもいい

LAlt::
Keywait, LAlt, U
Keywait, LAlt, D T0.2
If (ErrorLevel=0) {
Send, a
}
Return

上記の様に<!で始まる無関係な一行をつけると、
この状態で何故か希望通りの動きをする事に気づきました。
例えばLALT+TAB、CTRL+ALT+DELETEも問題なく動作します。

If文に
else {
Send, b
}
を追加した場合は、何故か2連打時にもelseをすりぬけて、abと表示されますが、
ALTキー押しっぱなしの機能は有効のままです。

そして本来関係ないはずの<!を外すと記述通りの動きになります。
ちなみにLCTRLでも同じでした。この場合は冒頭が<^になります。
また普通の英数字の場合は本来の記述通りの動作しかしません。

変な言い方ですが、なぜそう動くのか分からずでして、どなたか解説願えないでしょうか。
また本来のものをシンプルな記述で完成させるとしたらどう書くのがよいでしょうか。

AHK v1.1.30.03です。

146 :名無しさん@お腹いっぱい。 :2019/05/30(木) 18:25:53.19 ID:KRcnBsNi0.net
なぜと言われてもAHKはそういう仕様ですとしか
例えば <!a::send,c を消して
LAlt & Tab::AltTab
を追加するだけでもAlt+Tab はもちろん Alt+F4 なども使える様になるし
もっとわかりやすい例だと

LWin::Send,a

だけだと Win+R や Win+D などのショートカットが使えなくなるけど

LWin::Send,a
LWin & R::#r

と書くとWin+R はもちろんのこと、 Win+D や Win+Tab などの複数キー押しが全て使える様になる
(Winキー単押しの時だけSend,a)
修飾キーに関してはそういう仕様なんです

147 :名無しさん@お腹いっぱい。 :2019/05/30(木) 20:08:56.55 ID:jpyz9lJs0.net
>>144
ありがとうございます。
WinClose前にタイマー起動して、指定時間経過してもプロセスが存在する時はProcessCloseするようにしました。

148 :名無しさん@お腹いっぱい。 :2019/05/30(木) 20:12:20.66 ID:tGbdfQC+0.net
>>147
タイマー起動しなくてもProcess, WaitCloseで待ち時間指定できるよ
指定時間内に終了しなかったらProcess, Close

149 :名無しさん@お腹いっぱい。 :2019/05/30(木) 21:44:35.55 ID:nVSJ01/e0.net
Windows 10 ver 1809 x64 + AutoHotkey 1.1.30.03 x64 を使っています
サクラエディタを AHK から起動し、確実に入力できる状態になってからキーストロークを送りたいのですが
Sleep で待つ以外にどんな方法があるでしょうか

150 :名無しさん@お腹いっぱい。 :2019/05/30(木) 21:45:37.85 ID:UhMDJ/xR0.net
WinCloseでもWinWaitCloseでも待ち時間は指定できるけど
本来closeを待たないはずのWinCloseで止まってしまってるということは
同一スレッドでは対処不能ということかと




タイマーで別スレッド立ててやるのが(邪道だけど)一番確実じゃないかと

>>147
それが無難だろうね

151 :名無しさん@お腹いっぱい。 :2019/05/30(木) 21:47:17.16 ID:UhMDJ/xR0.net
ごめん推敲中に書き込みボタン押しちゃった
>150は忘れて

152 :名無しさん@お腹いっぱい。 :2019/05/31(金) 08:45:22.31 ID:i0vZu3Bs0.net
前から思ってたけどAHKって
入力デバイスの抜き差しとかBTイヤホンのドライバーいじったりすると
強制終了起きる時あるね... これって仕様?

153 :名無しさん@お腹いっぱい。 :2019/06/02(日) 08:22:08.15 ID:K2f9runC0.net
そんなことはない

154 :名無しさん@お腹いっぱい。 :2019/06/02(日) 08:45:21.25 ID:0NGkjVV40.net
joyキーの方はたまにだけど
BTの方はリモート制御とかのチェックボックス変更して適用するとほぼ確実に落ちるわ
しかも落ちた時、マウス制御が超鈍重になるからプログラムの終了を押すのが難しい

イヤホンが動作不安定なのが悪いんだけどさ

155 :名無しさん@お腹いっぱい。 :2019/06/02(日) 13:37:22.12 ID:fgLpX/350.net
よくんからんけどosクリーンインストールしたら治るんじゃない

156 :名無しさん@お腹いっぱい。 :2019/06/03(月) 05:43:40.99 ID:Nn/lAMAN0.net
間違いねえ

157 :名無しさん@お腹いっぱい。 :2019/06/03(月) 09:12:40.86 ID:PY0IUJxP0.net
PixelSearchで下から検索させる方法ってありますか?
イラストソフトで現レイヤーから親フォルダの特定の為に、下からPixelGetColorをループさせてるんですけど、若干遅いんですよね
左上から検索するのではなく左下もしくは右下からできると速く特定できそうなんですけど

158 :名無しさん@お腹いっぱい。 :2019/06/03(月) 09:40:34.90 ID:nxrIzoAI0.net
Y1とY2を入れ替える

本家のドキュメントには書いてある

159 :名無しさん@お腹いっぱい。 :2019/06/04(火) 12:01:22.35 ID:lwnGZ+XM0.net
>>158
ありがとうございます
早速試してみます

160 :名無しさん@お腹いっぱい。 :2019/06/04(火) 18:42:45.00 ID:lwnGZ+XM0.net
入れ替えてみましたけど、Slow限定の機能なんですね
以前より遅くなりそうだったんで結局やめました アドバイスありがとうございます

それにしてもSlowは尋常じゃなく遅すぎる…
Fastがオプションじゃなくてデフォルト設定でいいんじゃないかと思いました

161 :名無しさん@お腹いっぱい。 :2019/06/04(火) 20:29:45.19 ID:SfBx3yi30.net
ホットキーを特定のウィンドウだけで機能し、かつ特定のタイトルでは機能しないようにしたいのですが、どうすればいいかわかりません。

例えば、以下のコードでは思った通りに機能しません。
#IfWinActive ahk_exe chrome.exe
#IfWinNotActive Google
!A::Send, ^a
#IfWinNotActive
#IfWinActive

#IfWinActiveコマンドで実装は無理なのでしょうか。また他の方法でなら可能なのか教えて下さい。

162 :名無しさん@お腹いっぱい。 :2019/06/04(火) 20:41:39.23 ID:wli2UBB50.net
>>161
#IfWinActive ahk_exe chrome.exe
だけを使って、 !A を押した時に
もしもアクティブタイトルがGoogleだったら何もしない
それ以外ならば Send, ^a
と言う条件分岐すればいいかと

#IfWinActiveと、#無しのIfWinActiveの使い方を整理して考えよう

163 :名無しさん@お腹いっぱい。 :2019/06/04(火) 20:58:58.09 ID:OaQXkSrE0.net
#if () でand取ったらいいんちゃう

164 :名無しさん@お腹いっぱい。 :2019/06/04(火) 22:26:59.54 ID:Es9oy+ZU0.net
日本語を含んだ文字列のバイト数を知りたいのですけど
unicode版だとStrLenは文字数を返してきます
簡単に知る方法は無いでしょうか?

165 :名無しさん@お腹いっぱい。 :2019/06/04(火) 22:47:51.14 ID:jTUzc3z70.net
StrPut

166 :名無しさん@お腹いっぱい。 :2019/06/04(火) 23:23:28.93 ID:f6UdUiHs0.net
>>161
WinActive()
ttp://ahkwiki.net/WinActive

#If WinActive("ahk_exe chrome.exe",, "Google")
#If

167 :名無しさん@お腹いっぱい。 :2019/06/05(水) 10:29:55.05 ID:fxmk+rva0.net
>>137
わかりました。ありがとう。

168 :名無しさん@お腹いっぱい。 :2019/06/06(木) 17:37:34.32 ID:p0DWWQ1S00606.net
Windows10で設定可能な解像度の取得が出来そうで出来ない。
Winの設定>システム>ディスプレイ>ここの解像度一覧の取得
わかる方お願いします。

参考ページ
https://nompor.com/2018/06/29/post-4002/
http://tokovalue.jp/function/EnumDisplaySettings.htm

169 :名無しさん@お腹いっぱい。 :2019/06/06(木) 19:42:01.81 ID:mAiEbUms00606.net
>>162
>>163
>>166
解答ありがとうございます。
以下のコードのようにしたところ、思い通りに機能しました。

#If WinActive("ahk_exe chrome.exe") and WinActive("Google")
!a::Send, ^a
#If

170 :名無しさん@お腹いっぱい。 :2019/06/07(金) 11:14:32.49 ID:0dL4X5eu0.net
動いたんならいいけど それChoromeかつGoogleの時しか動作しないんじゃね

>162の
>もしもアクティブタイトルがGoogleだったら何もしない
とは話違ってきてないか

171 :名無しさん@お腹いっぱい。 :2019/06/07(金) 12:13:25.60 ID:AB/5CdCc0.net
WinActivateでアクティブにするより、Clickしたほうが高速で動作する気がするですけど
WinActivateを速くする方法ってありますか?

Clickだとペンタブと画面が近いとカーソルを乗っ取れない?というかバグる時があるから
なるべくClickさせたくないんですよね

172 :名無しさん@お腹いっぱい。 :2019/06/07(金) 12:21:08.67 ID:0dL4X5eu0.net
まずはほんとWinActivateが遅いのか、どんくらい遅いのか検証してみたら
気がするレベルだと対策しても効果のほどを確認できないんじゃないの

173 :名無しさん@お腹いっぱい。 :2019/06/07(金) 12:23:35.63 ID:0dL4X5eu0.net
あとペンタブとカーソル取り合いになるのはペンタブの仕様考えたら当然なので
バグじゃなくて正常動作な

174 :名無しさん@お腹いっぱい。 :2019/06/07(金) 12:36:05.08 ID:AB/5CdCc0.net
0.11〜0.14秒だからむしろ速いとは思うんですけどClickは0.03〜0.05秒で終わると思うと遅く感じるんですよね
何回かアクティブにさせるスクリプトだとチリが積もって遅くなるというか...

175 :名無しさん@お腹いっぱい。 :2019/06/07(金) 12:41:41.50 ID:Pk+QS0650.net
>>174
どういう計測方法?

176 :名無しさん@お腹いっぱい。 :2019/06/14(金) 00:32:15.07 ID:FvBTnZwU0.net
設定中に変換キー効かなくなってアンインストールしても反応ないんですがこのケースご存じの方いませんか?
キーボードが英語用で認識されてないかとか物理的に壊れたのかとかどれも違うみたいで
再変換機能が使えないだけではなくキー自体が反応しないんですがこういったことはあるんでしょうか

177 :名無しさん@お腹いっぱい。 :2019/06/14(金) 00:34:43.83 ID:ZQ1uaq1W0.net
ここはエスパースレじゃない

178 :名無しさん@お腹いっぱい。 :2019/06/14(金) 00:45:10.33 ID:o4YA/Bqa0.net
アンインストールして再起動
それでも起こったらAHK関係ない

179 :名無しさん@お腹いっぱい。 :2019/06/14(金) 00:52:31.05 ID:FvBTnZwU0.net
>>178
再起動してもダメだったのでAutoHotkey関係なしで調べてみます
ありがとうございました

180 :名無しさん@お腹いっぱい。 :2019/06/15(土) 12:55:48.17 ID:R0IGa2Cr0.net
ahkの命令を途中まで入力したらヘルプ(引数の一覧とか)が出るみたいなテキストエディタってありますのん?

181 :名無しさん@お腹いっぱい。 :2019/06/15(土) 13:44:32.12 ID:UFe75xeO0.net
Visual Studio Code に ahk用プラグインがいくつかあるね
VSCodeでahkを入力していないから詳しくはわからない

182 :名無しさん@お腹いっぱい。 :2019/06/15(土) 17:12:53.90 ID:5czqDlcN0.net
前スレの950あたりから後ろを参照

AutoHotkey スレッド part26
http://egg.5ch.net/test/read.cgi/software/1524647289/950-

183 :名無しさん@お腹いっぱい。 :2019/06/15(土) 22:10:37.37 ID:sR/eeJYQa.net
>>180
開発環境の構築
AutoHotkey用のシンタックスハイライト、オートコンプリートなどの定義ファイル
http://ahkwiki.net/Tools

184 :名無しさん@お腹いっぱい。 :2019/06/24(月) 19:21:30.12 ID:CAnB0qRX0.net
AutoGui2.3.8からデバッガがうまく動作しない
同じ人おらんか

185 :名無しさん@お腹いっぱい。 :2019/06/24(月) 19:22:26.89 ID:CAnB0qRX0.net
2.3.8じゃねえ2.5.8

186 :名無しさん@お腹いっぱい。 :2019/06/25(火) 18:36:07.38 ID:fJAmXUdV0.net
wiki 見ながら書きました
メモ帳は動くのですが、秀丸は動きません 何が原因なんでしょう

メモ帳
WinActivate, ahk_class Notepad
WinMenuSelectItem, ahk_class Notepad, , ファイル, 開く
秀丸
WinActivate, ahk_class Hidemaru32Class
WinMenuSelectItem, ahk_class Hidemaru32Class, , ファイル, 開く

187 :名無しさん@お腹いっぱい。 :2019/06/25(火) 18:53:20.08 ID:tmUVz3tk0.net
>>186
AHKスクリプトを管理者権限で実行しても動かないかな?

188 :186 :2019/06/25(火) 19:03:32.69 ID:fJAmXUdV0.net
動かないです。

189 :186 :2019/06/25(火) 19:07:52.76 ID:fJAmXUdV0.net
秀丸はアクティブにはなるのですが、WinMenuSelectItemの方が動かないです。

190 :名無しさん@お腹いっぱい。 :2019/06/25(火) 19:10:13.10 ID:jHJHoOEZ0.net
ヒロシです。

191 :名無しさん@お腹いっぱい。 :2019/06/25(火) 19:25:14.41 ID:tmUVz3tk0.net
>>188
じゃあ仕方ないね
>特殊な仕様のメニューバーを使用している場合、このコマンドで操作することは出来ない。

Sendとかでメニュー操作を代用すればいいんじゃないかな

192 :名無しさん@お腹いっぱい。 :2019/06/25(火) 19:38:45.42 ID:I1hNxfkx0.net
ショートカットキーでどうぞ

Send ^o

193 :名無しさん@お腹いっぱい。 :2019/06/25(火) 21:24:10.16 ID:uruLriSQ0.net
>>190
ちょっとわらった

194 :名無しさん@お腹いっぱい。 :2019/06/25(火) 22:54:58.13 ID:HgfYOxLv0.net
秀丸はコントロールを独自にオーバーラップしてるのでメモ帳のようには扱えない
>192のようにショートカットキー投げちゃうのが簡単だと思うけど
あえてメニューを実行させたいならリソースハッカーでメニュー番号調べてWM_COMMAND を投げてやるといい

WM_COMMAND = 0x111
MENUITEM_OPEN = 4
WinActivate, ahk_class Hidemaru32Class
PostMessage, %WM_COMMAND%, %MENUITEM_OPEN%, 0, ,ahk_class Hidemaru32Class
https://i.imgur.com/P00ELZl.png

参考
https://ajinoya.hatenadiary.org/entry/20080509/1210329386

195 :186 :2019/06/26(水) 12:29:12.81 ID:cfzOTqWJ0.net
>>194

ありがとうございます。 動きました。
秀丸を動かしたいわけでなくショートカットキー設定がない別のソフトを動かす勉強のつもりで
最初から動かなかったので助かりました。

196 :名無しさん@お腹いっぱい。 :2019/06/26(水) 16:08:17.86 ID:SU3Y3WNV0.net
検索ソフトのeverythingを使っていますが”クリップボードの監視機能”
がないので下記を作りました。

#Persistent
OnClipboardChange:
Run,C:\Program Files\Everything\Everything.exe -s "%Clipboard% "
Return

firefoxで試しましたが、検索文字をコピーすると、firefoxの画面の上に、
everythingの検索結果の画面が毎回出てきます(ちょっとうざい)。
下記改善をしたいので知恵をお貸しください。

改善したいこと:コピーは、検索のためだけじゃないので、いつもはeverythingをfirefoxの
画面の下で動かして置き、検索結果を見たい時だけ、everythingの画面をクリックして、
上に持ってきたい。見た後は、FIREFOXの画面をクリックしてeverythingの画面を下にしたい。

表示優先度を最優先にできるソフトを使ってみたが、FIREFOXの画面が常時上になり、
everythingの画面は、隠れたままになりだめでした。

AHKですがキーボード操作は使いたくなく、クリック動作だけで行う方法を教えてください。

文章力がないので、うまく伝わるといいのですが。

197 :名無しさん@お腹いっぱい。 :2019/06/26(水) 16:50:47.94 ID:5afaXcPU0.net
>>196
ようするにEverythingをバックグラウンドにしたまま検索できればいいんだよね?
RunしないでControlSetText使う

198 :名無しさん@お腹いっぱい。 :2019/06/26(水) 19:21:23.57 ID:SU3Y3WNV0.net
>>196 です。
調べましたが、ControlSetTextの使い方が素人にはわかりません。
できたら、答えをください。

199 :名無しさん@お腹いっぱい。 :2019/06/26(水) 20:33:10.24 ID:5lMSjDGm0.net
>>198
ここは学ぶ気無い人に答え丸々くれる人は殆どいないよ
もし学ぶ気があるならwikiのControlSetTextの使い方説明をしっかり読んで
その上でどの部分が理解できないのかを書いてくれないと
こちらも「何が分からないのか」が分からないので教えようが無いよ

200 :名無しさん@お腹いっぱい。 :2019/06/26(水) 21:37:45.44 ID:fx2Owl41a.net
かなり根本的な問題な疑問
クリップボード監視機能はどういうときにほしいんだ?
検索結果を見たい時だけ見るのならクリップボードの監視は必要ないのでは?
Firefoxの下で動作させておく意味はあるのか?

Everythingというソフトの構造がインデクス作成用のサービスと表示用のEXEが別になっているとすればだけど
必要なときにクリップボードにある文字列を渡して起動すればいいだけなような気がするけど
そのときにRunWaitを使うようにして抜けてきたらFirefoxをアクティブにすればいい
Everythingを知らすに言っているので頓珍漢かもしれないけど

201 :名無しさん@お腹いっぱい。 :2019/06/26(水) 21:49:02.47 ID:ZyitK4Lg0.net
everything使ってるけどクリップボードを監視させようという発想が理解できない
キーボードショートカットでコピー→クリップボード検索でいいじゃんとしか

202 :名無しさん@お腹いっぱい。 :2019/06/26(水) 22:10:21.02 ID:aFqC4gPH0.net
自分もそう思う
>>196
>キーボード操作は使いたくなく、クリック動作だけで行う方法
というなら、長押しやロッカージェスチャーでEverything専用のものを作ればいい
文字列選択した後に、例えば右ボタン+X1ボタンで、
Ctrl+C
Clipwait
Run,〜
とかでいいんじゃないの

203 :名無しさん@お腹いっぱい。 :2019/06/26(水) 22:13:08.84 ID:Yek0UStY0.net
そのものズバリをやりたいならControlSetTextを使う(難易度 中)
一瞬ちらついてもいいのなら直前のアクティブ(firefox)を再アクティブにする処理でごまかす(難易度 低)
バックグラウンドじゃなくて最小化で妥協するならMINオプション付きでrunする(難易度 低)

ただ願わくばクリップボードにあるものを何でもかんでもEverythingに送る必要が本当にあるのかよく考えて欲しい
>200やhttp://egg.5ch.net/test/read.cgi/software/1559369719/29,36 でも再三アドバイスされてるが
ホットキー起動で検索したい時だけEverythingに送るのがもっとも簡単でスマートな解決法だと思う

204 :名無しさん@お腹いっぱい。 :2019/06/26(水) 22:38:36.80 ID:SU3Y3WNV0.net
>>200/201/202さん
舌足らずで申し訳ない。
Aという画面(例:firefox)で出てくるワードを頻繁にコピーしてネットで調査して記録しています。
この作業の中で、調査済みかどうか判断するために検索をかけています。
この検索は連続して必要な場合と記憶で不必要と判断できる場合があります。
検索ソフトのeverythingを使う場合
@検索をかけたい文字列をコピーし
AEverythingの画面を出し
BEverythingの検索ボックスにペースト
して検索しているが、”クリップボードの監視機能”があればBの動作を
省略できるので、その方法を探しています。

---ということで、>>196の質問をしています。

205 :名無しさん@お腹いっぱい。 :2019/06/26(水) 22:47:53.45 ID:aFqC4gPH0.net
>>204
んー、つまり>>196は、どこかしらから拾ってきたもので、そのスクリプト自体をよく分かってないってことか
Run,C:\Program Files\Everything\Everything.exe -s "%Clipboard% "
が、
>AとBの動作を省略してることになるんだが…
AHKだけじゃなく、コマンドラインも理解しないとダメだよ

206 :名無しさん@お腹いっぱい。 :2019/06/26(水) 22:56:12.36 ID:SU3Y3WNV0.net
>>199さん
おっしゃる通りですが、
#Persistent
OnClipboardChange:
Run,C:\Program Files\Everything\Everything.exe -s "%Clipboard% "
Return

の中で、今与えられているヒントは、RUNしないでControlSetTextを使えということだけです。
理解できたのは、everythingは起動させている状態で(構文では起動させない)
Clipboardの変化でeverythingにデータを送るということです。
ということで、
#Persistent
OnClipboardChange:
ControlSetText, Edit1, New Text Here, Untitled -
Return
まで来ましたが、Clipboardの指定と、
C:\Program Files\Everything\Everything.exeの指定をどうやってやるのか、
でつまずいています。ご指導をお願いいたします。

207 :名無しさん@お腹いっぱい。 :2019/06/26(水) 22:58:35.42 ID:SU3Y3WNV0.net
>>204 さん
おっしゃる通りです。
100年早いですかねー。。。。

208 :名無しさん@お腹いっぱい。 :2019/06/26(水) 23:00:41.21 ID:aFqC4gPH0.net
>>204
Everythingについてスレチだけど、↓読んで、-s がどういう意味なのか確認しよう
コマンドラインオプション - Everything日本語ヘルプ
ttps://sites.google.com/site/everythingjphelp/command_line_options
↓と組み合わせれば、もっと絞り込んだ検索ができるようになる
ttps://sites.google.com/site/everythingjphelp/searching

>>206
>RUNしないでControlSetTextを使えということだけです
何人も書いてる通り、その必要はないw そこから離れるべき

209 :名無しさん@お腹いっぱい。 :2019/06/26(水) 23:04:52.58 ID:quYLqF180.net
教えて君五大要素
1. 読まない
2. 調べない
3. 試さない
4. 理解力が足りない
5. 人を利用することしか頭にない

210 :名無しさん@お腹いっぱい。 :2019/06/26(水) 23:25:22.02 ID:5lMSjDGm0.net
>>206
wikiのサンプルコード
ControlSetText, Edit1, New Text Here, Untitled -
これはメモ帳を使った一例だよ
日本語版メモ帳の場合は最後のウィンドウタイトルはUntitled ではなく 無題 - だけどね

ウィンドウ指定の方法はwikiにリンク書いてあるからそれをちゃんと読もう
タイトルの他に、exeで指定したり ahk_class で指定したり出来る
(↑これ基本中の基本だからとても大事)

上記サンプルの Edit1 はメモ帳のテキスト入力欄のコントロールなので
Everythingの検索ボックスのコントロールはAHK付属の Window Spy で調べましょう

211 :名無しさん@お腹いっぱい。 :2019/06/26(水) 23:41:40.05 ID:pGhNbyeE0.net
ControlSetText, Edit1, %Clipboard%, ahk_class EVERYTHING

212 :名無しさん@お腹いっぱい。 :2019/06/27(木) 19:16:56.84 ID:GJMvau+Va.net
>>207
モチベーションのあるときほど学習効率がいいと思う
つまり今こそチャンス

213 :名無しさん@お腹いっぱい。 :2019/06/27(木) 19:58:24.56 ID:3ZicoPkN0.net
>>212さん
砂漠で道に迷っているときにこの言葉、私にとってのオアシスです。
ありがとうございます。
>>211/210さん
具体的な構文と Window Spy というキーワードで少し進めたような気がします。

#Persistent
OnClipboardChange:
ControlSetText, Edit1, %Clipboard%, ahk_class EVERYTHING
Return

でやっていますが、everythingの検索窓にClipboardの内容が入って来ません。
ほかの方々のご意見も含めて何回も何回も読んで、少しずつかみ砕いて行っています。

ControlSetTextから離れろ、というご指摘も含めて、七転八倒しています。
時間はかかりますがよろしくご指導ください。

214 :名無しさん@お腹いっぱい。 :2019/06/27(木) 20:18:57.73 ID:GJMvau+Va.net
>>213
検索窓にキーワードが入らないのはEXEが起動してないからでは?
ウィンドウが最小化されていてもちゃんと入ったぞ

215 :名無しさん@お腹いっぱい。 :2019/06/27(木) 21:00:52.91 ID:FFKBRgzw0.net
タスクトレイに入ってる場合は
DetectHiddenWindows, on
しないとだめかもね

216 :名無しさん@お腹いっぱい。 :2019/06/27(木) 21:01:28.47 ID:FFKBRgzw0.net
それかあれだ管理者権限

217 :名無しさん@お腹いっぱい。 :2019/06/27(木) 22:00:48.31 ID:3ZicoPkN0.net
>>213です。
管理者権限 でした。構文はあってたようです。
おかげで実行ファイルの作り方まで覚えてしまいました。(大したことではないですが)
助言、ありがとうございました。
初めて利用しましたが、あったかいですねここのスレは。ーーー感謝!感謝!

218 :名無しさん@お腹いっぱい。 :2019/06/27(木) 22:30:09.18 ID:GJMvau+Va.net
なるほど管理者権限か
解決したところで
こういうやり方もありではないかというやり方

Run,C:\Program Files\Everything\Everything.exe -minimized -s "%Clipboard% "

キーワードを送ると最小化するので
Everythingのウィンドウが見えている状態では違和感があるかもしれないが、
ほかのウィンドウの裏で動作しているなら
これでも実質ほぼ同じような使い方ができる

219 :名無しさん@お腹いっぱい。 :2019/06/28(金) 09:57:37.77 ID:4QUstTnm0.net
結果報告です。
minimizedのほうがいいかも。
everythingの起動がいらないし、たくさんの画面が出ているときに一つでも画面を
減らしたい場合に効果があります。

ということで、最終形として下記にしました。
#Persistent
OnClipboardChange:
Run,C:\Program Files\Everything\Everything.exe -minimized -s "%Clipboard% "
Sleep,5000
Return

220 :名無しさん@お腹いっぱい。 :2019/06/28(金) 10:15:09.45 ID:l/xbYwT/0.net
最小化でいいなら
Run,C:\Program Files\Everything\Everything.exe -s "%Clipboard%", ,MIN
でも行けるで
アプリ側にコマンドラインスイッチない時用な

221 :名無しさん@お腹いっぱい。 :2019/06/28(金) 12:26:31.85 ID:ONfMFbQ2a.net
流れぶった切って悪いんだけど、Shutdownコマンドのオプションにある「電源を切る」ってどういう効果?Win8.1以降の電源を切るシャットダウンになるってこと?

222 :名無しさん@お腹いっぱい。 :2019/06/30(日) 10:29:26.75 ID:cPd/cUyO0.net
AHKって、夜中の12時にリロードされるってことはありますか

なぜか、私のAHKは夜中の12時にリロードされてしまうのです。
リロードされてしまうので、デバッグをしようにもおかけようがないのですが何かいい方法はないでしょうか

223 :名無しさん@お腹いっぱい。 :2019/06/30(日) 10:53:03.81 ID:YReehQLW0.net
>>222
拾い物スクリプトならそういう記述されてるだけじゃねえの

224 :名無しさん@お腹いっぱい。 :2019/06/30(日) 11:09:42.12 ID:wwkXWOr50.net
スクリプトの中身すら見てなさそう

225 :名無しさん@お腹いっぱい。 :2019/06/30(日) 11:44:37.81 ID:cPd/cUyO0.net
自分で作ったんだけどねえ
そんな仕様を入れ込んだ覚えがないw

226 :名無しさん@お腹いっぱい。 :2019/06/30(日) 11:55:57.55 ID:cPd/cUyO0.net
タスクトレイのアイコンをダブルクリックすると、トレース画面が出てきますが、
これを自動でファイル保存させるオプションってないでしょうか
ファイルに保存されていたらあとから確認できるのですが

227 :名無しさん@お腹いっぱい。 :2019/06/30(日) 13:07:51.28 ID:QVbBzoKx0.net
OnExit通してデバッグすれば

228 :名無しさん@お腹いっぱい。 :2019/07/01(月) 01:26:28.34 ID:0ZD9smhN0.net
下のスクリプトを実行すると、^vの貼り付けがうまくいかないのはなぜでなんでしょうか?

vClipboardAll := ClipboardAll
Clipboard := ""
Clipboard := "Test"
ClipWait
MsgBox, %Clipboard%
Send, ^v
Clipboard := vClipboardAll

「hogehoge」をコピーした上でホットキーを実行
実行結果
メッセージボックス「Test」
テキスト出力「hogehoge」

「Send, ^v」の後ろに「Sleep, 100」を入れるとちゃんと「Test」が出力されますが、それもMsgBoxを消してしまうとそこそこの確率で失敗します。
っていうか前にSleepを入れると上手くいくのならまだ分かるのに……。

それと、Clipboard変数に直接文字を入れる場合、ClipWaitは不要だと思うのですが、合っていますか?

229 :名無しさん@お腹いっぱい。 :2019/07/01(月) 01:33:56.61 ID:RauxKuAY0.net
>>226
Menu, Tray, add と Menu, Tray, Default で出来るんじゃね
何のファイルを保存したいのか分からんけど

230 :名無しさん@お腹いっぱい。 :2019/07/01(月) 02:58:24.79 ID:xeKHJhLba.net
>>228
一番最初に?と思ったのは
>Send, ^v
のときにどういうウィンドウがアクティブになってるんだろうってこと
たとえばメモ帳がアクティブな状態でホットキーでスクリプトを呼ぶので
MsgBoxを閉じた後アクティブなウィンドウがメモ帳に戻っているということでいいんだろうか

もうひとつは
>テキスト出力「hogehoge」
が"Send, ^v"の効果としてのメモ帳への貼付けの意味なのかということ

>そこそこの確率で失敗します。
というのはメモ帳に「hogehoge」が貼り付くということなのか
つまりペーストは成功しているけどその内容が期待しているものと違うということなのか

>ClipWaitは不要だと思うのですが、合っていますか?
不要です
ついでに細かいことをいえば"Text"を入れる前に""を入れるのも不要です

ClipWaitがあるとうまく動いたりするならマシンスペックの問題ではないのか
であればそこにSleepを入れたとしてもうまく動くと思う

ペーストの処理で「hogehoge」が貼り付くのも
クリップボードの内容を「hogehoge」に戻す処理がahkのプロセス内で完結しているのに対して
Send による貼り付け処理は、ahk側のプロセスではメッセージを発行しているにすぎず
貼り付けが完了するにはOSがそのメッセージを処理して
アクティブになっているウィンドウ側でそのメッセージを受け取る処理となるので
ラグが発生する
マシンに十分なスペックがあればそれを意識しないで済むにすぎない
ということで受け取るウィンドウでの貼付け処理が終わるまでSleepで待ってやると
成功するのだと思う

231 :名無しさん@お腹いっぱい。 :2019/07/01(月) 06:10:33.35 ID:BQ1MBvZ20.net
>>228
Sendの前じゃなくて後ろの問題
Send, ^v が実行された後、実際に貼り付けられるよりも先に次の
Clipboard := vClipboardAll によってクリップボートの中身が書き変わっている
スクリプトは貼り付けの成功を見届けてくれるわけではない

232 :名無しさん@お腹いっぱい。 :2019/07/01(月) 08:23:54.89 ID:rzFpecjD0.net
>>229
タスクトレイのアイコンをダブルクリックしたときに、どういう行を順番に実行してきたかのトレース履歴がでてきますが、
それをファイルに保存したいのです
そういうオプションはありませんか

233 :名無しさん@お腹いっぱい。 :2019/07/01(月) 12:08:19.80 ID:m0tl9kEg0.net
wingettext

234 :名無しさん@お腹いっぱい。 :2019/07/02(火) 07:22:58.89 ID:Kw4uOEBEM.net
Menuで作るポップアップメニューについて
基本的にはラベル名を予め定義して使うものだと思いますが
例えば「あ」「い」「う」の3つの文字をメニュー表示し
選択された文字を特定するにはどうしたらよいでしょうか
選択可能な文字や選択肢の数は処理の実行ごとに変化します

ラベルを動的に定義する方法が分からなくて躓いています

235 :名無しさん@お腹いっぱい。 :2019/07/02(火) 08:19:49.79 ID:HVA9KY7k0.net
>>234
項目が選択されたら組み込み変数が更新される

A_ThisMenu 親メニュー名
A_ThisMenuItem メニュー項目の名前
A_ThisMenuItemPos メニュー項目の位置

236 :名無しさん@お腹いっぱい。 :2019/07/02(火) 15:04:30.74 ID:Kw4uOEBEM.net
>>235
ありがとうございます
頂いたヒントを基に一応やりたいことができました

str := "あ|い|う"
StringSplit, strArray, str , |
i := 0
Loop, %strArray0%
{
i := i + 1
s := strArray%i%
Menu, MENU1, add, %s%, label%i%
}
Menu, MENU1, SHOW
msgbox, %A_ThisMenuItem%
Return

label1:
Return
label2:
Return
label3:
Return

ただこれだと選択肢が増えたとき(あいうえお等)のためにラベルをたくさん定義しておかないといけません
もっといい方法があったらご教示ください

237 :名無しさん@お腹いっぱい。 :2019/07/02(火) 15:21:38.51 ID:fWTG4duU0.net
str := "あ|い|う"
StringSplit, strArray, str , |
i := 0
Loop, %strArray0%
{
i := i + 1
s := strArray%i%
Menu, MENU1, add, %s%, label
}
Menu, MENU1, SHOW
Return

label:
msgbox, %A_ThisMenuItem%
Return

238 :名無しさん@お腹いっぱい。 :2019/07/02(火) 15:27:09.56 ID:Kw4uOEBEM.net
>>237
ラベルを分ける必要なかったんですね!
ありがとうございました

239 :名無しさん@お腹いっぱい。 :2019/07/02(火) 18:49:14.13 ID:HVA9KY7k0.net
>>238
圧縮するとこんな感じ

; --- 文字列 ---
str := "あ|い|う"
StringSplit, strArray, str, |
Loop %strArray0%
Menu, MENU1, Add, % strArray%A_Index%, label ; "% "で引数を式に変更
Menu, MENU1, Show
return

label:
MsgBox %A_ThisMenuItem%
return

; --- 配列 ---
arr := ["え", "お", "か"]
for k, v in arr
Menu, MENU1, Add, %v%, label
Menu, MENU1, Show
return

label() { ; 関数でもおk
MsgBox %A_ThisMenuItem%
}

240 :名無しさん@お腹いっぱい。 :2019/07/02(火) 19:31:20.69 ID:Kw4uOEBEM.net
>>239
こんなスマートに書けるんですね!
実際には配列を使おうと思っていたのでとても参考になります
ありがとうございます

241 :名無しさん@お腹いっぱい。 :2019/07/03(水) 18:35:17.77 ID:9G3p7G5Q0.net
パソコン上のゲームで、上から落ちてくるりんごをマウスでカーソルを動かしてクリックして消滅させるというのがあります。
これを昔のインベーダーゲームのように左右の矢印キーを押して、スペースキーを押してやろうとして、
Left::
MouseGetPos, x, y
MouseMove % x-2, y
return
とかして作ろうとしたのですが、すると。左矢印キーを押すと、一旦止まってから動き出す、という状況になってしまいます。
キーを押して直後から動き出すようにはできないでしょうか

242 :名無しさん@お腹いっぱい。 :2019/07/03(水) 19:21:02.17 ID:v3mhnHa/0.net
>>241
SetTimerを使ってMouseGetPosとMouseMoveをリピートさせる
あとはGetKeyStateでキーを離したときにSetTimerを停止させればいい

243 :名無しさん@お腹いっぱい。 :2019/07/03(水) 19:46:11.92 ID:9G3p7G5Q0.net
なるほど、 ありがとうございました

244 :名無しさん@お腹いっぱい。 :2019/07/03(水) 19:52:43.06 ID:wxVLNcr20.net
よーし、いい子だ

245 :名無しさん@お腹いっぱい。 :2019/07/04(木) 04:11:02.69 ID:HjepJlAZ0.net
すみません
デスクトップのどこかをクリックして何も選択していない状態にして
alt + F4 でシャットダウンとかをさせるショートカットを作ろうとしているのですが、
何も選択しないように(非アクティブに)するコマンドが分かりません
マウスでどこか背景をクリックしたような状態になればそれでいいのですが、
いい方法はありますでしょうか?
よろしくお願いします

246 :名無しさん@お腹いっぱい。 :2019/07/04(木) 04:26:53.25 ID:FUdgW0PN0.net
a::shutdown, 1

247 :名無しさん@お腹いっぱい。 :2019/07/04(木) 10:30:17.75 ID:6QzvhFwe0.net
MouseMove, X, Y [, Speed, R]

のSpeedの項ですが、0から100の数字を入れるとあるけど、数字を100とかいれてもスピードが遅くなりません

Windows7です。 これって効かないのですか

248 :名無しさん@お腹いっぱい。 :2019/07/04(木) 10:53:41.71 ID:HjepJlAZ0.net
>>245
言葉がたりませんでした
デスクトップの時にalt F4を押した時に出る
シャットダウンやスリープを選ぶ画面を出すのを実現したいのですが
いい方法はありますでしょうか

249 :名無しさん@お腹いっぱい。 :2019/07/04(木) 11:17:55.34 ID:joaKslF40.net
>>248
Win+D→Alt+F4と送るんじゃだめ?

250 :名無しさん@お腹いっぱい。 :2019/07/04(木) 11:18:42.78 ID:7l7i5rFa0.net
>>248
デスクトップをアクティブにすればいいのでは

251 :名無しさん@お腹いっぱい。 :2019/07/04(木) 11:40:51.42 ID:HjepJlAZ0.net
>>249
出てるウインドウが全部消えてしまうのですが
キャンセルした時に復帰するウインドウとしないウインドウがあって
ちょっと不安ですが、本当にシャットダウンする場合はいけそうな気がします
ありがとうございます

>>250
デスクトップをアクティブにするコマンドを知りたいんですが
みつからなくて

252 :名無しさん@お腹いっぱい。 :2019/07/04(木) 11:41:06.72 ID:7l7i5rFa0.net
と思ったけどControlSendでデスクトップに直接送りつけたほうがはやいか

253 :名無しさん@お腹いっぱい。 :2019/07/04(木) 11:42:19.29 ID:7l7i5rFa0.net
>>251
WinActivate

254 :名無しさん@お腹いっぱい。 :2019/07/04(木) 11:46:30.78 ID:HjepJlAZ0.net
>>253
WinActivate って指定のウインドウをアクティブにするやつでは?
全部を非アクティブにしたいのですが、、、

今いろいろ調べてたらwin+Bでタスクトレイを選択させれば
見た目は変わらず選択が外れるみたいで
もしかしたら行けるかもとか思いました
邪道ですが、、

255 :名無しさん@お腹いっぱい。 :2019/07/04(木) 11:51:00.65 ID:HjepJlAZ0.net
みなさんいろいろありがとう
なんかさらにいい案があったら教えてもらえると幸いです
でもなんとかなりそうな気がしてきました

256 :名無しさん@お腹いっぱい。 :2019/07/04(木) 12:28:25.04 ID:FUdgW0PN0.net
>>255
>シャットダウンやスリープを選ぶ画面を出す
ということであれば、Win+X→U
デスクトップ→Alt+F4とは違うけど、デスクトップの何もない場所クリックとかアクティブ化とか
そういうのは気にしなくていいし、キー操作だけだから作りやすいのでは?

257 :名無しさん@お腹いっぱい。 :2019/07/04(木) 13:21:34.52 ID:OgAe9k/z0.net
>>254
だからデスクトップをWinActivateすりゃいいんだろて
Window Spyでデスクトップを調べろ

258 :名無しさん@お腹いっぱい。 :2019/07/04(木) 13:23:53.77 ID:HjepJlAZ0.net
>>257
ahk_class WorkerW
ahk_exe explorer.exe
これはうまく機能しなかったです

259 :名無しさん@お腹いっぱい。 :2019/07/04(木) 13:25:52.40 ID:HjepJlAZ0.net
>>257
ahk_class WorkerW
ahk_exe explorer.exe
これらをやってみたときは場合によってうまくいく場合と行かない場合が
あってよくわかりませんでした。
そもそもデスクトップをアクティブにするコマンドがわからなくて

260 :名無しさん@お腹いっぱい。 :2019/07/04(木) 13:33:24.47 ID:HjepJlAZ0.net
>>256
マックみたいに真ん中にダイアログが出るほうがそれらしのですが
なるほどそれも行けそうですね
ありがとうございます

261 :名無しさん@お腹いっぱい。 :2019/07/04(木) 13:33:49.54 ID:OgAe9k/z0.net
>>258
タイトルとクラスで行ける

262 :名無しさん@お腹いっぱい。 :2019/07/04(木) 13:48:49.02 ID:OgAe9k/z0.net
>>259
>場合によってうまくいく場合と行かない場合が

UACで弾かれてるだけじゃね
管理者権限で実行してるか?

263 :名無しさん@お腹いっぱい。 :2019/07/04(木) 13:49:56.93 ID:96zwb0Dh0.net
>>245
; --- Windowsの終了ダイアログ表示 ---
ControlSend,, !{F4}, ahk_class Progman ; explorer > Alt+F4
; または
ComObjCreate("Shell.Application").ShutdownWindows ; COM

>>247
問題なく動作するので、そちらの単純なミスだと思われる

MouseMove, 800, 800, 100
MouseMove, 400, 400, 100

264 :名無しさん@お腹いっぱい。 :2019/07/04(木) 15:32:01.25 ID:6QzvhFwe0.net
>>263
理由がわかりました。
エディタにSciTE4AutoHotKeyを使っているのですが、新規ファイルを作った時にデフォルトで頭に数行書かれているのも
含めてテストスクリプトを載せると、

#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
#UseHook
SetTitleMatchMode, 2 ; 2: 中間一致(WinTitleで指定した文字列を含むウィンドウが一致する)

MouseMove, 100, 100, 10
Sleep, 500
MouseMove, 200, 100, 10
Sleep, 500
MouseMove, 200, 200, 10
Sleep, 500
MouseMove, 100, 200, 10
Sleep, 500
ExitApp,0


なのですが、ここで、
SendMode Input
があるとスピードが効かず、これをコメントアウトするとスピードが効くようになりました
これってなんでデフォルトで入れてるのかな。これって何?

265 :名無しさん@お腹いっぱい。 :2019/07/04(木) 15:42:43.07 ID:HjepJlAZ0.net
>>263
ControlSend,, !{F4}, ahk_class Progman ; explorer > Alt+F4
こちらはデスクトップ状態の時は動作しなかったです

ComObjCreate("Shell.Application").ShutdownWindows ; COM
こちらはどんな時もどうさします
ズバリこれが一番よさそうです ありがとうございます
でもどういうコマンドなのか調べたけど分かりませんでした
かなり難しい感じみたいですね

266 :ポジションがずれる :2019/07/13(土) 07:40:52.68 ID:WrmDLoIa0.net
CoordMode, Mouse, Screen

CoordMode, Mouse, Relative
を使って
MouseGetPos, x, y, ctrlHWnd, ctrlClass, 1
としてxy座標を取得しようとしてるんですが、
Google Chromeを(Chromeに限らず)最大化して
一番左上にマウスをもっていってプログラムを実行すると、
Screen x:0 y:0
Relative x:11 y:11
といった具合に相対座標が若干ずれるんですが
これはアプリケーションがスクリーンより若干大きめに
表示されているということでしょうか?

267 :名無しさん@お腹いっぱい。 :2019/07/13(土) 07:59:23.02 ID:3s990zET0.net
>>266
はい、Windowsの仕様です
Win10のUIだと分かりにくいけどウィンドウ枠の周りには数ドット分の境界線の領域が設けられてるので
ウィンドウの最大化をするとその境界線領域の分だけScreen座標とRelative座標はズレます
ちなみにChromeでF11を押して、ボーダーレスフルスクリーンモードにすると
「境界線領域」が消えるのでマウスを一番左上に持っていくとScreen座標もRelative座標も0,0になると思います

268 :ポジションがずれる :2019/07/13(土) 09:05:23.69 ID:WrmDLoIa0.net
>>267
ありがとうございます!
モヤモヤが消えました!

269 :名無しさん@お腹いっぱい。 :2019/07/13(土) 10:40:51.25 ID:kxspStrp0.net
この前のwindows10更新からvk19の半角キーの設定が効かなくなった

270 :名無しさん@お腹いっぱい。 :2019/07/13(土) 11:02:01.63 ID:9Fgech0n0.net
●2ちゃんねる犯罪者リスト
秋葉通り魔(36)   卒業アルバム
> http://livedoor.blogimg.jp/surumeinu/imgs/a/c/ac02ef9e.jpg
刺殺された長男(51) 仕事の依頼で描いたなんらかのロボット
> https://moekoblog.com/wp-content/uploads/2019/06/0404619e-s.jpg
鈴木ドイツ(58)  コイツの趣味 = ナ  チ  ス  ド  イ  ツ  お  よ  び   第  二  次  世  界  大  戦 
> http://o.8ch.net/eflo.png 
> http://o.8ch.net/eosw.png 
> http://o.8ch.net/eouo.png 
> http://o.8ch.net/er4x.png 
> http://o.8ch.net/en8s.png
パンツァーフロントの続編を待つスレPART85 より一部画像抜粋
https://mevius.5ch.net/test/read.cgi/army/1442343972/167-

●自作自演容疑者リスト   鈴木あきら (ペンネーム:鈴木ドイツ) 

 北海道札幌市出身 昭和36年生まれ・58歳・無職・ひきこもり・独身・年金未納者 【要注意】>>>通り魔予備軍<<<【要注意】

    電通・TBS系下請け末端ネット工作員

●2ちゃんねるでのおもな犯行
・テレビ番組板で石橋貴明さんを誹謗する内容のスレを大量に立てて自作自演で保守している犯人
・爆報THEフライデースレで田原俊彦さん、笑点スレで林家三平さん、ヒルナンデススレで南原清隆さんを執拗に攻撃しているのもコイツ
・代表的な著書:『大戦略マスターコンバット』 ←中卒作家(自称)に相応しいすさまじいクソゲーw
・昭和36年生まれ、北海道札幌市生まれ(昭和30年代生まれは中卒は当たり前だった)
・●●ドリームキャストマガジンというゲーム情報雑誌のアドバンスド大戦略のページでナチスの軍服を着て写真掲載にのぞむなど危険な思想を持つ●●
・生涯のライバルは岡野哲氏(ファミ通出版社のホストを使って2ちゃんねるへ殺害予告を書いたこともあるぐらい彼を強く意識している)→要検索
・黒子のバスケ脅迫事件の犯人と同性質で、攻撃対象者のみならずその家族にまで脅迫をする
・レトロフリークやレトロゲームのミニ版を各スレでひっきりなしに宣伝して回っている
・レトロフリークの端子部がすぐ折れ曲がる欠陥があった時口汚く火消しに奔走していたのもコイツである

働けクズ

271 :名無しさん@お腹いっぱい。 :2019/07/21(日) 20:53:34.97 ID:zSGXpb8H0.net
すみません、プログラミングド初心者なのですが、
whileループで、クリップボードが空白になったら終了ってどうやるんでしょうか・・・

While Clipborad("")
{
WinActivate, ahk_class XLMAIN
Send, {Down}
Send,{LControl Down}{c}{LControl Up}
}
Return

272 :名無しさん@お腹いっぱい。 :2019/07/21(日) 21:34:42.41 ID:3j9PKtMS0.net
OnClipboardChange:
_Clipboard := ClipboardAll
while StrLen(_Clipboard) > 0
{
/*コマンド*/
_Clipboard := ClipboardAll
}
return

273 :名無しさん@お腹いっぱい。 :2019/07/22(月) 21:20:21.88 ID:mtKWRO7Q0.net
>>272
271です!
迅速にご回答いただき、ありがとうございました。
無事動きました!

274 :名無しさん@お腹いっぱい。 :2019/07/28(日) 14:11:20.31 ID:mEaQR9BY0.net
ssgfb094さん

2019/7/2813:49:53
.

F4押したら2、space,F、V、3と順番でループしてF4押したら終わるAutohotkeyのプログラム
教えてちょー

275 :名無しさん@お腹いっぱい。 :2019/07/29(月) 19:03:06.32 ID:5kpAaXc20NIKU.net
京都アニメを放火したのって
みんなも 犯人は  鈴 木 ド イ ツ し か い な い と 思 っ た よ ね 。次点で南 人 彰とかいうチョンね
犯行現場に刃物やハンマーが残されてたと聞いて

て          【2016年 3月11日】
っ          ADVANCED大戦略 テキダンヘイ39
き          http://potato.2ch.net/test/read.cgi/game/1447069423/999
り          > 999 名前:名無しさんの野望[] 投稿日:2016/03/11(金) 12:52:41.46 ID:hmD+sBrQ
鈴          > 南とかいう人間じゃないって何度書いても理解できない精神発達遅滞者にパソコン
木          > 与えてる成年後見人は誰だよ全く
            >
ド          > こいつのせいで2001又は5以降AD大戦略が作って貰えなくなったと思うと本当に殺したく
イ          > なるは。俺は昔から粘着気質でどこまでもいつまでもあきらめずに調べ続けるタチやから
ツ          > 調べ上げて DIYセンター で 斧 か ハ ン マ ー で も 買 っ て 頭 カ チ 割 る の が今の夢かな
容          > 状況判断的にSSαかセガから調べると早そうだ

者 秋葉通り魔(36)   卒業アルバム
が > http://livedoor.blogimg.jp/surumeinu/imgs/a/c/ac02ef9e.jpg
ア 刺殺された長男(51) 仕事の依頼で描いたなんらかのロボット
ド  > https://moekoblog.com/wp-content/uploads/2019/06/0404619e-s.jpg
バ 鈴木ドイツ(58)  コイツの趣味= ナ  チ  ス  および第二次世界大戦
ン > http://o.8ch.net/eosw.png http://o.8ch.net/eouo.png http://o.8ch.net/er4x.png http://o.8ch.net/en8s.png




略スレに書いていた殺害予告をとうとう実行したのだなと思ったよね

最近ではゲーセン板の栃木スレで特定人物に対して執拗に「死ぬ」「殺す」などのワードを含んだ脅迫文を毎日繰り返し書いているらしい
   https://medaka.5ch.net/test/read.cgi/gecen/1560508236/6

なんにしても予備軍どころでは済まされないようなキチガイ犯罪予備軍が中年〜壮年層にゴロゴロいるっていう事よ、みんなどうするよ?

276 :名無しさん@お腹いっぱい。 :2019/07/30(火) 15:09:57.93 ID:sP0IFLhpp.net
GUIを非アクティブで出すことは出来たんですが
ボタンを押して命令を非アクティブで行う方法かわ分かりません
ご教授お願いいたします

277 :名無しさん@お腹いっぱい。 :2019/07/30(火) 20:52:26.01 ID:88nhTZOna.net
バックグラウンドにわざわざボタンを出してそれを押す意味とは?
そのタイミングで直にボタンを押された後の処理をすればいいだけでは?
どういうシチュエーションでそれが必要になるのか想像できない

278 :名無しさん@お腹いっぱい。 :2019/07/30(火) 21:44:40.15 ID:sP0IFLhpp.net
すみません意味不明でしたね
やりたい事をちゃんと説明しますと
お絵描きソフトで専用のツールパレットを作りたくて
GUIでボタンを並べてキーを送信するようにしました
でもボタンを押すと一瞬GUIがアクティブになるので
ボタンの命令の最初にお絵描きソフトをアクティブに戻すようにしました
しかしそうするとレスポンスが悪いです
mousegestureLなどはターゲットのソフトがアクティブのまま
キーを送信できてるのでGUIのボタンもアクティブにならずに
キーを送信する方法があるのかと思いまして質問しました

279 :名無しさん@お腹いっぱい。 :2019/07/30(火) 22:14:13.54 ID:UN03LOZn0.net
アクティブにならない=ボタン押せない
ってことなんだけど意味分かってるんだろうか?
非アクティブなパレット作りたいなら
触れない透過ウィンドウでパレット風の画像を貼って
自力でマウスのポインタ位置とパレット画像の位置から差分で
押されたであろうボタンを割り出して処理する必要がある

自分なら面倒なのでホットキーかジェスチャーの割当一覧でも表示しておいて
ボタン操作は諦める

280 :名無しさん@お腹いっぱい。 :2019/07/30(火) 22:21:01.58 ID:sP0IFLhpp.net
>>279
かなりめんどい処理のようですね
別の方法を考えます
ありがとうございます

281 :名無しさん@お腹いっぱい。 :2019/07/30(火) 22:48:55.96 ID:88nhTZOna.net
あーボタンを押すのはプログラムではなくユーザーなのか

試してないからわからないが
GUIのウィンドウスタイルとして
WS_EX_TOOLWINDOWとか
WS_EX_PALETTEWINDOW(この場合はWS_EX_TOPMOSTを含んでる点に注意)を
設定したら行けそうな気もする

拡張ウィンドウスタイル
http://ahkwiki.net/Styles

(Unnamed ExStyle)
https://www.autohotkey.com/docs/commands/Gui.htm#Controls_Uncommon_Styles_and_Options

282 :名無しさん@お腹いっぱい。 :2019/07/30(火) 23:58:24.76 ID:88nhTZOna.net
WS_EX_TOOLWINDOW とかでなく
WS_DISABLED 0x08000000 だとアクティブにならずに実行できた

Gui, +E0x08000000

283 :名無しさん@お腹いっぱい。 :2019/07/31(水) 00:03:12.56 ID:J1PR6W6m0.net
ちょっと質問です。

PhraseExpress と autohotkey を並行して動作させることは可能でしょうか。

試したところ、phaseexpress で 「ぬるぽぬるぽ」="np;" を定義して
np; をタイプすると np;ぬるぽ が表示されます。
np; がバックスペースで消去されて、「ぬるぽぬるぽ」に
置き換わってほしいのですが、そうはならないようです。

autohotkey でキーフックしているキーを phaseExpress で使うことは
できないのでしょうか。

284 :名無しさん@お腹いっぱい。 :2019/07/31(水) 00:09:28.81 ID:1kSBk4M4a.net
>>282
WS_EX_TOOLWINDOW とかでなく

誤 WS_DISABLED 0x08000000 だとアクティブにならずに実行できた
正 WS_EX_NOACTIVATE 0x08000000 だとアクティブにならずに実行できた
http://chokuto.ifdef.jp/advanced/prm/extended_window_style.html

Gui, +E0x08000000

285 :名無しさん@お腹いっぱい。 :2019/07/31(水) 01:18:28.41 ID:wAZT44000.net
>>283
PhraseExpressを併用せずにAHKだけでnp; が「ぬるぽぬるぽ」に
置き換わるようにすりゃ良いだけに思えるんだけど
わざわざ併用しなきゃならない理由あるの?

286 :名無しさん@お腹いっぱい。 :2019/07/31(水) 04:37:39.89 ID:rsrLpJYL0.net
> autohotkey でキーフックしているキーを phaseExpress で使うことはできないのでしょうか。
コンフリクト起こしてるなら ~ で乗っ取り避けたらいいんでね?

287 :名無しさん@お腹いっぱい。 :2019/07/31(水) 12:35:41.67 ID:7ejrOIYH0.net
>>285
autohotkey で提供しているのは、親指シフト・エミュレータです。
そして、PhraseExpress を並行して使いたいと考えておられるのは、
この親指シフト・エミュレータのユーザです。

>>286
これですね。ありがとうございました。試してみます。
http://ahkwiki.net/Hotkeys
イベントを乗っ取らず、そのままシステムに通す。(NT系専用)
例: ~*a::SoundPlay,D:\AutoHotkey\typesound.wav Aキーが押されたときにサウンドを鳴らす。

288 :名無しさん@お腹いっぱい。 :2019/07/31(水) 12:45:26.71 ID:rsrLpJYL0.net
その親指シフト・エミュレータスクリプトにPhraseExpress 相当の機能を盛り込むのはダメなの?
ホットストリング使えば比較的楽に実装できると思うけど
(改行含むテンプレは工夫する必要があるかもしれんが)

289 :名無しさん@お腹いっぱい。 :2019/07/31(水) 13:06:43.77 ID:/JNNzzax0.net
>>287
「考えておられるのは」とか知らねえよw
質問あるなら本人出きて事情説明しろよw

290 :名無しさん@お腹いっぱい。 :2019/07/31(水) 17:11:13.39 ID:nVDuJg6np.net
>>284
やりたい事が出来ました
ありがとうございます

291 :名無しさん@お腹いっぱい。 :2019/07/31(水) 19:12:45.91 ID:qcKL+brg0.net
【八岐の】孕ませちゃうぞ!!【ちんこ】
https://egg.5ch.net/test/read.cgi/game/1564489966/1-

1 名前:名無しさんの野望[sage] 投稿日:2019/07/30(火) 21:32:46.58 ID:f5SDCqKZ
逮捕しちゃうぞの作者にカバーデザイン頼んだが断れられた

2 名前:名無しさんの野望[sage] 投稿日:2019/07/30(火) 21:38:14.95 ID:XaAESd3N
お前1日中PCゲーム板に貼り付いてある時はゴミスレ立てて
またある時は南人彰ネタで荒らして… よほど暇なんだねw

3 名前:名無しさんの野望[sage] 投稿日:2019/07/30(火) 21:42:12.17 ID:gIwacsld
ほんそれ
いい歳こいて親の金で生きてるって情けないと思わない?テメェの食い扶持ぐらいテメェで稼げよボケ!>鈴木ドイツ

さっさと自殺するなり自力で安楽死するなりしろカスw
----------------------------
●自作自演容疑者リスト   鈴木あきら (ペンネーム:鈴木ドイツ) 

 北海道札幌市出身 昭和36年生まれ・58歳・無職・ひきこもり・独身・年金未納者 【要注意】>>>通り魔予備軍<<<【要注意】

    電通・TBS系下請け末端ネット工作員

●2ちゃんねるでのおもな犯行
・テレビ番組板で石橋貴明さんを誹謗する内容のスレを大量に立てて自作自演で保守している犯人
・爆報THEフライデースレで田原俊彦さん、笑点スレで林家三平さん、ヒルナンデススレで南原清隆さんを執拗に攻撃しているのもコイツ
・代表的な著書:『大戦略マスターコンバット』 ←中卒作家(自称)に相応しいすさまじいクソゲーw
・昭和36年生まれ、北海道札幌市生まれ(昭和30年代生まれは中卒は当たり前だった)
・●●ドリームキャストマガジンというゲーム情報雑誌のアドバンスド大戦略のページでナチスの軍服を着て写真掲載にのぞむなど危険な思想を持つ●●
・生涯のライバルは岡野哲氏(ファミ通出版社のホストを使って2ちゃんねるへ殺害予告を書いたこともあるぐらい彼を強く意識している)→要検索
・黒子のバスケ脅迫事件の犯人と同性質で、攻撃対象者のみならずその家族にまで脅迫をする
・レトロフリークやレトロゲームのミニ版を各スレでひっきりなしに宣伝して回っている
・レトロフリークの端子部がすぐ折れ曲がる欠陥があった時口汚く火消しに奔走していたのもコイツである

292 :名無しさん@お腹いっぱい。 :2019/07/31(水) 23:59:59.56 ID:J1PR6W6m0.net
>>288
PhraseExpress は、かなり高機能でGUIも凝っています。
これをそのまま autohotkey のスクリプトで実現するのは骨が折れます。

それに、ユーザさんのご希望は、"PhraseExpress を親指シフト環境でも使い続けたい"
というものなので、PhraseExpress 相当の機能を盛り込んでも、使ってはもらえないとおもいます。

ユーザさんにインタビューしたところ、
PhraseExpressについては、IMEの直接入力モードで動作すれば足りるようです。

つまり、IMEの直接入力モードのときには、Hotkeyコマンドで、各ホットキーをOFFすれば
PhraseExpress が問題なく動作すると考えられます。

IMEのひらがな/全角カタカナ/半角カタカナ/全角英数/半角英数のときには
HotKeyコマンドで、各ホットキーをONすれば、親指シフトをエミュレートできます。
その代わり、PhraseExpressは動作しなくなりますが、
制限事項として容認してもらえるとおもいます。

問題は、Dvorak配列のエミュレートのように、
直接入力であってもホットキーをONしたい場合ですが、
このような使われ方は稀なので、制限事項として容認してもらえると考えました。

293 :名無しさん@お腹いっぱい。 :2019/08/01(木) 01:37:41.64 ID:wlpN6fyQ0.net
【八岐の】孕ませちゃうぞ!!【ちんこ】
https://egg.5ch.net/test/read.cgi/game/1564489966/1-

1 名前:名無しさんの野望[sage] 投稿日:2019/07/30(火) 21:32:46.58 ID:f5SDCqKZ
逮捕しちゃうぞの作者にカバーデザイン頼んだが断れられた

2 名前:名無しさんの野望[sage] 投稿日:2019/07/30(火) 21:38:14.95 ID:XaAESd3N
お前1日中PCゲーム板に貼り付いてある時はゴミスレ立てて
またある時は南人彰ネタで荒らして… よほど暇なんだねw

3 名前:名無しさんの野望[sage] 投稿日:2019/07/30(火) 21:42:12.17 ID:gIwacsld
ほんそれ
いい歳こいて親の金で生きてるって情けないと思わない?テメェの食い扶持ぐらいテメェで稼げよボケ!>鈴木ドイツ

さっさと自殺するなり自力で安楽死するなりしろカスw
----------------------------
●自作自演容疑者リスト   鈴木あきら (ペンネーム:鈴木ドイツ) 

 北海道札幌市出身 昭和36年生まれ・58歳・無職・ひきこもり・独身・年金未納者 【要注意】>>>通り魔予備軍<<<【要注意】

    電通・TBS系下請け末端ネット工作員

●2ちゃんねるでのおもな犯行
・テレビ番組板で石橋貴明さんを誹謗する内容のスレを大量に立てて自作自演で保守している犯人
・爆報THEフライデースレで田原俊彦さん、笑点スレで林家三平さん、ヒルナンデススレで南原清隆さんを執拗に攻撃しているのもコイツ
・代表的な著書:『大戦略マスターコンバット』 ←中卒作家(自称)に相応しいすさまじいクソゲーw
・昭和36年生まれ、北海道札幌市生まれ(昭和30年代生まれは中卒は当たり前だった)
・●●ドリームキャストマガジンというゲーム情報雑誌のアドバンスド大戦略のページでナチスの軍服を着て写真掲載にのぞむなど危険な思想を持つ●●
・生涯のライバルは岡野哲氏(ファミ通出版社のホストを使って2ちゃんねるへ殺害予告を書いたこともあるぐらい彼を強く意識している)→要検索
・黒子のバスケ脅迫事件の犯人と同性質で、攻撃対象者のみならずその家族にまで脅迫をする
・レトロフリークやレトロゲームのミニ版を各スレでひっきりなしに宣伝して回っている
・レトロフリークの端子部がすぐ折れ曲がる欠陥があった時口汚く火消しに奔走していたのもコイツである

294 :名無しさん@お腹いっぱい。 :2019/08/01(木) 02:02:12.83 ID:3twbqCEv0.net
>>292
お前は要点を簡潔に書くこと出来ねえのかよ
しかも言ってることがトンチンカンすぎ
お前は>>283
>np; がバックスペースで消去されて、「ぬるぽぬるぽ」に
>置き換わってほしい
と書いたんだから、じゃあその機能はAHKのホットスリングでやれば簡単にできるだろって話
それ以外の他の機能のことなんて一切書いてないんだから知らねえよw

295 :名無しさん@お腹いっぱい。 :2019/08/01(木) 23:09:05.68 ID:MQwmWyWq0.net
いちおう >>292 で考えていたことのプロトタイプは動きました。
IMEをON したときには、aキーをタイプすると u を出力してIMEに「う」と変換させます
IMEをOFF したときには、キーフックoffして、
aキーをタイプすると、そのまま aを出力します。
このときには PhraseExpress が動く筈です。

本番ではもっと細かくIMEのモードを判定するのですが、
動作確認用プロトタイプなのでここまでにしました。

このソースを動かすには、ime.ahk を同一フォルダに入れてください。
------ 以下は autohotkey のソース ----
SetTimer Interrupt10,10
hotkey,a,Label_a
return

Interrupt10:
vImeMode := IME_GET() & 32767
if(vImeMode = 0)
{
hotkey,a,off
} else {
hotkey,a,on
}
return

Label_a:
send,u
return
#include IME.ahk

296 :名無しさん@お腹いっぱい。 :2019/08/01(木) 23:37:30.05 ID:sWYWbevo0.net
細かい条件はしらんけど
IMEの状態だけ見るなら #ifでもいけるのでは

#if IME_GET() & 32767
a::
hogehoge
return
#if

297 :名無しさん@お腹いっぱい。 :2019/08/01(木) 23:40:31.20 ID:sWYWbevo0.net
条件逆か
#if !(IME_GET() & 32767)

298 :名無しさん@お腹いっぱい。 :2019/08/02(金) 14:02:49.33 ID:7//panOr0.net
京都アニメを放火したのって
みんなも 犯人は  鈴 木 ド イ ツ し か い な い と 思 っ た よ ね 。次点で南 人 彰とかいうチョンね
犯行現場に刃物やハンマーが残されてたと聞いて

て          【2016年 3月11日】
っ          ADVANCED大戦略 テキダンヘイ39
き          http://potato.2ch.net/test/read.cgi/game/1447069423/999
り          > 999 名前:名無しさんの野望[] 投稿日:2016/03/11(金) 12:52:41.46 ID:hmD+sBrQ
鈴          > 南とかいう人間じゃないって何度書いても理解できない精神発達遅滞者にパソコン
木          > 与えてる成年後見人は誰だよ全く
            >
ド          > こいつのせいで2001又は5以降AD大戦略が作って貰えなくなったと思うと本当に殺したく
イ          > なるは。俺は昔から粘着気質でどこまでもいつまでもあきらめずに調べ続けるタチやから
ツ          > 調べ上げて DIYセンター で 斧 か ハ ン マ ー で も 買 っ て 頭 カ チ 割 る の が今の夢かな
容          > 状況判断的にSSαかセガから調べると早そうだ

者 秋葉通り魔(36)   卒業アルバム
が > http://livedoor.blogimg.jp/surumeinu/imgs/a/c/ac02ef9e.jpg
ア 刺殺された長男(51) 仕事の依頼で描いたなんらかのロボット
ド  > https://moekoblog.com/wp-content/uploads/2019/06/0404619e-s.jpg
バ 鈴木ドイツ(58)  コイツの趣味= ナ  チ  ス  および第二次世界大戦
ン > http://o.8ch.net/eosw.png http://o.8ch.net/eouo.png http://o.8ch.net/er4x.png http://o.8ch.net/en8s.png




略スレに書いていた殺害予告をとうとう実行したのだなと思ったよね

最近ではゲーセン板の栃木スレで特定人物に対して執拗に「死ぬ」「殺す」などのワードを含んだ脅迫文を毎日繰り返し書いているらしい
   https://medaka.5ch.net/test/read.cgi/gecen/1560508236/6

なんにしても予備軍どころでは済まされないようなキチガイが高年層にゴロゴロいるって事。これは安楽死法案を求めての犯行なのでは?

299 :名無しさん@お腹いっぱい。 :2019/08/06(火) 12:01:24.62 ID:nVhsM0hWp.net
guiのbuttonに色を付けれないんですが
won10の仕様ですか?

300 :名無しさん@お腹いっぱい。 :2019/08/06(火) 18:27:46.40 ID:xxbrVvZY0.net
>>299
[Class] ImageButton
https://www.autohotkey.com/boards/viewtopic.php?f=6&t=1103

301 :名無しさん@お腹いっぱい。 :2019/08/06(火) 18:43:46.55 ID:3SL5AHge0.net
■■■PS2史上最悪の欠陥品にご注意ください■■■

http://ages.sega.jp/information.html
『SEGA AGES 2500 Vol.22 アドバンスド大戦略 〜ドイツ電撃作戦〜』バランス調整版交換に関するお知らせ

平成18年5月22日
株式会社セガ

平素は弊社商品をご愛顧頂きまして、誠にありがとうございます。
先般ご案内致しました、弊社発売のプレイステーション2用ゲームソフト『SEGA AGES 2500 Vol.22 アドバンスド大戦略 −ドイツ電撃作戦−」における、アルゴリズムを調整しなおしたバランス調整版の交換方法につきまして下記の通りご案内申し上げます。


【調整版における変更の内容】
1. CPUアルゴリズムの調整・・・・・・・・・・・敵がプレイヤーを無視してMAP左斜め上に行軍してゲ一ムにならないというPS2史上最悪の欠陥
2. 戦闘画面の「DEFENCE」表示を修正
3. 戦闘結果計算アルゴリズムの調整・・・・・南人彰が攻撃力と防御力のデ一タをあべこべに算出するよう打った。早い話、すべてのデ一タデタラメ。
4. 都市回復力のバランス調整

※セーブデータは引継ぎ可能です。
SEGA AGES 2500 シリーズ Vol. 22 アドバンスド大戦略 −ドイツ電撃作戦--
【交換方法につきまして】
[1] まず、下記の要領にてお送りください。
※ お持ちのゲ一ムディスクの印刷面が「青色」であれば、そのディスクは調整版です。
お送りにならないよう、ご注意ください。
─----------------------------------
欠陥を故意に出した犯人の名前は韓国人通名の元セガ社員、南人彰容疑者
セガエイジス担当の奥成氏に恥をかかせる目的で犯行に及んだキチガイ通名韓国人

2ちゃんねるで芸能人を誹謗中傷している鈴木ドイツ(鈴木あきら)容疑者はアドバンスド大戦略好きで
ドリームキャストの雑誌でアドバンスド大戦略についてコラムを書いた事もある(ナチスの軍服を着用して著者近影の撮影にのぞんでおり、そこからどういう人間かが伺い知れる)

ただ、どっちが改竄した犯人かわからないが、wikipediaに書いてあったはずのこの欠陥項目は現在バッサリ削除されているので皆さんは悪質な犯罪者および欠陥品にご注意下さい

302 :名無しさん@お腹いっぱい。 :2019/08/06(火) 19:03:50.33 ID:ex0XZJRI0.net
ボタン画像作ってそれっぽく見せればいいじゃない

303 :名無しさん@お腹いっぱい。 :2019/08/06(火) 19:04:54.00 ID:ex0XZJRI0.net
リロードしてなかったすまん

304 :名無しさん@お腹いっぱい。 :2019/08/06(火) 19:31:04.03 ID:2Vnf8Yu00.net
■■■PS2史上最悪の欠陥品にご注意ください■■■

http://ages.sega.jp/information.html
『SEGA AGES 2500 Vol.22 アドバンスド大戦略 〜ドイツ電撃作戦〜』バランス調整版交換に関するお知らせ

平成18年5月22日
株式会社セガ

平素は弊社商品をご愛顧頂きまして、誠にありがとうございます。
先般ご案内致しました、弊社発売のプレイステーション2用ゲームソフト『SEGA AGES 2500 Vol.22 アドバンスド大戦略 −ドイツ電撃作戦−」における、アルゴリズムを調整しなおしたバランス調整版の交換方法につきまして下記の通りご案内申し上げます。


【調整版における変更の内容】
1. CPUアルゴリズムの調整・・・・・・・・・・・敵がプレイヤーを無視してMAP左斜め上に行軍してゲ一ムにならないというPS2史上最悪の欠陥
2. 戦闘画面の「DEFENCE」表示を修正
3. 戦闘結果計算アルゴリズムの調整・・・・・南人彰が攻撃力と防御力のデ一タをあべこべに算出するよう打った。早い話、すべてのデ一タデタラメ。
4. 都市回復力のバランス調整

※セーブデータは引継ぎ可能です。
SEGA AGES 2500 シリーズ Vol. 22 アドバンスド大戦略 −ドイツ電撃作戦--
【交換方法につきまして】
[1] まず、下記の要領にてお送りください。
※ お持ちのゲ一ムディスクの印刷面が「青色」であれば、そのディスクは調整版です。
お送りにならないよう、ご注意ください。
─----------------------------------
欠陥を故意に出した犯人の名前は韓国人通名の元セガ社員、南人彰容疑者
セガエイジス担当の奥成氏に恥をかかせる目的で犯行に及んだキチガイ通名韓国人

2ちゃんねるで芸能人を誹謗中傷している鈴木ドイツ(鈴木あきら)容疑者はアドバンスド大戦略好きで
ドリームキャストの雑誌でアドバンスド大戦略についてコラムを書いた事もある(ナチスの軍服を着用して著者近影の撮影にのぞんでおり、そこからどういう人間かが伺い知れる)

ただ、どっちが改竄した犯人かわからないが、wikipediaに書いてあったはずのこの欠陥項目は現在バッサリ削除されているので皆さんは悪質な犯罪者および欠陥品にご注意下さい

305 :名無しさん@お腹いっぱい。 :2019/08/18(日) 07:14:30.32 ID:BWOwWf0Pd.net


306 :名無しさん@お腹いっぱい。 :2019/08/18(日) 08:38:30.73 ID:dgvFBP0c0.net



シエ
 東
  マ
  ン
   シ
    ョ
    ン
    神
   隠
   し
  殺
  人
 事
件              い く ら I D を 偽 っ て も 、 チ ョ ン 臭 さ と 根 の 暗 さ は 変 え ら れ な い 














株  式  会  チ  キ  ン ヘ  ッ  ド の  ミ  ナ  ミ  ヒ  ト  ア  キ  根の暗い自作自演工作なんてやめて 遊  ぼ  う  ぜuu

307 :名無しさん@お腹いっぱい。 :2019/08/19(月) 03:18:03.68 ID:/TODY0uT0.net
>>9の対策パッチですが現在どこで手に入りますか?
Windows10を再インストールしたら昔保存していたEnableUIAccess.ahkを使っても効果が無くなってしまいました。

308 :名無しさん@お腹いっぱい。 :2019/08/19(月) 11:26:56.36 ID:g68QXlwb0.net



シエ
 東
  マ                こんなネット工作しにくい状況下で自作自演なんかしてどうするつもりだい?人彰くん
  ン
   シ
    ョ
    ン
    神
   隠
   し
  殺
  人
 事
件              い く ら I D を 偽 っ て も 、 チ ョ ン 臭 さ と 根 の 暗 さ は 変 え ら れ な い 






入            なんなら自作自演ネット工作を営業妨害されたとかで告訴してもいいんだよボンクラ人彰くんw







株  式  会  チ  キ  ン ヘ  ッ  ド の  ミ  ナ  ミ  ヒ  ト  ア  キ  根の暗い自作自演工作なんてやめて 遊  ぼ  う  ぜkt

309 :名無しさん@お腹いっぱい。 :2019/08/19(月) 18:47:39.49 ID:w7hMTM2t0.net
>>307
ファイルの置く場所間違ってるとか?

310 :名無しさん@お腹いっぱい。 :2019/08/19(月) 19:30:15.82 ID:x+7Yv8mr0.net
真・セガサターン総合スレ [無断転載禁止](c)2ch.net
https://medaka.5ch.net/test/read.cgi/game90/1469246499/629-630


629 名前:せがた七四郎[sage] 投稿日:2019/08/19(月) 15:35:56.10 ID:49tARyAI
コピペ馬鹿がソフトウェア板にニートタイムに書き込んでいてワロタw

630 名前:せがた七四郎[] 投稿日:2019/08/19(月) 18:46:12.62 ID:LMwdgPMX
悔しい気持ちは分かるが

ニートタイムにソフトウェア板














ト工作してるバカが誰かを知ってるのは   

                 刑事さんなんだよ>株式会社チキンヘッドのボンクラ朝鮮人の南人彰くん

嘘だと思うんだったら被害届出して証拠を提示してもいいし

君が自殺または殺害されればソフトウェア板のネット工作が止まるhhwaga

311 :名無しさん@お腹いっぱい。 :2019/08/21(水) 08:17:08.13 ID:7pDdH3h+0.net
オブジェクトのパラメータをうまく関数に渡せないのですが…

obj := Object()
obj["xxxx"] := "エックス"
obj.yyyy := "ワイ"

myFunc(arg1, arg2, arg3) {
global
Send, 第1引数は『%arg1%』
Send, 第2引数は『%arg2%』
dai3 := obj[%arg3%]
Send, 第3引数で取り出した中身は『%dai3%』
Return
}

F1:: myFunc(obj["xxxx"], obj.yyyy, "xxxx")

これでF1を押しても
第1引数は『』第2引数は『』第3引数で取り出した中身は『』
と出るだけで…

312 :名無しさん@お腹いっぱい。 :2019/08/21(水) 08:45:07.04 ID:fC9sumoK0.net
obj[%arg3%]は間違ってるから直すとして
ちゃんと『エックス』『ワイ』『エックス』になるけど

313 :名無しさん@お腹いっぱい。 :2019/08/21(水) 10:18:33.96 ID:ZImuDhQ+0.net
US配列でコロンとセミコロンを入れ替えたいんですけど
キー自体が同じだともしかして出来ない?

314 :名無しさん@お腹いっぱい。 :2019/08/21(水) 11:10:09.56 ID:Py7zSZTq0.net
>>313
US配列ってShift+セミコロン=コロンでしょ?
ならそれを入れ替えればいいだけでしょ?
普通にできるよ
出来ないなら何かしら書き方間違ってるだけでしょう

315 :名無しさん@お腹いっぱい。 :2019/08/21(水) 17:43:52.98 ID:VPHC843o0.net
:]w毎日熱中症対策で頭に巻いてるタオルから生乾き臭がする株/式/会/社/チ/キ/ン/ヘ/ッ/ド/のボンクラチョーセンジンの南ひ/と/あ/き/?


























どうせ青葉みたいに独りよがりな思い込みで勝手に恨み抱いてんだろうな

15年も前からずっと粘着してる子供部屋おじさんとか完全に末期だろw

自殺したほうがいいよba

316 :名無しさん@お腹いっぱい。 :2019/08/22(木) 00:32:11.20 ID:IP4UxXpua.net
>>313
英語キーボードで動いた

-------------
:::send `;
`;:::
-------------

":"の置き換え側が"a"とかなら
:::a
で動くが
";"だと send でないとうまく動かなかった

317 :311 :2019/08/22(木) 04:10:51.19 ID:4UzFImrr0.net
>312
あ、これだけを新規ファイルに移したらできました…!
どうやら他に色々書いてるコードとの兼ね合いでおかしくなってるようですが、
一体何のせいで動かなくなっているのかがわからない… 特に衝突しそうなコードは見当たらないし…
変数名を変えても同じなので変数名のせいではないとして…

318 :名無しさん@お腹いっぱい。 :2019/08/22(木) 12:32:40.43 ID:dtV3KUqN0.net
obj定義より前にreturnか関数が入ってて
autoexecuteセクション終わっちゃってる予感

319 :311 :2019/08/22(木) 22:58:54.44 ID:4UzFImrr0.net
>>318
先頭に書いてもやっぱり動きませんでしたが、別ファイルに切り出して先頭で#includeしたらなんか動きました!
ありがとうございます
これですね…
https://qiita.com/catfist/items/7186d2b7fd56225b57b9

320 :名無しさん@お腹いっぱい。 :2019/08/23(金) 02:17:48.68 ID:XwLuw69/0.net
,,> 全
> 部
> 自
> 分
> に
> 当
> て
> 嵌
> ま
> っ
> て
> る
> の
> が
> ま
> ぁ
> ア
> レ
> な
> 人
> の
> 特
> 徴
> な
> ん
> で
> し
> ょ
>
> 青葉と宮崎のハイブリッド それが○株○式○会○社○チ○キ○ン○へ○ッ○ド○のチョウセンヒトモドキ 南ひとあき たるゆえん

321 :名無しさん@お腹いっぱい。 :2019/08/23(金) 14:44:37.75 ID:uY9R9C1F0.net
>>316
ありがとうございます
なるほどsendを使えばいいんですね

322 :名無しさん@お腹いっぱい。 :2019/08/24(土) 23:19:00.44 ID:xUJhw3CT0.net
v全
> 部
> 自
> 分
> に
> 当
> て
> 嵌
> ま
> っ
> て
> る
> の
> が
> ま
> ぁ
> ア
> レ
> な
> 人
> の
> 特
> 徴
> な
> ん
> で
> し
> ょ
>
> 青葉と宮崎のハイブリッド それが○株○式○会○社○チ○キ○ン○へ○ッ○ド○のチョウセンヒトモドキ ミナミヒトあき たるゆえん

323 :名無しさん@お腹いっぱい。 :2019/08/26(月) 23:34:10.92 ID:mAJdufMW0.net
いいIDEないですかね?

324 :名無しさん@お腹いっぱい。 :2019/08/27(火) 05:41:09.16 ID:RgkWX4N60.net
/i/|ii!//|!/!i/´i/   .|i |/ノ        i\i!゙、:iヽ|:::|  ヽ 'i  ! ヾi |'!ヽ::::||::::::/:::::::::::::::::::::ヽ
i i 川i!ハ/" _!   | │        川 ヾ:ii ゙'∨     |    ゙ヾiヽヽ;||:::::i':::::::::::::::::::::::::
ノ ノ/リ,,,,,,二三テ=''" ヽノ        ル |ノノヽヾ ノ  、,,,ノ,、     iヽ:::||:::::i'::::::::::::::::::::::::::::
 /   ̄ ´~~゙''''    ゙''‐- ..,,         ,, ‐'    `゙ヾミッ、,,   ヽ::|::::/::::::::::::::::::::::::::::
,,イ|                i'        i"         `'‐='   `'|/i!:::::i::::::::::::::::::::::::
 i | :::::::ヽ::::ヽ::::::ヾ::    ゙、        l       〃:::::       i//::::ハ::::::::::::::::::i:::
  i i \\\\\ヽ     )       ヽ        ′′′   / /:::::/:::::::::::::::::::|::::
!  | i            ,,ィノ         <         :::: :    /:::::/:::::::::::::::::::/::::
i!  i i!            /i/    ,r''''‐y'''.;、  \             /:::::/:::::/::::::::::::/:::::
゙i!  | i          /⌒' 、 Y:::::::::''::;;;;'.;.Y'⌒゙i           /::::::/::::::/::::::::::::/::::/i
 i  i ゙!         ん、,,__ヽノ:::::::::::::::::::;;;;;{,__,,,r''          /:::::::/::::::/::::::::::::/:::://
゙、ii! ゙| i           ノ  ゝ;;;:::::::::::::::::::;ノ 。 `i          //:::::/:::::/::::::::::::/::::::/:::
ヾ!トl ゙iU          i  。l '゛..  ‐ー:::::i    |         //::::::/::::::/::::::/:::/:::::i!::::::
 iiミ! ハ             i  l ,,,,::: :::;;;;;...{ ° ゙、       //::::://::::/::::::/:::::/::::i::::ii::
 i!ヾ!i ゙、!         , '  |::: ::::ヽ   ..}     |゙ヽ......,.,.,.,,,///://::://::::/::::://::::i::::リ::
 !ヽヾi  i゙、  ___,,,/   }:: :  ;;;::: ::::::::}     レWノ'レi/、//::/:://:/:::/::/:::ハ:i |::

325 :名無しさん@お腹いっぱい。 :2019/08/27(火) 05:41:21.23 ID:RgkWX4N60.net
/i/|ii!//|!/!i/´i/   .|i |/ノ        i\i!゙、:iヽ|:::|  ヽ 'i  ! ヾi |'!ヽ::::||::::::/:::::::::::::::::::::ヽ
i i 川i!ハ/" _!   | │        川 ヾ:ii ゙'∨     |    ゙ヾiヽヽ;||:::::i':::::::::::::::::::::::::
ノ ノ/リ,,,,,,二三テ=''" ヽノ        ル |ノノヽヾ ノ  、,,,ノ,、     iヽ:::||:::::i'::::::::::::::::::::::::::::
 /   ̄ ´~~゙''''    ゙''‐- ..,,         ,, ‐'    `゙ヾミッ、,,   ヽ::|::::/::::::::::::::::::::::::::::
,,イ|                i'        i"         `'‐='   `'|/i!:::::i::::::::::::::::::::::::
 i | :::::::ヽ::::ヽ::::::ヾ::    ゙、        l       〃:::::       i//::::ハ::::::::::::::::::i:::
  i i \\\\\ヽ     )       ヽ        ′′′   / /:::::/:::::::::::::::::::|::::
!  | i            ,,ィノ         <         :::: :    /:::::/:::::::::::::::::::/::::
i!  i i!            /i/    ,r''''‐y'''.;、  \             /:::::/:::::/::::::::::::/:::::
゙i!  | i          /⌒' 、 Y:::::::::''::;;;;'.;.Y'⌒゙i           /::::::/::::::/::::::::::::/::::/i
 i  i ゙!         ん、,,__ヽノ:::::::::::::::::::;;;;;{,__,,,r''          /:::::::/::::::/::::::::::::/:::://
゙、ii! ゙| i           ノ  ゝ;;;:::::::::::::::::::;ノ 。 `i          //:::::/:::::/::::::::::::/::::::/:::
ヾ!トl ゙iU          i  。l '゛..  ‐ー:::::i    |         //::::::/::::::/::::::/:::/:::::i!::::::
 iiミ! ハ             i  l ,,,,::: :::;;;;;...{ ° ゙、       //::::://::::/::::::/:::::/::::i::::ii::
 i!ヾ!i ゙、!         , '  |::: ::::ヽ   ..}     |゙ヽ......,.,.,.,,,///://::://::::/::::://::::i::::リ::
 !ヽヾi  i゙、  ___,,,/   }:: :  ;;;::: ::::::::}     レWノ'レi/、//::/:://:/:::/::/:::ハ:i |::

326 :名無しさん@お腹いっぱい。 :2019/09/03(火) 16:46:09.05 ID:T9gnti0Qp.net
#IfWinActiveで
Chrome YouTube
Firefox YouTube
こんな風にYouTubeで別の操作をしたい場合(例え話)
複数の条件を指定する方法を教えて欲しいです
調べた感じ論理演算子などは使えないみたいなんですが

327 :名無しさん@お腹いっぱい。 :2019/09/03(火) 17:48:04.61 ID:6Ky5SUwB0.net
>>326
F1::MsgBox 1

#If WinActive() || WinActive() ; ここに式
F1::MsgBox if1
#If ; 以降の条件リセット

F2::MsgBox 2

328 :名無しさん@お腹いっぱい。 :2019/09/03(火) 18:16:34.70 ID:T9gnti0Qp.net
>>327
ありがとうございます
これを使う場合ahk_exeやahk_classの様な形式で記述するみたいですが
タイトルでマッチングは出来ないのでしょうか?
ahk_groupで強引には出来ましたが

329 :名無しさん@お腹いっぱい。 :2019/09/03(火) 19:44:04.01 ID:2yiQYkoca.net
クセが強いからわかりづらいが
WinActive() の本来の引数は“ある意味”タイトルのみ
http://ahkwiki.net/WinActive

そのタイトル指定の仕方の工夫で
無理やりタイトル以外のものも処理できるようにしていると思えばいいと思う
http://ahkwiki.net/Window

330 :名無しさん@お腹いっぱい。 :2019/09/03(火) 20:34:51.92 ID:XiUvhYth0.net
>>326
#IfWinActive を使わなくて良いんじゃない?
IfWinActive なら複数条件指定簡単にできるよ

F1::
SetTitleMatchMode, 2
IfWinActive YouTube ahk_exe chrome.exe
{
Msgbox, ChromeでYouTubeを開いてます
Return
}
IfWinActive YouTube ahk_exe firefox.exe
{
Msgbox, FireFoxでYouTubeを開いてます
Return
}
Send,{F1}
Return

331 :名無しさん@お腹いっぱい。 :2019/09/04(水) 00:49:20.05 ID:TS7JVwL00.net
みなさまありがとうございます
簡単に言えば Chro && YouT のようにただ単純に
複数の「タイトル」でマッチングする方法が知りたかったんです
説明が下手ですみません
GroupAdd, test1, Chro
GroupAdd, test2, YouT
#If WinActive("ahk_group test1") && WinActibe("ahk_group test2")
先ほどはこんな方法で実現できましたが

>>330さんの方法で
F1::
 IfWinActive Chro
 {
  IfWinActive YouT
  {
   msgbox, テスト
  }
 }
こんな感じで可能でした
なにか無駄なことをしていたらご教示お願いします

332 :名無しさん@お腹いっぱい。 :2019/09/04(水) 14:31:09.65 ID:JmIXQd5M0.net
SetTitleMatchMode, RegEx
if WinActive("^(?=.*Chro)(?=.*YouT).*$") {
msgbox, テスト
}

もしくは
If WinActive("Chro") && WinActive("YouT")

333 :名無しさん@お腹いっぱい。 :2019/09/04(水) 21:29:17.19 ID:F6SnFQgGa.net
SetTitleMatchMode, RegEx
にすれば
#IfWinActive ^(?=.*Chro)(?=.*YouT).*$
でもいけるな

ところで
"Chro"と"YouT"が
"Chrome YouTube"
のように同一タイトル内にある場合なら
下の例は
SetTitleMatchMode, 2
にする必要があるのでは?

>>331

IfWinActive Chro
IfWinActive YouT
の両方が一致しているようなので
SetTitleMatchMode, 2
なのだろうか

334 :名無しさん@お腹いっぱい。 :2019/09/05(木) 04:07:25.88 ID:pwekNu620.net
>>333
#If WinActive("Chro") && WinActive("YouT")
こちらが一番簡単でしたありがとうございます

SetTitleMatchMode, 2はIfWinActiveに対しては機能したんですが
#IfWinActiveはなぜか機能しなかったので
ファイルの上の方に記述してます

335 :名無しさん@お腹いっぱい。 :2019/09/05(木) 13:00:25.25 ID:Rn6bcm5H0.net
>>334
Auto-executeセクションに書いて初期値を変えると他の設定も変わってしまうので
#ifで色々処理したいなら関数を作ればいい
http://ahkwiki.net/Scripts

-------------------

SetTitleMatchMode 1 ; 実行される
return

F1::MsgBox % "F1 - " A_TitleMatchMode ; Mode1

SetTitleMatchMode 2 ; Auto-executeセクションではないので実行されない

#if Test(2)
F1::MsgBox % "if F1 - " A_TitleMatchMode ; Mode1
#if

Test(Mode=1) {
SetTitleMatchMode % Mode
IfWinActive A ; Mode2
return 1
IfWinActive A ; Mode2
return 1
}

336 :名無しさん@お腹いっぱい。 :2019/09/11(水) 12:20:32.47 ID:NVeVOa2E0.net
最近利用し始めたばかりの初心者で恐縮なのですが、次のような動作はできるでしょうか?

1.マウスカーソルを手動でAの座標に合わせる
2.とあるスレッドを実行する(カーソル移動や座標取得コマンドを使っている)
3.マウスカーソルをAの座標へコマンドで戻す

1と3だけなら「MouseGetPos,x0,y0」→「MouseMove,x0,y0」を使えばいいと思いますが、間で別座標を再取得しているため、「MouseMove,x0,y0」ではAに戻れません。
Aの座標を取得し、別の座標でMouseGetPosが使われても記憶したままにしておき、後からAの座標へ移動という事をしたいのですが…

337 :名無しさん@お腹いっぱい。 :2019/09/11(水) 12:42:24.08 ID:4MSLhDBD0.net
格納先の変数名を変えるだけでいいのでは?

MouseGetPos, oldX, oldY

hogehoge
MousegetPos, newX, newY
hogehoge
mousemove, %newX%, %NewY%
hogehoge

Mousemove, %oldX%, %oldY%

338 :名無しさん@お腹いっぱい。 :2019/09/11(水) 12:42:31.40 ID:P2eX/i3r0.net
>>336
1.と3.で「MouseGetPos,x0,y0」→「MouseMove,x0,y0」を使ったなら
2.では「MouseGetPos,x1,y2」→「MouseMove,x1,y1」などを使えばいいだけ

別にx1,y2じゃなくても何だって良い
とにかく「x0,y0」を2.で使わなきゃいいだけ

339 :名無しさん@お腹いっぱい。 :2019/09/11(水) 12:50:41.77 ID:4MSLhDBD0.net
2でアクティブウィンドウが変わるような処理をしているならCoordModeとウィンドウ指定の方法も参照

https://sites.google.com/site/autohotkeyjp/reference/commands/CoordMode
https://sites.google.com/site/autohotkeyjp/reference/Window

340 :名無しさん@お腹いっぱい。 :2019/09/11(水) 13:56:36.56 ID:NVeVOa2E0.net
>>337
>>338
ありがとうございます!
さっそく試してみます!
かなり基本的なことだったようですが丁寧に教えてくださり皆様の優しさに涙がちょちょぎれそうです

341 :名無しさん@お腹いっぱい。 :2019/09/11(水) 23:38:01.87 ID:KjbHXERk0.net
アイドルクロックが一向に下がらないから、まさかと思い普段使い用のAHKスクリプトを終了させたらクロックが下がった。
タスクマネージャーでは0%でも疑うべき何だな。

342 :名無しさん@お腹いっぱい。 :2019/09/21(土) 10:01:10.12 ID:IU1wIXHW0.net
保守

343 :名無しさん@お腹いっぱい。 :2019/09/23(月) 10:57:38.48 ID:qfHF9La20.net
ちょっと質問です。
autohotkeyのスクリプトをコンパイルして.exe化するときに、
画像リソースを .exe に含ませる方法をご存じでしたら
ご教示ねがいます。

別ファイルにして配布すると、フォルダ配置を間違えて実行して
画像が表示されないとか色々ありそうなので。

344 :名無しさん@お腹いっぱい。 :2019/09/23(月) 11:11:51.87 ID:hj4W7B870.net
>>343
exeに含ませる方法は分からないけど、%A_ScriptDir% で画像のパスを指定すりゃ
他人のフォルダ配置を気にする必要ないんじゃね?

345 :名無しさん@お腹いっぱい。 :2019/09/23(月) 18:44:53.64 ID:KGC6kmsKM.net
>>343
http://ahkwiki.net/FileInstall

フォルダに実行ファイルと画像を入れてzip配布
特に間違えること無いと思いますが?

346 :名無しさん@お腹いっぱい。 :2019/09/23(月) 23:19:12.90 ID:qfHF9La20.net
>>345
dクス、流石はautohotkeyですね。
普通にプログラマがやりたいことは、ちゃんと機能として持ってくれている。

設定用のウイザード画面を出すとき、
それだけじゃ寂しいので画像をつけたいという理由ですけどね。

347 :名無しさん@お腹いっぱい。 :2019/09/24(火) 15:56:17.73 ID:rCttV4ab0.net
Autohotkeyって、コンパイルすると速くなる?

なるのなら、何倍くらい速くなる?

348 :名無しさん@お腹いっぱい。 :2019/09/24(火) 17:35:11.73 ID:zl2JUp72M.net
>>347
変わらない

349 :名無しさん@お腹いっぱい。 :2019/09/24(火) 19:26:50.55 ID:rCttV4ab0.net
>>348
マジか。 意味ないじゃん。なんのためにあるんだろね

350 :名無しさん@お腹いっぱい。 :2019/09/24(火) 19:31:08.45 ID:5h1Dr7QC0.net
>>349
配布したりポータブルで使ったり色々あるだろ
そんなことも想像できんのか

351 :名無しさん@お腹いっぱい。 :2019/09/24(火) 21:15:06.85 ID:F9MfNW2G0.net
exe化したってネイティブバイナリに変換されるわけじゃなし
むしろ実行時にコードに戻して展開するぶんおそくなるまである

そういやオプソ隠してexeだけシェアウェアで売ってたキーカスタマイズソフトあったよな
24でベクターから削除された後どうなったんだっけ

352 :名無しさん@お腹いっぱい。 :2019/09/24(火) 21:47:00.39 ID:Dbd73feH0.net
俺のキーボードとかそんな感じのやつだっけ

353 :名無しさん@お腹いっぱい。 :2019/09/24(火) 21:57:27.85 ID:BpHZAytUM.net
enthunbleのことかな?

354 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:03:27.97 ID:3CjQc+EH0.net
>本ソフトウェアは、キー環境変更ソフトAutoHotkey附属コンパイラで作製しています。
>AutoHotkey作者の意向から、ライセンスの扱いに問題がないと判断しています。

だってさ〜

355 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:09:27.94 ID:zzW/EO520.net
ベクターから削除しておいてベクターのリンクを宣伝に使い続けるか…
あれで980円なら、他のAHKベースのフリーソフトはどれも神ソフトだわ

356 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:22:08.20 ID:3CjQc+EH0.net
じゃあお前も作って売れば良いんじゃね?
お前らってほんと他人に妬み嫉みばっかだなw

357 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:25:20.62 ID:NRIFXNed0.net
また作者発狂かw

358 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:28:09.03 ID:3CjQc+EH0.net
作者な訳ねえだろマヌケw
こんなもん要らねえしw

客観的に見て僻んでる奴らきめえってだけw

359 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:33:31.13 ID:zzW/EO520.net
>>356
あれよりはるかに高機能なものがフリーで出てるのに
何でそんな卑しいことをしたいと思わないといけないんだ?
妬み嫉みっていう感覚が作者寄りなんだが

360 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:39:40.17 ID:3CjQc+EH0.net
>>359
だから俺もあんなもん使う気ねえって言ってんじゃんw
ただ他人がahk使って儲けようが知ったこっちゃないだろ?
だからそれをイジイジ文句垂れてる連中はキメエと言ってるだけだw

361 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:41:48.69 ID:zzW/EO520.net
>>360
いや、自分はあの程度のソフトを何も知らずに買って騙される人が気の毒だと思うが?
どうもお前にはそういう視点が皆無のようだな

362 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:47:03.63 ID:3CjQc+EH0.net
>>361
そんなこと知る訳ねえだろwww
別に詐欺ソフトを無理矢理押し売りしてるわけでもねえんだし
少し調べりゃ誰だって他のフリーソフトに辿り着けるんだから金払いたくない奴はそっち使えばいいだけだろw
お前は正義のヒーロー気取りにでもなってるつもりかそれ?w

363 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:51:13.52 ID:zzW/EO520.net
>>362
ここで指摘されるまでライセンスの記載していなかった以上、詐欺的と言われても仕方ないと思うがね
それとも何か、詐欺ソフトで押し売りじゃなければ問題ないと?
正義のヒーローとか話が飛躍しすぎ。お前に常識やモラルが欠落していると言うだけのことだ
そのいかにも頭悪そうなレスの書き方からも窺える

364 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:53:28.52 ID:3CjQc+EH0.net
>>363
脳内妄想で作者認定とかしてる妄想ガイジの方がよほどモラル欠陥してんだろw
ライセンスの記載とか俺は細かいことは知らねえよw
ただ公式みたら
>AutoHotkey作者の意向から、ライセンスの扱いに問題がないと判断しています。
って書いてあったからそうなんだろw

365 :名無しさん@お腹いっぱい。 :2019/09/24(火) 22:56:50.63 ID:zzW/EO520.net
>>364
アホか。それは今の話だろ。ニワカは知ったかする前に過去スレ見てこい
AHKについてひと言も触れていなかったから、ここで問題になった
それで慌ててHPに記載して、同時にベクターからも削除した
経緯を知らないのに偉そうなモノの言い方をするな

366 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:01:26.63 ID:8ICDL5bo0.net
>>365
以前お前らがギャーギャー騒いでたのは知ってるが
そのソフト使ったこともねえんだからライセンスの記載とか知る訳ねえだろ馬鹿w
正義マン気取りで騒いでること自体がきめえってんだよw

367 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:03:53.74 ID:zzW/EO520.net
>>366
>ギャーギャー騒いでたのは知ってるが
その時にライセンスの記載が問題にされたのだから、お前が使ったことがあるかどうかは関係ない
騒がれたいたことを知っているならライセンス問題も自動的に知ってて当たり前
お前の主張は大いに矛盾する
言い訳にしてもあり得んくらいみっともないわ。無能の極みと言って何も差し支えないだろうよ

368 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:04:42.54 ID:3CjQc+EH0.net
>>367
お前らのレス全部読んでる訳ねえだろw
なんでお前そんな必死に粘着してんの?
そんなに恨みつらみあるのか?w

369 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:07:09.97 ID:zzW/EO520.net
>>368
全部って言うほどのレス数ではなかったんだがなー
やっぱり以前のこと知らずに適当こいてるとしか思えんわ
知ったかするからレスすればするほどボロが出る
もう1度書いてやるな。無能の極みと言って何も差し支えない

370 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:08:32.43 ID:3CjQc+EH0.net
>>369
だから細かいことは知らねえって言ってんじゃんw
何も知ったかぶってねえよw
もう一度書いてやるな
なんでそんな必死なの?そんなに恨みつらみでもあるのか?w

371 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:11:06.29 ID:zzW/EO520.net
>>370
つまり、知らないくせにアレコレ書き立てていると言うことか?
であれば、必死なのはお前の方なんだが?
何せ、知らないことのはずなのにしつこくレスするわけだから
質問形式にしてやるわ
細かい経緯は知らないんだろ?その程度のくせして、何でそんなにしつこいんだ?
納得できる回答じゃなければやり直しを求めるからそのつもりでな

372 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:11:53.99 ID:3CjQc+EH0.net
>>371
こっちの質問に答えろよアスペw

373 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:15:46.93 ID:zzW/EO520.net
>>372
何の質問?
もしかして、誰に対して言ってるのかも明示されてないのに
>そんなに恨みつらみでもあるのか?
これ質問なのか?お前に対して?作者に対して?お前の質問の仕方が悪いだろ無能
意味不明だから回答不能と言いたいところだが、そんなものはどこにもないわ
今度から質問する時は、相手に伝わるような書き方を心掛けろ。いいな?
さて、こっちは答えたからお前も回答しろよ

374 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:17:51.43 ID:3CjQc+EH0.net
>>373
作者に対して恨みつらみでもあるのかって聞いてるんだよw
日本語理解できないのかw

375 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:20:57.60 ID:3CjQc+EH0.net
>>371
その程度だろうが何だろうが下らないことでお前らが騒いでるの客観的に見て気持ち悪いと言ってるだけ

ハイこっちも質問に答えてやったぞ

376 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:20:59.03 ID:zzW/EO520.net
>>374
お前に対してと解釈することも可能だろ。お前の質問の仕方が悪いんだよ無能
で、それはすでに答えているだろ。見てないのか無能?どこでどう答えているかを抜き出せ
それから、こっちの質問に対する回答はまだか。無能もたいがいにせい

377 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:23:04.17 ID:zzW/EO520.net
>>375
未回答が残っている。やり直し
>こっちの質問に答えろよアスペw
とか偉そうに書く割には、まるで答えられないんだが?
ちょっと程度低すぎないか?

378 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:23:04.38 ID:3CjQc+EH0.net
>>376
必死になって叩いてる理由の説明にはなってねえだろマヌケw
他人を無能扱いするならまず自分が無能でない答えを出来るようになれよw

379 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:26:17.47 ID:zzW/EO520.net
>>378
抜き出せと書いたのだから、抜き出して答えろよ。やり直し
お前が理解できてるかどうか怪しいからな
そして、未回答が残っている。これもやり直し

380 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:29:08.29 ID:3CjQc+EH0.net
>そんなものはどこにもないわ

これだけで答えたつもりになってるならお前は相当な無能w
未回答が残ってるのもお前の方だし完全なブーメランw

早くなんで必死に作者叩いてるのか答えろよw
ライセンス記載はもう直ってんだろ?で?なんで未だにネチネチやってんの?w

381 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:31:58.07 ID:zzW/EO520.net
>>380
おいおい、追加で質問するなら、その前にこっちが聞いてることに答えろよ
それをしない限り、話は進まんぞ。やり直し
>こっちの質問に答えろよアスペw
とまで買いたくせに、こっちの複数の質問に対して1つしか答えないって無能の極みだろ
お前は自分で言っていることが自分でできないのか?これも質問な
やり直しだ。テンポ悪いから早くしろ

382 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:32:53.01 ID:3CjQc+EH0.net
追加じゃねえだろwww
俺の最初の質問抜き出して読んでみろよマヌケw

383 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:35:16.10 ID:zzW/EO520.net
>>382
そんなことは聞いていない。やり直し
こっちの質問にまともに答えられたら、お前が後出しのように聞いてきたことにも対応してやるから。な?
まず、ロクに答えていないお前の態度をどうにかしろ

384 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:35:49.67 ID:3CjQc+EH0.net
お前が仕切ってんじゃねえよカスw

385 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:36:50.60 ID:m/hBUOQr0.net
>>375
>客観的に見て気持ち悪い

いや気持ち悪いは主観だろ
俺も5ちゃん外の直接反論できない人間を叩くのは卑怯だと思うし嫌いだから
感情的には味方をしたいところだけど
自分が事情も知らずに主観だけで絡んでいってるってことが自分で理解できてないのは困るな

386 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:37:34.20 ID:zzW/EO520.net
>>384
そんなことは聞いていない。やり直し
こっちの質問にまともに答えられたら、お前が後出しのように聞いてきたことにも対応してやるから。な?
まず、ロクに答えていないお前の態度をどうにかしろ
都合が悪くて答えられないなら、そのように明確に都合が悪くて答えられないと書け
不愉快だがそれで納得してやるわ

387 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:39:21.17 ID:3CjQc+EH0.net
キモいもんはキモいんだからしょうがねえだろw
お前誰かに似てるなーと思ったら立花とかいう目が言っちゃってる馬鹿チューバ―そっくりだなw

ほら俺の最初の質問さっさと抜き出してみろよ
ログも読めない程脳味噌沸騰してんのか?w

388 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:42:06.70 ID:zzW/EO520.net
>>385
そういう書き方をするから作者臭いと言われても仕方ないと思うんだけどねぇ

>>387
そんなことは聞いていない。やり直し
こっちの質問にまともに答えられたら、お前が後出しのように聞いてきたことにも対応してやるから。な?
次のレスで回答がなければ、もう都合が悪くて答えられないということでいいよな?
どうせ答えないだろお前?

389 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:45:09.58 ID:3CjQc+EH0.net
そうか、俺の質問も読めないほど日本語理解力の低い馬鹿だったのねすまんすまん
じゃあ特別にもう一度書いてあげよう

なんでお前そんな必死に粘着してんの?
※ソースは>>368

これが俺の最初の質問であって後付けでも何でもないんだよボケw
ほらお前は最初の質問にすら答えてないんだからさっさと答えろよw

390 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:46:44.74 ID:zzW/EO520.net
>>389
粘着などしていない。以上、回答終了。

で、お前は相変わらずこっちの質問に答えていないのだが?
次のレスで回答がなければ、もう都合が悪くて答えられないということでいいよな?
どうせ答えないだろお前?

391 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:47:47.94 ID:3CjQc+EH0.net
してんじゃねえかww

392 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:50:44.77 ID:zzW/EO520.net
>>391
何をもって粘着と言うのか、客観的かつ合理的な根拠を示せ
これが粘着と言うなら、お前がやってることも粘着じゃないのか?
俺とお前の違いを客観的かつ合理的な根拠をもって説明しろ
いずれも納得できる説明であることが必要最低条件な
お前の思い込みだけで粘着と言われても、お前の思い込みだろ?
他の人も書かれてるじゃないか、主観と客観の区別がついていないと
思い込みでアレコレ言われてもねぇ… 何の意味もないぞ

393 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:52:36.81 ID:3CjQc+EH0.net
そういうところがキモいと言ってんだよw
主観で語っちゃいけないルールとかお前の脳内ルール押し付けるつもりか?w

キモいもんはキモい
それだけだバーカw

394 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:54:56.24 ID:zzW/EO520.net
>>393
>主観で語っちゃいけないルール
なら、粘着なんてのはお前が勝手に言ってるだけのことと言うことだな。それはそれで結構

>客観的に見て僻んでる奴らきめえってだけw
>客観的に見て気持ち悪いと言ってるだけ
と、散々書いといて
>主観で語っちゃいけないルール
ってのはどういうこと?客観的視点とか大嘘でハナからお前の思い込み満開だったってことか?
俺の理解を超えるから、整合性の取れる説明をしろよ無能

395 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:57:28.33 ID:3CjQc+EH0.net
>>394
マジモンのバカかこいつwww
”当事者ではない第三者”の主観だから「客観的」と言ってるだけだろマヌケw

396 :名無しさん@お腹いっぱい。 :2019/09/24(火) 23:59:52.28 ID:zzW/EO520.net
>>395
それはお前の主観だろ。アホかよ。ホント無能の極みだな
議論の当事者でありながら客観的視点と言うなら、お前じゃない世間一般の根拠のあるものを持ってこい
やっぱりお前、主観と客観の区別がついてないわ
これで他人に日本語がとか笑えるわ〜

397 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:01:59.89 ID:Qj2l9jO10.net
客観的に(お前らの書き込みを)見て、’第三者である俺の主観で)気持ち悪いと思いました

ここまで細かく説明しないと日本語通じないほどアスペだったとはw

398 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:04:51.45 ID:QktKVjlM0.net
>>397
>客観的に(お前らの書き込みを)見て
ここに客観的なんてのは不要。意味がない。その後、お前の主観で感想を述べるのだから

>俺の主観で)気持ち悪いと思いました
と書いてる以上は、お前の主観以外の何物でもない

いちからせつめいしないとダメか?

399 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:07:08.27 ID:Qj2l9jO10.net
>>398
そうだよ?俺は第三者なので俺の主観=お前や作者のことを客観的に見てるということだぞw
俺が俺の主観で語って何が悪いんだよw

400 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:08:50.07 ID:NwbaO41g0.net
>>396
「事情は知らんがお前らがキモいから文句つけとるんじゃ〜」

これを客観的とは言わないでしょ

401 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:10:21.53 ID:NwbaO41g0.net
すまん>>400はアンカ間違い
>>397

402 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:10:35.40 ID:QktKVjlM0.net
>>399
やっぱり分かってないな。無能はどこまでも無能よ
>俺が俺の主観で語っ
た瞬間に、お前のスタンスは客観的ではなくなるんだよ。だから
>お前や作者のことを客観的に見てる
ということはあり得ない。主観で語った以上は、客観視などできていないと言う証

自分で書いてて支離滅裂だと分からない……のだろうな
分かってたら、こんな屁理屈にもなってないアホレスなんかできるわけないもんな

403 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:16:26.12 ID:Qj2l9jO10.net
>>402
バカかこいつwwww
客観的って言葉と主観って言葉がどこに対して掛かってるのか考えられないほど知能低いのか?w

客観的って言葉はあくまで「作者とお前を当事者」としてそれに対する「客観的」立場の意見って意味だぞ?
第三者の主観=客観的ってことすら理解出来ないのか?w

404 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:17:38.81 ID:5KPrtgMs0.net
ID真っ赤になるまで連投してオレオレ自己主張してる第三者
もはや完全に当事者です

405 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:20:54.12 ID:Qj2l9jO10.net
>>404
今俺は a5f0-Ms+D と話してる当事者になってるだけで
お前は第三者として俺らを客観的に見て意見してるんだろ?でもそれはお前の個人の主観だよなw

406 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:23:25.64 ID:QktKVjlM0.net
>>403
>第三者の主観=客観的
何このトンデモ理論(笑)
第三者の主観はどこを取っても主観であって、客観的視点ではない

客観的-特定の立場にとらわれず、物事を見たり考えたりするさま。


明確な落ち度のあった作者の批判は皆無どころか、擁護するような立ち位置で、なおかつ
作者に批判的なレスに対して
>お前らってほんと他人に妬み嫉みばっかだなw
>僻んでる奴らきめえってだけw
>気持ち悪いと言ってるだけ

どこをどう取っても
>特定の立場にとらわれず、物事を見たり考えたりするさま。
になってないので、お前の主張は
>「客観的」立場の意見
になっていないのだよ。ホントに無能だな〜

407 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:27:25.81 ID:Qj2l9jO10.net
>>406
はあ?
事実俺は特定の立場にとらわれず客観的に見た結果として意見しただけだろwww
その意見が俺の主観なのは当たり前だバカw

408 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:32:59.33 ID:QktKVjlM0.net
>>407
>その意見が俺の主観なのは当たり前
それは
>「客観的」立場の意見
ではない。ばかなの?お前でも理解できそうなサイトから引用すると
99bako.com/1026.html
>【主観的】自分だけが納得できる意見
>【客観的】誰もが納得できる事実

>「客観的」とは、調査データなどが存在したり数値で測れるため、誰もが納得できるものの見方で、
>自分の意見と他人の意見はほぼ一致します。

お前は意見はもちろん、視点も客観的なものではない
しかし、必死だな〜 お前の方がよっぽど必死こいてるよなぁ

409 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:34:17.87 ID:dL3J7t0O0.net
いきなりケンカしだすからびびるわー

410 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:37:46.68 ID:Qj2l9jO10.net
>>408
言葉狩りに必死になってるのはお前だろw
俺は作者の立場になって意見したわけでも何でもない

>客観的-特定の立場にとらわれず、物事を見たり考えたりするさま。

よってこれに該当してる

411 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:41:51.92 ID:QktKVjlM0.net
>>409
スマンね。いや、自分もここまでしつこくされるとは…ってな所。粘着って言いたいのはホントこっちなんだけどね
少なくとも、ここでライセンスのことが指摘されて、HP修正・ベクターから削除という事実はあるわけで
作者がここ見てることは確実なんだよな

>>410
>俺は作者の立場になって意見したわけでも何でもない
残念ながら、お前のその主張もお前の主観に過ぎない
>【客観的】誰もが納得できる事実
ではないな。よって該当してるとか片腹痛い
ところで、お前、こっちの質問の未回答残ったままなんだが?答えるつもりないよな?
>こっちの質問に答えろよアスペw
とまで書くような奴が、こっちの質問からは逃げるのか?これも質問だぞ。逃げるなよ

412 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:44:26.78 ID:Qj2l9jO10.net
>>411
言葉は複数の意味を持つの知ってるか?
>【客観的】誰もが納得できる事実
必ずしもこれだけが「客観的」の意味ではない

>客観的-特定の立場にとらわれず、物事を見たり考えたりするさま。
これも客観的の意味なのだから俺の意見は客観的意見

413 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:46:30.00 ID:QktKVjlM0.net
>>412
>これも客観的の意味なのだから俺の意見は客観的意見
これまた残念ながら、お前のスタンスが
>客観的-特定の立場にとらわれず、物事を見たり考えたりするさま。
になってるとは思えないから、その意見は大間違い

ところで、お前、こっちの質問の未回答残ったままなんだが?答えるつもりないよな?(2回目)
>こっちの質問に答えろよアスペw
とまで書くような奴が、こっちの質問からは逃げるのか?これも質問だぞ。逃げるなよ

414 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:47:53.64 ID:NwbaO41g0.net
>>412
キモイは意見じゃなくて感情だな
感情に過ぎないものを客観的と言うから違和感があるわけで
たったそれだけの内容を延々と言い募るのは粘着と言われても仕方ないと思う

415 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:49:10.54 ID:Qj2l9jO10.net
>>413
>>客観的-特定の立場にとらわれず、物事を見たり考えたりするさま。
>になってるとは思えない

↑これはお前の主観でしかないからその意見は大間違い

そもそも俺がしつこいんじゃなくてお前がしつこいからこうなってんだろw

416 :名無しさん@お腹いっぱい。 :2019/09/25(水) 00:53:26.59 ID:QktKVjlM0.net
>>415
つまり意見がぶつかる時点で客観的ではということだ
お前の主張はどこまで言ってもお前の主観でしかない
お前に客観的視点からの主張は皆無

ところで、お前、こっちの質問の未回答残ったままなんだが?答えるつもりないよな?(3回目)
>こっちの質問に答えろよアスペw
とまで書くような奴が、こっちの質問からは逃げるのか?これも質問だぞ。逃げるなよ

次のレスで回答がなければ、都合が悪くて答えられないと言うことで確定な
お前もそれで了承したと言うことだぞ。予め宣言してやってるのだから
お前の身勝手極まりない態度に、こっちだけがバカ正直に付き合ってる意味もないんでな

417 :名無しさん@お腹いっぱい。 :2019/09/25(水) 01:06:44.49 ID:Qa6ke02p0.net
客観的に見て言葉狩りおじさんって本当に気持ち悪いと思う (←誰もが納得できる事実)

418 :名無しさん@お腹いっぱい。 :2019/09/25(水) 03:46:21.46 ID:90eqr0kC0.net
>>417
ほんそれ同感

419 :名無しさん@お腹いっぱい。 :2019/09/25(水) 05:39:34.01 ID:GSgzv/Bk0.net
寝て起きたら大暴走してて草

420 :名無しさん@お腹いっぱい。 :2019/09/25(水) 07:10:56.90 ID:Fiv6D5Y80.net
こんな馬鹿騒ぎをやっといて作者じゃねーとかいっても納得できないわ

421 :名無しさん@お腹いっぱい。 :2019/09/25(水) 07:15:53.73 ID:qbsdijKb0.net
■■■【enthumble】問題まとめ■■■

公式HPのURLは、ひとまず保留
キー ソフト enthumble 等で検索すると
enthumble: あなたの理想のキーボードは、こちら?
と表示されるキーカスタマイズソフト

何が問題か?
前スレ AutoHotkey スレッド part26
https://egg.5ch.net/test/read.cgi/software/1524647289/583-629
https://egg.5ch.net/test/read.cgi/software/1524647289/672-676
あたり

enthumbleの一部機能についてAutoHotkeyで同様のスクリプト組めないかと質問が出る
Resource Hackerで調べたら、enthumbleの中身がAHKと判明
あれ?これライセンス違反じゃね?
Vectorに問い合わせた人が返信を公開
(約2週間後)
enthumble、Vectorからダウンロードできなくなっていることが確認される
以降は公式HPでのみ販売

客観的に見て擁護君があまりにも気持ち悪かったwから、思わずまとめてしまった

422 :名無しさん@お腹いっぱい。 :2019/09/25(水) 09:08:31.22 ID:HIP0SiI1M.net
開発実績:AHKスクリプト()じゃ就職厳しかったんやろなあ

423 :名無しさん@お腹いっぱい。 :2019/09/25(水) 09:18:37.48 ID:ov/V9rvx0.net
スレすげー伸びたな(白目

424 :名無しさん@お腹いっぱい。 :2019/09/25(水) 09:30:11.47 ID:6qwjVGI30.net
結論:アホカ使いは生産性が低い

425 :名無しさん@お腹いっぱい。 :2019/09/25(水) 09:44:45.72 ID:EYF0r4Ja0.net
糞どうでもいい事で発狂してるよなあ

426 :名無しさん@お腹いっぱい。 :2019/09/25(水) 11:26:02.42 ID:3FCIaMSz0.net
生産性マイナスまである

427 :名無しさん@お腹いっぱい。 :2019/09/30(月) 23:30:08.05 ID:YeJxGAIP0.net
またまた質問です。

Autohotkeyを使ったフリーソフトを配布しているのですが、
Windows Defender が「Trojan:Win32/Zpevdo.B」だという
濡れ衣を着せて、勝手に削除してくれます。

Microsoft に、Windows Defenderが誤検知すると報告しましたが、
解決できるのはいつになるやら。

確かに autohotkey は、キーフックするコードが入っているので、
コード解析すると、キーロガーっぽく見えることでしょう。

皆様はどのようにして、この問題に対処しておられるのでしょうか。

428 :名無しさん@お腹いっぱい。 :2019/10/01(火) 06:00:24.09 ID:f/D+dRIt0.net
>>427
Windows Defenderの「ウィルスの脅威の防止」→「設定の管理」→「除外」に
誤検知されるファイルまたはファイルがあるフォルダを追加する

もしくはWindows Defenderを窓から投げ捨てて(無効化して)
他のAntivirus系アプリをインストールする
それでも誤検知するなら除外リストにファイルまたはフォルダ追加する

429 :名無しさん@お腹いっぱい。 :2019/10/01(火) 23:45:13.25 ID:O1LeTfiA0.net
#Persistent

time = 100

SetTimer,test,5000
return

test:

PixelSearch,,,1500,500,1505,505,0x0093FF,0,Fast
If ErrorLevel=0


Sleep,%time% ←
MouseMove, 1500 , 500

return


初歩の段階なんですけど、
画面のある場所の色が特定の色になったことを検出してなんやかんやしたいと思ってるんです。
まだわかっていることが少ないんですが
矢印のsleepの部分を有効にすると色に関係なく、MouseMoveの動作が動いてしまうのは
どういう理由でだかわかりませんでしょうか?
sleepは外すわけにはいかないのですが、どうにか対処はできないでしょうか。

430 :名無しさん@お腹いっぱい。 :2019/10/02(水) 00:01:19.31 ID:fSYFRxEx0.net
>>429
If のあと、2行以上のコマンドがある場合は { } で囲う


PixelSearch,,,1500,500,1505,505,0x0093FF,0,Fast
If ErrorLevel=0

{
Sleep,%time% ←
MouseMove, 1500 , 500
return
}
return

431 :名無しさん@お腹いっぱい。 :2019/10/02(水) 00:12:27.00 ID:s8f3wu+X0.net
あぁそんな簡単なことだったんだ・・・・
ありがとうございます。

432 :名無しさん@お腹いっぱい。 :2019/10/02(水) 00:21:34.76 ID:QR6VQmqv0.net
Ah... It’s so easy way!!!!!!!!!!
thanks.

433 :名無しさん@お腹いっぱい。 :2019/10/03(木) 01:16:20.22 ID:MjH9LMCk0.net
AHKを走らせているんだが、スピードが遅いので、おかしいと思って調べたら、
ファイルからの読み込みが多いので、ResourceMonitorを見たけど大してアクセスしておらず、
だが、タスクマネージャーを見たら、CPUが最高で25%でそれ以上にならない。
最高で25%。それ以上にはならない。なんで?
Windows7、64bit Celeron G1820
AHKの優先度を通常以上にしても変わらん

434 :名無しさん@お腹いっぱい。 :2019/10/03(木) 01:29:17.41 ID:rfY8BkBla.net
どういう処理がどのくらい遅いのかもわからないし
俺が見たら速いじゃんて思うかもしれん
判断材料がほぼないので
コードの側に原因があるのではないかとしかいえない

435 :名無しさん@お腹いっぱい。 :2019/10/03(木) 05:16:49.02 ID:3ArRsTXx0.net
MButton::#d
これでCLIPStuioPaint.exeがアクティブな時は例外になるようにしたいのですが、どう書けばいいですか?

436 :名無しさん@お腹いっぱい。 :2019/10/03(木) 07:26:07.36 ID:2B9pb6LT0.net
#IfWinNotActive

437 :名無しさん@お腹いっぱい。 :2019/10/03(木) 13:09:57.51 ID:3ArRsTXx0.net
>>436
ありがとうございます 猿真似で

#IfWinNotActive ahk_exe CLIPStudioPaint.exe
MButton::#d

と書いてみたらなんかうまく行ったみたいです

438 :名無しさん@お腹いっぱい。 :2019/10/03(木) 15:57:11.00 ID:V2ntCRz20.net
久々にバージョンアップしてた
v1.1.31.00

439 :名無しさん@お腹いっぱい。 :2019/10/03(木) 18:21:37.48 ID:5WXCr5+ja.net
Shift-テンキーバグだったのか
InputHookは悪用が心配になるような機能だけど
Switchが使えるようになったのはいいね

https://www.autohotkey.com/docs/AHKL_ChangeLog.htm#v1.1.31.00

440 :名無しさん@お腹いっぱい。 :2019/10/03(木) 22:41:38.31 ID:qTTnr1Kgd.net
XButton2を押してる間ctrlを押したままに、離すと離すというふうにしたいのですが、どう組めば良いでしょうか?

441 :名無しさん@お腹いっぱい。 :2019/10/03(木) 22:57:25.43 ID:BzDK6bGs0.net
>>440
ahk wiki でググってリマップとキーリストのページ熟読しましょう
基礎中の基礎すら自力で学ぶ気無い人は使うの諦めましょう

442 :名無しさん@お腹いっぱい。 :2019/10/03(木) 23:05:37.40 ID:qTTnr1Kgd.net
>>441
ありがとうございます 読んで試してみたのですがうまくいきません
*XButton2::

SetKeyDelay -1

Send {Blind}{Ctrl DownTemp}

Return




*XButton2 up::

SetKeyDelay -1

Send {Blind}{Ctrl Up}

Return

443 :名無しさん@お腹いっぱい。 :2019/10/03(木) 23:16:25.06 ID:BzDK6bGs0.net
>>442
スクリプト自体はそれで問題無く動くよ
まずはメモ帳などで動作するか試してみ
XButton2を押しながらCやVでコピペが出来るかどうか
特定のソフトでのみ動かないならUACで弾かれてる可能性あり

444 :名無しさん@お腹いっぱい。 :2019/10/03(木) 23:23:04.70 ID:qTTnr1Kgd.net
>>443
どうも コピペやサイト検索などできるのですが、ノベルゲーでスキップに使いたいのに
押してもひとつ進むだけで使えません 修飾キーとしてか機能してないようです

445 :名無しさん@お腹いっぱい。 :2019/10/03(木) 23:31:44.62 ID:VbiGNDSw0.net
>>444
修飾キーとしてしか機能しないのではなくてそのゲームで弾かれてるだけじゃね
Enterなど他のキー割り当てが効くかどうかとか色々試して順を追って原因を探れ
勝手な想像だけで結論付けてたら原因も特定できない

446 :名無しさん@お腹いっぱい。 :2019/10/03(木) 23:43:27.06 ID:BzDK6bGs0.net
>>444
さっきも言った通りUACで弾かれてる可能性があるから試しに管理者権限で実行してみ
一旦スクリプトを終了させてからスクリプトファイルを右クリックして管理者として実行

447 :名無しさん@お腹いっぱい。 :2019/10/04(金) 00:14:03.53 ID:fRVyq7ird.net
ありがとうございます 管理者としてやってみましたがダメでした
一応文章1つは進むので反応はしてるみたいです
10個ほど試しに起動したら吉里系(エンジン名)が全滅で他はスキップできるのも結構ありました
HUTで割り当ててたときはサイドボタンでスキップ全ゲームでできてました

448 :名無しさん@お腹いっぱい。 :2019/10/04(金) 00:17:47.02 ID:xHIQzbu90.net
>>447
あのさ、お前の質問の仕方がまず下手糞っつーか、そのゲームでCtrlでどんな動作するのかすら
俺らは何も知らねえんだから「1つは進むので反応はしてる」とか言われても知ったこっちゃねえよと
元々のXButton2の機能は?Ctrlの機能は?そのゲームでどういう動作するのかの説明が先だろ

449 :名無しさん@お腹いっぱい。 :2019/10/04(金) 00:26:51.50 ID:fRVyq7ird.net
どうも エロゲでctrl といえばスキップで元々のサイドボタンは「進む」みたいですが今やったらゲームでは無反応です
ctrlが押してる間押してるようになってくれればいいのでそんなに難しいとは思いませんでした、すみません

450 :名無しさん@お腹いっぱい。 :2019/10/04(金) 00:35:42.65 ID:Ov0C34Zz0.net
ゲームはどうやってもAHK効かない場合もある

451 :名無しさん@お腹いっぱい。 :2019/10/04(金) 00:52:10.57 ID:fRVyq7ird.net
連投してしみません。解決したので報告です。
マウスのボタンは押してる間にリピートにならないのが原因だったみたいです
ここみてやったらできましたhttp://nmm.blog.jp/archives/51338945.html
XButton2::
        Send {Ctrl}
        Loop, 10
        {
                Sleep, 50
                 If GetKeyState("XButton2","P") == 0
                         Return
        }
        While GetKeyState("XButton2","P")
        {
                 Send {Ctrl}
                 Sleep, 80 ; miliseconds
        }
        Return

452 :名無しさん@お腹いっぱい。 :2019/10/04(金) 03:12:34.73 ID:paGKc9Zy0.net
余計なの抜くとこうなるけど、ブラウザとかで別ウインドウ開く挙動ができないな
XButton2::
While GetKeyState("XButton2","P")
{
Send {Blind}{Ctrl}
}
return

453 :名無しさん@お腹いっぱい。 :2019/10/04(金) 04:45:58.20 ID:XpbFhFamd.net
ゲームのスキップでしか使えなかったので闇雲にいろいろいじってこうなりました
ブラウザやエクスプローラでも修飾キーとして使えました
*XButton2::
While GetKeyState("XButton2","P")
Send {Blind}{Ctrl DownTemp}
Return

*XButton2 up::
SetKeyDelay -1
Send {Blind}{Ctrl Up}
Return

454 :名無しさん@お腹いっぱい。 :2019/10/04(金) 18:44:48.42 ID:j13ZgbJy0.net
iSO版のリリースはいつですか?

455 :名無しさん@お腹いっぱい。 :2019/10/04(金) 22:27:38.43 ID:5qN/CPDW0.net
#Persistent

SetTimer,xxx,3000
return

xxx:

return

こういう形で動作を常駐させたいんですが、
任意の時間帯に動作停止して、また任意の時間帯に動き出すっていう設定可能でしょうか?

タスクスケジューラに絡ませずAHK単独でできれば取り回しいいかなと思ってるんですが

456 :名無しさん@お腹いっぱい。 :2019/10/05(土) 02:07:34.53 ID:AHwPqKMd0.net
このソフトで、プリントスクリーン(自分のキーボードではFnキー+Oキー)
を押したときに音(WAVとか)を鳴らすようにできますか?
全画面のゲーム中に、そのゲームの機能でスクショをとるときに音を出したいんですが

457 :名無しさん@お腹いっぱい。 :2019/10/05(土) 02:39:51.17 ID:V3IAE/nh0.net
>>456
出来ますよ

458 :名無しさん@お腹いっぱい。 :2019/10/05(土) 11:49:32.29 ID:1I3HaG/V0.net
出来ました

~*PrintScreen::
SoundPlay, 000.WAV

音も出ました、しかしゲーム起動時は鳴ってくれません ウインドウモードやMP3でも鳴ってくれません
何か間違ってますか?

459 :名無しさん@お腹いっぱい。 :2019/10/05(土) 11:50:40.80 ID:1I3HaG/V0.net
スクショ自体は取れてます

460 :名無しさん@お腹いっぱい。 :2019/10/05(土) 13:05:06.52 ID:nEK0fmVM0.net
>>459
>>446

461 :名無しさん@お腹いっぱい。 :2019/10/05(土) 14:42:18.65 ID:QdWSk/Uo0.net
>そのゲームの機能でスクショをとるとき
この書き方だとOSではなくゲーム上で専用のスクショ機能があるように読めるが
それもしやPrintScreenキー押し以外の操作方法でスクショ撮ってるのでは?

上のコードはあくまで
PrintScreenキーが押さたときに音を出す
であって
スクショを取ったときに音を出す
ではないのは理解できてる?

462 :名無しさん@お腹いっぱい。 :2019/10/05(土) 15:19:41.13 ID:uLrLn6f70.net
他の全画面ゲームでは問題なく鳴りました
ゲームとの相性と思われます
鳴らしたいモノでならないとは・・・・

463 :名無しさん@お腹いっぱい。 :2019/10/05(土) 18:14:47.73 ID:k0BzwU+I0.net
ゲームによってはチート・マクロ対策でキー入力監視・横取りするからAHKみたいなキーフックが効かなくなる
SendModeを変更したり横取りされないように常にコマンドを送信したり、無理ならハードウェアマクロ使う

464 :名無しさん@お腹いっぱい。 :2019/10/05(土) 19:27:56.52 ID:1s6PenY+0.net
>>458
win32APIのフックが駄目なら
AHKのキーボードフックを使う

$~*PrintScreen::
SoundPlay, 000.WAV

465 :名無しさん@お腹いっぱい。 :2019/10/05(土) 21:38:26.88 ID:ZskV44Jf0.net
だめでした・・・
試しに長い曲かけといて、ゲーム起動すると音が小さくされてしまうようです(音自体こもって変な感じ)

466 :名無しさん@お腹いっぱい。 :2019/10/05(土) 23:20:28.53 ID:JIgwuguo0.net
>>465
てことは一応音鳴ってるってことだよな?
それなら後はお前のPC環境、オーディオデバイスの問題だ
AHK自体は動作してるのでこれ以上ここで聞くのはスレチ

467 :名無しさん@お腹いっぱい。 :2019/10/06(日) 00:31:46.35 ID:gKsycSon0.net
PC環境もオーディオデバイスも関係ない
ゲームとの相性が悪いだけだし

468 :名無しさん@お腹いっぱい。 :2019/10/07(月) 18:09:34.27 ID:pkHLCvz2a.net
何年も使っててふと現在はどうなってるのかとスレに来たんですけど、テンプレって更新されてて最新の状態なんでしょうか?
10の系譜見るとメインが1.1で、他に派生がありますが今もこの状態でしょうか?
今使ってるのが1.1.24.03なんですが、サイト見たら今1.1.31だったので取りあえず上げようと思います
でもv2や派生などの方が良くなってるのなら変えようかと思ったので詳しい方のお話を聞かせて頂けないかと思いました
1のwiki(wikになってるけど)は最新が1.1.14.03で更新止まってて情報が古いですし
v2が下位互換性を排除して操作利便性の向上と書いてるので鵜呑みにすればv2が良いのかなとか、AutoHotkey.dllは真のマルチスレッド対応だとか
よろしくお願いします

469 :名無しさん@お腹いっぱい。 :2019/10/07(月) 18:26:44.08 ID:OgvUEp/w0.net
>>468
1.1.24ってまた随分と古いの使ってるな
俺も1.1系しか使ってないから他の派生とかは全く知らないけど
とりあえずVer.Upするならキーコードのルールが変わったからそれだけ注意

例えば無変換キーをリマップする場合昔は vk1Dsc07B::a だったけど1.1.27以降はこれだとエラーになる
vk1D::a もしくは sc07B::a の様に仮想コードのみかスキャンコードのみで指定すれば動く
なのでキーコード使ったスクリプトは書きかえなきゃならない

470 :名無しさん@お腹いっぱい。 :2019/10/07(月) 19:00:10.82 ID:y5fciisX0.net
>>468
v1かv2かは好きにすればいいけど、現状このスレは暗黙にv1の最新版前提なので
v2の話がしたいときは初めにことわらないと無駄に揉める、揉めなかったとしてもそもそも返答がつきにくい
ということだけは知っておきましょう

471 :名無しさん@お腹いっぱい。 :2019/10/07(月) 20:32:01.24 ID:pkHLCvz2a.net
>>469
いやあ、セキュリティソフトみたいにいつでも最新にしなきゃいけないわけでも無いので、特に気にならなくてそのまま使ってて…(笑)
そういうのがあるんですね
んー、じゃあ現状特に必要が無ければこのままの方が良いのかな
アプデで良くなった部分は何かとサイトのダウンロードページとか見たんですが変更履歴とかは見当たらず
>>470
利便性向上とかでもあまり使われて無いんですね
使用バージョンなどについては心がけてはいましたが仰って頂けて再認識出来ました

お二人、ありがとうございました

472 :名無しさん@お腹いっぱい。 :2019/10/07(月) 21:01:28.48 ID:277PE1hba.net
一応
Changes from v1.1 to v2.0
https://www.autohotkey.com/v2/v2-changes.htm

473 :名無しさん@お腹いっぱい。 :2019/10/10(木) 02:44:33.41 ID:Cjk9hSXX0.net
メインモニタのDPIを100%にしたり200%にしたりボタンひとつでしたいんですが、
可能なコマンドってありますか?

474 :名無しさん@お腹いっぱい。 :2019/10/10(木) 22:40:28.73 ID:zEMr3y/O0.net
これ?

https://www.autohotkey.com/boards/viewtopic.php?f=6&t=37913&sid=89b878b309de1063fa30862ca585c08b

475 :名無しさん@お腹いっぱい。 :2019/10/18(金) 22:00:37.79 ID:0ITd9EnG0.net
すみません質問させてください
ウィンドウが最大化されてるかどうかを判定する方法ってありますか?
あったらその方法を教えて下さい
WinGetPosでf幅と高さは取得出来ますが最大化ボタン押されてるかどうかの状態は取得できませんよね?

476 :名無しさん@お腹いっぱい。 :2019/10/18(金) 22:16:57.34 ID:lc+P1JaQ0.net
winget

477 :名無しさん@お腹いっぱい。 :2019/10/18(金) 22:34:20.15 ID:0ITd9EnG0.net
>>476
ありがとうございます
MinMaxというcmdですね、完全に見落としてました
初歩的な質問で失礼しました

478 ::2019/10/19(Sat) 00:23:04 ID:P0+axhfk0.net
v1.1.31.01
修正版出てるんで一応

479 :名無しさん@お腹いっぱい。 (ワッチョイ 9276-R8pi):2019/10/21(月) 09:06:06 ID:2nJ1m63u0.net
F5を押しっぱなしにするとF5を1回押して離し、離すとF5をもう1回押して離す、というふうにしたいのですが、
現状F5を押してる間連打入力になってしまいます。連打にしないようにするにはどうすればいいですか?

SetKeyDelay -1
*F5::
Send {F5}
Return
*F5 up::
Send {F5}
Return

480 :名無しさん@お腹いっぱい。 :2019/10/21(月) 11:42:25.37 ID:JlnJZS5i0.net
>>479
*F5 up:: は使わずに keywait を使用

481 :名無しさん@お腹いっぱい。 (ワッチョイ 9276-R8pi):2019/10/21(月) 13:13:40 ID:2nJ1m63u0.net
>>480
ありがとうございます。よくわからなかったのですが、いろいろ試してこれでうまくいきました。
SetKeyDelay -1
*F5::
Send {F5}
Keywait,F5 ←足した部分
Return
*F5 up::
Send {F5}
Return

482 :名無しさん@お腹いっぱい。 (ワッチョイ b2f5-S3Tg):2019/10/21(月) 14:06:15 ID:US/8TUJg0.net
>>481
まあそれでも動くけどシンプルに書くならこう

*F5::
Send {F5} ;←F5押された時点でF5を送信する
Keywait,F5 ;←F5が離されるまで待機
Send {F5} ;←F5が離された時点でF5を送信する
Return

483 :名無しさん@お腹いっぱい。 :2019/10/21(月) 16:59:28.57 ID:RGns00bI0.net
解決方法があれば教えてください。

無変換キーとIJKLの組み合わせで↑←↓→を割り当てています。
----
vk1D & i::Send {Blind}{Up}
vk1D & j::Send {Blind}{Left}
vk1D & k::Send {Blind}{Down}
vk1D & l::Send {Blind}{Right}
----
この状態で、
無変換 + Win + L を押すと、Windowsロックのショートカットが働いてしまいます。
Win + → で、ウインドウが画面右半分に寄る動きになってほしいんですけど、
どうすればできるでしょうか?

環境は、
Version 1.1.31.00
Windwos 10 64bit
です。

484 :名無しさん@お腹いっぱい。 (ワッチョイ 9276-R8pi):2019/10/21(月) 19:35:22 ID:2nJ1m63u0.net
>>482
くわしくありがとうございます

485 :名無しさん@お腹いっぱい。 (ワッチョイ 5e76-V8qe):2019/10/21(月) 20:02:40 ID:Ty9ZUR130.net
このソフトがチート判定される可能性ってある?

486 :名無しさん@お腹いっぱい。 (ワッチョイ b358-S3Tg):2019/10/21(月) 20:06:51 ID:JlnJZS5i0.net
>>485
当然ネトゲなんかでは弾かれることよくある
思いっきり規約違反に該当する機能だからな

487 :名無しさん@お腹いっぱい。 :2019/10/21(月) 20:47:38.05 ID:JlnJZS5i0.net
>>483
システムの割り込み優先度がロック画面の方が高いから効かないんだろうな
試しに Win+L を無効化しようとしても全く効かないし
まあ無理なもんは無理なので諦めて別のやり方考えた方が良いだろうね
Alt+無変換+L を Win+→ にするとか

どうしてもWinキーでやりたいならChangeKeyなどでWinキーを一旦 F13 などに変更しといて
F13::LWin
とか追加しとけば一応 無変換+Win+L で Win+→ になる
ただしWinキーを使う別の機能に余計な弊害でるかもしれないのであまりオススメはしない

488 :483 (ワッチョイ 9fd5-V+wO):2019/10/21(月) 23:12:55 ID:RGns00bI0.net
>>487
ありがとうございます!
とても参考になりました

Win+Lは無効化できないものとして一旦あきらめます
Altでの代用は「Alt+→」の「進む」と衝突するので、
別の手段を考えてみることにします

事前にF13に置き換えるというのはヒントになりそうです!
Winキーじゃなくて、Lキーの方をF13に置き換えるとか……
(でも気持ち悪いし、これだけのために書くの面倒だし、たぶんやらない)

ひとまずは、
無変換+Win+Lでの「Win+→」はもう使わないようにして
無変換+Win+Jでの「Win+←」を何回か押せば、
ウィンドウ右寄せ状態になるので、それで我慢します

代案まで出していただいたのに申し訳ないですが、
個人的にはキッパリ諦めがつきました

489 :名無しさん@お腹いっぱい。 :2019/10/22(火) 17:29:05.35 ID:I2BrpfqUa.net
タイマー実行中サウンド再生をループさせたいのですが
どうするのがいいでしょうか?

490 :名無しさん@お腹いっぱい。 :2019/10/22(火) 17:35:29.19 ID:rI1vOemh0.net
>>489
SetTimerとかLoopとかSoundPlayとか使えば良いんじゃないですかね

491 :名無しさん@お腹いっぱい。 :2019/10/22(火) 18:59:01.09 ID:0kYKcgdV0.net
ループ再生させるためにタイマー使いたいのか
タイマーの挙動を見るために音を鳴らし続けたいのか
どっち?

492 :名無しさん@お腹いっぱい。 :2019/10/23(水) 17:12:01.06 ID:HNQiWHZ90.net
今のところとりあえずweb上だけだと思うんですが
「ページが一番上までスクロールされていること」を確認する一番スマートな方法って何でしょうか?

493 :名無しさん@お腹いっぱい。 :2019/10/23(水) 17:15:19.17 ID:HNQiWHZ90.net
↑今のところweb上での検出しか所望していないという意味です

494 :名無しさん@お腹いっぱい。 :2019/10/23(水) 17:16:53.62 ID:B6H8gkIg0.net
どういう意味を込めて「web上」と表現したのかを教えて

495 :名無しさん@お腹いっぱい。 :2019/10/23(水) 17:22:41.55 ID:HNQiWHZ90.net
web以外のソフトで使う場合で難易度が上がるのなら配慮はしなくても問題ないという意味です

何にも根拠はないですけど、使用範囲を限定してマイナスになることはないかなと

496 :名無しさん@お腹いっぱい。 :2019/10/23(水) 17:24:21.10 ID:HNQiWHZ90.net
ブラウザという表現が適当ですね
Chromeです
連投すみません

497 :名無しさん@お腹いっぱい。 :2019/10/23(水) 18:17:53.83 ID:WG26tbAE0.net
>>496
他にもっと良い方法はあるかもしれんけど
スクロールバーの一番上の▲の座標をウィンドウ相対値で指定して
一番上にスクロールしてたらグレーアウトになるのでその色で判別するとか
サイトによっては特殊なスクロールバー表示で使えない場合もあるけどね

てか確認だけをして何がしたいのかがよく分からん
問答無用で一番上にスクロールしたいだけなら Send,{Home} の方が手っ取り早いと思うけど

498 :名無しさん@お腹いっぱい。 :2019/10/23(水) 20:06:09.06 ID:wyx5LJzl0.net
>>496
これ↓

AutohotkeyからChrome上でJavaScriptを実行する方法を考えた | yuipro
https://yuis-programming.com/?p=1852

AHKから、
「Alt+D」とか「Ctrl+L」でChromeのアドレスバー部分に移動させて、
ちょっと待ってから「"javascript:〜〜"」の文字列を送って、
ページが一番上までスクロールされていることを判定するJSをブラウザ上で実行させる。

JSの処理では、最後にクリップボードになんか書き込んで、
AHKで、クリップボードの中身を監視しておけば、
ページが一番上までスクロールされていることを確認した後に、
AHKで処理を続けさせることもできると思う。

使用範囲がブラウザに限定されているのとても大事。

499 :498 :2019/10/23(水) 20:09:26.71 ID:wyx5LJzl0.net
>>498 訂正
「Alt+D」の後の「ちょっと待ってから」ってのは別に待たなくていいわ

500 :名無しさん@お腹いっぱい。 :2019/10/24(木) 12:40:46.86 ID:tJD2Z6Lk0.net
>>497
やっぱり色検出が無難ですかね
というか両端にスクロールすると色が変わるのは今さらですが初めて知りました

>>498
ちょっと時間かかりそうですがよんでみます ありがとうございます

501 :名無しさん@お腹いっぱい。 :2019/10/24(木) 13:11:00.73 ID:IgtvNMYda.net
確認して何をするのかも書けよ
それによってアプローチの仕方も変わるだろうに

502 :名無しさん@お腹いっぱい。 :2019/10/24(木) 18:23:02.24 ID:2Gkj02rM0.net
; 「変換キー+T」ブラウザ上でページの一番上かどうかを判定してMsgBoxを表示する
vk1C & t::
  ; クリップボードの内容を保存
  cb = %ClipboardAll%
  
  ; (ブラウザがアクティブになっているとして)
  ; アドレスバーからJavaScriptブックマークレットを実行
  ; -> ページの一番上かどうかをクリップボードに保存
  Send, !d
  Clipboard = javascript
  Send, ^V
  Sleep 100
  Clipboard = :void(((d)=>{b=d.body;e=d.createElement('input');e.value=+!(window.pageYOffset);b.appendChild(e).select();d.execCommand('copy');b.removeChild(e);})(document));
  Send, ^V`n
  Sleep 200
  
  ; 結果を変数に格納 1:一番上、0:一番上以外、その他:判定失敗
  result = %Clipboard%
  
  ; クリップボードの内容を戻す
  Clipboard = %cb%
  
  ; 結果に応じてMsgBoxを表示
  Switch result {
  Case 1:
    MsgBox top
  Case 0:
    MsgBox not top
  Default:
    MsgBox error
  }
Return

503 :502 :2019/10/24(木) 18:24:38.23 ID:2Gkj02rM0.net
>>498 の方法でページの一番上かどうかを判定するスクリプトを書いた
思ったのは、JavaScript→AHKへの値渡しをクリップボード以外でできればいいのってこと

あと、>>502 はタブを全角スペース2つに置換してるから

504 :名無しさん@お腹いっぱい。 :2019/10/24(木) 21:00:37.08 ID:jt50wicoa.net
AHKでもクラスが使えることを始めて知りましたが
存在しないクラスをnewしてもエラーにならないのは何故でしょうか?

505 :名無しさん@お腹いっぱい。 :2019/10/25(金) 11:27:18.16 ID:/0DeN9YR0.net
あるxxx.exeがあったとき、これを終了させたいのですが、

SendMessage, 0x112, 0xF060,,, ahk_exe xxx.exe

では終了出来ません。xxx.exeにはウインドウがないのでそのせいなのかもしれませんが、
強制終了ではなく出来れば普通に終了させたいのですが方法はありませんか
どうしてもだめなら強制終了の方法でもいいです

506 :名無しさん@お腹いっぱい。 :2019/10/25(金) 11:40:44.43 ID:ozI8O5ZPM.net
DetectHiddenWindows,on
Process,close
winclose
winkill

終了系のコマンドはアプリによって効く効かないがあるし
アプリ名書いてない以上どれが有効かはわからん
自分で試して見て

507 :名無しさん@お腹いっぱい。 :2019/10/25(金) 11:50:45.18 ID:D6ouzmNa0.net
>>505
強制終了でいいなら Process, Close,

トレイに入ってる常駐プロセスを強制ではなく正常終了させるには
自分はトレイアイコンをImageSearch使って座標取得してMouseMoveして右クリック→EXITを選ぶ
という処理を自動マクロ化してるけどもっとスマートな方法あったら俺も知りたい

508 :名無しさん@お腹いっぱい。 :2019/10/25(金) 13:08:44.15 ID:/0DeN9YR0.net
>>507
これこれ。トレイに入ってる。右クリック→EXITも試そうと思ったがスマートじゃないのでやめたw

509 :名無しさん@お腹いっぱい。 :2019/10/25(金) 13:15:57.35 ID:D6ouzmNa0.net
>>508
あとはWin10ならWin+Bでトレイアイコン選択になるので←→キーで目的のアイコン選択して
Appskeyでメニュー表示して↑↓キーでExit選択するって方法もあるけど、これだと一時的にトレイアイコンの
配置が変わった時などに別のソフトが選ばれてしまう可能性がある
アイコン配置を固定してれば問題無いけど
>>507のやり方はスマートではないけどトレイアイコン配置が変わろうが問題無く動いてくれる

510 :名無しさん@お腹いっぱい。 :2019/10/25(金) 13:21:15.50 ID:pf2j0VqN0.net
タスクトレイで操作可能ってことは
非表示かもしれないがメインウィンドウが存在するので
該当のウィンドウ探し出してメニューコード送信するだけでいける

511 :名無しさん@お腹いっぱい。 :2019/10/25(金) 13:28:18.52 ID:D6ouzmNa0.net
>>510
常駐ソフトはほとんどがWinCloseやAlt+F4送ってもトレイに収まるだけでプロセスは終了しないものが多い
だから単一のコマンドだけで終了させるには Process, Close, で強制終了するしかない

512 :名無しさん@お腹いっぱい。 :2019/10/25(金) 13:32:01.32 ID:pf2j0VqN0.net
>>511
タスクトレイから正常終了出来るんだろ?
タスクトレイってタスクトレイ経由でメニュー操作してることになってるから
そのメニューコードさえ調べれば同様のことが出来る
当然常駐アプリで隠れるだけのコードとは別

513 :名無しさん@お腹いっぱい。 :2019/10/25(金) 13:35:38.28 ID:ikMeVi52H.net
peerblockの切り替えにオーバーフロー通知領域のアイコンをexeで指定して
任意のクリックができるやつをわからないなりに改悪してタスクトレイに変えたけど
結局controlsendで出来た悲しい思い出

514 :名無しさん@お腹いっぱい。 :2019/10/25(金) 13:37:42.31 ID:D6ouzmNa0.net
>>512
机上論だけ言われてもな
そのメニューコード?とやらを調べる方法は?
具体的に君はそれで常駐ソフトを終了させたことあるの?

515 :名無しさん@お腹いっぱい。 :2019/10/25(金) 13:52:17.11 ID:pf2j0VqN0.net
>>514
そら当然あるぞ
メニューコード調べるのなんてspy++とか使えばいいだろ

つか卓上論って自分の知らないことは全てそう言うんか?
恥ずかしい奴

516 :名無しさん@お腹いっぱい。 :2019/10/25(金) 13:57:22.70 ID:D6ouzmNa0.net
>>515
自分が知らないことを質問してるだけで恥ずかしい事でも何でもないんだが?
お前は自分が知ってることは他人もみんな知ってると思い込んでるの?
恥ずかしい奴

517 :名無しさん@お腹いっぱい。 :2019/10/25(金) 14:14:59.14 ID:KsMlGNvY0.net
タスクトレイアプリの
クラス名ゲットなら窓コン
コマンドID(wParam)ゲットならこれ
ttp://autohotkey.com/board/topic/19754-get-info-from-context-menu/#entry130297

518 :名無しさん@お腹いっぱい。 :2019/10/25(金) 14:42:08.90 ID:X3D+av6LM.net
机上論だなどと煽っておいて質問してるだけって言い換えるのは
端で見ていても恥ずかしいなと思いました

519 :名無しさん@お腹いっぱい。 :2019/10/25(金) 15:00:08.61 ID:VlQcspiQ0.net
別に煽りでも何でもないと思うけどw
てか イルクン ってなんだ?w

520 :名無しさん@お腹いっぱい。 :2019/10/25(金) 15:53:47.34 ID:qDdTpsamM.net
@モバイル君

机上論=想像だけで役立たず
どうやってやるんだよ
実際にやったことあんのかよ(ないんだろ)

自分が回答する側なら完璧に教える気無くすね
やり方書いてくれなきゃ絵に描いた餅だと諭したかったにしろ
相手を否定して貶める必要は全くなかったのでは?

521 :名無しさん@お腹いっぱい。 :2019/10/25(金) 15:59:33.13 ID:R3WiHJhs0.net
どうでもええがな
喧嘩は他所でやれ

522 :名無しさん@お腹いっぱい。 :2019/10/25(金) 17:55:08.55 ID:/0DeN9YR0.net
みなさんありがとうございました。
出来ましたよ


DetectHiddenWindows,on
WinGet, h, ID, ahk_exe xxx.exe

SendMessage, 0x112, 0xF060,,, ahk_id %h%

で成功しました

ahk_exe xxx.exeではダメで、ハンドルをゲットしてハンドルに対してSendMessageしないとダメみたいです
なんで??? w
まあ、ウインドウに対してじゃないとダメってことなのかな。融通が利かないよねえ

523 :名無しさん@お腹いっぱい。 :2019/10/25(金) 18:22:59.89 ID:632fPeDh0.net
WindowsタブレットPCでタッチスクリーンの操作をAHKで検知することって可能でしょうか?
「3点タップ」や「2点上へスワイプ」などの動作にAHKで機能割り当てをしたいのですが…

524 :名無しさん@お腹いっぱい。 :2019/10/26(土) 22:38:20.60 ID:hT6UEneJa.net
マウスが動くたびに処理を実行する、ということをしたいのですが(ウェブでいうonmousemove)
ホットキーではボタンとホイールの動きしか検出できないようです
SetTimerで短い間隔で関数を呼びまくって判定するのでしょうか?

525 :名無しさん@お腹いっぱい。 :2019/10/26(土) 23:27:15.39 ID:sNP1tmoxH.net
SetWindowsHookExを使う

526 :名無しさん@お腹いっぱい。 :2019/10/27(日) 00:21:55.23 ID:Q9w3GEG30.net
AHKHID.ahkでマウス移動イベント拾えるから
↓このあたりのソースを改造してInputMsg() の中身を丸ごと変えてしまばいいかと

Mouse Wheel Emulator
https://autohotkey.com/board/topic/46203-mouse-wheel-emulator/

527 :名無しさん@お腹いっぱい。 (ワッチョイ 2305-roNU):2019/10/27(日) 01:44:26 ID:U7U5DljM0.net
これのiOS版ありますか?

528 :名無しさん@お腹いっぱい。 :2019/10/27(日) 04:23:07.31 ID:or1gSIZt0.net
>>504
ahkのclassはいろいろウンコ過ぎて使うのやめた
クラシックなCスタイルで書くのが無難
凡ミスをエラーとして検出できず誤動作するだけなんでテキストエディタでのコーディングには全く向いてない

529 :名無しさん@お腹いっぱい。 :2019/10/27(日) 07:53:43.63 ID:TWLDBVf5a.net
>>525,526
ありがとうございます
調べてみます

530 :名無しさん@お腹いっぱい。 :2019/10/27(日) 11:46:55.90 ID:I3OIYPTT0.net
>>529
自分も昔同じこと考えて調べたけどAHK以外何も知らないスクリプト初心者には難しすぎて挫折した
結局諦めてSetTimerとMouseGetPos使ってるよ…

531 :名無しさん@お腹いっぱい。 :2019/10/28(月) 02:14:57.75 ID:EYtu/5rk0.net
すみません。
Google Chrome で、バックスペースで「戻る」を実現しようとして、
----
BS::Send, !{Left} ; ALT+←
----
などと書くのですが、
そうすると、入力フォームや、アドレスバーにフォーカスがあるときも、
前のページに戻ってしまいます。(当たり前ですが)

「文字入力可能な状態」でないときだけ
ホットキーが動くようにしたいのですが、どんな方法で実現できそうでしょうか?
どなたかアドバイスいただけませんでしょうか。

※ブラウザのアドオンで実現できるのはわかっていますが、
 AHKでできれば、他のブラウザでも使えるようできるので
 何卒よろしくお願いします。

532 :名無しさん@お腹いっぱい。 (ワッチョイ 8fbe-roNU):2019/10/28(月) 07:09:30 ID:7W1OpY9G0.net
>>531
カーソルタイプ(IBeam)やキャレット座標などの条件判定では甘いし
AHKですべき問題じゃないと思うよ

533 :名無しさん@お腹いっぱい。 :2019/10/28(月) 12:22:05.99 ID:QBScBQWwH.net
>>531
テンプレにあるIME.ahk使えばいい

534 :531 :2019/10/28(月) 19:10:40.32 ID:EYtu/5rk0.net
>>532
ありがとうございます。
文字入力の状態を簡単に判断できると期待してました、すみません。

>>533
せっかく教えていただいたのに恐縮ですが、
「文字入力可能な状態」を判定できるスクリプトをうまく書けませんでした。
IME.ahkのどの関数を使うとできるようになるか教えていただけませんでしょうか?

AHKのバージョンは、1.1.31.00
OSは、Windows10 64bit
IMEは、Microsoft IME です。

535 :名無しさん@お腹いっぱい。 :2019/10/28(月) 21:42:37.99 ID:ouS0zuNbH.net
>>534
すまない
確認したら入力モードが"かな"かつ変換モードが"無変換"だと出来ない
そうでなければIME_GetConvMode()とIME_SetConvMode()の値がともに0で出来る……はず

あとはテンプレのACC.ahkで通知領域から取得かなあ
Nameの値が変わっているはずだから

536 :名無しさん@お腹いっぱい。 (ワッチョイ e3d5-MZfN):2019/10/29(火) 01:17:09 ID:2e9d+4+f0.net
>>535
すみません、できませんでした。
ローマ字入力です。
変換モードは「一般」になっていました。

IME_GetConvMode()は、基本的に"25"を返してきます。
半角全角キーでIMEの状態をOFFにしても"25"のままです。……?
通知領域の「あ」をクリックして「A」に変えると、"16"を返すようになります。……?
※?の操作では、通知領域は「A」になっていても"25"を返します。
 ?の操作の後、IMEの状態をONにするとまた"25"を返すようになります。(通知領域は当然「あ」)

IME_SetConvMode() は、引数に0x00を与えて呼び出すのでしょうか?
そうすれば、確かにそのときはIME_GetConvMode() も"0"を返すようになりますが、
実際の入力の状態は判定できないです。

思うに、
通知領域の「あ」「A」が「×」(IMEが無効です)になっているときが、
「文字入力できない状態」なので、
通知領域の情報が取得できるなら判定できそうです。
(ACC.ahkっていうので可能なのかはわかりませんが)

もっと簡単にできると甘く見てました。。

537 :532 :2019/10/29(火) 06:22:25.79 ID:xdxELTwV0.net
>>536
知ったかしてごめんなさい。<(_ _*)>

IME_GetConvMode()を使えば
入力モードがかな入力(半角英数)のIMEOFF時を除いて大丈夫ですね

条件式
(IME_GetConvMode() || (!IME_GetConvMode() && IME_GET())) ⇒ Send {BS}

538 :名無しさん@お腹いっぱい。 :2019/10/30(水) 13:35:33.79 ID:6Fv+a6Gfa.net
エクスプローラでフォルダが開かれた時に
AHKでそれをフックしてそのフォルダのパスを保存してMenuで使ったりしたいのですが
どうすればできるでしょうか?

539 :名無しさん@お腹いっぱい。 (中止T Sx03-okXf):2019/10/31(Thu) 16:19:19 ID:xF1MewNvxHLWN.net
>>538
自分なりに考えてみた

まず、https://sites.google.com/site/agkh6mze/howto/winevent
↑ここを参考にウインドウを監視するか、settimerで監視する
次にウインドウのタイトルを取得する(フォルダオプションでタイトルにフルパス表示させるようにしとく)
これでフォルダのパスは取得できるはず

後はお好きなように

540 :名無しさん@お腹いっぱい。 :2019/10/31(木) 22:46:12.46 ID:1CPf1QEn0HLWN.net
RB_DLD_をAlt+Tabにしたいと思い、AltDownとTabにしましたが、左クリック時にAltUpするいい方法はありますか?
左クリックされるまでGetKeyStateの無限ループとか?LB_にAltUp用ジェスチャーは当てたくないです。

541 :名無しさん@お腹いっぱい。 :2019/10/31(木) 22:49:05.13 ID:1CPf1QEn0HLWN.net
>>540です
MouseGestureLの設定ですが、AutoHotKeyも併用しているので、
そちらで左ボタンの挙動を変更する方法はありますか?
Alt押下ならAltUpで行けるだろうと思ったのですがうまく行かなかったです

542 :名無しさん@お腹いっぱい。 :2019/11/01(金) 08:03:40.16 ID:07Rz5AGQ0.net
>>540
単純に、Win+Alt とか Ctrl+Alt+Tab を起動じゃ不便?

543 :名無しさん@お腹いっぱい。 (ワッチョイWW 4ae5-qKM9):2019/11/01(金) 08:48:01 ID:IMkCGAbl0.net
試してないけど
Lbutton up:: send,{alt up}
とかじゃあかんの?

MouseGestureLとAutoHotKeyの併用というのがどういう状態か分からんし
別スクリプトとして同時に動かしてるのか
MouseGestureL.ahkをAutoHotKey.ahkに#includeしてるのかで
コンフリクト時の挙動は変わってくると思うが

544 :名無しさん@お腹いっぱい。 :2019/11/01(金) 16:25:04.59 ID:gYvtzhMc0.net
回答ありがとうございます。状況説明が下手で申し訳ない。
やりたいことはまさにCtrl+Alt+Tabそのものでした・・・
そのショートカットキーを知らなかったです。赤子からやり直してきます。

545 :名無しさん@お腹いっぱい。 :2019/11/01(金) 16:31:09.62 ID:gYvtzhMc0.net
しかし後学のために、Ctrlなしで実現させる方法を理解しておきたいです。

まず、併用というのは単にどちらも独立に使用しているというだけであり、
例えばMGLのジェスチャーでAltDown+Tabまで行い、左クリック時にAHKで、
Altの押下が確認されれば左クリックを送信する前にAltUpを挟む、
などできるのではないかと思った次第です。

546 :名無しさん@お腹いっぱい。 :2019/11/01(金) 16:40:49.52 ID:QQqYELwt0.net
>>545
GetKeyState

547 :名無しさん@お腹いっぱい。 :2019/11/01(金) 22:01:08.00 ID:VfugqGrn0.net
>>545
MGLは専用スレがあるから、ここで書くのも何だが
ヘルプ 4.4.4. 設定例-応用編- の
左ボタンを押しながら右ボタンで右のタブ、その逆で左のタブ
あたりを参考にすればやりたいことはできるんじゃないの

548 :名無しさん@お腹いっぱい。 :2019/11/03(日) 01:39:25.14 ID:O7MXiPNf0.net
winキー+EscでDeleteに置き換えてるんだけど、どうやら
一瞬だけctrlの入力がはいってしまっているぽい。
完全にwinキーを修飾キーにするにはどうすればいいんでしょうか・・・
ちなみにワード使ってて、図を選択したときにctrlを押すと開かれる
サブメニュー?が出てきて判明しました。

;winキー単体を殺す

~LWin::
~RWin::
LWin Up::
RWin Up::
return

; Win+EscをDeleteに
#Esc::
send, {NumpadDel}
return

549 :名無しさん@お腹いっぱい。 :2019/11/03(日) 01:40:02.73 ID:O7MXiPNf0.net
連投スマソ。
もうひとつ。winキーとRキーの同時押しがなぜかコード書いても
反応しないんだけど、これはahkの仕様(バグ?)ですか?
それとも、ハードウェアの問題でしょうか。

550 :名無しさん@お腹いっぱい。 :2019/11/03(日) 01:43:15.56 ID:x4wegOmC0.net
まずそのコードをここに書いてみよ

551 :名無しさん@お腹いっぱい。 :2019/11/03(日) 02:02:13.23 ID:O7MXiPNf0.net
#r::Send +
でした。すみません。
コード内で、すでに他の上記同時押しを使用してしまっているのでは?ということは確認しましたがなかったです。

552 :名無しさん@お腹いっぱい。 :2019/11/03(日) 02:28:01.13 ID:T/dyPpuj0.net
>>548
それだけでCtrlが入る要素は何一つ無いからサブメニューが出るのは何か他の要因が重なってんだろ

ちなWINキー単押しを無効にするなら
LWin::Return
RWin::Return

すると#Esc::の表記も無効になるので
LWin & Esc::
send, {NumpadDel}
return
にすれば2キー押しは有効になる

それでもたまにスカするならレジストリでWinキーをF13などに変更して
F13 & ESC:: をDeleteにすればいい

553 :名無しさん@お腹いっぱい。 :2019/11/03(日) 02:37:18.23 ID:T/dyPpuj0.net
>>551
文字のプラスを入力したいなら {+}

554 :名無しさん@お腹いっぱい。 :2019/11/03(日) 05:09:07.70 ID:+lRV0Wb00.net
こういう場合真っ先に試すべきは
#r::msgbox,Send +

555 :名無しさん@お腹いっぱい。 :2019/11/03(日) 10:51:10.01 ID:1hPQjtfu0.net
335 名前:いやあ名無しってほんとにいいもんですね[sage] 投稿日:2019/11/03(日) 10:22:35.60 発信元:211.14.222.92
【依頼に関してのコメントなど】よろしくお願いします
【板名】ソフトウェア
【スレッド名】AutoHotkey スレッド part27
【スレッドのURL】ttp://egg.5ch.net/test/read.cgi/software/1555770773/
【名前欄】
【メール欄】sage
【本文】
>>548
#MenuMaskKey
ttp://ahkwiki.net/-MenuMaskKey

556 :名無しさん@お腹いっぱい。 :2019/11/04(月) 19:46:22.84 ID:9tBCOKwba.net
>>539
フックにとらわれて、そういう発想はなかったです
その方向でやってみます
ありがとうございました

557 :名無しさん@お腹いっぱい。 :2019/11/05(火) 13:03:57.30 ID:xW6YEvnga.net
>>548
#MenuMaskKey
ttp://ahkwiki.net/-MenuMaskKey

558 :名無しさん@お腹いっぱい。 :2019/11/05(火) 23:01:30.91 ID:R4e6EFQY0.net
#MenuMaskKey vk07
ほんとコレ大事よね
CapsLockの挙動で余計なものが送られて散々悩んだの思い出した

559 :名無しさん@お腹いっぱい。 :2019/11/05(火) 23:03:58.99 ID:yR2cuDan0.net
CapsLock?それってIMEの設定変えるだけでどうにでもなるんじゃね

560 :名無しさん@お腹いっぱい。 :2019/11/09(土) 22:57:18.17 ID:avm3BFlQ0.net
:*:A::○○

だとシフト英数でキャップスロックかけた状態でaを押しても
○○が表示されるけど、

+a::Send, ○○

だとシフト英数でキャップスロックかけてaを押してもaにしかならない。
後者の場合でも前者と同じように機能させる方法ってあるの?

561 :名無しさん@お腹いっぱい。 :2019/11/11(月) 12:48:57.08 ID:FCCCmRVS01111.net
<ノイタミナ>PSYCHO−PASS_サイコパス_3<フジテレビか…_#01_10250104.TS
の全角を半角に変換するのってどうやるの

562 :名無しさん@お腹いっぱい。 :2019/11/11(月) 14:04:41.33 ID:AdvOVrfM01111.net
自分はLiName+テキストエディタの変換機能でやってるが
一発でリネームできるようなバッチ作りたいなら非2バイト語圏の海外産のAHKより
nkf32とか使ったほうが楽だと思う

563 :名無しさん@お腹いっぱい。 :2019/11/11(月) 18:32:07.13 ID:SIlajLB/M1111.net
>>560
a::
+a::
Send, ○○
return

>>561
AutoHotkey スレッド part18
https://anago.5ch.net/test/read.cgi/software/1398655195/974

半角全角変換関数 詰め合わせ
http://pastebin.com/diJWv0pw

564 :名無しさん@お腹いっぱい。 :2019/11/12(火) 00:07:42.36 ID:XvJWFDxd0.net
あるウィンドウがアクティブなら(なんらかのポップアップされたメッセージウィンドウを想定)、
Esc以外のどんなキーを押しても、ある処理を実行するみたいなスクリプトをつくりたいんですけど、

この"どんなキーを押しても"の部分って、全部のキー羅列しないといけないんですかね?
何かいい方法ありますか?

565 :名無しさん@お腹いっぱい。 (ワッチョイ 9f20-EJQs):2019/11/12(火) 05:22:26 ID:FtqeMYVR0.net
>>564
#InstallKeybdHook
SetTimer
WinActive()
KeyWait()
if !GetKeyState("Esc", "P") {
 コマンド
}

KeyWait() {
 Loop {
  if (Idle > A_TimeIdlePhysical)
   break
  Idle := A_TimeIdlePhysical
  Sleep, 10
 }
}

566 :名無しさん@お腹いっぱい。 :2019/11/12(火) 21:24:09.06 ID:XvJWFDxd0.net
>>565
あー関数とか演算子とか多用する感じなのか
普段基本的な使い方しないから勉強になった、ありがとう

567 :名無しさん@お腹いっぱい。 :2019/11/13(水) 00:42:57.36 ID:NxgPOaNH0.net
>>563
参考になったありがとう
s := conv(s, "ABC#「」『』", "ABC# ")
って感じの変換テーブル渡すコンバータ作った

568 :名無しさん@お腹いっぱい。 :2019/11/19(火) 20:50:10.36 ID:DwmpxaS1d.net
ie上でalt+speceに設定したIME切替が動かないので、ie上のaltを無効化したいんですが、どうしたら無効化しますか?試行錯誤してるんですけど、どれもダメみたいで、

569 :名無しさん@お腹いっぱい。 :2019/11/19(火) 21:43:50.75 ID:g+gF+7FS0.net
まずその試行錯誤を書いて

570 :名無しさん@お腹いっぱい。 :2019/11/19(火) 22:33:48.23 ID:DwmpxaS1d.net
もう残ってないっす

571 :名無しさん@お腹いっぱい。 :2019/11/23(土) 20:28:16.06 ID:Mh7lYThn0.net
vimでよくある、ddや<leader>wのようなシーケンス割当をいい感じでできるLibなぞどこかにありませんでしょうか?
:*:dd:: で割り当ててみたのですが、はじめのdが入力されてしまう点と、d単体に割り当てできなくなってしまっていけてないです…

572 :名無しさん@お腹いっぱい。 :2019/11/26(火) 22:15:06.67 ID:JAmcxqSM0.net
obj:=[1,2,3]
ScratchPad("a", 100)
ScratchPad("b", obj)
ScratchPad("keystate:a", keystata)
ScratchPad("c", "hello")
ScratchPad("a", 500)

と実行すると
a=500 <- 最後に書き込まれた値
b=1,2,3
keystate:a=U
c=hello
というウィンドウが表示されるデバッグ用ツール作ってくださいお願いします!
ウィンドウは存在しなかったら自動で生成し
存在していたら再利用し
ユーザーはいつでも閉じても構わない感じにお願いします!
ログ系の関数だとどんどんスクロールしてしまって不便で仕方が有りません

573 :名無しさん@お腹いっぱい。 :2019/11/26(火) 22:56:43.77 ID:Gvt9eacH0.net
自分でやれ

574 :名無しさん@お腹いっぱい。 :2019/11/26(火) 23:00:43.22 ID:1c8/xZfE0.net
>>572
よし俺に任せろ
ちょっと待ってくれよな

575 :名無しさん@お腹いっぱい。 (ワッチョイ 0bcf-72Ms):2019/11/27(水) 13:51:09 ID:CXHpBTJ60.net
その後
>>574の姿を見たものは居なかった

576 :名無しさん@お腹いっぱい。 :2019/11/28(木) 08:49:31.79 ID:7ah9PNzD0.net
じゃあ替わりに俺が作るよ
>>572 待ってろよ

577 :名無しさん@お腹いっぱい。 :2019/11/28(木) 09:10:22.14 ID:YQMVfgpt0.net
壮大なプロジェクトになってきた

578 :名無しさん@お腹いっぱい。 :2019/11/28(木) 09:30:29.24 ID:lQjz+pHhd.net
>>568 もだれかお願いできないですかね

579 :名無しさん@お腹いっぱい。 :2019/11/28(木) 09:41:34.01 ID:u3kK9hCK0.net
マジレスするとまともな回答が付かないのは質問の仕方に問題があるということ
ここはお客様サービスセンターじゃないのでそういう面倒な奴はスルーまたは適当にあしらわれるだけ

580 :名無しさん@お腹いっぱい。 :2019/11/28(木) 10:44:26.21 ID:M99/5zSx0.net
回答がつかないのはこういうの
・Windows標準機能を乗っ取ろうとかバカなやつ(無謀
・それ普通に一般機能でできるけどってやつ(無知
・試したソース書かないやつ
・試してすらいないやつ
・日本語になってないやつ

すぐに回答がつくやつ
・やりたいことが明確で試したソースもついてる
・具体的な関数や文法的なアドバイスを求める内容

581 :名無しさん@お腹いっぱい。 :2019/11/28(木) 10:58:50.61 ID:Q7RBzET20.net
試行錯誤してるってその内容書いてないは結構致命的だよね
「こうじゃない?」って言ったとして「それはもうやってみました」ってなるのが目に見える

582 :名無しさん@お腹いっぱい。 :2019/11/28(木) 11:10:45.60 ID:u3kK9hCK0.net
あと>>568だけでは言葉足らずでやりたいことが明確ではない
場合によっては
・それ普通に一般機能でできるけどってやつ(無知
に該当してる可能性もあり得る

583 :名無しさん@お腹いっぱい。 :2019/11/28(木) 12:10:44.20 ID:8Y2KV43/0.net
>>578
他の人も書いてるけど、その試行錯誤を書いてほしい
それとAlt+Spaceって自分には必要なキーだから潰してもいいの?と言う疑問もある
例えば、WinMinimizeで最小化を設定してもタスクバーに収まらずに変な残り方するソフトが
時々あるけど、そういう場合に Alt+Spane,Nを充てて対処してる

584 :名無しさん@お腹いっぱい。 :2019/11/28(木) 14:00:15.68 ID:lQjz+pHhd.net
なるほど。質問の仕方か、、そう言われると確かに丸投げみたいな質問だな、、反省
試行錯誤したやつをまとめて、出直してきます

585 :名無しさん@お腹いっぱい。 :2019/11/28(木) 14:10:26.69 ID:U/9F6nEa0.net
>>584
一つだけ確認しておきたいんだがaltではなくCtrl+スペースでIME切り替えするのでは駄目なのか?
それならAHKを使わずにIMEのプロパティでキー割り当て変えるだけで出来るしスマート
無理してAHKでどうこうするよりシステム本来の機能で出来ることはそっちでやった方がいい

586 :名無しさん@お腹いっぱい。 :2019/11/28(木) 19:11:05.66 ID:F3zZXs0fd.net
>>585
CtrlとCaps入れ替え前提だよね

587 :名無しさん@お腹いっぱい。 :2019/11/28(木) 19:47:45.33 ID:U/9F6nEa0.net
>>586
いやそんなことはしないが
普通にCtrl+スペースにIME切り替えを割り当てるだけ
altに拘らなけりゃそれだけで済む話じゃねえの

588 :名無しさん@お腹いっぱい。 :2019/11/28(木) 20:00:07.48 ID:lQjz+pHhd.net
>>585
この状況の経緯です。何年もMacとMac用USキーボード使ってコマンド&スペースで入力モード変換してたけど、最近WindowsとWindows用のUSキーボードを使うことになった

589 :名無しさん@お腹いっぱい。 :2019/11/28(木) 20:00:44.11 ID:lQjz+pHhd.net
>>585
最初はalt&バッククォートやコントロール&スペースで変換してたけど、常時Macと併用してることもあり、やっぱり指が慣れず、コマンドの位置にあるaltばかり押してしまうので、altとスペースを入力モード変換として使えるようにした。という感じです

エラーになったので2つに分けました。

590 :名無しさん@お腹いっぱい。 :2019/11/28(木) 20:10:55.37 ID:U/9F6nEa0.net
>>589
そういうことならまずChangeKeyなど使いレジストリでAltとCtrlを入れ替えたほうがいいんじゃね
コピペなどもAltをCtrlとして使えるからMacに近い指の操作感になる
全てではないがMacのコマンドキーに相当する機能がWinでは概ねCtrlキーだからな
Ctrlをコマンドと同じ位置にしてしまったほうが早いだろ
そのうえでCtrl+スペースをIME切り替えに割り当てれば実際に押すのはAlt+スペースでIME切り替え出来るようになる

591 :名無しさん@お腹いっぱい。 :2019/11/28(木) 20:34:13.20 ID:lQjz+pHhd.net
>>590
実はその通りで、Ctrl+cとかもalt+cで動くように設定してるんですけど、ieだけaltが制御できずコピペが不安定なんです。。change keyはレジストリいじるの怖くて何となくスルーしてたんですが、そっちのがいいんですかね、、調べてみます

592 :名無しさん@お腹いっぱい。 :2019/11/28(木) 20:39:17.44 ID:lQjz+pHhd.net
>>590
というのと、自分以外の人がこのpcを使うことを考えてAHKでの一時的な制御を考えた。という経緯もありました

593 :名無しさん@お腹いっぱい。 :2019/11/28(木) 20:39:54.18 ID:M99/5zSx0.net
ChangeKeyはWin7時代に使ったけど問題なかったよ
Win10じゃ非対応だったと思うけど違ったかな
(もちろん類似ソフトはあると思う)

594 :名無しさん@お腹いっぱい。 :2019/11/29(金) 03:44:10.27 ID:Tf3CI0sR0.net
質問したいです ステレオミニジャックに
イヤホンをさしたら 特定のファイルを実行する
ぬいたら別のファイルを実行するということがしたいです

以前ネットでそんなことができると見た覚えがあるのですが
ヘルプにそれらしきコマンドなどなかったです
目論見は可能でしょうか?
可能でしたら記述方法をおしえていただけませんか?
よろしくお願いします

595 :名無しさん@お腹いっぱい。 :2019/11/29(金) 23:04:50.44 ID:gIwANFe0aNIKU.net
>>594
AutoHotkey はCOMオブジェクトを扱えると思うので
できるのではないかと思うのだが確信はない

できるとすれば
たぶん思っているよりだいぶ面倒だとは思うが
以下のような方法がある

もっといい方法があるかも知れないが、Windoows の
Core Audio インタフェースを通して状態を知ることはできる

再生デバイスの一覧とボリュームの取得
http://yamatyuu.net/computer/program/vc2013/vollist/index.html
がいいサンプルになると思う(言語はC++)

この中のボリュームに関する処理は不要だか
pProperties->GetValue(PKEY_Device_FriendlyName, &vName);
で取得したデバイス名が自分の対象としているヘッドフォンなら
DWORD stat;
HRESULT hr = pEndpoint->GetState(&stat);
(↑この行はサンプルコードには含まれていない)
でその状態を取得することができると思う

596 :名無しさん@お腹いっぱい。 :2019/11/29(金) 23:47:57.21 ID:gIwANFe0aNIKU.net
>>595
もしかしたデバイスの下についているセッションの状態をとる必要があるかも知れない

597 :名無しさん@お腹いっぱい。 :2019/11/30(土) 00:34:19.57 ID:KUmLOSnY0.net
環境によると思うのでよくわからんが
SoundGet,var,HEADPHONES では値取れないん?

598 :名無しさん@お腹いっぱい。 :2019/12/03(火) 20:18:24.26 ID:ceEY+y+eM.net
ahkで和暦の日付入力って可能なの?
formattimeじゃ無理そうだけど、、、

599 :名無しさん@お腹いっぱい。 (ワッチョイ 9e73-YC6P):2019/12/04(水) 04:05:05 ID:nf1P/FNe0.net
>>598
formattimeじゃなくてFormatTimeを使う

FormatTime, today, yyyymmdd D4, LongDate
MsgBox, % today

600 :名無しさん@お腹いっぱい。 (ワッチョイWW 099b-29rX):2019/12/04(水) 23:56:35 ID:7Klp1s8b0.net
>>599
できた!めちゃくちゃ助かったあんがと

601 :名無しさん@お腹いっぱい。 (アウアウオーT Sa93-yZWx):2019/12/05(Thu) 00:33:31 ID:izzBjhE+a.net
edgeがフルスクリーンかそうじゃないかって判定する方法ないですか?
IEだとかFirefoxはタイトルバー(0x00C00000)があるかどうかで判定できたんですけどedgeだとこれで判定できないので困ってます。

if tmp & 0x00C00000
{
send,{F11}
}
else
{
sleep,100
}

602 :名無しさん@お腹いっぱい。 (ワッチョイ 1d52-MVf8):2019/12/05(Thu) 01:42:32 ID:Jhh0ALwr0.net
失礼かきこめるのかな

603 :名無しさん@お腹いっぱい。 (ワッチョイ 1d52-MVf8):2019/12/05(Thu) 01:42:38 ID:Jhh0ALwr0.net
失礼かきこめるのかな

604 :名無しさん@お腹いっぱい。 (ワッチョイ 1d52-MVf8):2019/12/05(Thu) 01:56:39 ID:Jhh0ALwr0.net
連投はかんぜんに間違いでした、ずっと書き込めなかったので本文つくる前に
軽率に確認しちゃいました申し訳ない

質問なのですが

最終的に座標の色をみてなんやかんやしようというための途中段階なんですが、

ある座標(今回は100,200として)の場所の色を判定するのに第一段階として
以下のx→yで確認して確認動作としてzに組み込むという方法を以前からやっていて何の問題もなくできたのですが
今回 zで上手く hensuu :=1 と出てくれません。
別のコードも今まで同じやり方で作って正常動作できているので、動作を理解していないということはないと思うのですが
何かポカしていることありますでしょうか?

x::MouseMove, 100,200

y::
MouseGetPos,x,y,
PixelGetColor, color, %x%, %y%
return
で調べた colorの値を下に代入して(FFFFFFという値が出たとして)

z::
PixelSearch,,,100,200,102,202,0xFFFFFF,2,Fast
If ErrorLevel=0
Msgbox,hensuu :=1
else Msgbox,hensuu :=0



605 :名無しさん@お腹いっぱい。 (ワッチョイ 1d52-MVf8):2019/12/05(Thu) 02:00:32 ID:Jhh0ALwr0.net
連投すみません 修正します
大分テンパって申し訳ないです

x::MouseMove, 100,200

y::
MouseGetPos,x,y,
PixelGetColor, color, %x%, %y%
Clipboard=%x%, %y%, %color% 
return
で調べた colorの値を下に代入して(FFFFFFという値が出たとして)

z::
PixelSearch,,,100,200,102,202,0xFFFFFF,2,Fast
If ErrorLevel=0
Msgbox,hensuu =1
else Msgbox,hensuu =0
return

606 :名無しさん@お腹いっぱい。 (ワッチョイ cb4e-V35x):2019/12/05(Thu) 02:11:20 ID:8EiK3bS00.net
>>601
普通にWinGetで判定出来るぞ
Edgeでも他のソフトでも

607 :名無しさん@お腹いっぱい。 (ワッチョイ cb4e-V35x):2019/12/05(Thu) 02:18:26 ID:8EiK3bS00.net
>>601
あ、スマン
EdgeのフルスクってF11押した状態のことか
最大化と勘違いしてた
606はウソなので忘れて

608 :名無しさん@お腹いっぱい。 :2019/12/05(木) 02:47:51.06 ID:8EiK3bS00.net
>>601
お詫びに代案だけど
WinGetActiveStats でEdgeのウィンドウサイズを取得してスクリーンサイズと比較するのはどうだろう
最大化の場合はボーダーラインの分だけスクリーンサイズよりウィンドウサイズが一回り大きくなるけど
フルスクならスクリーンサイズとウィンドウサイズがピッタリ同じで位置も0,0になるので判定できるかと

609 :601 (アウアウオーT Sa93-yZWx):2019/12/05(Thu) 11:44:12 ID:JQ7WcuOOa.net
>>608
その方法でできるようになりました、ありがとうございます!

610 :名無しさん@お腹いっぱい。 :2019/12/07(土) 17:24:42.64 ID:yB203HjY0.net
AutoHotkeyで他プロセスのイベントを監視したい。

例えばNotepad.exeにSendMessageを送ってプログラムを終了させたり、拡大縮小化などをさせることはできますが
逆に終了や拡大縮小化などがNotepad.exeで行われた場合に、AutoHotkey側でそれを検知して、Notepadで〇〇したタイミングにAutoHotkeyでなにかの処理をさせたいのですが、その方法がわかりません。
AHKのOnMessage関数でできないかと思ったのですが、AutoHotkeyから送信されたメッセージしか取得できないみたいなのでこの方法ではうまくいきませんでした。
WIN32 APIのSetWindowsHookExを使えばできなくもなさそうなのですが、イベントを検知させるためのDLLを自作しないのいけないみたいなので、AutoHotkeyしか使えない自分には難しいです。

いろいろ調べたのですが、結局どうしたらできるのかわかりません。
AutoHotkeyで似たようなことをしている資料やコードを知っている、もしくはなにかヒントとなるアイデアを持っていたら教えて下さい。

611 :名無しさん@お腹いっぱい。 :2019/12/07(土) 17:45:57.42 ID:8NwilouV0.net
普通にタイマーで見張るのではダメなの?

612 :名無しさん@お腹いっぱい。 :2019/12/07(土) 19:17:18.34 ID:rAIwLfTa0.net
オプションでいいから2DIN出せよ。CDが聞けないとかありえない。
DINは車の基本だぞ。

613 :名無しさん@お腹いっぱい。 :2019/12/07(土) 23:47:22.02 ID:/zi3V67z0.net
>>610
Windowsのイベントを拾う
https://sites.google.com/site/agkh6mze/howto/winevent

614 :名無しさん@お腹いっぱい。 (ワッチョイ cb73-MVf8):2019/12/09(月) 02:28:27 ID:Yrg6ObJm0.net
>>612
>>613
回答ありがとう。

本当にやりたかったことは、とあるアプリが終了したときにAutoHotkeyでホットキーを送信するようにしたかったんです。
タイマーを使えばできることは知っていたのだけど、Windows APIで終了時の判定ができる方法があればそっちを使いたかったからです。
SetWinEventHookだと拡大縮小時にはイベントが取れるけど、終了時を判別するイベントはたぶんないみたい。
EVENT_OBJECT_DESTROYを使えばいけそうだと思ったけど、オブジェクトを破壊したときのタイミングを取得するみたいで、アプリそのものが終了したタイミングだけを取得する方法は自分にはわからなかった。
もう少し頑張ってみて、それでもだめなら素直にタイマーを使おうと思います。

615 :名無しさん@お腹いっぱい。 :2019/12/09(月) 02:55:28.85 ID:qhn+RYVz0.net
質問者の真意は回答者には計り知れないのに回答者がかわいそう…
今時のPCならahkのタイマー監視なんてどうってことないと思うんだがな
おれ、結構timer使ってるけど0.5%前後だぜ(i5 3470)

616 :名無しさん@お腹いっぱい。 :2019/12/09(月) 09:38:36.59 ID:RhLy9rR30.net
まあ 〇〇したタイミング とか とあるアプリ とか条件ボカされて ドンピシャな回答期待されても困るんで…

そもそも終了しか見ないんなら フック使う意味薄いような
SetWindowsHookExでグローバルフック使ったところで結局は得られるのは
ウィンドウの破棄情報であってプロセスの終了情報じゃないと思うけど

どうしても Timer使いたくないなら専用スプリクト化してProcess, WaitCloseで永遠に待てば

617 :名無しさん@お腹いっぱい。 (ワッチョイWW 2b73-Q4Cx):2019/12/09(月) 11:31:17 ID:/I2TboW60.net
プロセス終了のタイミング=メインウィンドウ破棄のタイミングで代用して何が問題になるのかわからん

618 :名無しさん@お腹いっぱい。 (ワッチョイ e5e5-f6tG):2019/12/09(月) 12:52:16 ID:RhLy9rR30.net
1プロセスで複数ウィンドウこさえるSDIのアプリなんかだと どの窓も同列でメインウィンドウってのが無かったり
タスクトレイに常駐するタイプのアプリはメインウィンドウが破棄されてもアプリそのものは終了してなかったり

まあ厳密にいうと複数プロセスで動いてるアプリもあるし
トップレベルのプロセス監視でも終了確認できないウィルス的な挙動のアプリもあるし
とあるアプリが特定不可な以上具体的な挙動はわからんですが

619 :名無しさん@お腹いっぱい。 (ワッチョイWW 2b73-Q4Cx):2019/12/09(月) 14:23:35 ID:/I2TboW60.net
>>618
そりゃその理屈は分かってるよ
その上でやりたい事を実現出来ないケースは殆ど無いだろという疑問なわけ

620 :名無しさん@お腹いっぱい。 :2019/12/09(月) 18:05:58.70 ID:RhLy9rR30.net

何が問題になるのかわからんと言われたから問題になるケースを上げたんだが…?

>やりたい事を実現出来ないケースは殆ど無いだろ
ごめん殆ど無いの根拠がよく分からないわ
一般的な範疇のアプリという条件の元だとして
同列のメインウィンドウを複数作るアプリもタスクトレイに常駐するアプリも
ほとんどないから考えなくていいというほど特殊な存在でもないと思うけど

もちろん前提条件として「とあるアプリ」がそういう挙動をしないとあらかじめわかってるなら話は別だが
どっちにしたところでウィンドウ破棄をahkだけでイベントとして拾うのが難しい以上は
WinExistかProcess, Existかみたいな話になるだろうから確実な線で見るほうがよくない?

621 :名無しさん@お腹いっぱい。 (バットンキン MMc9-eulR):2019/12/10(火) 12:44:46 ID:0PQtofevM.net
FormatTimeで質問したものだけど、最初は令和○年○月○日って表示されてたのに、最近になったら文字化けするようになってしまった、、、なぜでしょうか。。。

FormatTime,today,D4,y年M月d日

622 :名無しさん@お腹いっぱい。 :2019/12/11(水) 21:06:09.86 ID:QVDjHUOL0.net
とおもったら自己解決したわ
SciTEでコンパイルするとだめだったわ。
どうにかなんねーのかコレ

623 :名無しさん@お腹いっぱい。 :2019/12/13(金) 08:51:21.82 ID:khQtJgZC0.net
キーの取得ってどうやったらできますか?

624 :名無しさん@お腹いっぱい。 :2019/12/13(金) 12:17:12.80 ID:7dZUILEn0.net
>>623
・GetKeyStateをまわす
・ホットキーラベルを列挙してA_This_Hotkeyを見る
・スクリプト外で良ければ、AHKのメインウィンドウを開いて View->Key history〜


625 :名無しさん@お腹いっぱい。 :2019/12/13(金) 17:09:10.07 ID:4NH6Uzpf0.net
chromeを使っていますが複数ウインドウ複数タブの中で
今アクティブでないウインドウでもタイトルが一致したら
Alt + F4でそのウインドウだけ閉じる方法をご存じないですか。

SetTitleMatchMode, 2 ; 中間一致
IfWinExist, xxxxxxxx
{
WinActivate , xxxxxxxx
send !{F4}
}

目的のタブがアクティブならできますが、そうでないときはこれではできません。

626 :名無しさん@お腹いっぱい。 :2019/12/13(金) 23:48:30.36 ID:bL4R67m1H.net
>>625
タブ関係なしにウィンドウタイトルのみで判断?
それならWinGetでListのちLoop

627 :名無しさん@お腹いっぱい。 :2019/12/13(金) 23:52:33.99 ID:uMIfKS0h0.net
裏になってるタブは無理じゃね

628 :名無しさん@お腹いっぱい。 :2019/12/13(金) 23:53:08.80 ID:bL4R67m1H.net
ListだけじゃなくてCountでウィンドウの数も取得しないとダメか

629 :名無しさん@お腹いっぱい。 :2019/12/13(金) 23:56:26.83 ID:uMIfKS0h0.net
いやそういう問題じゃなくて
ウィンドウじゃなくて非アクティブタブの話だからウィンドウタイトルじゃどうやっても取得できないでしょ

630 :名無しさん@お腹いっぱい。 :2019/12/14(土) 00:12:36.58 ID:xIeQ+l0kH.net
>>627のレス見てなかったわ

タブも見るならウィンドウごとにacc.ahk使えばいい
UI AutomationのFindAllでタブタイトル取得して確認するのもいいかもしれんけど

631 :名無しさん@お腹いっぱい。 :2019/12/14(土) 06:06:50.14 ID:TFN+dvhQ0.net
当該ウィンドウの全ての非アクティブタブのタブタイトルを合成した文字列を、アクティブタブのオリジナルタイトルの最後に合成する拡張機能を作ればイケそう
(アクティブタブ切り替えやタブの追加/削除/ページ遷移の各タイミングで適切にタイトルを更新する)

ある程度特徴的な区切り文字列(例えば「/////」など)を決めておけば、普段使いでの混乱を抑制できるかなかも
例) アクティブタブオリジナルタイトル ///// 全非アクティブタブのタブタイトル合成文字列

632 :名無しさん@お腹いっぱい。 :2019/12/14(土) 08:52:43.42 ID:hjikztn/0.net
非アクティブタブのタイトルだけ分かっても
そのオブジェクトが特定できないとタブ閉じに再利用できなくね?
ああでも特定のタブを閉じるのではなく窓ごとバッサリやっちゃっていい前提なんだっけ?

633 :名無しさん@お腹いっぱい。 :2019/12/14(土) 09:03:52.95 ID:hjikztn/0.net
というかそういう所作が必要なのってポップアップウィンドウ広告位しか思い付かんのだけど
場合によってはahkでやるよりuBlockとかの拡張使う方が楽なのでは

634 :名無しさん@お腹いっぱい。 :2019/12/14(土) 10:50:21.11 ID:u1T33DCP0.net
625です
実験でAlt + F4にしましたが、できれば>>632さんのようにそのタブ以外を閉じる
ほうがいいですね。
実際のところ別ウインドウでアドインのTab Posision Optionsを使っているので
目的のタブが裏に隠れることはあまりないですけど。
ただ、将来的にそのような機能が必要かと思い質問してみました。
というわけで、すべてのウインドウのタイトルを取得したとしてもそのタブを特定して
残すのはどうすればいいか分からないです。
今のところはもう一つアドイン・Keyboard shortcuts to close Chrome tabsを使って
Alt + SHITF + wで他のウインドウを閉じるようにしています。
SetTitleMatchMode, 2 ; 中間一致
IfWinExist, xxxxxxxx
{
WinActivate , xxxxxxxx
send !+w
}

635 :名無しさん@お腹いっぱい。 :2019/12/14(土) 11:40:31.86 ID:TFN+dvhQ0.net
>>634
それこそ直接chromeの拡張機能を作った方が楽だと思うけど...
(なぜそれをAutoHotkeyで実現させようと考えたのか)

636 :名無しさん@お腹いっぱい。 :2019/12/14(土) 12:05:31.76 ID:u1T33DCP0.net
>>635
Javascriptからローカルサーバー → PHP → AutoHotkeyの順番で
やっていて、できればJavascriptから直接やりたいのですが、危ないし
やろうとしても、おそらくできないと思うのでこの形にしています。

chromeの拡張機能で例えばどのようなものがあるか、おすすめを教えてもらえると
ありがたいです。

637 :名無しさん@お腹いっぱい。 :2019/12/14(土) 12:09:05.96 ID:TFN+dvhQ0.net
>>636
jsできるなら拡張機能も作れるよ

638 :名無しさん@お腹いっぱい。 :2019/12/14(土) 17:06:56.19 ID:wk8eolGG0.net
>>624
取得する関数があるわけではないんですね。
遅くなりました。ありがとうございました。

639 :名無しさん@お腹いっぱい。 :2019/12/14(土) 22:33:32.80 ID:u1T33DCP0.net
>>637
今のところTampermonkeyを使ってJavascriptを書いてるだけなのでそこまでは研究していません。
作ったのことないのでわかりませんが拡張機能だと、別々のURLで別の作業をしたいときはその都度
新しい拡張機能を作るのでしょうか。

640 :名無しさん@お腹いっぱい。 :2019/12/16(月) 04:35:35.72 ID:xPE2f/1b0.net
test1.ahk というのが起動しているときに
それを検出して、test1.ahkを除去してtest2.ahkを起動させたり
その逆にtest2.ahkを除去してtest1.ahkを起動させたり
さらにその際にtest1.ahkが誤って2重起動しないようにしたいのですが
test3.ahkというのを作って、それら二つのahkファイルを外部から制御するって可能でしょうか?

641 :名無しさん@お腹いっぱい。 :2019/12/16(月) 06:21:56.70 ID:uCZJTbCy0.net
>>640
起動はtest3,ahkから呼び出すでも何でもいいけど
終了はtest1.ahkとtest2.ahkにそれぞれExitApp書いておいた方がラクなんじゃね
二重起動防止は冒頭に #SingleInstance force 書いとけば

642 :名無しさん@お腹いっぱい。 :2019/12/16(月) 08:44:37.13 ID:l/hrNkH30.net
wmic process list
でプロセス+コマンドライン引数一覧が取れるのでどのスクリプトが常駐しているかがわかる

643 :名無しさん@お腹いっぱい。 :2019/12/16(月) 10:18:56.97 ID:+CU86MBV0.net
OnMessageでお互いにメッセージ飛ばし合えば
起動検知も終了命令もできるんじゃない

644 :名無しさん@お腹いっぱい。 :2019/12/16(月) 15:02:09.19 ID:Jeggue7g0.net
2ストロークのキー割り当て
2ストロークキーとは、一回のキー操作ではなく、二回のキー操作の組み合わせによって行う操作のことです。
例えば、Ctrl-Q Ctrl-R という感じで Ctrl-Q を押した後すぐに Ctrl-R を押すと「ファイルの先頭に移動」を実行します。
(古きWordStarにあったキー操作)

このワードスターを再現する.ahk探してるけど、やはりないね

645 :名無しさん@お腹いっぱい。 :2019/12/17(火) 07:12:38.75 ID:8BHuFCoH0.net
>>644
英語版のグーグルで「wordstar ahk」で検索
https://www.google.com/search?q=wordstar+ahk
したら↓こんなのがあったよ
https://autohotkey.com/board/topic/30628-wordstar-like-two-key-combinations/

646 :名無しさん@お腹いっぱい。 :2019/12/17(火) 23:11:02.53 ID:qsbQwbCU0.net
>>641
ありがとうございます
相手を起動したのち自分が停止するっていう考えですよね
一時的にでも両者が共存するのはできれば避けたいんですよね
そういう意味で外部で検出して、停止したのち起動という手法を選んだんですよ

ahk単体では無理な感じですかね

647 :名無しさん@お腹いっぱい。 :2019/12/17(火) 23:14:19.06 ID:S2uNMpCy0.net
>>646
順番なんて好きにすりゃいいだろ
test1をexitappで終了させてからtest3でtest2を起動しったって良いんだし
そもそも質問内容が要点少なすぎなんだよ
後だしで条件追加うぜえ

648 :名無しさん@お腹いっぱい。 :2019/12/17(火) 23:37:30.80 ID:E8AX9lFu0.net
>>646
ハッキリ言って具体的に何やりたいのかよく分からない
アクティブなアプリまたは決まった条件によってキーリマップ(ホットキー)のスクリプトを変更するとか?
↑だとしたら、スクリプト一つで出来るから小難しいこと考える必要はない

とりあえずそれは置いといて…
1.test3.ahkでtest1.ahk及びtest2.ahkが起動中か監視する
2.例えばtest1.ahkが起動中なら「test1.ahk起動中サブルーチン」を実行
 そのサブルーチン内で、test1.ahkを終了→test2.ahkを起動させるための条件が揃ったかを監視する
 条件が揃ったらtest1.ahkを終了→test2.ahkを起動しサブルーチンを抜け 1. に戻る

※スクリプトの終了方法はwinclose使う

的外れなこと言ってたら無視で

649 :名無しさん@お腹いっぱい。 (ワッチョイWW 77e5-oCUh):2019/12/18(水) 00:55:13 ID:jgaai62z0.net
>>646
そうじゃのうて外から強制終了するのはなるべく避けた方がいいので
test3から終了命令受けたらtest12がそれぞれ自力で終了するようにしたらって意味では

例えば
-- test1.ahk
F13:: ExitApp
-- test2.ahk
F14:: ExitApp
-- test3.ahk
Send,{F13}
run,test2.ahk
みたいな それかOnMessage

起動検出はDetectHiddenWindows,ONにしてWinExistするか>642

650 :名無しさん@お腹いっぱい。 (ワッチョイ 8edf-GBjH):2019/12/18(水) 01:21:22 ID:sON/QP2u0.net
>>649
test3.ahkでSend,{F13}してもそれをtest1.ahkで受けるのは無理じゃね

そもそも質問者はどういう操作でtest1.ahkを終了させたりtest2.ahkを起動させたりしたいのかも不明だから
何かのキーを押したときなのかそれともtest3を非常駐で実行したときなのかなど、とにかく説明不足なんだよ
test1とtest2が一時的でも被ってはいけないという理由も謎だしな

651 :名無しさん@お腹いっぱい。 :2019/12/18(水) 08:16:31.84 ID:DWSmgN8M0.net
とりあえず質問者にセンスがないことは分かった

652 :名無しさん@お腹いっぱい。 :2019/12/18(水) 23:03:07.23 ID:BUoxab4D0.net
636ですがとりあえず、おすすめの通りChromeの拡張を試してみたいと思います。
スレ違いになるのでとりあえずこれで失礼します。
レスをくださった方、ありがとうございました。

653 :名無しさん@お腹いっぱい。 :2019/12/19(木) 00:23:12.81 ID:rueYUr0o0.net
>>650
>test3.ahkでSend,{F13}してもそれをtest1.ahkで受けるのは無理じゃね
やってみたがうちではできてるよ
できない人はメーカー製マウスユーティリティでF13キー以降の割り当てしてない?
ただ再三いうがAHK間でやり取りするならOnMessage()使ったほうが自由度は上がると思う

654 :名無しさん@お腹いっぱい。 :2019/12/24(火) 21:56:40.15 ID:4O80sp520EVE.net
AutoHotkeyU64 で PHPのexecから引数をつけて文字列を渡そうと
思っていますが、変数で中身がUTF-8だとSJISに変換しないと
正しく機能しません。
$TITLE = $_POST['title'];
$SJIS_TITLE = mb_convert_encoding($TITLE, "SJIS");
exec("\"D:\\Program Files\\AutoHotkey\\AutoHotkeyU64.exe\" \"D:\\MyProgramFiles\\apache\\httpd-2.4.20-win64-VC14\\Apache24\\htdocs\\close_other_tabs.ahk\" \"$SJIS_TITLE\"");
echo json_encode($TITLE);

655 :名無しさん@お腹いっぱい。 :2019/12/24(火) 22:04:58.00 ID:hEXiCpxI0EVE.net
>>654
なら変換すればいいのでは?

656 :名無しさん@お腹いっぱい。 :2019/12/24(火) 22:11:06.79 ID:4O80sp520EVE.net
PHPも
header('Content-Type: application/javascript; charset=utf-8');
を入れて保存。 ファイルもUTF-8で保存。
ahkもBOM付きで保存しています。
とりあえず今のところSJIS変換で使えるのですがUTF-8のまま使えない理由が
分かりません。

657 :名無しさん@お腹いっぱい。 :2019/12/24(火) 22:13:55.20 ID:4O80sp520EVE.net
>>655
あまり、ウインドウのタイトルについて詳しくわからないのですが
中国語のタイトルとかでUTF-8が使われたりしていたら
その時はどうするのですか。

658 :名無しさん@お腹いっぱい。 :2019/12/24(火) 22:19:32.39 ID:jnSVlV9m0EVE.net
execでahk起動してるコマンドライン(コマンドプロンプト?)がSJISだからじゃないの?

プロンプトならchcp 65001すりゃいいけど
コマンドラインの場合はどうすんのかね

659 :名無しさん@お腹いっぱい。 :2019/12/24(火) 23:09:07.09 ID:4O80sp520EVE.net
exec("chcp 65001 & \"D:\\Program Files・・・・
でもだめでしたね。
もちろん
export LANG=ja_JP.UTF-8;
も使ってみましたがおそらくLinuxですよね。

660 :名無しさん@お腹いっぱい。 :2019/12/24(火) 23:31:32.09 ID:IkwDoBvt0EVE.net
引数のcharsetがうまく指定できないんなら
引数をbase64でエンコードして渡すとかでいいんじゃ
というかAutoHotkeyあんま関係ないよね
この話

661 :名無しさん@お腹いっぱい。 :2019/12/24(火) 23:44:51.98 ID:4O80sp520EVE.net
バッチファイルを使って間接的にやってみましたがexec内部でバッチファイルのパラメータを渡している限り
文字化けしますね。

662 :名無しさん@お腹いっぱい。 :2019/12/24(火) 23:46:43.19 ID:4O80sp520EVE.net
そうですね。すれ違いでした。
答えてくださった方ありがとうございました。

663 :名無しさん@お腹いっぱい。 :2019/12/25(水) 11:49:16.51 ID:OZpGJAwt0XMAS.net
やっつけでcronモドキ作ったが結構便利かもしれない
分単位で厳密にやるには常駐させたほうがいいだろうけど
https://textuploader.com/1owzm

664 :名無しさん@お腹いっぱい。 :2019/12/25(水) 16:40:32.69 ID:eAAE7EkP0XMAS.net
ControlClick, X690 Y415, ahk_exe apli.exe, , L, , Pos

このようにしても指定した座標の場所がクリックされないのですが何が原因でしょうか?
クリックそのものは発生していのですが現在カーソルがある位置をクリックしてしまうのです

665 :名無しさん@お腹いっぱい。 :2019/12/25(水) 19:00:11.99 ID:CgUlNSdiMXMAS.net
>>664
記述は問題ない

考えられる問題は
実行中にマウスを動かしている
対象がマウス座標を拾っている

---------------------------------
Run, mspaint,, Max ; ペイント起動

F1::
Random, X, 100, 200
Random, Y, 300, 400
ControlClick, x%X% y%Y%, ahk_exe mspaint.exe,, L,, Pos
return

F2::
Random, X, 300, 400
Random, Y, 300, 400
MouseClick, L, %X%, %Y%
return

666 :名無しさん@お腹いっぱい。 :2019/12/25(水) 19:14:26.91 ID:eAAE7EkP0XMAS.net
>>665
ご回答ありがとうございす。
試しにペイントでその2つを試した所、座標どおりにクリックされました。
しかし自分がUnity製のゲームではControlClickだとマウスの位置しかクリックされませんでした。
アプリケーションによってはダメみたいですね…。

667 :名無しさん@お腹いっぱい。 :2019/12/28(土) 05:51:22.70 ID:uzpbn+ZX0.net
{Blind}の効果がいまいちよくわからないんだけど
つけるべきときにつけないことで誤動作してしまう例ってどんな物ですか?

よくあるのはこれですが
sc07B & i::Send,{Blind}{Up}

sc07B & i::Send,{Up}
と挙動が異なるときってどんな時ですか?

668 :名無しさん@お腹いっぱい。 :2019/12/28(土) 08:21:29.89 ID:cA7QC5oQ0.net
>>667
上方向に選択しながらカーソル移動できるかどうか
かな

669 :名無しさん@お腹いっぱい。 :2019/12/28(土) 20:19:29.58 ID:dK7lFuaz0.net
>>667
その例はわかりにくいから一旦忘れよう
{Blind}はSendで修飾キーの状態をAHKから隠したいときに使う


; Sendに修飾キーの状態を反映させたい
+s::Send abc ; abc
+s::Send {Blind}abc ; ABC

; 修飾キーの自動復元を無視したい
^space::Send {Ctrl up} ; Ctrlが押された状態に戻る
^space::Send {Blind}{Ctrl up} ; Ctrlが上がったままになる

670 :名無しさん@お腹いっぱい。 :2019/12/28(土) 20:26:06.81 ID:dK7lFuaz0.net
つまり↓の違いは、修飾キーの状態を考慮するかどうか
ただの{Up}しか送らないなら{Blind}は無いほうが誤動作しない

sc07B & i::Send,{Blind}{Up}
sc07B & i::Send,{Up}

671 :667 :2019/12/29(日) 23:53:27.36 ID:0ftJxOi20NIKU.net
ありがとうございます
今まではコピペコードくらいでしか使っていませんでしたが
これからは新規のコードを書く際にしっかり意識しながらやっていこうと思います

672 :名無しさん@お腹いっぱい。 :2019/12/30(月) 00:01:36.22 ID:8fU+/4w50.net
意識する必要あるか?
特に{Blind}を入れなきゃいけないケースが思い浮かばない

673 :名無しさん@お腹いっぱい。 :2019/12/30(月) 00:53:01.61 ID:++vtXWHX0.net
俺は8割くらいは{Blind}入れてるなぁ
vk1D & i::Send, {Blind}{Up}

Sendしたキーを、Shift・Ctrl・Altで修飾したいじゃん

674 :名無しさん@お腹いっぱい。 :2019/12/30(月) 01:41:06.31 ID:NbxbuvnT0.net
そういう使い方はしてないな
フルキーボードに慣れてるし普通にカーソルキー使うし
むしろ3つ以上の複数キー押しが煩わしいものを1キーや2キー押しで出来るようにしてる

675 :名無しさん@お腹いっぱい。 :2019/12/30(月) 08:14:11.15 ID:++vtXWHX0.net
>>674
3キー以上の複数押しって
Shift + Ctrl + N とか、
Windows + Ctrl + D とかってことだろうか

例えばどんなふうに押し換えてるのか教えてくれない?

676 :名無しさん@お腹いっぱい。 :2019/12/30(月) 12:27:27.22 ID:aG+FjrRT0.net
>>675
例えば
F13::Send, +^n

677 :名無しさん@お腹いっぱい。 :2019/12/30(月) 16:41:24.85 ID:++vtXWHX0.net
すまん、質問の仕方が悪かった
「F13」の部分が、実際は何にしているのかを知りたかったんだ

例えば「Ctrl + Shift + N」を、仮に「Win + N」で置き換えてるとしたら、
「OneNoteに送る」とバッティングするなぁ、とかそういうの
(OneNote使ってない人は全然気にしないだろうけど)

 ※普通のキーボードにはF12までしかないから、実際は別の何かなんだろうと思ってる
 ※多ボタンマウスとかの割り当てで、F13にしてるのかなぁ
 ※1キー押しだとすると、結局普段使われないキーなのだから、実際にもF13なのか?

678 :名無しさん@お腹いっぱい。 :2019/12/30(月) 17:08:54.37 ID:ADTlewR00.net
>>677
>※多ボタンマウスとかの割り当てで、F13にしてるのかなぁ

そうだよ

679 :名無しさん@お腹いっぱい。 :2019/12/30(月) 19:03:30.76 ID:++vtXWHX0.net
>>678
それなら納得だよ
ありがとう

680 :sage :2020/01/02(木) 19:38:23.07 ID:tVOKYODP0.net
https://www.autohotkey.com/docs/scripts/KeyboardOnScreen.htm
上のサンプルスクリプトのについて質問があります。
キーボードの各キーにあたるボタンの設定変更についてです。

ボタンはgui, add で追加されたButtonです。ボタンの色またはボタン上の
テキスト(A,B,Cなどの1文字)の色を動的に変えたいんですが初期状態で
変えることすら出来ません。そういうことはできないんでしょうか?

掲載コードでは透明になっているキーボード全体の背景色を変えることは出来ました

681 :名無しさん@お腹いっぱい。 :2020/01/02(木) 19:39:30.75 ID:tVOKYODP0.net
>>680 追記
私の方ではguicontrol で色々やって見ましたが出来ませんでした

682 :名無しさん@お腹いっぱい。 :2020/01/02(木) 22:26:21.81 ID:VH5UvwWQ0.net
>>680
[CLASS] CCButton
https://autohotkey.com/board/topic/79315-class-ccbutton-colored-caption-on-themed-button-l/

[Class] ImageButton
https://www.autohotkey.com/boards/viewtopic.php?f=6&t=1103

683 :名無しさん@お腹いっぱい。 :2020/01/03(金) 15:57:48.70 ID:Og8N9g0/0.net
>>682
ありがとうございます。
結局それは使わずに

同サイズのProgressバー、Button、Textを同じ位置に重ねて
表示、非表示を切り替える感じで実現できました。
(Progressバーはボタンの四角形を表示するために一挙に100%まで行きます。)

参照:
https://autohotkey.com/board/topic/94703-another-approach-to-a-virtual-keyboard/
https://autohotkey.com/board/topic/89959-centering-text-in-a-progress/

684 :名無しさん@お腹いっぱい。 (ワッチョイ 4273-UAPS):2020/01/05(日) 02:58:05 ID:z6nCiPO+0.net
最近AHKのバージョンを1.1.30.03から1.1.32.00にしたんですけど
GetkeystateとKeywaitの反応がおかしくなったアプリがあります
具体的にはこんなスクリプトなんですが

vk1D::
Send,{Space down}{Ctrl down}
Keywait,vk1D
Send, {Space up}{Ctrl up}
return

無変換キーを離しているのに1秒くらいしてから Send, {Space up}{Ctrl up} が実行される状態です
下記のGetkeystateでも同じ状態です

vk1D::
Send,{Space down}{Ctrl down}
loop
{
sleep,10
GetKeyState, state, vk1D , p
if state = u
{
Send, {Space up}{Ctrl up}
return
}
}


こういう不具合が報告されてたりしますかね?バージョン1.1.30.03なら問題なく動くんですが

685 :名無しさん@お腹いっぱい。 :2020/01/05(日) 12:32:16.16 ID:2kqGD1ED0.net
特定アプリ上の出来事ならそれを書かなきゃ話にならん

686 :名無しさん@お腹いっぱい。 :2020/01/05(日) 19:52:26.97 ID:cN3eyu1Z0.net
>>684
バージョン関係なく、修飾キー上げ下げのタイミングで
ショートカットの挙動が変になっているのでは?

× Send {Space down}{Ctrl down}
○ Send {Ctrl down}{Space down} ; 修飾キーは先に押して最後に離す

687 :名無しさん@お腹いっぱい。 :2020/01/06(月) 16:20:17.37 ID:oLM8GZzz0.net
>>685
ClipStudioPaintで修飾キーを使った一時ツール切り替えのためのスクリプトです
CtrlとSpaceキーを押すと虫眼鏡ツールに切り替わります

>>686
それを試してもだめでした

688 :名無しさん@お腹いっぱい。 :2020/01/06(月) 19:34:24.26 ID:7mFD3sLb0.net
>>687
後試すことは
修飾キーの順序直す、ホットキーにAHKフック、送信方式変更、ディレイを入れる

以下必要最低限の記述でテストすること
わかりやすいように音を鳴らしてキーを離してからAHKが遅延するのかアプリ側が遅延しているのか判断

; 自分で調整↓
; SendMode, Mode
; SetKeyDelay[, Delay, PressDuration, Play]

$vk1D::
Send {Ctrl down}{Space down}
Keywait vk1D
Send {Space up}{Ctrl up}
SoundPlay *64
return

689 :名無しさん@お腹いっぱい。 :2020/01/09(木) 13:42:44.87 ID:SLR+jgO50.net
Firefoxでクリップボードにあるurlを新規タブにてバックグラウンド(フォーカスせずに)で
開きたいのですが出来るでしょうか?

690 :名無しさん@お腹いっぱい。 :2020/01/10(金) 01:16:45.87 ID:Be24/aXa0.net
返事がない
それが答えのようだ

691 :名無しさん@お腹いっぱい。 :2020/01/14(火) 12:19:10.98 ID:GNH0LeBL6.net
ゲームをやる時にある特定のキーを一回押すだけで次にもう一回押すまで長押しの状態にしたいのですがどうすればいいですか?

692 :名無しさん@お腹いっぱい。 :2020/01/14(火) 13:26:20.95 ID:pvwqaT4h0.net
>>691
Send, {キー名 down}
Send, {キー名 up}

フラグ付けて判定

693 :名無しさん@お腹いっぱい。 :2020/01/14(火) 14:50:34.59 ID:GNH0LeBL6.net
$1::
Send, {a down}

試しにこれで長押しするか試したけどメモ帳には1文字しか入力されない

694 :名無しさん@お腹いっぱい。 :2020/01/14(火) 14:53:54.61 ID:GNH0LeBL6.net
>>693
>$1::
> Send, {a down}
>
試しにこれで1を一回押したらaが自動で長押しされるか試したけどメモ帳にはaが1文字しか入力されない

695 :名無しさん@お腹いっぱい。 :2020/01/14(火) 14:57:40.10 ID:wU9b9Ut70.net
>>693
テキスト入力でのキーリピートは {a down temp}
ゲームとかなら関係ないからどっちでもいい

696 :名無しさん@お腹いっぱい。 :2020/01/14(火) 15:03:54.07 ID:GNH0LeBL6.net
できませんorz

697 :名無しさん@お腹いっぱい。 :2020/01/14(火) 15:06:05.27 ID:GNH0LeBL6.net
回数指定はいけます

698 :名無しさん@お腹いっぱい。 :2020/01/14(火) 15:07:10.32 ID:daEHimlkM.net
なら諦めろ
そもそもここはコーディング依頼スレじゃない

699 :名無しさん@お腹いっぱい。 :2020/01/14(火) 15:11:49.13 ID:GNH0LeBL6.net
Loop使ったらいけました。ありがとうございます。
ちなみに今のような質問をする時は次からどこで聞けばいいですか?

700 :名無しさん@お腹いっぱい。 :2020/01/14(火) 15:24:14.71 ID:wU9b9Ut70.net
>>699
Loopと押しっぱなしは全然意味が違うぞ
お前がやりたいのは押しっぱなしじゃなかったのか?
押しっぱなしなら{キー名 down} でいい(キーリピートはしない)

あと初心者スレみたいなもんは無いしwikiのサンプルコード熟読するとか
最低限の知識は自力で付けられないならahk使うの諦めたほうがイイ

701 :名無しさん@お腹いっぱい。 :2020/01/14(火) 15:38:47.56 ID:GNH0LeBL6.net
ゲームだとLoopなしでもいけたけど押しっぱなしになったままで解除する方法が分からない。

分かりました。wikiもう少し読んで出直します...orz

702 :名無しさん@お腹いっぱい。 :2020/01/14(火) 15:45:17.27 ID:wU9b9Ut70.net
>>701
解除する方法も692に書いてあるだろ
ま、そういうのも含めて基礎知識不足

703 :名無しさん@お腹いっぱい。 :2020/01/14(火) 19:04:45.74 ID:roP/RC34M.net
GuiのEditのGラベルでサブルーチンを実行するとき
そのサブルーチンの実行中の
Edit値の変化は無視されてしまうのでしょうか

例えば下記のスクリプトで
"a"と"b"を続けて素早く入力した場合
"a"のみが表示されるのですが
"ab"も(又は"ab"だけ)表示するには
どうしたらよいでしょうか

Gui,Add,Edit,Gsub
Gui,Show
Return

sub:
ControlGetText, newtext , edit1
Sleep, 1000
MsgBox, %newtext%
Return

704 :名無しさん@お腹いっぱい。 (ワッチョイ dfb1-padJ):2020/01/14(火) 20:08:16 ID:/njvsrvp0.net
>>703
余り自信ないけど

sub:の
ControlGetText は GuiControlGet, newtext, , edit1 にして
Sleep, 1000 を削除

で、MsgBox はウザいから ToolTip で確認

間違ってたら他の人よろしく

705 :名無しさん@お腹いっぱい。 (ワッチョイ df11-mpnK):2020/01/14(火) 20:17:43 ID:sw1ywxul0.net
Sleep, 1000
ControlGetText, newtext , edit1

706 :名無しさん@お腹いっぱい。 (オイコラミネオ MMd3-Uq5u):2020/01/14(火) 20:28:56 ID:roP/RC34M.net
すみません例が悪かったです
sleepの所は実際には
newtextの値に基づく処理が入り、
この処理に1秒ほどかかる
というサンプルのつもりでした

707 :名無しさん@お腹いっぱい。 (オイコラミネオ MMd3-Uq5u):2020/01/14(火) 20:34:09 ID:roP/RC34M.net
サンプルを書き直してみました
Gui,Add,Edit,Gsub
Gui,Show
Return

sub:
GuiControlGet, newtext , , edit1
<newtextの値に基づく長めの処理>
Tooltip, <上の処理の結果>
Return

708 :名無しさん@お腹いっぱい。 (ワッチョイ df0d-lZna):2020/01/14(火) 20:38:30 ID:YCyA6bsk0.net
>>704-705
Sleepは重い処理って意味かと

>>703
同じスレッドは無視されることで起きる問題ですね
重い処理をする場合は大体この二択

*入力を禁止して同じスレッドが実行されないようにする
*SetTimerを使って再入力時にスレッドを予約する

709 :名無しさん@お腹いっぱい。 (ワッチョイ df0d-lZna):2020/01/14(火) 20:40:03 ID:YCyA6bsk0.net
Gui, Add, Edit, w500 r5 gThread_Edit1 ; 処理が終わるまで入力禁止
Gui, Add, Edit, wp hp gThread_Edit2 ; 処理中に追加があれば再実行
Gui, Show
return

Thread_Edit1:
GuiControl, Disable, edit1
Test()
GuiControl, Enable, edit1
return

Thread_Edit2:
SetTimer, Thread_Timer, -1
return

Thread_Timer:
Test()
return

Test() {
Sleep, 1000 ; 重い、時間のかかる処理
GuiControlGet, newtext,, edit2
Tooltip, %newtext%
SetTimer, RemoveToolTip, -2000
}

RemoveToolTip:
ToolTip
return
Esc::
GuiClose:
ExitApp

710 :名無しさん@お腹いっぱい。 (ワッチョイ df0d-lZna):2020/01/14(火) 20:53:14 ID:YCyA6bsk0.net
>>709
ミスがあるので修正

Thread_Edit1:
GuiControl, Disable, edit1
Test(1)
GuiControl, Enable, edit1
return

Thread_Edit2:
SetTimer, Thread_Timer, -1
return

Thread_Timer:
Test(2)
return

Test(n) {
Sleep, 1000 ; 重い、時間のかかる処理
GuiControlGet, newtext,, edit%n%

711 :名無しさん@お腹いっぱい。 :2020/01/14(火) 21:00:02.09 ID:GrGg/thH0.net
サブルーチンの最初にCritical入れるだけじゃだめなのか?

712 :名無しさん@お腹いっぱい。 :2020/01/14(火) 21:08:32.90 ID:roP/RC34M.net
>>710
ありがとうございます
試してみます

713 :名無しさん@お腹いっぱい。 :2020/01/14(火) 21:10:38.13 ID:roP/RC34M.net
>>711
しっかりとは理解できていませんが
これでうまく行きました
助かりました

他の回答をくださった方もありがとうございました
勉強になります

714 :名無しさん@お腹いっぱい。 (ワッチョイ df0d-lZna):2020/01/14(火) 21:13:01 ID:YCyA6bsk0.net
>>711
Criticalはやめとけ延々と待つことになるぞ


Gui, Add, Edit, w500 r5 gThread_Edit1
Gui, Show
return

Thread_Edit1:
Critical
Test(1)
return

Test(n) {
Sleep, 1000 ; 重い、時間のかかる処理
GuiControlGet, newtext,, edit%n%
Tooltip, %newtext%
SetTimer, RemoveToolTip, -2000
}

RemoveToolTip:
ToolTip
return

Esc::
GuiClose:
ExitApp

715 :名無しさん@お腹いっぱい。 :2020/01/14(火) 22:22:22.07 ID:1rtvu3My0222222.net
func()
{
IfWinActive, ウィンドウ名
{
Send, あ
Return
}
}

でウィンドウ名を後方一致にしたいのですが、どうすればよいでしょうか?

716 :名無しさん@お腹いっぱい。 :2020/01/14(火) 23:48:18.39 ID:X3CMnVxd0.net
>1のahk wikiで ウィンドウ指定の方法 の項目を嫁

717 :715 :2020/01/15(水) 00:48:33.04 ID:hWCUiCW80.net
>>716
すみません>>715に書き忘れたのですが
IfWinActive, ウィンドウ名, 2
としても
IfWinActive, [ウィンドウ名, 2]
のように配列で渡してもうまく部分一致になりません
(あと部分一致でなく後方一致にする方法についての記載を見つけられませんでした)

718 :715, 717 :2020/01/15(水) 00:52:29.97 ID:hWCUiCW80.net
あ、わかりました!
SetTitleMatchModeは引数ではなく独立したコマンドでしたね…

SetTitleMatchMode,2

IfWinActive, ウィンドウ名の一部
{
Send, あ
}

うまくいきました

719 :名無しさん@お腹いっぱい。 :2020/01/15(水) 00:54:02.32 ID:nTj1bC5N0.net
絶対書き忘れとかいう問題じゃねえだろこの嘘つきw
716のを中途半端に読んで勘違いしてるのがバレバレ

720 :名無しさん@お腹いっぱい。 :2020/01/15(水) 00:54:48.86 ID:hWCUiCW80.net
後方一致は正規表現(RegEx)で$って書いてなんとかします

721 :名無しさん@お腹いっぱい。 :2020/01/15(水) 00:58:53.98 ID:hWCUiCW80.net
>>719
え…該当ページを事前に読んで勘違いしていたのと後出ししてしまって申し訳ないのは事実ですが嘘つきと言われても…

722 :名無しさん@お腹いっぱい。 :2020/01/15(水) 01:03:51.05 ID:nTj1bC5N0.net
質問の一番核になる部分を書き忘れ?は?脳味噌沸いてんのかw

723 :名無しさん@お腹いっぱい。 :2020/01/15(水) 08:49:17.92 ID:/Z4xN/Rd0.net
まあ解決したみたいだしそこまで噛みつく内容でもないと思うが
質問時にソース貼るなら次からは試して動かなかったコードを貼ろうな
そしたらどこで勘違いしてんのか分かるし具体的にアドバイスできるから
やりたい、分からない部分を空白にしたソース貼って穴うめして下さいっていうのは
結局丸投げと同じだからさ

724 :名無しさん@お腹いっぱい。 :2020/01/20(月) 09:16:30.24 ID:d4sYPmSp0.net
キーボードの右altキーをChangekeyで
F24に割り当ててAHKを使用しています。
AHKでやりたいことは出来ているのですが、
マウスジェスチャーLで右クリックの代わりにF24を始動キーにしようと思い、設定したのですが、この場合AHKで設定したのことが無効になります。
どちらもアプリもF24で共存することは出来ないのでしょうか?

725 :名無しさん@お腹いっぱい。 :2020/01/20(月) 09:18:52.66 ID:d4sYPmSp0.net
724の補足になりますが、マウスのサイドボタンにもF24を割り当ててます。

726 :名無しさん@お腹いっぱい。 (ワッチョイWW 41e5-MT9j):2020/01/20(月) 09:27:44 ID:2i9M9c/g0.net
どっちかまたは両方のホットキーを ~F24 にしたらいいんでないの

727 :名無しさん@お腹いっぱい。 (ワッチョイ 2d0a-JESV):2020/01/20(月) 19:06:54 ID:gVUq8z+n0.net
>>726
フックありの場合は両方につけないと駄目だね $~F24 と $~F24
フックなしは片方で反応した ~F24 と F24

728 :名無しさん@お腹いっぱい。 :2020/01/21(火) 12:24:53.35 ID:saCoe5B/0.net
>>726
>>727

ありがとうございました!!
どちらのアプリでもF24を使用することが可能になりました!

729 :名無しさん@お腹いっぱい。 :2020/01/21(火) 15:27:33.69 ID:5Eh+0+HCr.net
常駐してるahkに記述されてる自作関数をコマンドプロンプトから呼び出すことできる?
----------------------------
func:
msgbox, hoge
return
----------------------------
>>1見たりググったりしたけど答えが見つからなかった。あるのならすまない
最近AHK使い始めて良くわかってないから大目に見てくれ

730 :名無しさん@お腹いっぱい。 (ワッチョイWW 41e5-MT9j):2020/01/21(火) 18:13:26 ID:f2QdlUcu0.net
できない

731 :名無しさん@お腹いっぱい。 :2020/01/21(火) 20:46:11.39 ID:einhiu/Q0.net
>>729
呼び出し(再起動)
hoge.ahk "関数名" "引数"
hoge.ahk "MsgBox" "Text"

スクリプト
;AES
#SingleInstance Force
if %1%
 %1%(A_Args[2], A_Args[3], A_Args[4])
;Hotkey
MsgBox(Text) {
 MsgBox, %Text%
 return
}

732 :名無しさん@お腹いっぱい。 :2020/01/22(水) 14:27:34.11 ID:RxEen8tTd.net
去年からAutoHotKey使い始めて
ホームポジションから離れることが激減したのはいいんだが
ノートのキーボードだと同時押しの効かないキーの
組み合わせが機種ごとにランダムに発生するのが悩ましい
特に変換、無変換が絡むと
「こんなキーと同時押しする馬鹿のことなんか
どうでもいいわwww」という
設計者の意図が透けて見えるようだ

会社で支給されるノートが新品になると
キーバインドに違うアレンジが必要になる

プライベート用だとRazerのスリムなノートぐらいしか
俺のニーズにマッチするやつはなさそうなんだが
最近のモデルは右シフト周りのキー配列が
上カーソルに侵食されて好みでなくなってるのが難点
しかし、尊師スタイルはしたくないので
これからはノートを変えるたびにキーボードガチャ

733 :名無しさん@お腹いっぱい。 :2020/01/22(水) 14:33:37.05 ID:o8ep1VOI0.net
5chで日記書いてる馬鹿のことなんか
どうでもいいわwww

734 :名無しさん@お腹いっぱい。 :2020/01/23(木) 14:09:10.05 ID:z6hrYOWsd.net
ノートや安いキーボードでの運用について語りたい奴はいないのか

次にノート買うならUSキーボードにしようと思ってたが
USキーボードの右AltをF13にしたとして
致命的にうまく動かないキーコンビネーションがあると
ほとんど詰んでしまうな
JISなら無変換、変換、カタカナキーのどれかが使い物になれば良い

735 :名無しさん@お腹いっぱい。 (ワッチョイ 5fad-FkkX):2020/01/23(Thu) 14:35:41 ID:yb8NU6QX0.net
お前のは単なる自分語り

736 :名無しさん@お腹いっぱい。 :2020/01/23(木) 14:49:25.24 ID:TL0iCSLV0.net
ノートの変態配列についてはahkでどうにかできるレベルじゃないので…
PC買い換えるたびにキー配列で悩むの嫌なんでここ最近はThinkPad一択
デスクトップは安物乗り継いで結局リアフォに落ち着いた

737 :名無しさん@お腹いっぱい。 :2020/01/23(木) 15:45:22.76 ID:z6hrYOWsd.net
変態配列の話では無く
主に3キー以上同時に押して機能しない組み合わせが
機種によってランダムに発生するという話なんだけどね
NKRO対応なキーボードでない限り

738 :名無しさん@お腹いっぱい。 :2020/01/23(木) 17:18:39.51 ID:yb8NU6QX0.net
同時押し数は単にハードの仕様であってahkとは全く無関係の問題
いい加減スレチでウザい

739 :名無しさん@お腹いっぱい。 :2020/01/23(木) 17:23:34.08 ID:0B3cOduB0.net
そういうハードの仕様の場合にahkでどうするかって話じゃないの

740 :名無しさん@お腹いっぱい。 :2020/01/23(木) 17:26:59.58 ID:yb8NU6QX0.net
>>739
全然違う

741 :名無しさん@お腹いっぱい。 (ワッチョイ 87be-FFmi):2020/01/23(Thu) 17:28:30 ID:ytfW8FfG0.net
そんなハードは避ける
で終わりじゃね
個々のハード依存の話つづけたいのなら、
そのハードのスレ立ててやればいいと思いますし

742 :名無しさん@お腹いっぱい。 (ワッチョイ 2711-Jq7D):2020/01/23(Thu) 17:30:33 ID:0B3cOduB0.net
>>740
いや話してるのは君じゃないでしょ

743 :名無しさん@お腹いっぱい。 (ワッチョイ 5fad-Jq7D):2020/01/23(Thu) 17:33:47 ID:yb8NU6QX0.net
>>741
その通り
大正論

>>742
本人だってそんな話してねえだろ

744 :名無しさん@お腹いっぱい。 (ワッチョイ 87e5-yKkE):2020/01/23(Thu) 17:44:20 ID:TL0iCSLV0.net
そういう制約が面倒なのでモデファイヤキー以外をトリガにするのは避けることにしてる

AHK出始めの頃はここや流行らせるページでLocks系キーの
機種依存挙動でわいわいやってたりもしたがもうそういう時期通り過ぎてるというか
20年も使ってると汎用で使えないオレオレ設定は淘汰済みなんだな

745 :名無しさん@お腹いっぱい。 (スフッ Sd7f-6xyq):2020/01/23(Thu) 17:55:30 ID:z6hrYOWsd.net
>>740
違わねえよ 馬鹿野郎
人の話を聞いてねーのはテメーだ

746 :名無しさん@お腹いっぱい。 :2020/01/23(木) 18:12:32.28 ID:yb8NU6QX0.net
>>745
どうにもならんもんグダグダ言ってんなよバカガイジ

747 :名無しさん@お腹いっぱい。 :2020/01/23(木) 18:17:16.67 ID:z6hrYOWsd.net
>>744
そうすれば確かに引っかかる確率は減るだろうね
だけど、片方のAltをF13とかにして
他のキーとの組み合わせでカーソルキーや
ファンクションキーをSendしたとする
そこに残った方のAltも加えて同時押しすると
一部組み合わせが機能しないという悲しいケースもあったよ
左右Alt同時使用は想定外なんだね

デスクトップのゲーミングキーボードなら
何でも普通に動いて快適な状態に慣れてしまったから
ノートでも限界まで追求している

過ぎた話題で興味無いならスルーしてくれればいいよ
他の話題が始まれば俺も遠慮するし

748 :名無しさん@お腹いっぱい。 :2020/01/23(木) 18:28:56.76 ID://gzdVNT0.net
>>747
>左右Alt同時使用は想定外なんだね

だからそれはハードの仕様の問題であってahkと関係ない
スレチネタで荒らすな

749 :名無しさん@お腹いっぱい。 :2020/01/23(木) 23:35:40.91 ID:nifKxp710.net
エクスプローラーでアクティブに選択しているファイルを
サクラエディタで開きたいんだけど、サクラエディタ自体は起動するけど
選択したファイルが開いていないです。
どうしたらいいのでしょうか・・・

^e::
Send, ^c
Run, "C:\Program Files (x86)\sakura\sakura.exe" %Clipboard%
return

750 :名無しさん@お腹いっぱい。 (ワッチョイ 879b-FkkX):2020/01/23(Thu) 23:45:52 ID:nifKxp710.net
すみません、sleep入れてコンパイルしたら解決しました・・・

751 :名無しさん@お腹いっぱい。 :2020/01/24(金) 11:02:24.45 ID:NBF8iWUcd.net
>>748
なんで動かないのかなんて聞いてないし
そもそも俺は質問も相談もしていないし
お前に向けて書いてない
読解力無い癖にゴミのような横槍をこまめに入れるな
面白いことを言えないのなら黙ってろ
なんでお前がレスするんだよ

>>740
>>743
お前は↑でも勝手に俺の代返をしてデタラメ書いて
他のまっとうなレスした人間まで不快にしただろう
ガイジそのもの
お前こそが会話をめちゃくちゃにして荒らしている
お前の見当外れで無駄に攻撃的なゴミレスは無視してきたが、
ここだけレスした意味ぐらい分かってんだろうな?
それもあやしいかな
こんなにもガイジなんだからな

>>741
>>743
何が大正解だ脳障害め
NKRO対応の機種に限定したら軽めのノートは殆ど選択肢から外れる
そういうマシンでAHK運用することに関してテキトーに雑談して何が悪いんだ?
少なくとも明らかにスレチではない
お前の好みの話題でないだけ
上から目線で面白味ゼロのゴミレスばっかしてんじゃねえよ

不愉快なガイジの声ばかりがデカイから、いい加減このスレで楽しむのは諦めるわ
何の面白味も無いゴミ虫め
生きてて楽しいか?
いちいち答えなくていいぞ

752 :名無しさん@お腹いっぱい。 :2020/01/24(金) 12:06:30.81 ID:tzFXc69a0.net
>>751
あのー他人が不快に思うことを気にしていらっしゃるのならコテハンつけていただけると幸いです。NG入れたいんで…
もちろん書き込みはご自由にどうぞ

753 :名無しさん@お腹いっぱい。 :2020/01/24(金) 12:26:30.64 ID:jm14eODy0.net
ガイジをNgWordでいいよ
ガイジ連呼する奴にまともなのはいない

ノートの変態配列の場合そもそも右側モデファイヤがない場合もあるので左右で動作分けるとかしないしなぁ
つか複雑なキーバインドは指も頭もついていかん

754 :名無しさん@お腹いっぱい。 :2020/01/24(金) 12:46:00.52 ID:NBF8iWUcd.net
>>752
お前は >>741 だろ?
だとしたら、お前が不快になることは気にしてない
といちいち言っておいてやろう

755 :名無しさん@お腹いっぱい。 (スフッ Sd7f-6xyq):2020/01/24(金) 12:53:42 ID:NBF8iWUcd.net
>>753
>つか複雑なキーバインドは指も頭もついていかん
あっそ

756 :名無しさん@お腹いっぱい。 (ワッチョイWW 47cf-J2nh):2020/01/24(金) 12:58:26 ID:tzFXc69a0.net
>>753
ありがとうございます。とりあえずそうします

>>754
違います。
どう思われても構わないのでコテハンお願いします

757 :名無しさん@お腹いっぱい。 :2020/01/24(金) 13:11:19.34 ID:RQUs/BcE0.net
データ整理してたら出てきた、昔の拾い物でカーソルを時計/半時計に回ると左右に動くというものなんですが、
現行の環境では動かないのですがなぜでしょう??
win10でverは1.1.31.00です。
また以下の機能を任意のキーでオンオフ出来はしないでしょうか?
常にこの動作が効いていると困ることが割と想定されるので実装できればと
(改行が多いとのことで複数回投稿します、すみません)

#InstallKeybdHook
high=1 ;高速時のスクロールスピード(1-3)可変
low=1 ;低速時のスクロールスピード(1-3)可変
sens=1 ;感度(1-3)可変
timeout=50 ;タイムアウトまでの時間

upstr=12341234
downstr=43214321
base=567890
StringTrimRight,base,base,%sens%
SetTimer,Rotation,10
Return

758 :名無しさん@お腹いっぱい。 :2020/01/24(金) 13:12:09.95 ID:RQUs/BcE0.net
Rotation:
If (A_TimeIdlePhysical>timeout)
str:=base
x1:=x2
y1:=y2
MouseGetPos,x2,y2
x:=x2-x1
y:=y2-y1
If (x>0 && y>0)
pos=1
If (x>0 && y<0)
pos=2
If (x<0 && y<0)
pos=3
If (x<0 && y>0)
pos=4
If (pos<>lastpos)
{
StringTrimLeft,str,str,1
str=%str%%pos%
lastpos:=pos
}

759 :名無しさん@お腹いっぱい。 :2020/01/24(金) 13:12:46.28 ID:RQUs/BcE0.net
key=
IfInString,upstr,%str%
key=Left
IfInString,downstr,%str%
key=Right
dis:=((x1-x2)**2+(y1-y2)**2)**0.5
buf+=dis
freq:=dis*high/50+1
if (buf>100/low && key<>"")
{
Send,{%key% %freq%}
buf=0
}
Return

以上です

760 :名無しさん@お腹いっぱい。 :2020/01/24(金) 14:54:09.52 ID:NBF8iWUcd.net
>>756
お前みたいなつまらない奴の指図なんか
聞くわけが無いのだから無駄な書き込みやめたら?
こういう返答以外に何を予想してたの?
いちいち答えなくていいけど
放っておけば俺はもう興味を無くして
書き込みやめる流れなことぐらい分かるだろうに
ホントに人の話を聞かない奴ばっか

761 :名無しさん@お腹いっぱい。 (スフッ Sd7f-6xyq):2020/01/24(金) 15:19:45 ID:NBF8iWUcd.net
>>757
汚いレスで遮ったから一応レスしとくか

>また以下の機能を任意のキーでオンオフ出来はしないでしょうか?
任意のキーで適当な変数を書き換えて
処理の本体はその変数の値を見て
IFでスキップすればいいと思うよ

あるいはSuspendコマンドについてググって
何かの役に立ちそうか考えてみたら?(糞適当)
要らないと思うけどw

動かない理由は面倒なのでパス
地道に変数の値をMsgBoxで表示させたりして
自分でデバッグすればいいんじゃないかな
元々頼りない前提に頼ったロジックだと
微妙な環境の変化だけで潜在的な問題が表面化する
プログラムというのはよくあるね

762 :名無しさん@お腹いっぱい。 (ワッチョイ 87b1-XSlX):2020/01/24(金) 20:58:35 ID:NZ31hmj/0.net
>>757-759
丸投げ質問は誰もまともに答えてくれない

とりあえずそのコードは↓から落としたクルクルスクロールんじゃないかと思う
AutoHotokeyを流行らせるアップローダ
http://lukewarm.s101.xrea.com/up/

ここに、105.zip、108.zip、113.zipとあるから比較してみれば?

763 :名無しさん@お腹いっぱい。 (ワッチョイ a70f-FkkX):2020/01/24(金) 23:17:45 ID:RQUs/BcE0.net
>>762
いや、全く各箇所の記述の動作を逐一なんてつもりはないです。
>>現行の環境では動かない といっているように、全く同じ内容で別環境では動いていており
動作の本筋に関しては本質的に間違っている箇所があるとはおもえません。
ただ環境が異なるため、恐らく何かver改訂やOSによる仕様変更のせいで何かが引っかかってると思い、
何か心当たりがあるならそれと照らし合わせもらうために情報を晒したにすぎません。

言葉が足りなくて申し訳ありません。

764 :名無しさん@お腹いっぱい。 (ワッチョイWW 87e5-vv9f):2020/01/24(金) 23:45:49 ID:jm14eODy0.net
全直し希望じゃなくても
人が作ったスクリプトを自分は一切手を着けてない状態で貼ってたら丸投げ言われるわな

おいそれと弄れないにしても自分なりに調べて方向性だけでも書いてそれでいけそうか事前に聞くとかさ
環境依存部分はともかくホットキー起動に関してはいくつかの方法は考えられるでしょ

765 :名無しさん@お腹いっぱい。 (ワッチョイ 87b1-XSlX):2020/01/24(金) 23:58:06 ID:NZ31hmj/0.net
>>762
あ、そうですか

766 :名無しさん@お腹いっぱい。 :2020/01/25(土) 01:01:04.90 ID:mylHY5dE0.net
>>764
761氏のおっしゃるようにmsgboxで探すのは質問前からもうやっていますし
最終的には
Rotation:
If (A_TimeIdlePhysical>timeout)
Msgbox,%A_TimeIdlePhysical%
Return
で正常な値がでることも確認しているんでお手上げなんですよ
だから
無変換キーを vk1Dsc07B → vk1D みたいな変更のように
仕様変更だったり、もしくば既知のバグのように
知らなきゃどうしようもないようなことに心当たりありませんかと聴いているんです
検索はすでにしていますが見つからないのでここで訪ねている次第です

それにホットキーに関しては本丸が出来ていないのでまだ取り掛かりようがないです

767 :名無しさん@お腹いっぱい。 (ワッチョイ a70a-V1vN):2020/01/25(土) 02:51:12 ID:7N2llbO10.net
>>766
そもそも謎の前環境でも動くわけが無い

> #InstallKeybdHook
> If (A_TimeIdlePhysical>timeout)
> で正常な値がでることも確認しているんでお手上げなんですよ
正常な値なわけが無い、A_TimeIdlePhysicalは対応するフックで動作するので
「マウスフック」を使わなければマウスの動作は無視される

> カーソルを時計/半時計に回ると左右に動くというものなんですが、
> key=Left
> key=Right
> Send,{%key% %freq%}
クリックに見えますが?

768 :名無しさん@お腹いっぱい。 :2020/01/25(土) 07:14:29.13 ID:7N2llbO10.net
>>767
寝ぼけてたはクリックじゃなくて方向キーか
まあ動かんけど

769 :名無しさん@お腹いっぱい。 (ワッチョイ 7ff2-Jq7D):2020/01/25(土) 15:37:47 ID:jE5Psj+a0.net
>>766
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 ID:EYLpIN0yM.net
エクスプローラーで選択中のファイルが、特定の拡張子だったときだけサクラエディタで開きたいのですが、うまく動いてくれません。
どうすればよろしいでしょうか、、、

#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 :名無しさん@お腹いっぱい。 :2020/01/27(月) 13:50:13.61 ID:ILzVRi6q0.net
それは「*.拡張子」と完全一致する時しか真にならないから

772 :名無しさん@お腹いっぱい。 (ワッチョイWW 87e5-vv9f):2020/01/27(月) 14:35:43 ID:PCCRfwfV0.net
instrかstringgetposかregexmatchを使う
いずれにしてもワイルドカードは使えないので
正確にやるならお尻から3文字切り出してから比較などの工夫が必要

773 :名無しさん@お腹いっぱい。 (ワッチョイWW 5ffa-TZXF):2020/01/27(月) 16:02:46 ID:o+dKNXE50.net
1
セットタイトルマッチモードの仕様が書いてないからどれで突き合わせてるかわからん

2
IF文中にワイルドカードって使えたっけ?
使えたらごめんよ
でもその条件ならIF contains式でいいんちゃう?

3
そもそもの話としてAutohotkeyのClipboard関係は信用が置けないので一工夫がいるのも気をつける
測ってみたところ300ms後にクリップボードがうまるようなファイルもあった

774 :名無しさん@お腹いっぱい。 (ワッチョイWW 879b-bNzE):2020/01/27(月) 18:30:10 ID:dv4SnxNn0.net
皆様ご回答ありがとうございます。
ワイルドカード使えなかったの知りませんでした、すみません。
おっしゃるとおり、拡張子の3文字を取り出すstringright関数でできました。
大変助かりました。

775 :名無しさん@お腹いっぱい。 :2020/01/28(火) 04:02:03.76 ID:uvycofvT0.net
>>770
>>772-774
突っ込みどころ満載なので・・・。

フック使って無いのでSendに反応してホットキー無限ループ
複数選択した場合は意図しないことになる
クリップボードのタイムアウト、保管
拡張子を取り出すのに文字数では確実ではない

776 :名無しさん@お腹いっぱい。 :2020/01/28(火) 04:22:38.07 ID:uvycofvT0.net
なにか規制に引っかかってたのでこちらで

https://pastebin.com/XHbmr3jb

777 :名無しさん@お腹いっぱい。 (ワッチョイWW 87e5-vv9f):2020/01/28(火) 09:13:48 ID:N1Ohwwsr0.net
RegExでやるならループ使わなくても最初の行の最後のドット以降の文字を切り出せるので
もうちょい圧縮はできそう

778 :名無しさん@お腹いっぱい。 (ワッチョイWW ff73-b9Ji):2020/01/28(火) 09:18:08 ID:VrzJrfuI0.net
4文字取り出せばいいだけ
といってもRegEx使ったほうがいいと思うけど

779 :名無しさん@お腹いっぱい。 :2020/01/28(火) 09:58:42.42 ID:uvycofvT0.net
>>777
エディタでまとめて開くならループが必要

>>778
MS-DOSやWindows3.xまでの(8.3形式)なら拡張子の長さは3文字
今は自由な長さなので文字数指定は使い物にならん

780 :名無しさん@お腹いっぱい。 :2020/01/28(火) 10:07:38.51 ID:S4ZqAouK0.net
Forループ版
Exts := "ahk,bat,ps1" ;コンマ区切り
Send ^c
For i, v in StrSplit(Clipboard, "`n") {
 SplitPath, v,,, Ext
 if Ext contains %Exts% ;in不可
  MsgBox, %v%
}

781 :名無しさん@お腹いっぱい。 :2020/01/28(火) 10:24:34.42 ID:uvycofvT0.net
>>780
部分一致は駄目でしょうが

782 :名無しさん@お腹いっぱい。 (ワッチョイWW ff73-b9Ji):2020/01/28(火) 11:47:45 ID:VrzJrfuI0.net
>>779
そんなこと言われなくても分かってる
少なくとも質問者は3文字の拡張子を想定してるから4文字と言っただけ
"."+拡張子でチェックすればいいって言い直さないと理解出来ない?

783 :名無しさん@お腹いっぱい。 :2020/01/28(火) 13:50:01.87 ID:27uwmOduM.net
当人しか使わない個人的なスクリプトに関しては無理に完璧を記さなくても限られた状況下でだけ動けばいい場合も多いし
利用者本人が想定してないことまで無理に盛り込まんでもいいとは思うね

完全なコードを他人が丸ごと貼ってやっても理解できないことの方が多いだろうし
細かいとこは不完全でも本人が考えて書いたものを問題を感じた時に改修してく感じでいいんでない
多分そういう前提でヒントレスしてる人が多いと思う

784 :名無しさん@お腹いっぱい。 :2020/01/28(火) 14:58:38.88 ID:rsW/ZSX50.net
USキーボードは変換・無変換無双ができないから
大・大・大・嫌いだわ

785 :名無しさん@お腹いっぱい。 :2020/01/28(火) 18:46:04.61 ID:EA3Cj+61r.net
動きゃいいだろ

786 :名無しさん@お腹いっぱい。 :2020/01/28(火) 19:23:28.69 ID:Ec0nt9VJ0.net
>>784
お前の好き嫌いなんて誰も聞いてない
独り言はバカッターで呟いてろ

787 :名無しさん@お腹いっぱい。 (ワッチョイWW c7b1-K+7m):2020/01/28(火) 20:07:29 ID:ockOGIFp0.net
質問です。こういう転記作業ってAHKで出来るのでしょうか?

転記元Excelファイル
転記先IEのシステム

Excelファイルから任意のセルをコピーして、IEの入力欄に貼り付け、
登録ボタンを押下後、またExcelに戻って先程の一行下のセルをコピーして…
の繰り返しの作業です。

なんとなく出来そうな気はするのですが、AHKのスキルってどうやって
勉強したら身に付きますか?

788 :名無しさん@お腹いっぱい。 :2020/01/28(火) 20:50:59.82 ID:n9Nej2Np0.net
>>787
ひたすらwikiをよく読む
まずはサンプルコード辺り全て理解するまで読む
急がば廻れ
嫌なら諦める

789 :名無しさん@お腹いっぱい。 :2020/01/28(火) 20:58:15.96 ID:hIp7G51I0.net
そんなのマクロでやりなさいって話だわ

790 :名無しさん@お腹いっぱい。 :2020/01/28(火) 21:16:05.75 ID:N1Ohwwsr0.net
uwscとかのほうが得意そうな案件ではあるな

791 :名無しさん@お腹いっぱい。 :2020/01/28(火) 21:34:48.42 ID:3FNQgvymM.net
>>787
その作業は画面見ずにキーボードだけで完結できる?出来るのであれば、その操作通りにsendし、適宜sleepするだけで完成だ。
マウス操作必須だったり、条件で動作が変化するなら、その箇所に処理を加えたり、その箇所の自動化を諦めると良い。

792 :名無しさん@お腹いっぱい。 :2020/01/28(火) 21:36:17.98 ID:uvycofvT0.net
>>783
当人以外も参考にする可能性が有るので無限ループに陥るようなコードを野放しはあかんだろ
ヒント?出してる方も色々分かってなかったしw
今後の初心者が見てアレが正解だと思われたらまずい

793 :名無しさん@お腹いっぱい。 (オッペケ Srbd-CNbV):2020/01/29(水) 09:18:20 ID:QBb2aEnKr.net
HOOK表記なくてもループにゃならんぞ
やってみ?

794 :名無しさん@お腹いっぱい。 :2020/01/29(水) 10:54:03.74 ID:DzR487gV0.net
「無限」をはしょるのはすごくもやもやする

795 :名無しさん@お腹いっぱい。 :2020/01/29(水) 11:15:57.58 ID:1KxMz8CE0.net
OutputVar := GetKeyState(Shift, P)
ToolTip, 【%OutputVar%】, 0, 0

1か0が入ると思ったのに空っぽのように見えるのは
何か根本的に間違えているのでしょうか

796 :795 :2020/01/29(水) 11:19:05.97 ID:1KxMz8CE0.net
OutputVar := GetKeyState("Shift", P)

こうみたいでした。
済みません。

797 :名無しさん@お腹いっぱい。 :2020/01/29(水) 11:43:53.12 ID:pPBTsOGr0.net
厳密に言うと、"P"もだよ
Pだと変数扱いだから、多分、=0で、記述が無効になってる

798 :名無しさん@お腹いっぱい。 (ニククエ 6a07-i7CI):2020/01/29(水) 12:01:24 ID:1KxMz8CE0NIKU.net
>>797
分かりました
ありがとうございます!

799 :名無しさん@お腹いっぱい。 :2020/01/30(木) 03:03:10.18 ID:hLaC5ZDt0.net
質問です。
ホットキー指定で~をつけると、イベントを乗っ取らずそのままシステムに通しますが
その後の処理で、システムに通さないよう分岐する方法はありますか?

イメージは以下のような感じです

~RButton Up::
MouseGetPos, mx, my, hwnd, ClassNN
if ( ClassNN <> "ListView321" )
return ; そのままシステムに通してなにもしない

; 以下コンテキストメニューを表示してシステムに通さない

800 :名無しさん@お腹いっぱい。 :2020/01/30(木) 03:06:06.96 ID:yfl1OPJr0.net
ない

801 :名無しさん@お腹いっぱい。 :2020/01/30(木) 03:25:52.11 ID:yIeYXuFa0.net
>>799
逆にチルダ外して一旦乗っ取って、条件分岐した後に
乗っ取りたくない方は Send, {RButton Up} にしときゃいいんじゃね

802 :名無しさん@お腹いっぱい。 (ワッチョイ 5d0d-Y6bJ):2020/01/30(Thu) 06:48:31 ID:2Pg1PDf70.net
>>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

803 :名無しさん@お腹いっぱい。 (ワッチョイ 66ac-unxX):2020/01/30(Thu) 11:44:29 ID:lhlDpunT0.net
>>799
#If 使って事前にはじくとか

#If (CNN()="ListView321")

RButton Up::
Tooltip, Listview
return

CNN()
{
MouseGetPos, mx, my, hwnd, ClassNN
return ClassNN
}

804 :名無しさん@お腹いっぱい。 (ワッチョイ 6632-unxX):2020/01/30(Thu) 13:00:18 ID:hLaC5ZDt0.net
>>800-803
ありがとうございます

>>803
このような指定方法があるとは知りませんでした
こちらの方法でやってみます

805 :名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H):2020/01/31(金) 15:15:41 ID:Qxhc6BbA0.net
質問です
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 ID:Qxhc6BbA0.net
情報後出しにならないように使用環境も書きます
右ボタン、中ボタン、左ボタンはそのまま、それ以外の残りの5ボタンを
F16,F17,F18,F19,F20キーにマウスドライバ側で割り当ててあり
MouseGestureL側ではこの5ボタンでジェスチャー認識させてます
便宜上子スクリプトと呼びましたが、任意のタイミングで
個別に実行されるスクリプトでMouseGestureLから実行するわけではないです
コンパイルして特定の拡張子と関連付けしてあり
ファイル実行時にこのマウスボタンが同時に押されていたらこのアプリを
こっちのボタンならこのアプリをといった感じでラッパーとして機能させてます

特にアプリ間通信にこだわらず
一般ユーザ権限の子スクリプトがマウスのボタンの押し下げを知る方法ならなんでもいいです
よろしくお願いします

807 :名無しさん@お腹いっぱい。 :2020/01/31(金) 17:22:07.16 ID:s1HRUi470.net
OSとahkのバージョンは?

win10からはadmin←→非admin間制御系が分断されてるので
UAC切ってても管理者権限で動いてるahkからは一般的権限のアプリの制御ができなくなってるはずだけど
そもそもMouseGestureL はまともに機能しているん?

808 :名無しさん@お腹いっぱい。 :2020/01/31(金) 17:44:49.94 ID:SUSq+Cgw0.net
>UAC切ってても管理者権限で動いてるahkからは一般的権限のアプリの制御ができなくなってるはずだけど

質問者じゃないけどこれ何言ってんだ?
Win10で管理者権限で動いてるahkから一般権限のアプリは制御できるぞ
一般権限で動いてるahkから管理者権限で動いてるアプリの制御は当然出来ないけど

809 :名無しさん@お腹いっぱい。 :2020/01/31(金) 18:15:40.06 ID:Qxhc6BbA0.net
レスありがとうございます

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 ID:v8RZrb+0a.net
ファイルかクリップボードを経由してやりとりするというのはどう
たとえば
クリップボードを監視して値を要求する特定の文字列が入っていたら
クリップボードに要求された値を返すとか
値を得るタイミングはもっさりするだろうけど

811 :名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H):2020/01/31(金) 23:57:38 ID:Qxhc6BbA0.net
やっぱりその辺りを経由するしか方法ないですかね
MouseGestureLはとてもいいスクリプトなので
監視ルーチンを寄生させるとかは避けたかったですが

ファイルやクリップボード経由しか手段がないならば
マウスボタンの押し始めタイミング自体は
改変しなくともMouseGestureL側で検知できると思うので
ボタンの押し始めに所定の位置にあるファイル名xxxをyyyにリネーム
ボタンが離されたらファイル名をxxxに戻す
子スクリプトは起動時にそのファイル名をチェック
とかの方法でやってみようかと思いました
アドバイスありがとうございました!

812 :名無しさん@お腹いっぱい。 (ワッチョイ ad05-Y6bJ):2020/02/01(土) 00:43:32 ID:ka52WFEb0.net
マウス操作を記録する機能は持ってないからなあ
AHKスクリプトにするツールもない

813 :名無しさん@お腹いっぱい。 :2020/02/01(土) 01:59:53.61 ID:2stcDCgC0.net
>>811
方法の前にそもそも何がしたいの?
MouseGestureLでキーに連動して何かスクリプト実行したいならのアクションスクリプトに書けばいい
駄目な理由って何?

814 :名無しさん@お腹いっぱい。 :2020/02/01(土) 06:49:34.23 ID:RcLxcGeu0.net
やりたいことは>>806に書いた通りです
>個別に実行されるスクリプトでMouseGestureLから実行するわけではないです
>コンパイルして特定の拡張子と関連付けしてあり
>ファイル実行時にこのマウスボタンが同時に押されていたらこのアプリを
>こっちのボタンならこのアプリをといった感じでラッパーとして機能させてます

MouseGestureLとは一切関係なく、ある拡張子のファイルを実行したときに
たとえば拡張子.txtならば本来のメモ帳の前にシステム側から関連付け設定で呼び出され
8ボタンマウスの5つの拡張ボタンのどれかを押す押さないで
実際に実行するアプリをメモ帳から他の物へ変更するラッパーを作ってて
管理者権限でMouseGestureLがつかんでるマウスボタン押下の情報を
一般権限しかもたないこのラッパーに伝達したい、というものです

815 :名無しさん@お腹いっぱい。 (ワッチョイ 7db1-b3gp):2020/02/01(土) 08:24:10 ID:+/Lmpd8T0.net
未だに何やりたいのかがハッキリと分からないけど、
ファイルをダブルクリック(またはエンターキー押下)した"後"に開くアプリをいくつかの選択肢から選びたい、ってこと?
ならMGL側じゃなく実行するスクリプト側でGetKeyStateして何ボタンが押されてるか取得すればいいのでは?

管理者権限とか一般権限とかの話はよく分からんので適当

816 :名無しさん@お腹いっぱい。 :2020/02/01(土) 10:26:51.57 ID:bRlwZEbJ0.net
>>815でいい気がするね
>>805は自前スクリプト側でもホットキーを使ってキーの状態を調べようとしたけど、フック順がMGL⇒自前スクリプトだから拾えなかった
みたいな感じなのでは?

817 :名無しさん@お腹いっぱい。 :2020/02/01(土) 10:34:43.14 ID:bRlwZEbJ0.net
逆だった
自前⇒MGLね

818 :名無しさん@お腹いっぱい。 (ワッチョイ 5994-unxX):2020/02/01(土) 14:06:32 ID:3oSMwgZs0.net
ラッパーって何だYO!

819 :名無しさん@お腹いっぱい。 (ワッチョイWW 2afa-CNbV):2020/02/01(土) 16:04:24 ID:ONoXH+kb0.net
なんか独自関連付けしたいって話に見える
そんならうぷろだに前俺が作った独自関連付けプラグインがあるからそれ見てみりゃいい

820 :名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H):2020/02/01(土) 20:38:42 ID:RcLxcGeu0.net
説明が拙くて申し訳ありません
目的は関連付けされたコンパイル済みスクリプトの動作ではありますが
そこ自体はちゃんと動いてるので、質問したいのはこのスクリプトが実行される瞬間に
「どのマウスボタンが同時に押されていたか知りたい」ということです

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 ID:RcLxcGeu0.net
そこでスクリプトをこうして
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 ID:RcLxcGeu0.net
ただ、OSを入れ替えたのを機にもうさすがにUACを全オフするのはないかなと思い
MouseGestureLを除いて全部一般の権限で使ったらアプリ間で通信できなくなり
代替え案はありませんか?と質問した次第です

現在もMouseGestureLを一般権限で動かせばちゃんと動作しますが
それだと管理者権限でしか動かないアプリを制御できないので案としては除外してます

823 :名無しさん@お腹いっぱい。 (ワッチョイ 5957-unxX):2020/02/01(土) 20:52:59 ID:4DvAyfEb0.net
>>822
じゃあそのスクリプトも管理者権限で動かせばいいじゃん?

824 :名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H):2020/02/01(土) 21:25:17 ID:RcLxcGeu0.net
>>806,814,820に書いてある通りこれはファイルに関連付けされて動作するスクリプトなので
プロパティから「管理者としてこのプログラムを実行する」にレ点を入れてしまうと
ファイルを開くたびに管理者権限での動作を許可するか確認するダイアログが出るので
とてもとてもやりたくないのです(txt,zip,jpgなど殆どをスクリプト経由にしてます)

タスクスケジューラでタスクを事前に定義しておき
そのタスクの「全般」タグにある「最高位の特権で実行する」にレ点を入れて
Run, C:\Windows\System32\schtasks.exe /run /tn "事前に定義したタスクの名前"
と実行させてUACのメッセージを回避する方法もすでに試してはいたのですが
そうすると実行する度に変化する引数をスクリプトまで渡す方法が見つからずに断念してました

825 :名無しさん@お腹いっぱい。 (ワッチョイ 5957-unxX):2020/02/01(土) 21:37:19 ID:4DvAyfEb0.net
>>824
管理者権限での動作を許可するか確認するダイアログはUACレベル下げれば出ないように出来る
俺もいくつか必要に応じて管理者権限で実行してるからUACの設定下げて確認ダイアログは出ないようにしてる
所詮UACなんて初心者に対する注意喚起でしかないんだから通知オフで何も問題はない
どのプログラムが管理者権限で動いているかをしっかり把握できてりゃいいだけ

826 :名無しさん@お腹いっぱい。 :2020/02/01(土) 21:51:39.45 ID:4DvAyfEb0.net
ちなみに管理者権限で動いてるスクリプトから一般権限でアプリケーションを起動したい場合は
Run, Explorer "(一般権限で起動したいプログラムのフルパス).exe"
で一般権限で起動出来る

827 :名無しさん@お腹いっぱい。 (ワッチョイ 3a83-ol1H):2020/02/01(土) 22:01:30 ID:RcLxcGeu0.net
回答ありがとうございます
あと勘違いさせていたらごめんなさい

この問題自体は>>810さんのアドバイスを元に>>811で書いた通り
MouseGestureL側でマウスのボタンが押される度にあるファイルをリネームして
ボタンが離されたら元に戻すというめちゃくちゃなゴリ押しで解決しており
今は望んだ状態で快適に使ってます

なのでもしもアドバイスいただけるとしたら
「自分の希望する前提条件をひっくり返せ」ではなく前提条件の元でなにか他の手段があるよ
だととても助かります、まぁすでに解決済みなので
「そんな手段ないよ」とかでも「ですよねー」といった感じです

>ちなみに管理者権限で動いてるスクリプトから一般権限でアプリケーションを起動したい場合は

の件は>>809に書いてますが
>MouseGestureL から何かを起動する場合はRunは使用せずに
>ComObjCreateを利用して一般権限で起動するようにしています

本家フォーラムにLexikosさんが投稿していらっしゃったのを参考に
ComObjCreate("{9BA05972-F6A8-11CF-A442-00A0C90A8F39}")系でわたしはやってました

教えていただいてありがとうございます

828 :名無しさん@お腹いっぱい。 (ワッチョイ 7d76-unxX):2020/02/01(土) 22:06:21 ID:1OVWO3Ck0.net
無駄な長文が多すぎて前提とか知らねえから
UACレベル下げてやりたいことが出来ればそれでいいだろ

829 :名無しさん@お腹いっぱい。 (ワッチョイWW b673-k9qz):2020/02/01(土) 22:18:23 ID:Iz5L6+2y0.net
UACの回避法についての質問であってAutoHotkey関係ない件

830 :名無しさん@お腹いっぱい。 :2020/02/02(日) 04:24:20.95 ID:fsCu82Qy00202.net
Runasで解決しそうじゃん

831 :名無しさん@お腹いっぱい。 :2020/02/02(日) 05:00:56.00 ID:mNfoQi9a00202.net
>>829
長文レスの連続だったが結局はahk関係ないよな、マジで同意する

832 :名無しさん@お腹いっぱい。 (アタマイタイー 4a09-unxX):2020/02/02(日) 06:07:36 ID:xJqdmfyP00202.net
UACの設定下げる事を拒む理由も分からん

833 :名無しさん@お腹いっぱい。 (アタマイタイー 6644-oZmp):2020/02/02(日) 16:06:20 ID:ua+O16JY00202.net
Gui,Add,UpDownって0.1〜10.0みたいな小数点対応はしていないのですか?。

834 :787 :2020/02/02(日) 20:35:45.97 ID:BBAscVbG00202.net
>>788-791
レスありがとうございます

休みの間色々検討した結果、意図することは、マクロで出来そうな気がしてきました
マクロでIEとの連携ですね

uwscというのも良さげですが、既存のもの使って、となるとやはりマクロかなと

AHKは、マウスジェスチャーで使ってるのですが、連携となるとマクロに分がありそうですね

835 :名無しさん@お腹いっぱい。 :2020/02/02(日) 20:38:57.45 ID:4FWtWLmZM0202.net
uwscはマクロの一種です
スクリプトも書けますが手順の保存再生できるので

836 :名無しさん@お腹いっぱい。 :2020/02/03(月) 02:26:25.69 ID:YrlH3/AV0.net
>>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

837 :名無しさん@お腹いっぱい。 :2020/02/03(月) 09:03:46.86 ID:JFIzm4Vd0.net
>>835
834の言ってるはExcelVBAマクロの事だと思うよ
UWSCもAHKもExcelVBAもマクロ
ただ、当のExcelVBAについては、操作手順を記述してるわけじゃないから、マクロからかなり逸脱してる感あって、
一番マクロじゃないのだけをマクロと呼んでる事に、もやっとする

838 :名無しさん@お腹いっぱい。 (ワッチョイWW 5de5-SuLP):2020/02/03(月) 10:56:49 ID:llPhOCHJ0.net
VBAには自動記録機能あるよ
そういう意味ではVBAもUWSCもAHKもマクロ機能のあるスクリプトだ

旧ahkには一応マクロ化ツールのAutoScriptWriterが同梱されてたが
なんか不完全でうまく記録されなかった記憶
ほとんどの人は使っておらず話題にもならなかった

839 :834 (ワッチョイWW b5b1-9jkA):2020/02/03(月) 20:49:50 ID:ZP73R6UN0.net
>>834です
当方の意図してたのはExcelVBAマクロです
マクロって、調べたらプログラミング全般の概念なんですね。言葉足らずでした

で、そのVBAで今日出社してやってみたんですが、オートメーションエラー連発!
なかなか難しいですね

840 :名無しさん@お腹いっぱい。 (ワッチョイ b758-56gX):2020/02/07(金) 02:45:59 ID:3oIzKiS00.net
・DOSコマンドをDOS窓表示せずにahkから実行したい

現在はDOSコマンドを拡張子.cmd のファイルに書き込んで保存し、
DOS窓を非表示にするためVBSファイルを作成してVBScriptから上記cmdファイルを vbHide 付けて実行
さらにahkからそのVBSファイルを実行する

という三度手間?な方法をやってるんだけど、もう少しスマートな方法ありませんか?

841 :名無しさん@お腹いっぱい。 (ワッチョイ 7fbe-RXZG):2020/02/07(金) 03:11:52 ID:y2s/VZ9K0.net
>>840
Run, Target,, Hide

842 :名無しさん@お腹いっぱい。 (ワッチョイ b758-56gX):2020/02/07(金) 03:38:26 ID:3oIzKiS00.net
>>841
ありがとうございます
ahkでもDOS窓非表示で実行できたんですね
勉強不足でした
おかげ様でVBSファイルを挟む必要なくなりました

843 :名無しさん@お腹いっぱい。 :2020/02/07(金) 05:15:25.66 ID:gVGECi9Gr.net
てか確かrunからDOSコマンド使えたような気がする

844 :名無しさん@お腹いっぱい。 (ワッチョイ b758-56gX):2020/02/07(金) 05:52:57 ID:3oIzKiS00.net
>>843
run, %comspec% /c でAHKからDOSコマンド実行できるみたいですが
一つのDOS窓で複数行のコマンド実行する方法が分からず
cmdファイルに書き込んでから実行してます
後出しになってしまい申し訳ありません

845 :名無しさん@お腹いっぱい。 (ワッチョイ b758-56gX):2020/02/07(金) 06:28:10 ID:3oIzKiS00.net
>>843
あ、すみません普通にできました
これでcmdファイルも不要になりahkのみで全て出来るようになりました
ありがとうございました

846 :名無しさん@お腹いっぱい。 (ワッチョイ d7dc-8Apu):2020/02/09(日) 00:12:08 ID:x40WBKc10.net
WinHide, ahk_class Button
たまにWinShowしてもウィンドウズボタンが表示されなくなるんだけど、解決策ないかな?。
今は仕方なく再ログインしてる。

847 :名無しさん@お腹いっぱい。 (ワッチョイ d7dc-8Apu):2020/02/09(日) 00:17:35 ID:x40WBKc10.net
あごめん、WinHide, ahk_class Shell_TrayWndだった。

848 :名無しさん@お腹いっぱい。 (ワッチョイ 376e-56gX):2020/02/09(日) 00:54:57 ID:bRFqNBrR0.net
>>847
Shell_TrayWndってタスクバーのことだろ?

F1::
WinHide, ahk_class Shell_TrayWnd
Return

F2::
WinShow, ahk_class Shell_TrayWnd
Return

だけのスクリプトで試したけど何も問題無いぞ
そもそもこんなことしなくてもOS側設定の自動的に隠すオンと、WinActivateだけで事足りると思うんだが

849 :名無しさん@お腹いっぱい。 :2020/02/09(日) 03:21:09.07 ID:zu3MaBNR0.net
>>846-848
タスクバーとスタートボタンは別なので両方操作する必要がある
OnExitでスクリプト終了時にはWinShowさせると安全

ahk_exe Explorer.EXE ahk_class Shell_TrayWnd ; Taskbar
ahk_exe Explorer.EXE ahk_class Button ; Start Button

850 :名無しさん@お腹いっぱい。 :2020/02/09(日) 03:25:44.77 ID:xdymvCRc0.net
>>849
>>848ので普通に表示・非表示機能するが?

851 :名無しさん@お腹いっぱい。 :2020/02/09(日) 04:19:29.40 ID:zu3MaBNR0.net
>>850
win7以前  タスクバーとスタートボタンが別
win8     スタートボタンがない
win8.1以降 タスクバーとスタートボタンが一体型

スタートボタンだけ消えるならwin7以前だと思われるのでボタンも指定しないと

852 :名無しさん@お腹いっぱい。 :2020/02/09(日) 04:59:21.08 ID:xdymvCRc0.net
まだ7なんて使ってる奴居んのか・・・
もう完全にサポート終わってんのに

853 :名無しさん@お腹いっぱい。 :2020/02/09(日) 15:43:04.49 ID:Ocp+8UND0.net
>>836
イエース!有難う。

854 :名無しさん@お腹いっぱい。 (ワッチョイ d7dc-8Apu):2020/02/11(火) 23:56:48 ID:x/+BH3gC0.net
みんなタスクバーの件すまない。
Classic Shell絡みの問題で、完全に環境依存だった・・・。

855 :名無しさん@お腹いっぱい。 (ワッチョイ cb76-gRil):2020/02/13(Thu) 09:14:54 ID:esDus5ra0.net
式展開、変数展開を一切しないただのヒアドキュメントってどうやって書くんですか?
urls=
(
http://www.foo.net/search?q=aaa%20bbb
)
とかくと変数20bbbを展開しようとしたけどできなかった的なエラーが出てしまいます
ヒアドキュメントの中身をエスケープせずにエラーを取り除きたいです

856 :名無しさん@お腹いっぱい。 (ワッチョイ 1f11-swhV):2020/02/13(Thu) 09:29:49 ID:cbImo1Ju0.net
>>855
http://ahkwiki.net/

857 :名無しさん@お腹いっぱい。 (ワッチョイ b7be-Bd93):2020/02/13(Thu) 09:29:59 ID:UHeFoqSi0.net
(%
hoge
)

858 :名無しさん@お腹いっぱい。 (ワッチョイ dfb1-mCmx):2020/02/13(Thu) 21:49:14 ID:dCULbdKN0.net
「%」が一個だけなら「`%」でも良いのかな?よく分からんけど
数十個とか数多い時は>>857だよね当然

859 :名無しさん@お腹いっぱい。 (ワッチョイW 63bc-bduJ):2020/02/14(金) 03:33:04 ID:pw6jil4Z0.net
Windows10 x64日本語、AutoHotkey U64の環境で
WinTitle系の引数に日本語を書いたスクリプトをUTF-8で保存するとタイトルがマッチしないのはなんで?
ASCII文字だけにするとマッチするのは確認してます
あと何故かShift JISで保存するとマッチする
Unicode版とは一体

860 :名無しさん@お腹いっぱい。 (中止 b702-OOeE):2020/02/14(金) 08:26:21 ID:hIxdQ+FM0St.V.net
ちゃんとBOM付けて保存してるか?

861 :名無しさん@お腹いっぱい。 :2020/02/14(金) 19:10:29.35 ID:pw6jil4Z0St.V.net
>>860
完全にそれが原因でしたありがとう

862 :名無しさん@お腹いっぱい。 (ワッチョイ 0358-D5WE):2020/02/19(水) 21:51:29 ID:PeAf8/1k0.net
古い自社製アプリの画面に、CB FF 00..などのデータが
EXCELのセル状に縦横に並んでいます。
Windows spyで調べると、ClassNN:MSFlexGridWndClass##と表示されました。
この中から或る位置のセルの値を取り出したいのですが、方法が分からないです。
どうすればよいか、何か情報頂きたいです。

863 :名無しさん@お腹いっぱい。 (ワッチョイ 230d-p4c1):2020/02/20(Thu) 01:34:34 ID:55zU6WW20.net
>>862
VB6 フレキシブルグリッド(MSFlexGrid)コントロール
ListViewならSendMessageでメッセージ送れば操作や取得できるが
MSFlexGridにはメッセージが用意されて無いらしい(ざっと検索した限りでは)
アプリ側で何かしら用意されて無いなら外部から取得できないと思う

代案としては
アプリですべて出力できるならそこから抜き出す
座標やキー入力で移動してCtrl+C

864 :名無しさん@お腹いっぱい。 (ワッチョイ a38d-icXw):2020/02/20(Thu) 17:21:06 ID:luePz1Sb0.net
タブレットペンの「消しゴム」に該当するキーってあります?
SAI Ver2などのペイントソフトで、タブレットのボリュームボタンなどを押している間だけ一時的に消しゴムツールに切り替えたいのですが
単純にeキーを割り当てると、ボタンを離した後もツール自体が切り替わってしまい困ってます

865 :名無しさん@お腹いっぱい。 (ワッチョイ 23e5-dWJr):2020/02/20(Thu) 18:10:35 ID:/B+c6ePE0.net
>>864
SAIは使ったことないが過去にPhotoshopで似たようなことしてた人がいたよ
https://hibari.5ch.net/test/read.cgi/software/1317156599/195-204

ググってで出てきたショートカット集によるとSAIもキー押しっ放しで一時切り替えモードになるみたいだし
押してる間中キーリピート発生させ続ければいけるのでは
http://blackstraycat.nobody.jp/digitalillustration/painttool-sai/painttool-sai-shortcut.html

866 :名無しさん@お腹いっぱい。 (ワッチョイ 631c-Nz9x):2020/02/21(金) 22:05:20 ID:Oardne8I0.net
>>864
AHKでやるとしたらボタンを押したときにE、ボタンを離したときにNやVを送って鉛筆や筆ツールにするとかその程度
「押してる間だけ」とか「一つ前のツールに戻る」みたいな機能がSAIというソフト側にあるかどうかはSAIの問題であって
AHKと関係ないのでスレチ
一行目の聞き方からしてAHKが何をするソフトか根本的に分かって無さそう

867 :名無しさん@お腹いっぱい。 :2020/02/22(土) 01:57:19.30 ID:F7J0Py2h0.net
KeyHistory (AHKウィンドウの Key History and script info)で操作履歴は追えるから
ペンタブで消しゴム使った直後に見ればどういうキーコード吐いてるかはわかるよ
多分 eキーリピートしてるだけな気がするけど

868 :名無しさん@お腹いっぱい。 :2020/02/22(土) 12:56:15.49 ID:0s4DtZjs0.net
クライアント領域の幅と高さを取得できる方法ってある?
WinGetPosだとウインドウ領域の幅と高さしか取得できなくて困ってる

現状やってる取得方法

WindowSpyのActiveWindowPostionのwの差とhの差を自力で計算→それぞれwidthDifference, heightDifferenceと定義する
A
WinGetPosでwWidth, wHeightを取得
B
cWidth := wWidth - widthDifference
cHeight := wHeight - heightDifference

こんなめんどいことしなくてもWinGetPosでクライアント領域の幅高を一発で取得したい
それが無理ならせめて➀の自力計算の部分だけでもなんとかならないかと思う
ActiveWindowPostionのClientのw,hだけでも取得できれば…

誰かヒントでもいいからお願いします

869 :名無しさん@お腹いっぱい。 :2020/02/22(土) 13:21:41.85 ID:7FrnOqnoM.net
GetClientRect

870 :名無しさん@お腹いっぱい。 :2020/02/22(土) 14:00:48.91 ID:0s4DtZjs0.net
AHKにクライアント領域の幅高の組み込み変数って実装されてないのかな?
WindowSpyにあるからありそうではあるんだけど…まあとりあえず解決

>>869
ありがとう助かった
DllCall使うのは頭になかった

871 :名無しさん@お腹いっぱい。 (ワッチョイ cf44-dW+f):2020/02/22(土) 14:15:22 ID:sYYV+jbj0.net
exeの指定アドレスに数値を書き込みたいんですけど、参考になるサイト等はありますか?。

872 :名無しさん@お腹いっぱい。 (ワッチョイ 23bd-L7zd):2020/02/22(土) 22:48:11 ID:d6k+6QIl0.net
「現在何か作業中である」というのを AHK で感知するにはどんな方法があるでしょうか
現在は以下のようなスクリプト (AHK x64 用) で画面の電源状態を取得しているのですが
最近たまに動かなくなってしまいました
スクリプトはかなり前にいろいろ調べながら書いたもので、内容はほとんど理解していません
(無駄に関数化されていますがご容赦ください)

873 :名無しさん@お腹いっぱい。 :2020/02/22(土) 23:20:25.65 ID:ezexSTr8a.net
>>872
A_TimeIdlePhysical という便利な変数がある
「作業」というのが具体的にはどんな内容を想定しているかわからないが
自分の用途ではそれを見ることで判定できている

874 :名無しさん@お腹いっぱい。 :2020/02/22(土) 23:37:39.08 ID:ezexSTr8a.net
>>871
「exeの指定アドレス」て実行中に使用されている
メモリ中のアドレスを書き換えたいってことじゃなく
EXEファイル中の特定アドレスを書き換えたいってことだよね
単に
File := FileOpen(Filename, "rw")
して
File.Seek(Distance, [, Origin = 0])
して
File.RawWrite(VarOrAddress, Bytes)
すればいいように思うけど

875 :名無しさん@お腹いっぱい。 (ワッチョイ 43b1-p4c1):2020/02/23(日) 11:15:48 ID:pxQEnU210.net
ラベルの動的生成ってできませんよね?

なので、必要な個数のラベルを羅列したfileを動的生成し、
そのfileを追加スクリプトとして読み込もうと思ってますが、
この方法であってるでしょうか?

876 :名無しさん@お腹いっぱい。 :2020/02/23(日) 11:27:04.07 ID:pxQEnU210.net
それとも >>237 みたいに唯一のラベルに飛んでから
処理を分岐というのがスマートですか?
とりあえず >>237 さんの方法でやってみます。
ありがとうございました。

877 :名無しさん@お腹いっぱい。 :2020/02/23(日) 11:27:07.71 ID:2+m3euNG0.net
>>875
何やりたいんだかイメージできないけど
複数回その処理した場合ラベル名が重複してたら破綻するし
重複しないならしないで際限なくスクリプトが増えてきそうな気もするし
単純な文字列処理にすることはできないのか

例えばポップアップメニューのラベルということなら
ラッパー関数作ってしまえば
key := Menu("&File,&Edit,&Help");
if(key = "F")
  ...
if(key = "E")
 ...
と表向きラベルに依存しない実装にすることもできる

878 :名無しさん@お腹いっぱい。 :2020/02/23(日) 13:57:45.64 ID:0PLAAEEu0.net
どうしてラベルの動的生成とかって発想になるのか、、、
詳細がわからんので何ともだが
このままだとどのみちif文のお化けになりそうな予感
ifをloopで回すとかで綺麗に書けると思うぞ

879 :872 (ブーイモ MMff-L7zd):2020/02/23(日) 17:06:19 ID:v9Hizc1sM.net
>>873
それを忘れていました。ありがとうございます。
投稿規制にあってスクリプトはアップできませんでした

880 :名無しさん@お腹いっぱい。 :2020/02/23(日) 18:49:49.06 ID:xgQ7ijY50.net
>>874
先生、もう少し具体的にお願い出来ないですか?。
例えばtool.exeのアドレス”0028ABA1”から”00 00”を”10 10”に書き換えたいのです。

881 :名無しさん@お腹いっぱい。 :2020/02/23(日) 18:56:49.81 ID:Qp2poSFh0.net
>>880
ここはクレクレスレじゃないからあとはwikiで使い方勉強しな

882 :名無しさん@お腹いっぱい。 :2020/02/23(日) 19:29:40.06 ID:0PLAAEEu0.net
バイナリーファイルのオフセットのことをアドレスとか言われることに違和感しか感じない

てか動的に実行ファイル書き換えてなにしたいんだろうね
そもそもahkでやるべき処理じゃない気がする
exe複数作って呼び分けりゃいいだけのような

883 :名無しさん@お腹いっぱい。 (イルクン MMdf-VJax):2020/02/23(日) 21:37:04 ID:obxOZYA5M.net
アセンブラやってた頃は普通にアドレスって使ってたわ
stirlingとか使って手作業でやるんじゃあかんんの?
それかマクロ機能のあるテキストエディタでバイナリモードでゴニョゴニョするとか

884 :名無しさん@お腹いっぱい。 :2020/02/23(日) 22:26:37.57 ID:nVMPXZkZa.net
>>880
利用場面がよくわからないが
使うなら必ず元のファイルを別箇所に保存した上で

https://pastebin.com/zKBrmi8v

一回書き換えるためだけにこれを使うなら

>>883 さんのいうように
https://www.vector.co.jp/soft/win95/util/se079072.html
のようなバイナリエディタ使うほうが
自分が何をしているのか直接はっきりわかるので安心感があると思う

どっちみち書き換えた後に確認するだろうし

あと
書き換え後の10 10がもし10進だとすれば当然
NumPut() のパラメータは 0x0A0A となります

ここではたまたま1バイト目も2バイト目も0x10(または0x0a)だけど
下位バイトから先に書き込まれるので
もしデータが0x1234ならファイルに書かれる順番は0x34 0x12になるので注意

885 :名無しさん@お腹いっぱい。 (ワッチョイ ffdc-dW+f):2020/02/24(月) 00:00:14 ID:lBWWHpPw0.net
>>884
ありがとうございます!このスクリプトは墓まで盛っていきます!。
ところで5バイト書き込みたいのに、4バイトしか書き込まないのは何故でしょうか?。
(&datToWrite, 5)にしているんですけどね。

886 :名無しさん@お腹いっぱい。 :2020/02/24(月) 13:03:34.74 ID:EVs7CHWY0.net
>>885
”00 00”が5バイトなら、>>884の説明はかなり外れている
その上で書き込まれた4バイトが期待通りのはずは無いのにそれについて言及してないのは何故?

887 :名無しさん@お腹いっぱい。 :2020/02/24(月) 14:23:08.95 ID:dYC5j4aEa.net
>>885
まず
https://pastebin.com/zKBrmi8v
でNumPut()のtype指定に間違いがありました
同じURLで訂正版を上げました
NumPut(... UInt)
は間違いで
NumPut(... "UInt")
が正しい指定です
さらにサンプルで実際に書き込むのは2バイトなので
"UShort"の指定があれば足ります

指定を間違っていると
デフォルトの"UInt"が指定されたとみなされます
この場合は結果として"UInt"が指定されたのと同じことになります
指定されているtypeがUInt(Int)だと4バイト分のサイズなので
下位バイト分以上のデータは入りません
参考 UChar:1バイト UShort:2バイト UInt:4バイト UInt64:8バイト
またRawWrite()で有効なサイズ以上の書き込みサイズが指定されると
不足分には0x00が書き込まれます
なので5バイトのデータを書き込みたければ"UInt64"を使う必要があります
8バイト以上のデータを書き込みたければ
単純にNumPut()とRawWrite()を続けて使えば続けて書き込まれます

たとえば
すべてNumPut()で"UChar"1バイトのデータを指定し
RawWrite()で1バイトづつ書いていけば
サイズや書き込まれる順番などを考えず書き込むことができます

888 :名無しさん@お腹いっぱい。 :2020/02/24(月) 14:24:16.08 ID:dYC5j4aEa.net
>>886 の指摘があるまで
"00 00"を5バイトのデータとは思いもしなかった
そういうことなのか?
"00 00"という文字列を"10 10"という文字列で
上書きしたいということなのか?
サンプルはあくまでも
0x00, 0x00の2バイトを0x10,0x10の2バイトで上書きする
という例です

889 :名無しさん@お腹いっぱい。 (アウアウウーT Sae7-lut+):2020/02/24(月) 14:54:03 ID:dYC5j4aEa.net
もしやりたいことが文字列の書き換えだとすると

実行するAutoHotkey*.exeが
A32版で書き込み先のEXE中の文字列も
CP932やANSIなのだとしたら
datToWrite := "10 10"
としてRawWrite()で5バイト書き込めばいいと思うが

AutoHotkey*.exeがU版で書き込み先の対象文字列がCP932やANSIの場合
AutoHotkey*.exeがA版で書き込み先がの対象文字列がUTF16LEなどの場合
はそれぞれの状況に合わせて対応する必要がある

890 :名無しさん@お腹いっぱい。 :2020/02/24(月) 17:25:33.16 ID:lBWWHpPw0.net
>>889
やりたい事が全て出来ました!。
クレクレ君で申し訳なかったですけど、本当にありがとうございました。
他の皆さんにも申し訳なかったです。

891 :名無しさん@お腹いっぱい。 :2020/02/24(月) 18:55:55.05 ID:dYC5j4aEa.net
>>887
>下位バイト分以上のデータは入りません
下位4バイト分以上のデータは入りません

>>888
>0x00, 0x00の2バイトを0x10,0x10の2バイトで上書きする
>という例です
正確には書き換え元のデータをチェックすることはなく
指定位置の2バイトを0x10,0x10の2バイトで上書きするという例です

>>889
文字として扱う場合には文字コード変換を考える必要があるが
短いデータならもちろんバイナリを直接指定可能
"10 10"のバイナリは ASCII だと 0x3130203130
UTF-16LE だと 0x00310030002000310030 なので

; ASCII/CP932
NumPut(0x3031203031, &datToWrite, 0, "UInt64")
File.RawWrite(&datToWrite, 5)
; UTF-16LE
NumPut(0x300031002000, &datToWrite, 0, "UInt64")
; 最初に"10 "だけ書き、次に残りの"10"を書く
File.RawWrite(&datToWrite, 6)
File.RawWrite(&datToWrite, 4)
もちろん実行するのがA版でもU版でも問題ない

>>890
"00 00","10 10"というのは文字列の例だったのか
それとも2バイトのバイナリデータの例で
5バイトというのはそれとはまた別の例だったのか
どっちだったの

892 :名無しさん@お腹いっぱい。 :2020/02/24(月) 19:15:12.50 ID:3dtV+3Wi0.net
迷惑きわまりない

893 :名無しさん@お腹いっぱい。 (イルクン MMdf-VJax):2020/02/24(月) 20:09:50 ID:611TGluuM.net
クレクレにやりたがり説明したがりが加担すると猛烈に面倒くさくなるという実例
クレクレはクレクレなので細かく説明されてもわかりませんてなもんだろうし
こうなると誰のための長文なのか謎

894 :名無しさん@お腹いっぱい。 :2020/02/24(月) 20:23:03.96 ID:/MP7M1wt0.net
知識ひけらかしたいだけのゴミクズ

895 :名無しさん@お腹いっぱい。 :2020/02/24(月) 21:14:01.12 ID:EVs7CHWY0.net
これはクレクレになりすました吊りだろ

896 :名無しさん@お腹いっぱい。 :2020/02/24(月) 22:24:56.38 ID:8wlFL2l+0.net
なにもしていない人が文句だけ言いに出てくる方が迷惑

897 :名無しさん@お腹いっぱい。 :2020/02/24(月) 23:11:47.59 ID:lBWWHpPw0.net
>>891
2バイトバイナリの例だったんです。
試しに5バイト書き込んでみたら4バイトしか書き込めなかったので、追加でお尋ねした次第です。
紛らわしくて申し訳ないです。
改めて有難うございました。

898 :名無しさん@お腹いっぱい。 :2020/02/24(月) 23:40:29.31 ID:dYC5j4aEa.net
>>897
ありがとう
そういうことかと
わかってスッキリしました

899 :名無しさん@お腹いっぱい。 :2020/02/24(月) 23:59:35.92 ID:ukQ72hwI0.net
自己満足オナニーを見せびらかすのが趣味のキチガイ

900 :名無しさん@お腹いっぱい。 :2020/02/25(火) 14:02:29.67 ID:ZSNcjZkB0.net
x=a かつ y=b  の時 って if (x=a && y=b) って書きますけど

x=a かつ y=b かつ zはc か d の時場合に〜をするって書きたい時は
if (x=a && y=b && (z=c || z=d ) )
って書き方って正しいんですかね?
動いてはいるんですけど、偶々なのか仕様上アリな書き方なのか

901 :名無しさん@お腹いっぱい。 :2020/02/25(火) 16:28:56.89 ID:9JpJZY+40.net
>>900
何を気にしてるかいまいちわからないけど、
If(...) は、() 内の式の演算結果が0かそれ以外かで条件分岐を行うコマンド
式は演算子や関数、()等を組合わせて複雑な処理が行える(どうもAHK的には()は演算子(operator)ではなくsub-expressionらしい)
&&も||も=も、+-*/とかと同じ演算子の一種で、優先順位に従って前後を評価してるだけだから、仕様上普通にアリだぞ

902 :名無しさん@お腹いっぱい。 :2020/02/25(火) 17:02:57.72 ID:HxYSIL/v0.net
コピって正しく動くか確認しようとしたら正しく動かなくておや?と思ったら全角zだった
紛らわしいもん貼るなクソが
仕様上はありだろ

903 :名無しさん@お腹いっぱい。 :2020/02/25(火) 17:32:02.22 ID:ZSNcjZkB0.net
ありがとうございます
何かを気にしているわけでもなく、自分にとって初めてのパターンだったので
今後の為に確かめとこう、というだけです

904 :名無しさん@お腹いっぱい。 :2020/02/26(水) 14:06:22.50 ID:7F6rsf3I0.net
trimって`tは使えますが、`nは効いてくれないっぽいですね?
正規表現の方で取り除きますか。
用意されてる位だからtrimの方が正規表現より処理が高速なんだと思いますが

905 :名無しさん@お腹いっぱい。 :2020/02/26(水) 15:16:59.88 ID:c4GFwtAD0.net
>>904
`r 忘れてませんか?

906 :名無しさん@お腹いっぱい。 :2020/02/26(水) 15:24:07.37 ID:7F6rsf3I0.net
>>905
即できました。感謝です

907 :名無しさん@お腹いっぱい。 (ワッチョイ ff90-1B47):2020/02/27(Thu) 21:31:24 ID:AaLdFJJt0.net
AHK で今やっていることの一部 (テキスト処理) などを Python に移植・移行させようと検討中
なにかアドバイスいただけないでしょうか

908 :名無しさん@お腹いっぱい。 (ワッチョイ 9fcf-/0SP):2020/02/27(Thu) 21:56:51 ID:XNLpv4aZ0.net
ここはヤフー知恵袋ではありません
検討が終わって「試した結果」アドバイスがほしいなら
その試行結果を書きましょう

909 :名無しさん@お腹いっぱい。 (ワッチョイ 46a5-DFeu):2020/02/27(Thu) 22:14:57 ID:KO2TY9Xf0.net
>>907
適切なアドバイス:やる気、根気、元気

910 :名無しさん@お腹いっぱい。 :2020/02/27(木) 23:28:22.65 ID:paT1bPoi0.net
PyAutoGuiってのを使えばできるんじゃない(よく知らない)

911 :名無しさん@お腹いっぱい。 (ヒッナー 4adc-I9gd):2020/03/03(火) 19:37:26 ID:Be6uMdaa00303.net
同一サイズのファイルを比較して分岐したいんですけど、VersionやCRC32比較以外で使用出来るコマンドってありますか?。

912 :名無しさん@お腹いっぱい。 (ヒッナーT Sa2f-p7ie):2020/03/03(火) 21:53:29 ID:nxxZcT/xa0303.net
ファイルのサイズが同一のときに、そのファイル同士の何を比較したいのか
要求をもってる本人しかわからないのでは

913 :名無しさん@お腹いっぱい。 (ワッチョイ cb76-tZ9n):2020/03/06(金) 02:01:57 ID:kl9tBovc0.net
powershell compare file (hash)
でググってPSに丸投げするのが楽そう

914 :名無しさん@お腹いっぱい。 (ワッチョイ 0f76-g6LZ):2020/03/06(金) 02:08:23 ID:fycGgJoa0.net
AHKにMGLの関数をIncludeで移植できないですか?
横スクロール関数とかそのまま使いたいんですが

915 :名無しさん@お腹いっぱい。 (ワッチョイW 4be5-eQKf):2020/03/06(金) 13:28:07 ID:2PcikLRF0.net
依存関係がなく単体で動く関数集ならいける
外部関数やグローバル変数参照してるなら適宜修正
ここよりMGLスレで聞くほうがいいのでは?

916 :名無しさん@お腹いっぱい。 :2020/03/06(金) 15:28:23.83 ID:fycGgJoa0.net
確かにそうですね。

ところで、AHKで、Shift+Wheelに横スクロールをあてる方法がわからないのですが、
うまい方法はありませんか?

それこそMGLの作者様はうまい方法でそれをしていたのでIncludeしたいと思ったわけですが、
それを解析できるほどの能力はなく、困っています。

917 :名無しさん@お腹いっぱい。 (ワッチョイ 9faa-xiWk):2020/03/06(金) 15:42:14 ID:vpOIQ0360.net
>>916
普通にリマップでShift+Wheelに横スクロールを割り当てればいいだけ
やり方はwikiに書いてあるし、その通りにやって出来ないというならまずそのスクリプトを貼れ
調べもせずに答えクレクレしてるならお門違い

918 :名無しさん@お腹いっぱい。 (ワッチョイ cbb1-5EiH):2020/03/06(金) 16:13:50 ID:ZxS77oU90.net
>>916
>>1のアップローダに「AccelScroll.ahk」ってあるからそれ利用すれば良いんでないかい(改造は必要だと思うけど)

919 :名無しさん@お腹いっぱい。 :2020/03/06(金) 16:24:37.14 ID:wYD9JGiR0.net
>>918
ただリマップするだけならそんな余計な手間かける必要ないだろう
たった二行書くだけなんだからリマップの使い方調べた方が早い
リマップすら分からん奴がそれの中身を調べる方が遥かに手間がかかるわ

920 :名無しさん@お腹いっぱい。 :2020/03/06(金) 16:42:09.76 ID:ax+hR1Y10.net
#IfWinExist, ahk_class Fallout4
*RButton Up::
If (Toggle := !Toggle){
Send {Click Down Right}
}
Else{
Send {RButton up}
}
Return
これにshiftとwキー同時押しで右クリック押上の機能を追加したいと思い
~w & ~LShift::Send {RButton up}を書き足し

#IfWinExist, ahk_class Fallout4
*RButton Up::
If (Toggle := !Toggle){
Send {Click Down Right}
}
Else{
Send {RButton up}
}
Return
~w & ~LShift::Send {RButton up}
これで実行してみたが右クリック押下中にshiftとwキー同時押しするともう一度押下するのに二回右クリックする必要があった
上の問題を起こさずshiftとwキーで右クリック押上を追加する方法はありますか

921 :名無しさん@お腹いっぱい。 :2020/03/06(金) 17:09:41.48 ID:vpOIQ0360.net
>>920
WとLShiftを押したときにトグルをクリアすればいいんじゃね?
ちな問題とは関係ない余談だけどLShiftの前のチルダは不要かと

922 :名無しさん@お腹いっぱい。 (ワッチョイ 0f76-o1n2):2020/03/06(金) 19:49:27 ID:fycGgJoa0.net
すごい剣幕の人いて草
そんなにあっさりしたスクリプトならどうぞやってみていただいて。
まあ普通に割り当てる「横スクロール」があればの話だけど

923 :名無しさん@お腹いっぱい。 (ワッチョイ 9f31-xiWk):2020/03/06(金) 19:53:36 ID:ncNTsugM0.net
>>922
は?あるぞ?
どこにすごい剣幕の人が居るのかも分からんけど

924 :名無しさん@お腹いっぱい。 (ワッチョイ 6bee-Ff7g):2020/03/06(金) 20:59:17 ID:RZyYlbFQ0.net
>>923
>>917,919
この人ですよ

925 :名無しさん@お腹いっぱい。 (ワッチョイ 3bcf-Inmc):2020/03/06(金) 21:00:46 ID:zXXWZlRK0.net
このスレ定期的にガイジが登場するね!

926 :名無しさん@お腹いっぱい。 (ワッチョイ 9f31-xiWk):2020/03/06(金) 21:06:44 ID:ncNTsugM0.net
>>924
それのどこがすごい剣幕なんだ?的確なアドバイスじゃん
で、普通に割り当てる「横スクロール」は調べたの?
WinVistaの頃に「横スクロール」はOS標準APIになってAHKも対応してるぞ

927 :名無しさん@お腹いっぱい。 :2020/03/06(金) 21:18:35.26 ID:2PcikLRF0.net
単純にチルトを割り当てるレベルの話なら
+WheelUp::WheelLeft
+WheelDown::WheelRight
だけでいい

けどMGL内のMG_Scroll2() 相当のことがしたいという話ならいきなり面倒になるね
MG_Scroll2()の中身を見たが基本は WheelAccel.ahk (WheelScroll.ahk)からの改造っぽいので
とりあえずWheelScroll.ahkを#Includeで組み込んでみては
Shift+Wheelでの横スクロールはデフォでリマップされてるのでそのままでいけるはず

WheelScroll.ahk
https://w.atwiki.jp/eamat/pages/30.html

928 :名無しさん@お腹いっぱい。 :2020/03/06(金) 21:23:05.15 ID:ncNTsugM0.net
ほらな
質問の「Shift+Wheelに横スクロールをあてる方法」だけなら2行で済む話

929 :名無しさん@お腹いっぱい。 :2020/03/06(金) 21:28:04.94 ID:PlejuA1b0.net
そもそも、どのソフトに対して横スクロールを割り当てたいのかということも含めて
途中経過でいいから自分なりに作ってみたものを出すべきでしょう

930 :名無しさん@お腹いっぱい。 :2020/03/06(金) 21:39:18.65 ID:fycGgJoa0.net
「普通のやり方」では普通に動作してたわ
ごめんやでみんな

+WheelDown::Send, {WheelRight}
Return
+WheelUp::Send, {WheelLeft}
Return

ゆっくりスクロールしてみたら確かに横スクロールしていったけど、
普通に弾くようなスクロールだとスクロールがされないソフトもあるようで、気が付かなんだ

MGLの組み込み関数だとこれがしっかり動作してるけど、何が違うんだろう

ジェスチャー入力後にトリガー押しっぱのホイール回転で音量調整とか作れるくらいには
リファレンス読んでるけど、なにせ素人でこれ以上はわからなかった

931 :名無しさん@お腹いっぱい。 (ワッチョイ cbb1-bQEa):2020/03/06(金) 22:20:27 ID:pYjTh7GO0.net
最初から素直に言うこと聞きゃいいのに何で悪態付くんだか

932 :名無しさん@お腹いっぱい。 (ワッチョイ eb58-xiWk):2020/03/06(金) 22:22:43 ID:jUknvGm+0.net
何が違うんだろうって関数の中を見たなら全く違うのは分かるでしょ
チルトホイールは回転じゃなくて押し倒した状態をホールドする機構だから、ホイールの回転に割り当てても
アプリ側の想定とは違うタイミングでイベントが発生して思ったように動かない場合も当然あるよ

933 :名無しさん@お腹いっぱい。 (ワッチョイ ef84-o1n2):2020/03/06(金) 22:33:27 ID:rpP0pfcH0.net
弾くようなスクロールとか言ってる時点で普通のマウスじゃないんじゃね
普通のマウスホイールはカチカチ感があって弾くような操作はしないし
標準の横スクロールに対応してるソフトなら>>927の2行だけで問題なく正常に動く

934 :名無しさん@お腹いっぱい。 :2020/03/06(金) 22:41:59.61 ID:+mYlIqSa0.net
つまり馬鹿ってことだな

935 :名無しさん@お腹いっぱい。 :2020/03/06(金) 23:29:43.95 ID:693LAOZx0.net
ID:fycGgJoa0 は素直に謝ってるのに、皆して攻撃しなくても……。

936 :名無しさん@お腹いっぱい。 :2020/03/07(土) 00:05:52.60 ID:2hfOjEC40.net
>>920
~w & LShift だけの場合
修飾キーw を先に押す必要があるので同時押しすると1/2の確立で失敗する
修飾キーShift も追加すると同時押し対応になる

#IfWinExist A
*RButton Up::
~w & LShift:: ; wを先に押す
~+w:: ; Shiftを先に押す
if (Toggle := !Toggle)
ToolTip Send {Click Down Right}
else
ToolTip Send {RButton up}
return
#If

Esc::ExitApp

937 :名無しさん@お腹いっぱい。 (ワッチョイ 4be5-qyrA):2020/03/07(土) 00:38:53 ID:/iw1tSxU0.net
>>930
スクロール関係のメッセージは縦横それぞれ2種類あって

縦ホイール(WM_MOUSEWHEEL) / 横ホイール(WM_MOUSEHWHEEL)
縦スクロール(WM_VSCROLL) / 横スクロール(WM_HSCROLL)

縦はさすがにホイールでスクロールできないアプリはほぼ駆逐されたので問題ないが
横(チルト)はいまだに対応していないアプリがちらほらある、ExcelとかExcelとかExcelとかな
なのでMGLではWM_HSCROLL使って動かしてる模様

あとアプリによってはスクロールバーがあちこちにあるので
マウス直下のコントロールを確実にスクロールさせるための特定処理とか
スムースに動かすための加速処理とか諸々

938 :名無しさん@お腹いっぱい。 :2020/03/07(土) 00:52:40.38 ID:3dqwd/ss0.net
>>936
WとShiftどっちを先に押すかはまあ両方書いておくに超したことは無いだろうけど
それだとshiftとwキー同時押し時も押すたびに{Click Down Right}と{RButton up}が交互になってしまうから
質問者のやりたいことと違う

質問者は
>shiftとwキー同時押しで右クリック押上の機能を追加したい
               ~~~~~~~~~~~~~~~
なので>>920の後半のスクリプトに
Toggle :=
を加えてWとShift同時押しした時にToggleをリセットすればいいだけ
そうすれば次に右クリック押すときは必ず{Click Down Right}に戻るから2回右クリックしなくて済む
あとコマンドが複数行になるからReturnも書き忘れずに

939 :名無しさん@お腹いっぱい。 :2020/03/07(土) 01:22:22.38 ID:2hfOjEC40.net
>>938 ご指摘ありがとうございます、失念していました。
>>936 修正しました

#IfWinExist A ; ahk_class Fallout4
*RButton Up::
~+w:: ; Shiftを先に押す
~w & LShift:: ; wを先に押す
if (Toggle := !Toggle && A_ThisHotkey == "*RButton Up")
ToolTip Send {Click Down Right}
else
ToolTip Send {RButton up}
return
#If

Esc::ExitApp

940 :名無しさん@お腹いっぱい。 :2020/03/07(土) 02:01:04.77 ID:2hfOjEC40.net
押されている場合のみ

#IfWinExist A ; ahk_class Fallout4
*RButton Up::
if (Toggle := !Toggle)
ToolTip Send {Click Down Right}
else
ToolTip Send {RButton Up}
return
#If

~+w:: ; Shiftを先に押す
~w & LShift:: ; wを先に押す
if (Toggle) {
Toggle = 0
ToolTip Send {RButton Up}
}
return

Esc::ExitApp

941 :名無しさん@お腹いっぱい。 (ワッチョイ 3b0c-gHpN):2020/03/07(土) 02:20:12 ID:m5Ine51e0.net
>>940
横からで申し訳ないんですが、文末に #if を記述する意味ってなんですか?

#IfWinExist A ; ahk_class Fallout4
*RButton Up::
if (Toggle := !Toggle)
ToolTip Send {Click Down Right}
else
ToolTip Send {RButton Up}
return
#If ← これ。文末は、return で終わるもんだと思ってたんですが。

942 :名無しさん@お腹いっぱい。 :2020/03/07(土) 02:36:13.74 ID:LDzhEuR80.net
このコードで快適にfallout4をtoggle adsで遊ぶことができるようになりました 920です
回答してくれた方ありがとうございました(´・ω・`)
エラーがでてコード書き込めなかった

943 :名無しさん@お腹いっぱい。 :2020/03/07(土) 03:44:00.38 ID:3dqwd/ss0.net
>>941
#IfWinExist A ; ahk_class Fallout4 から #If まで囲った範囲が全て条件分岐の対象ってこと
#IfとReturnは関係ない

例)
#IfWinActive, ahk_class Notepad ;メモ帳がアクティブな場合
F1::
Msgbox, Notepad F1
Return

F2::
Msgbox, Notepad F2
Return
#If ;ここまで。これより下はメモ帳がアクティブでない場合

F1::
Msgbox, F1
Return

F2::
Msgbox, F2
Return

944 :名無しさん@お腹いっぱい。 :2020/03/07(土) 04:27:04.26 ID:m5Ine51e0.net
>>943
なるほど。解りやすい説明ありがとうございます。

945 :名無しさん@お腹いっぱい。 (ワッチョイ 2b76-tZ9n):2020/03/07(土) 22:59:14 ID:+RomcdKr0.net
デバッグログ出力や
自身の.ahkファイル解析してショートカットキー一覧を表示する場合
.md形式で出力してrun,markdown viewerで表示するのが楽だな

946 :名無しさん@お腹いっぱい。 :2020/03/08(日) 01:43:49.31 ID:t7JaPqPz0.net
WinSet, Style, -0x00C00000, A
Sleep, 3000
WinSet, Style, +0x00C00000, A

これだとタイトルバーの下の数px分が消えない・・・・・
-0x00400000、-0x00800000、-0x00080000とかもやったけども変わらず
どしたら綺麗にタイトルバー消えるようになるべか?

947 :名無しさん@お腹いっぱい。 :2020/03/08(日) 03:24:14.14 ID:N6lYmqZp0.net
>>946
「OS ウィンドウ枠」でググる

948 :名無しさん@お腹いっぱい。 (ガックシ 067f-o1n2):2020/03/09(月) 13:03:10 ID:2KencZC16.net
>>937
ありがとう
今は一旦、かざぐるマウスでこの機能は使っていますが、
いずれはMGLに移行したいと思います

949 :名無しさん@お腹いっぱい。 (ワッチョイ cbb1-5EiH):2020/03/09(月) 20:53:57 ID:qCHS/UCW0.net
>>947
どうも
以前からレジストリのCaptionHeight → -270 にしてて
今回ggってPaddedBorderWidth → 0 としてみたけど
それでも残り2〜3pxぐらいが消えてくれなかった…

序でにBorderWidth → 0 やSmCaptionHeight → -270 にしてみても変わらずだった
中々うまく行かないな
あ、ahk 1.1.32.00 U32 win10 pro 64bit 1909という環境ですた(情報後出しスマン)

950 :名無しさん@お腹いっぱい。 (ワッチョイ 4b0d-Ff7g):2020/03/09(月) 23:03:43 ID:zkenNdqM0.net
>>949
タイトルバーの下だけ少し残るって見たこと無いから画像UPしてほしい

951 :949 :2020/03/10(火) 00:24:19.26 ID:fBPGX49e0.net
こんな感じなんだけど…
今になって気づいたんだけどスクリプト実行した時の「メニューバーの色」が白じゃないのは何故だろ?
(他のウインドウも同様)

タイトルバー表示:https://dotup.org/uploda/dotup.org2083742.png
スクリプト実行:https://dotup.org/uploda/dotup.org2083746.png

一応レジストリ設定も
https://dotup.org/uploda/dotup.org2083748.png

…う〜んこんな現象はいわゆる俺環ってやつなのかな?

952 :名無しさん@お腹いっぱい。 (ワッチョイ 4b0d-Ff7g):2020/03/10(火) 01:46:07 ID:0mQe+mq20.net
>>951
win10枠線の設定が有効になっている
スタート → 設定 または デスクトップ右クリック
個人用設定 → 色 → タイトルバーとウィンドウの境界線(既定チェックなし)


サイズ変更(0x00040000)も切らないと枠が消えないアプリがあったのでこれでテストしてみたら?
切るかどうかはWinGetでウィンドウスタイルを調べればいい

https://pastebin.com/AuD7BQ0R

953 :名無しさん@お腹いっぱい。 (ワッチョイ 0bc1-xiWk):2020/03/10(火) 01:46:25 ID:KqOKOizd0.net
俺も残るよ
Win10の仕様だと思ってた

954 :951 :2020/03/10(火) 19:47:06.79 ID:fBPGX49e0.net
>>952
>個人用設定 → 色 → タイトルバーとウィンドウの境界線(既定チェックなし)
ここはアクティブウインドウがどれか分からなくなるので個人的にチェック有りじゃないと駄目なんで

スクリプトどうも
そのスクリプト実行した結果ウインドウ下部が画像赤矢印のようになり上手く行かなかった(0X00C00000 ではならない)
https://dotup.org/uploda/dotup.org2084284.png
その後ggってみたものの海外でもタイトルバー消すのに 0X00C00000 使ってるケースが多いようで…

>>953
そうすか、俺環だけじゃないのね…

Win10の仕様と判断して諦めるわ(´・ω・`)

955 :名無しさん@お腹いっぱい。 (ワッチョイ b9b1-9blg):2020/03/12(Thu) 15:41:57 ID:YtMEv69+0.net
win奴隷にだけはなりたくない

956 :名無しさん@お腹いっぱい。 :2020/03/13(金) 13:40:58.49 ID:FajN12cx0.net
ひとつのスクリプトで、


LButton::
Send, {LButton Down}
return
LButton Up::
Send, {Blind}{LButton Up}
return

としておいて、別のスクリプトで、

GetKeyState, g_stateL, LButton, P

とやったら、マウス左ボタンを押しっぱなしにしていても
Uが帰ってきて、Lが来ない

どうしてでしょうか

957 :名無しさん@お腹いっぱい。 :2020/03/13(金) 13:58:43.47 ID:6RSofPyV0.net
>>956
Lってなんや?
実際にスクリプト2つ作って試したけど左ボタン押しっぱにしてるときは普通にDが返って来るぞ

958 :名無しさん@お腹いっぱい。 :2020/03/13(金) 14:02:16.81 ID:FajN12cx0.net
ありがとうございます。Dでした。おかしいなあ、私の環境なのかなあ
3時以降に時間が出来ますので、そこでまた詳細調べてみます

959 :名無しさん@お腹いっぱい。 :2020/03/13(金) 14:10:30.77 ID:6RSofPyV0.net
環境のせいにするより前に単なる勘違いやイージーミスをまず疑うべきだろ

○1.ahk
LButton::
Send, {LButton Down}
return
LButton Up::
Send, {Blind}{LButton Up}
return

○2.ahk
F1::
GetKeyState, g_stateL, LButton, P
msgbox, %g_stateL%
return

これを実行してF1だけ押せばU、左クリック押しながらF1押せばDが返って来る

960 :名無しさん@お腹いっぱい。 (ワッチョイ 01b3-Zv6Q):2020/03/13(金) 18:37:36 ID:FajN12cx0.net
○1.ahk
LButton::
Send, {LButton Down}
return
LButton Up::
Send, {Blind}{LButton Up}
return

○2.ahk
LButton::
Send, {LButton Down}
return
LButton Up::
Send, {Blind}{LButton Up}
return
F5::
GetKeyState, g_stateL, LButton, P
MsgBox,,, g_stateL = %g_stateL%,1
return

と、両方にLButtonのスクリプトがありました。
これだと、2.ahkを後にロードすると出来ますが、1.ahkを後にロードすると、Uしか返りません。

1.ahkだけ、2.ahkだけ、双方をロードして使うことがあるためこうなってしまっているのですが
これはしょうがないのでしょうか
必ず2.ahkをあとからロードするようにするしかありませんか

961 :名無しさん@お腹いっぱい。 (ワッチョイ a1b1-0uzQ):2020/03/13(金) 19:25:22 ID:LN/Q5YZj0.net
そのすく見る限りスクリプトは二つ必要ないでしょ
だから、○1.ahkは廃止して○2.ahkだけにする

○2.ahk
LButton::
Send, {LButton Down}
return
LButton Up::
Send, {Blind}{LButton Up}
return

#If (条件) ;ここで切り分けすれば良いと思う(例えばウインドウAがアクティブなら↓が働く、とか)
F5::
GetKeyState, g_stateL, LButton, P
MsgBox,,, g_stateL = %g_stateL%,1
return
#If

と、適当に答えてみる

962 :名無しさん@お腹いっぱい。 (ワッチョイ 01b3-Zv6Q):2020/03/13(金) 20:50:04 ID:FajN12cx0.net
なるほど、#ifを使ってきりわける方法がありましたか
実際のスクリプトはそんなに簡単ではないのですが、これはとても良い
ヒントになりました。ありがとうございました

963 :名無しさん@お腹いっぱい。 (ワッチョイW 0176-hwU2):2020/03/16(月) 20:33:25 ID:zDNwJGtk0.net
夜間モードのオンオフをキーボードのどこかに割り当てたいんですが、どう書けば良いですか?

964 :名無しさん@お腹いっぱい。 :2020/03/16(月) 22:38:48.18 ID:RukI6SGP0.net
>>963
まず、その動作の一連の流れを書き出す。後はそれをAutoHotkeyの記述に落とし込む
コマンドで対応できるなら確実で速い。ショートカットキーは分かりやすいから無難
マウスでしかできない部分は、それらに比べるとちょっと難しくなる

965 :名無しさん@お腹いっぱい。 :2020/03/17(火) 00:13:19.40 ID:PptbWypp0.net
>>963
https://www.reddit.com/r/AutoHotkey/comments/bl2rpo/a_script_to_toggle_the_night_light_in_windows_10/

966 :名無しさん@お腹いっぱい。 :2020/03/17(火) 00:55:30.05 ID:S4FhfJwN0.net
>>964,965
ありがとうございます

967 :名無しさん@お腹いっぱい。 :2020/03/20(金) 12:41:13.41 ID:YktARklY0.net
書き込みできないんだけどなんで?

968 :名無しさん@お腹いっぱい。 :2020/03/20(金) 12:43:27.15 ID:YktARklY0.net
できたので再開させてもらいます
利用者少ないかとは思うのですが、AHKv2 について質問させてください
以下のスクリプトを通常の AHKv1 で動かすと "a" というメッセージボックスが出ます
clrs := Object()
clrs[1, 1] := "ff0000", clrs[1, 2] := "00ff00", clrs[1, 3] := "0000ff"
clrs[2, 1] := "a", clrs[2, 2] := "b", clrs[2, 3] := "c"
MsgBox % clrs[2,1]
; AHKv2 のときは上の % を外す

969 :名無しさん@お腹いっぱい。 :2020/03/20(金) 12:44:04.66 ID:YktARklY0.net
しかし AHKv2 で動かすと下記のようなエラーがでます
私がオブジェクト型を理解していないことが原因ですが、次どうしてよいかさっぱりわかりません
識者のみなさんご教示願えないでしょうか

Error: This value of type "Object" has no property named "__Item".
--> 002: clrs[1, 1] := "ff0000"

970 :名無しさん@お腹いっぱい。 (ワッチョイ 0b69-6w0H):2020/03/20(金) 17:27:46 ID:alE7Ns8K0.net
ちら見なんでよく分かってないけどv2は配列の実装が変わったんじゃない?
なんかドキュメント見るとArray Objectを使うようになってるみたいだけど
__ItemはArray Objectの中で使ってる何かみたいだし

971 :名無しさん@お腹いっぱい。 :2020/03/20(金) 18:16:04.13 ID:8awlI5pq0.net
v2は、Arrayオブジェクトという配列用のものをObjectオブジェクトとは別に用意して、
Arrayオブジェクト用のプロパティはObjectオブジェクト自体に持たせなくなってる

v1(の途中から)は、Object()でもArray()でも動くけど、v2ではわかれている

972 :名無しさん@お腹いっぱい。 :2020/03/20(金) 18:19:51.89 ID:YktARklY0.net
ドキュメントを読むと Array() てのはベクトル型配列のみ対応のようで
複数行 x 複数列の行列型配列にはならないようなのです
2 x 複数なら Map() という型があるのですが、それもうまく行かず…
公式フォーラムも調べてみます

973 :名無しさん@お腹いっぱい。 :2020/03/20(金) 18:51:40.95 ID:8awlI5pq0.net
このスレッドはちょくちょく書き込みできなくなりますね

言語上1次元配列しかなくても、多次元配列は作れますし、やりたいことがわからないと
あまり何もいえないかもしれない

https://pastebin.com/aXgqrFQN

974 :名無しさん@お腹いっぱい。 (ワッチョイ 99bd-tqPe):2020/03/20(金) 20:06:33 ID:YktARklY0.net
>>973
おー、こんな方法もあるのですね。ご助言ありがとうございます
v1 用スクリプトを v2 用に移植しようとしていて
>>968 のような形で記載していた配列型オブジェクトが全然期待通りに動かず困っていました

やりたいことは縦 1,440 x 横 10-20 マトリックスの CSV ファイルを読み込み
(縦は 1 日あたりの分で 24 x 60 = 1,440、横はさまざまな項目)
時間毎に各項目を集計するのに多次元配列型オブジェクトを使っていました

975 :名無しさん@お腹いっぱい。 (ワッチョイW 2b73-t1ZY):2020/03/20(金) 20:10:43 ID:xBrxoFsB0.net
細かい内容しらないから何ともだけど
それってahkでやるべき処理なのかな
普通にpythonとか使ったほうがいい気がするんだけど

976 :名無しさん@お腹いっぱい。 (ワッチョイ 99bd-tqPe):2020/03/20(金) 20:11:34 ID:YktARklY0.net
本当は Python などの方がいいのかもしれませんが
自分は AHK くらいしかマトモに動かせないので
ちょっとしたルーチンの自動化は AHK にやらせることが多いのです
この用途別言語の点についてもご助言いただけますと助かります

977 :名無しさん@お腹いっぱい。 (ワッチョイ 99bd-tqPe):2020/03/20(金) 20:13:58 ID:YktARklY0.net
>>975 さんと投稿がかぶってしまった
先月から Python を学び始めたのですが若干コケまして、
あきらめて再度 AHK に戻ってきたのですが、何か学ぶ気はあったので AHKv2 に手を出した次第です

978 :名無しさん@お腹いっぱい。 :2020/03/20(金) 20:23:24.77 ID:xBrxoFsB0.net
自分に言ってたわけじゃないのか
ちょっとしたデータ処理ならいいと思うけど
集計となるとpythonでやったほうが楽だと思うけどね
python挫折したならしょうがない

979 :名無しさん@お腹いっぱい。 :2020/03/20(金) 20:47:06.60 ID:YktARklY0.net
>>978 そうなんですよ
keyhac という Python ベースのキーカスタマイズツールへの以降ついでに学んでいたのですが
Python は逆に情報があふれすぎていて独習するにはちょっとハードル高めでした
ちょうど先週くらいにモチベーション低下して今にいたります
また再開するつもりではいるのですけどね

集計目的なら R でもいいかもですね

980 :名無しさん@お腹いっぱい。 (ワッチョイ 0b76-cULp):2020/03/21(土) 19:49:48 ID:al5jEN1q0.net
OneNoteで文字を赤色にするホットキーとして、下記のように設定してみました。

^\::Send, {Alt}hf1{Down 7}{Left 4}{Enter}

結論としては希望の動作にはなりませんでした。
なぜか{Alt}が送信されていないようで、"hf1"と入力された後カーソル移動しました。
関係あるかはわかりませんが、SendModeはEventでもInputでも結果は同じでした。

そこで試しに、MouseGestureLで^\::から後ろを割り当てて見たところ、
こちらではなぜか正常にAltも送信され、赤文字にすることができました。

原因がわかりません。Altが阻害されるような要因として、何が考えられるでしょうか?
^\は他に使用していません。

981 :名無しさん@お腹いっぱい。 (ワッチョイ 0bba-ED79):2020/03/21(土) 20:23:09 ID:5n/nqQyA0.net
>>980
原因はCtrlを押してるからだろう
変換無変換キーやAppsKeyなどを修飾代わりに使えばAltを送信できる

どうしても ^\ でやりたいなら KeyWait を使ってCtrlを離した後にSendするとか

982 :名無しさん@お腹いっぱい。 :2020/03/21(土) 21:49:16.10 ID:EIvdEDpE0.net
>>980
^\ Up::
IME_SET(0)
Send, !hf1{Down 7}{Left 4}{Enter} or Send, {Alt}!hf1{Down 7}{Left 4}{Enter}
return

983 :名無しさん@お腹いっぱい。 :2020/03/21(土) 22:04:03.93 ID:rtzpQlb30.net
>>982
!h は質問者のやりたい事と違うやろ

>>980
質問者もまずはメモ帳とか誰でも試せるソフトで動作確認した方がいいぞ
その方が答える側も検証しやすいし

^\::
KeyWait, Ctrl
Send, {Alt}vs ;メモ帳のステータスバー表示/非表示
Return

984 :名無しさん@お腹いっぱい。 (ワッチョイ 0bf2-ED79):2020/03/21(土) 22:10:49 ID:rqhRpjO/0.net
>>980
Wikiによると、Sendコマンドが始まるとき、仮想的に修飾キーを離した状態になる と書いてある
でも、Key History 見ると、なぜか、Ctrl up がAlt down , up の後に来てるね

試しに、{Alt} の前に、{Ctrl up} を入れてみたら、うまく動いたよ

985 :名無しさん@お腹いっぱい。 :2020/03/21(土) 23:54:21.38 ID:al5jEN1q0.net
皆さんありがとうございます。
トリガーのCtrlの影響が尾を引いているとは思いませんでした。
お陰様で解決いたしました。

また、修飾キーのUpが遅れる現象について、把握いたしました。

>>981
>>983
KeyWaitを使う方法もあるのですね。勉強になります。

>>983
検証しやすい状況設定について、配慮が足りていませんでした。以後気をつけます。
ご指摘ありがとうございます。

>>984
KeyHistoryを見る発想がありませんでした。未熟でした。ありがとうございます。
KeyWaitもよいですが、強制的にUpを入れてしまう方が直感的ですので、採用させていただきます。

986 :名無しさん@お腹いっぱい。 (ワッチョイ 5590-2iv1):2020/03/26(Thu) 21:52:04 ID:mJhZa4a/0.net
https://www.autohotkey.com/boards/viewtopic.php?t=70645
このページをみながら、AHK x64 でディスプレイの状態取得を試みています。
それで下記スクリプトを書いてみたのですが、どうにも動きません。
おそらく例題ページのスクリプトは AHK x86 用で、AHK x64 にするにはポインターサイズなどを
再検討せねばならないのでしょうが、そのあたり全然理解していません。
どこがダメなのか、ご教示いただけないでしょうか

987 :名無しさん@お腹いっぱい。 (ワッチョイ 6911-s0li):2020/03/26(Thu) 22:04:32 ID:aty0SoET0.net
この手口は前にも見た

988 :名無しさん@お腹いっぱい。 :2020/03/26(木) 22:11:19.15 ID:mJhZa4a/0.net
だめだコードを載せようとすると規制で書けない…

989 :名無しさん@お腹いっぱい。 :2020/03/26(木) 22:13:53.38 ID:mJhZa4a/0.net
hDISP := RegisterPowerSettingNotification("{6fe69556-704a-47a0-8f24-c28d936fda47}")
OnMessage(0x218, "WM_POWERBROADCAST")
OnExit(Func("UnRegisterNotification").Bind(hDISP))

990 :名無しさん@お腹いっぱい。 :2020/03/27(金) 05:00:20.34 ID:t1j7w9SC0.net
>>1では64bitOSには64bit版を推奨してるみたいだけど
自分の場合64bit版にするメリットとデメリット比べたらデメリットしかなかったから32bit版使ってるな
32bit時代(XP、7)に集めた32bitで動くスクリプトが使えなくなるのは大変なことだからねえ(直せるスキル無いし)

991 :名無しさん@お腹いっぱい。 (ワッチョイ 09e5-F5Qr):2020/03/27(金) 14:41:36 ID:iIR98/+J0.net
>>986
その記事の投稿 2019年だしポインタ型はUIntじゃなくてPtr使ってるし
POWERBROADCAST_SETTING構造体のポインタ位置も下にある 2012 の説明から変わってないんで86/64関係ないと思うけど
自分で判断できない時は AutoHotkeyA32.exe / AutoHotkeyU32.exe に.ahkドラッグしてx86で動くのか確認したらいいと思うよ

というか>989じゃなくてWM_POWERBROADCAST() の中身晒してくんないと
そのままコピペじゃBeep鳴るだけで値をどうにかする処理入ってないし
うちでは msgbox,% NumGet(lP+20,0,"uInt") 追加して
電源オプションでディスプレイの電源切る設定を1分にしてから実行したら変化値取れてたけど

>>990
旧版AHKからLへの移行では64化よりUnicode化のほうが手間恩恵共に大きかったけどね
過去スプリクトのエンコードを全部SJISからUTF-8に保存しなおし AをWに直すのは結構骨が折れたが
2byte圏でANSI版を使い続けるのはデメリットがでかすぎた
x64へのPtr対応はそのついで修正で案外たいしたことはなかった
98/2000時代に集めたスプリクトはさすがに捨てた

992 :名無しさん@お腹いっぱい。 (ワッチョイ 09e5-F5Qr):2020/03/27(金) 14:43:23 ID:iIR98/+J0.net
次スレ立てられなかったので誰かよろしく
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512

■配布元
http://ahkscript.org/download/

■前スレ
AutoHotkey スレッド part27
http://egg.5ch.net/test/read.cgi/software/1555770773/

■日本語解説等
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/

993 :名無しさん@お腹いっぱい。 (ドコグロ MMe1-SPh5):2020/04/03(金) 14:29:34 ID:+MnRjk7EM.net
インストールしようとして配布元ページからダウンロードページをChromeで開くとセキュリティ警告出るんだがまずいのか?
前は普通に出来たんだが

994 :名無しさん@お腹いっぱい。 :2020/04/03(金) 17:37:58.24 ID:KeyiwkKR0.net
https://autohotkey.com/download/

リンク先直行でアクセスできた


次スレ建てられる人お願いします

995 :名無しさん@お腹いっぱい。 (ワッチョイ 1bf9-bVUD):2020/04/03(金) 18:37:48 ID:/YRSlUCD0.net
次スレ立てました

AutoHotkey スレッド part28
https://egg.5ch.net/test/read.cgi/software/1585906506/

996 :名無しさん@お腹いっぱい。 (ドコグロ MM93-SPh5):2020/04/03(金) 18:54:37 ID:6tFkG0MrM.net
>>994
ありがと
フォーラム見たらに過去にも同様のことがあったみたいだ
>>995
乙です

997 :名無しさん@お腹いっぱい。 :2020/04/03(金) 21:01:56.35 ID:gvLOj/rx0.net
すれたておつ

998 :名無しさん@お腹いっぱい。 :2020/04/03(金) 21:03:13.78 ID:SCPanhQM0.net


999 :名無しさん@お腹いっぱい。 (アンパン 1bf9-bVUD):2020/04/04(土) 10:32:30 ID:RU4pmP7j00404.net
埋め

1000 :名無しさん@お腹いっぱい。 :2020/04/04(土) 11:24:31.96 ID:QE38uOhG00404.net
せーーーん

1001 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

総レス数 1001
392 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★