AutoHotkey Thread 2at SOFTWARE
AutoHotkey Thread 2 - 暇つぶし2ch681:名無しさん@お腹いっぱい。
06/04/07 23:26:51 EWcuZxfA0
30分のネトラジ(wma)投げたけど、問題なかったな
とりあえず最初に依頼したので、完成品を貼っておきます

#p:: ;選択したファイルでプレイリスト作成&再生
OverWrite = True ;上書き
StopFlag = Flase
Gosub,MakePlaylist
TrackNumber=1
GoSub,Player
Return

!#p:: ;選択したファイルをプレイリストに追加&再生
OverWrite = False ;追加
StopFlag = False
Gosub,MakePlaylist
GoSub,Player
Return

#PgDn:: ;次の曲再生
SoundPlay, NULL
Return

#PgUp:: ;前の曲再生
TrackNumber--
TrackNumber--
SoundPlay, NULL
Return

#End:: ;再生を停止
StopFlag = True
SoundPlay, NULL
return

682:続き2/3
06/04/07 23:27:54 EWcuZxfA0
MakePlaylist:
ClipSaved := ClipboardAll ;クリップボードの中身を一時待避
Clipboard = ;とりあえずクリップボードを空にして
Send, ^c ;Ctrl+C
ClipWait,1 ;クリップボードが読み取れるようになるのを待つ(最大1秒)

i = 1
Loop, Parse, Clipboard , `n, `r ;クリップボード内のものを改行区切りに分解して
{
SplitPath, A_LoopField , FileName , Dir , Extension ,, Drive ;パスかどうか判定

StringLen, length, drive ;ドライブ文字の長さを見て
ifEqual, length, 0, continue ;パスっぽくなかったらやめる

if ( Extension != "mp3" && Extension != "wav" && Extension != "wma" && Extension != "ogg" ) ;拡張子が音楽ファイルじゃないならやめる
continue

if i = 1 ;テキストファイルにファイルのパスを書き込み
OutputText = %A_LoopField%
else
OutputText = %OutputText%`n%A_LoopField%
i++
}

If OverWrite = True
FileDelete , %CurrentDir%\Playlist.txt

FileAppend , %OutputText%, %CurrentDir%\Playlist.txt

Clipboard = %ClipSaved%
Return

683:最後3/3
06/04/07 23:28:46 EWcuZxfA0
Player:
Loop
{
FileReadLine, OutputVar, %CurrentDir%\playlist.txt, %TrackNumber%
If ErrorLevel = 1 ;リストの最後まで行ったら
{
TrackNumber = 1 ;最初に戻る
FileReadLine, OutputVar, %CurrentDir%\playlist.txt, %TrackNumber%
}

SplitPath, OutputVar , FileName

ToolTip, %TrackNumber% - %FileName% ;再生するファイルをツールチップ表示
SetTimer, RemoveToolTip, 1000

Soundplay,%OutputVar% , wait

IfEqual,StopFlag,True,Break ;ループ抜ける

TrackNumber++

}

return

RemoveToolTip: ;ツールチップ削除
SetTimer, RemoveToolTip, Off
ToolTip
return

684:673
06/04/08 05:37:18 EzpMT1rj0
>>681
気軽に再生出来てなかなかいいっすねこれ。なんつっても軽いし。

ところで、長い曲(が原因か判らないけど)で固まる問題ですけど、>>681-683のスクリプトでもやっぱり再現した・・・
MCI内部で呼んでるみたいなんで試しにMCI直で呼んでみたけど、やっぱり同じ状態になったので、
MCI自体の問題なのかも。

>>680
VBRって言われてみれば確かにVBRのファイルなんですよねこれ。
VBRで長いmp3だとおかしくなるのかな?


検証するのに何度も同じ曲聞かなきゃなんないから疲れるょ・・
AHKが悪い訳じゃないことが解っただけでも良かったけど・・

685:名無しさん@お腹いっぱい。
06/04/08 12:30:36 Co4Tuedv0
WでRClick, AでCtrl+RClick, DでAlt+RClickをやりたいんですが
下のコードだとDを押してDを離してもRClickは解除されるもののAltが押しっぱなしの状態になってしまいます。
どうすればいいんでしょうか?
w::
   Send,{RButton Down}
   return

w up::
   Send,{RButton Up}
   return

a::
   Send,{Ctrl Down}
   Send,{RButton Down}
   return

a up::
   Send,{RButton Up}
   Send,{Ctrl Up}
   return

d::
   Send,{Alt Down}
   Send,{RButton Down}
   return

d up::
   Send,{RButton Up}
   Send,{Alt Up}
   return



686:名無しさん@お腹いっぱい。
06/04/08 20:49:49 1SgxTDCT0
流行らせるページにある「システムモニタ用関数群」を有難く使わせてもらっています。
これでだいたい取得したい情報は得られたのですが、
CPUの周波数だけまだ解決せず。

非常に厚かましいのですが
どなたか作っていただけないでしょうか?

687:名無しさん@お腹いっぱい。
06/04/09 15:27:27 vc/jqxTR0
流行らせるページが見られない

688:名無しさん@お腹いっぱい。
06/04/09 16:14:16 fCMts/FM0
ほんとだwww.xrea.comじたいが見れなくなってる。

689:673
06/04/10 04:43:55 kIM2G0lg0
MCI使用したプレイヤー(HSP製)DLして問題のあるファイルを再生してみたら、
時間表示はおかしいけど、固まることなくちゃんと連続再生された。
試しにVC++でMCI使って再生するコード書いてみたら
やっぱり固まることなく連続再生できたし・・。

AHKでmciSendString直に呼んで色々試したところでは、
どうも再生は正常に終わっているけど、デバイスが閉じられくなるみたい、
問題のファイル再生終了後にclose投げるとそのまま制御が戻ってこなくなることが解った。
SoundPlayでも同じようなことが起きてるのかも。

とりあえず、AHKでSoundPlayコマンド(MCI関連)を扱うと
VBRのmp3で問題が起きる可能性があるということでFA。
マンドクセシ モーイイヤ・・('A`)

690:名無しさん@お腹いっぱい。
06/04/10 06:02:52 WS1IiKh80


madとか123とかをHideで使っちゃうというほうがいいのかね
DLLならBassとか

691:名無しさん@お腹いっぱい。
06/04/10 06:32:16 gsoxib5w0
>>687-688
URLリンク(www.value-domain.com)


692:名無しさん@お腹いっぱい。
06/04/14 00:58:50 Ud8vzZeZ0
クリップボードの内容を一時的にする場合に、

TempClipboard:=ClipboardAll
Clipboard=
;適当に処理して
Clipboard:=TempClipboard ;元に戻す

としたとき、元々クリップボードの中にテキストや画像データが入ってる分には問題ないのですが、
パスやURLがショートカット形式(ファイルをコピーしたときや、ネットのリンクを右クリ→ショートカットのコピーしたとき)
になぜかクリップボードが復元されません。

この辺は仕様でしょうか。

693:名無しさん@お腹いっぱい。
06/04/14 00:59:53 Ud8vzZeZ0
一行目
一時的にする→一時的に退避する

失礼


694:名無しさん@お腹いっぱい。
06/04/14 01:25:59 94xmBBMO0
MsgBox, %ClipBoard%
をいろんな個所に挟んで中身を確かめながら実験すると良いかも。

695:名無しさん@お腹いっぱい。
06/04/14 09:14:35 UFI/YkYK0
>>692
FileAppendでファイルに落としてバイナリみると解るけど、復元出来ないんじゃなくて、
ClipboardAllコマンドでクリップボードを正常に参照出来てないと観た方が良さそう。
つまり、変数やファイルにクリップボード内のデータを待避する時点でデータがすでにおかくなっている。
でもClipboardコマンドだととれているから仕様と言うよりもClipboardAllコマンドのバグじゃないかなぁ?
仕様だったら普通最低でもClipboardコマンドと同じテキストデータがとれるようにすると思うんだよね。

696:名無しさん@お腹いっぱい。
06/04/16 09:51:06 Kql6t2Dr0
初歩的な質問していいですか。
EDITコマンドで*.ahkスクリプを好きなエディタで開けません。(notepadで開く)
*.iniだとちゃんと秀丸で開くのに・・・
*.ahkも*.iniもシェル関連付けはされています
どうすれば*.ahkも秀丸で開けますか?

697:名無しさん@お腹いっぱい。
06/04/16 10:24:38 AQ9bKtsX0
ダブルクオーテーションを外して試してみて
漏れはそれで上手く行ったことがある。
何故か
c:\hogehoge\hoge.ahkをエディットしようとすると
c:\hogehoge\hoge.ah っていうパスが送られちゃって悩んでたんだが。

698:名無しさん@お腹いっぱい。
06/04/16 10:54:34 Kql6t2Dr0
>>697
ありがとうございます。でもダメですOTZ
スクリプト自体はうまく動作しているようですが・・・。
インストーラなしのzipファイルでインストールしたのがまずいのかな。
ヘルプの
”関連付けで「Edit」コマンドが設定されていれば、そのコマンドで開く。なければ、notepad.exeで開く。”
というのがイマイチ分かりません。AHKで開くエディタを指定できるんでしょうか。

699:名無しさん@お腹いっぱい。
06/04/16 11:18:46 87jJ7KHW0
俺の場合は「Edit Script」に設定したらできた。

700:名無しさん@お腹いっぱい。
06/04/16 11:42:05 Kql6t2Dr0
>>699レスサンクスです
皆さんは問題なく出来てるようですね。やっぱり俺だけですね・・
とりあえず・・・Run,~\Hidemaru.exe ~\AutoHotkey.ahk
で開いてます。全然スマートじゃないなw

701:名無しさん@お腹いっぱい。
06/04/16 17:45:25 IfQvUwVz0
>>700
AHKファイルの関連付けを、ちゃんとしてる?

 フォルダオプション > ファイルタイプ > AHK を選択

 "拡張子AHKの詳細"項目内の詳細設定ボタンを押す。

 アクションのEditを選択して編集ボタンを押す。

 そこで自分の好きなエディタを指定する。

"関連付けで「Edit」コマンドが設定されていれば、そのコマンドで開く"というのはこの設定のことを言ってる。

702:名無しさん@お腹いっぱい。
06/04/16 17:48:41 4CFKB+jz0
デフォルト項目じゃなくてコンテクストメニューの「Edit」項目を変えてやらないといかんよ
レジストリの↓の値ね
HKEY_CLASSES_ROOT\AutoHotkeyScript\Shell\Edit\Command

たぶん前スレでも貼ったような気がするが、UIで対話的にエディタ変更してみるahk。

RegRead, OldData, HKCR, AutoHotkeyScript\Shell\Edit\Command
MsgBox,36,AutoHotkey Scriot Editor Changer,現在ahkのEditに設定されている値`n`n %OldData% `n`n別のエディタを指定しますか?
IfMsgBox,No, ExitApp
SplitPath,OldData,,EditorDir
FileSelectFile,MyEditor,3,%EditorDir%,ahkを編集するエディタを選択,*.exe
IfNotExist, %MyEditor%, ExitApp
RegWrite, REG_SZ, HKCR, AutoHotkeyScript\Shell\Edit\Command,,%MyEditor% `%1
RegRead, NewData, HKCR, AutoHotkeyScript\Shell\Edit\Command
MsgBox,64,AutoHotkey Scriot Editor Changer, %OldData% を`n`n%NewData% `n`n へ変更しました。


703:名無しさん@お腹いっぱい。
06/04/16 20:15:21 Kql6t2Dr0
>>701>>702
丁寧にホントにありがとう!遂にできましたよ。
Helpの意味がようやく分かりました

704:名無しさん@お腹いっぱい。
06/04/21 18:58:48 6cXk1jHT0
Ctrl+Vでペーストできないソフトにクリップボードの内容を送るにはどうしたらよいのでしょうか?
試したのは↓なんですが、当然できませんでしたw
Send, clipboard

クリップボードと同じ内容のテキストのキーストロークを発生させればいいと思うんですが・・
どなたかご教授下さい

705:名無しさん@お腹いっぱい。
06/04/21 19:38:49 IoLpMntm0
一生そこで止まっててください。

706:名無しさん@お腹いっぱい。
06/04/21 21:55:03 6cXk1jHT0
残念ながら出来ましたよwスマソw

707:名無しさん@お腹いっぱい。
06/04/22 21:15:53 EvYvrKQ80
AutoHotkeyでネットワークプログラムを作るにはどうすればいいですか?
DLLの関数を呼び出すんであろうということは分かるのですが具体的なやり方が分かりません。

708:名無しさん@お腹いっぱい。
06/04/22 21:39:51 KJrxOsM90
何がしたいのよ

709:名無しさん@お腹いっぱい。
06/04/24 22:48:18 +AskqZAV0
mayuから乗り換えたいのですが、

Space押しながら別のキーを押すとShift扱い
Spaceをすぐに離したらSpace
で、できればSpaceを押して一定時間経過後に離すときは無効
みたいなことってできますか?

710:名無しさん@お腹いっぱい。
06/04/24 23:06:32 gA3K0rDg0
>>709
AutoHotkeyを流行らせるアップローダの029.zip
一定時間経過後に~の方も少し弄ればできる。

711:名無しさん@お腹いっぱい。
06/04/24 23:19:44 +AskqZAV0
>>710
ありがとうございます!
SandSって言うんですね!
ちょっと弄ってみます!


712:名無しさん@お腹いっぱい。
06/04/29 18:55:41 58FQTls70
zキーを押してる間zキーを10秒毎に2秒間押す、といったコマンドがやりたいのですが
どなたかご存知ありませんか?

713:名無しさん@お腹いっぱい。
06/04/29 19:57:56 1hoqMcVM0
タイマ、スリープ
どんな方法でも実現できるじゃん

714:名無しさん@お腹いっぱい。
06/04/29 22:47:12 ujA9YEAp0
キーボードでボリュームを操作する方法を探していて
>>71に書かれて内容を試してみましたが
タスクバーにAutoHotkey.iniと表示されるだけで、GUIが表示されません
助言お願いします


715:名無しさん@お腹いっぱい。
06/04/29 22:53:23 8YehHyKS0
なまず日記(>>7)行って完成品拾ってきたら?

716:名無しさん@お腹いっぱい。
06/04/30 11:04:10 ritjdH350
>>715
ありがとうございます
勉強になりました

調べた末
SoundGet,volume,MASTER
SetFormat, float, 5.2
volume += 0
ToolTip,%volume%,800,700,
を使うことにしました


717:名無しさん@お腹いっぱい。
06/04/30 11:11:44 ritjdH350
試作中のやつ貼ってしまった orz
volume += 0要らないです

718:名無しさん@お腹いっぱい。
06/05/03 10:42:28 SO1f2yaW0
1.0.43.11 - May 1, 2006

Fixed %A_WorkingDir% on Windows 9x, which was sometimes blank. [thanks Points]

Improved BlockInput with a new mode that blocks only physical movement of the mouse, not keystrokes or mouse clicks.

719:名無しさん@お腹いっぱい。
06/05/12 21:25:33 aSuNSZC/0
BREGEXP.ahk、便利なんだけども、良く分からないことがいくつかあります。

list = aaaaxxxxaaaa|bbbxxx|xxxxcccc
Loop, Parse, list, |
{
test := RegExpReplace(A_LoopField, "x*", "", "")
MsgBox, %test%
}

とかやると、前回のデータが残ってしまうんですが…。
皆様どうやって対処してるんでしょうか?

720:719
06/05/12 21:32:58 aSuNSZC/0
連稿すみません。途中で投稿してしまいました。 orz

test := RegExpReplace(tmp, "[ \t]*`;[ \t]*$", "", "")

みたいな正規表現もうまく行かなかったり。
$が効かない(?)感じがします。
解決案もってましたらどなたかご教授ください。

721:719
06/05/15 14:14:36 I+/Q9YXe0
自己解決しました。
前回のデータが残ってしまうのは、
BREGEXP.AHKの

return result

の部分を、

test:=result
VarSetCapacity(result,64)
return test

のように変更することで解決しました。

$が効かないのはオプションにgを入れてないからでした。

722:名無しさん@お腹いっぱい。
06/05/17 10:12:27 A1Pap8lZ0
Guiにツリービューとステータスバーが追加されたね。
とても使いこなす余裕ないけど。

今月号のPCJapanで特集記事が載ってるけど
あれ読んで入門しようと思う人どんくらい居るかなあ…
URLリンク(www.sbcr.jp)

723:名無しさん@お腹いっぱい。
06/05/18 16:34:36 CPxUZBn80
AutoHotKeyのスレあったんですか。
前スレ>>848さんを参考にスクリプトを書いてみたのですが
右ダブルクリック時処理が実行された後に右シングルクリック時処理も実行されてしまいます。
これを回避するにはどうしたらいいのでしょう?例えば・・・

848 :名無しさん@お腹いっぱい。:2005/09/26(月) 20:54:01 ID:Owez+5cA0
>>847
Rbutton Up::
 ;システムのダブルクリック時間取得
 WClickTime := DllCall("User32.dll\GetDoubleClickTime",Int)
 if (A_PriorHotkey = A_ThisHotkey) && (A_TimeSincePriorHotkey < WClickTime)
 {
   ;ダブルクリック時処理(例:Run explorer.exe)
 }
 else
 {
   ;シングルクリック時処理(例:Run notepad.exe)
 }
return

とすると
シングルクリック→notepad.exeは正しいのですが
ダブルクリック→explorer.exeだけでなくnotepad.exeも実行されてしまうのを回避したいのです
どなたかお願いします

724:名無しさん@お腹いっぱい。
06/05/18 16:57:39 LJaz32dZ0
>>723
自分だったらこんな感じでやってる。これだとトリプルクリック、クワドロプルクリックへの対応も大した手間無くできるし。
一々システムからダブルクリック時間を取得するのもあれなので決め打ちで書いてる。
RButton::
KeyWait, %A_ThisHotkey%, T0.2
If ErrorLevel = 0
{
KeyWait, %A_ThisHotkey%, D T0.2
If ErrorLevel = 0
{
KeyWait, %A_ThisHotkey%
Run, explorer.exe
return
}
Run, notepad.exe
return
}
return

725:名無しさん@お腹いっぱい。
06/05/18 17:35:59 CPxUZBn80
>>724
ありがとうございます。いろんなアプローチがあるんだなぁ・・すごいですね。
なんだかもうチンプンカンプンです><

726:名無しさん@お腹いっぱい。
06/05/18 18:15:07 CPxUZBn80
>>724
ちなみにトリプルクリックの場合どうやるんでしょうか?(自分が試した奴ですが・・↓)
本当に馬鹿で・・・すみませんw

RButton::
KeyWait, %A_ThisHotkey%, T0.2
If ErrorLevel = 0
{
KeyWait, %A_ThisHotkey%, D T0.2
If ErrorLevel = 0
{
KeyWait, %A_ThisHotkey%, D T0.2
If ErrorLevel = 0
{
KeyWait, %A_ThisHotkey%
Run, explorer.exe
return
}
Run, notepad.exe
return
}
Run, calc.exe
return
}
return

727:名無しさん@お腹いっぱい。
06/05/18 18:24:34 LJaz32dZ0
>>726
RButton:: ;1回目の押し下げ
KeyWait, %A_ThisHotkey%, T0.2 ;1回目の押し上げ待ち
If ErrorLevel = 0
{
KeyWait, %A_ThisHotkey%, D T0.2 ;2回目の押し下げ待ち
If ErrorLevel = 0
{
KeyWait, %A_ThisHotkey%, T0.2 ;2回目の押し上げ待ち
If ErrorLevel = 0
{
KeyWait, %A_ThisHotkey%, D T0.2 ;3回目の押し下げ待ち
If ErrorLevel = 0
{
KeyWait, %A_ThisHotkey% ;3回目の押し上げ待ち
Run, calc.exe ;トリプルクリック処理
return
}
}
Run, explorer.exe ;ダブルクリック処理
return
}
Run, notepad.exe ;シングルクリック処理
return
}
return

728:名無しさん@お腹いっぱい。
06/05/18 18:30:36 CPxUZBn80
>>727
なんとお礼を言っていいのやら…。本当にありがとうございます(´Д⊂グスン

729:名無しさん@お腹いっぱい。
06/05/19 02:40:46 8luIfCKj0
特定のボタンを押している間だけ、Dを押しつつキーマップの変更(q→a, a→z, etc)を行いたいのですが、
Hotstringを使ってやる場合、どのように記述すればいいんでしょうか
どなたか教えていただけませんか

730:名無しさん@お腹いっぱい。
06/05/19 07:48:57 T9QwDw3o0
キーマップという言い方からすると繭使いか?

冗長になるけど、コンビネーションキーでいいんじゃねーの?

[特定のボタン] & q::a
[特定のボタン] & a::z



731:名無しさん@お腹いっぱい。
06/05/19 23:10:55 NLL2TGQ40
意味不明で大変場違いな事かもしれませんが・・・
たとえばゲームなどで必殺技のコマンドをマクロ化するスクリプトってどういう感じでしょう?
例としてはジョイスティックのボタンAを押すと昇竜拳が出るというような。。
先月からいじっているのですが、まったく突破法を発見できません(汗
どなたかお知恵を拝借していただけませんでしょうか?

732:名無しさん@お腹いっぱい。
06/05/19 23:20:58 K6ZDm6rW0
>731
ジョイスティック系のスレ行って
それ用のソフト探した方が早そう。

733:名無しさん@お腹いっぱい。
06/05/20 00:17:17 th5H/M1p0
JoyToKeyかJoyAdapterだな。

734:名無しさん@お腹いっぱい。
06/05/20 00:42:13 L7AtsktK0
JoyToKeyは使ってるけど必殺技コマンドのマクロ化は無理っぽい。

735:名無しさん@お腹いっぱい。
06/05/21 18:35:02 UkQcXTMP0
Perl厨なのでPERLAHKで楽しく書かせてもらってます。
AHKのお手軽さとPerlのモジュール+正規表現が
合わさってちょっとすごい感じです。

736:名無しさん@お腹いっぱい。
06/05/21 21:56:54 hpntYaGp0
mayu でマウスいじれないので、
ahk でそのうちやろうやろうと思いつつも
やり方がよくわからないんで放置してたんだけど、
昨日一晩調べてやっと使えるようになった。
サイドボタン+ホイールとか
右クリック+ホイールとか
サイドボタン+右クリックとか、
いろんな組み合わせが使えるようになって
かなりブラウザが使いやすくなったよ。

737:名無しさん@お腹いっぱい。
06/05/21 22:37:38 Uqwos4GY0
>>735
PERLAHKってなんですか?
検索してもいっこもヒットしません・・・

738:名無しさん@お腹いっぱい。
06/05/23 00:47:31 k9ZThJgs0
複数のahkをひとまとめにコンパイルとか出来ちゃったり出来ないですか?

739:名無しさん@お腹いっぱい。
06/05/23 22:08:10 H/9gJ7En0
関数の中でラベルを作ることは出来ないのでしょうか?
ホットキー定義の中で SetTimer とかを使って
サブルーチンを監視するような処理を、

;;キー定義
F1::DoHoge()

;;関数
DoHoge(){
SetTimer,Hoge
return
Hoge:
なんたら
return
}

みたいにキー定義部分と関数定義で分割して書いて、
コードを読みやすくしたいのですが、うまくいきません。

740:名無しさん@お腹いっぱい。
06/05/23 23:59:29 HxMam4eq0
おいおい…なんつー強引なコード書いてんだよ
そんなん全然読みやすくも何ともないから、素直にサブルーチン使え

741:名無しさん@お腹いっぱい。
06/05/24 00:21:33 4stag/k10
読みやすくない、、、、つーか、そういうのバグの温床になるよ。

742:名無しさん@お腹いっぱい。
06/05/24 04:09:11 vGs8zZxc0
ホットカーペット?
オンドル?

743:739
06/05/24 05:08:37 UOl7EfWn0
なぜキー定義と関数を分割したいかというと、
#IfWindowActive でウインドウごとにキー割り当てを変えているときに、
同じ処理を何度も書くよりは一箇所にまとめたかったのです。
autohotkey の関数の意義がよくわかってなかったので
おかしなことを書いてしまいました。すみません。
Gosub を使えばできそうです。

744:名無しさん@お腹いっぱい。
06/06/05 20:29:13 LsgHsIWT0
alt+WheelUp/Downでボリューム操作したいんですがどうやればいいですか?
SendKey,{Volume_up/down}で一応できるんですが
MSのユーティリティの機能で画面にメーターが出てきてしまうので
直接操作したいんですが。

745:名無しさん@お腹いっぱい。
06/06/05 20:40:12 LeRAOcxJ0
SoundGet
SoundSet

746:名無しさん@お腹いっぱい。
06/06/06 17:00:48 bF08BH0f0
F6::
   LoopFlag = 0
   return

F5::
   if LoopFlag = 0
       LoopFlag = 1
   else
       LoopFlag = 0
   
   loop
   {
       if LoopFlag = 0
           break
       Send,{v}
       Sleep,1000
   }
   return

このスクリプトでF5を押すと一秒ごとにSend,{v}し、F6を押すと止まります。
ここまではいいんですが、ループ中に再度F5を押すと止めるようにしたつもりがうまくいきません。
F5を処理中に再度F5を実行する事は出来ないんでしょうか?

747:名無しさん@お腹いっぱい。
06/06/06 17:40:38 0igiZf6q0
F6::
LoopFlag = 0
return

F5::
if (LoopFlag) {
LoopFlag = 0
} else {
LoopFlag = 1
}

SetTimer, Sendkeys, 1000
return

Sendkeys:
if (LoopFlag) {
Send, v
}
return

とりあえずこれで動いてるもよん

748:名無しさん@お腹いっぱい。
06/06/06 20:33:46 m6+f/8Lj0
>>746
returnまで行ってないスレッドを呼び出すことはできないはず。たとえば、

a::
gosub,b
return

b::
loop{なんたらかんたら}
return

bをLoopしてる間は、Returnまで行ってないa,bともに機能しない
俺も>>747みたく、Settimerでいったんreturnまで行くことで回避してる

749:名無しさん@お腹いっぱい。
06/06/06 20:54:45 FXxjK0vn0
FAQ@ヘルプファイルの"How can a repeating action be stopped without exiting the script?"でいいんでね?

750:名無しさん@お腹いっぱい。
06/06/07 11:45:55 tTFbfh7+0
CTRL+ALT+DELは送れない?
ランチャーから「プログラムの強制終了」出したいと思ったんだけど

751:名無しさん@お腹いっぱい。
06/06/07 12:52:40 nmnaUx310
>>750
Run, taskmgr.exe
で良いんじゃないの?

752:名無しさん@お腹いっぱい。
06/06/07 13:35:33 Jepk75LG0
98なんでないのよ

753:名無しさん@お腹いっぱい。
06/06/07 15:33:07 zIezkPbs0
Clipboard変数について質問させて下さい<(_ _)>
クリップボードの中身から最初のn文字(例えば5文字分)だけを抽出する方法はありますでしょうか?


754:名無しさん@お腹いっぱい。
06/06/07 15:37:12 zBVvY4Eq0
>>753
StringLeft
せっかく日本語のコマンドリファレンスがあるんだから
ちゃんと見た方がいいよ

755:名無しさん@お腹いっぱい。
06/06/07 15:44:06 zIezkPbs0
>>754
早速ありがとうございます~!基本的な事でスマソ
リファレンスよく勉強させて頂きます

756:名無しさん@お腹いっぱい。
06/06/21 21:43:40 Y5hBJ6O70
思い出したように保守

日本語リファレンス更新されてるね。管理人さん乙です

757:名無しさん@お腹いっぱい。
06/06/22 02:22:24 cHFnTHSC0
日本語版とか無いみたいだけど日本語の処理問題ないの?

758:名無しさん@お腹いっぱい。
06/06/22 03:00:35 uSeun5XX0
ある。

759:名無しさん@お腹いっぱい。
06/06/22 11:07:49 0P+3tIeu0
FileInstall, Source, Dest, Flag
について質問です。

・・・と書き込もうとしてたんだけど自己解決

FileInstallを使用した際、スクリプトファイルまでのパスに日本語が使われていると
スクリプトファイルをexe化するときにエラーを吐いて上手く変換されないぽい
全部1byteに変えたら上手く変換された

Convert .ahk to .exe
で変換するときだけの問題ぽいので

実際のスクリプトファイルや実行ファイルがあるパスに日本語が含まれていても大丈夫みたい

一応そういうことがあったと報告、重複してたらゴメ

760:名無しさん@お腹いっぱい。
06/06/22 15:42:33 POdpE2ro0
>757
IMEの状態管理用プラグインは日本人が作ってる。

761:名無しさん@お腹いっぱい。
06/06/22 18:18:32 nKnriN960
そういう事じゃないと思うんだ

762:名無しさん@お腹いっぱい。
06/06/22 19:23:51 0qpHhUW90
>>757
とりあえず文字化けとかはしない。
ただ、ダメ文字(文字の2バイト目に0x7C等)が含まれてたりすると、
文字列処理(StringReplaceとかSplitPath等)がうまくいかないこともある。
そのへんはなまずさんのところの文字列処理ライブラリを使えば対処可能。

763:名無しさん@お腹いっぱい。
06/06/22 20:37:27 0P+3tIeu0
初歩的な質問ですいません

例えば
ary1~ary3
と言う名の変数があり
それぞれの中身を参照したい場合に

ary1=変数1
ary2=変数2
ary3=変数3

loop,3
{
msgbox,%ary%A_Index%%
}
return

と言うスクリプトを考えたのですが、エラーを吐き動作しません。



764:名無しさん@お腹いっぱい。
06/06/22 20:38:00 0P+3tIeu0
そこで暫定的に

ary1=変数1
ary2=変数2
ary3=変数3

loop,3
{

test( ary%A_Index% )
}
return

test( tmp )
{
msgbox,%tmp%
return
}

このような処理方法にしたのですがもっとスマートな方法はありませんか?

765:名無しさん@お腹いっぱい。
06/06/22 21:02:30 YZ8pBvMe0
temp := ary%A_Index%
msgbox,%temp%

これでいける

766:名無しさん@お腹いっぱい。
06/06/22 23:27:57 0P+3tIeu0
俺は
=

:=
の使い分け方が理解できてませんね

これならスマートにできそうです。
ありがとうございました。

767:名無しさん@お腹いっぱい。
06/06/23 21:34:38 8JS9LCGx0
右コントロールをAltにしたいんですが、
RCtrl::Send,{Alt}だとCtrlがAltにかわるだけで、
Alt+別のキーを認識してくれないんですが、
どう設定すればいいのでしょうか。

768:名無しさん@お腹いっぱい。
06/06/23 21:48:57 FfdqmuQi0
>>767
RCtrl::Alt

詳しくは↓参照
URLリンク(lukewarm.s101.xrea.com)

769:名無しさん@お腹いっぱい。
06/06/23 22:01:48 FNCmH44Z0
URLリンク(lukewarm.s101.xrea.com)
controlとaltが交換できるかどうかは知らない。

770:名無しさん@お腹いっぱい。
06/06/23 22:03:13 FNCmH44Z0
かぶった

771:名無しさん@お腹いっぱい。
06/06/23 22:47:38 8xgDybgz0
むけばいいさ

772:名無しさん@お腹いっぱい。
06/06/24 02:25:25 qEZk/pQ+0
文字列サンクス。
国際化きぼんしといたほうがよさそうだな。

773:名無しさん@お腹いっぱい。
06/06/25 07:19:11 2OPiWT000
Shift+Space で IME のトグルを行いたいのですが,
Meadow では除外するために以下の設定をしました.

$+Space::
IfWinActive, ahk_class MEADOW
{
Send, +{Space}
return
}
Else
{
Send, {vkF3sc029}
return
}

しかし Firefox で Scroll with IME を有効にしているとき,
Shift+Space を押すと IME がトグルしかつ,
Space の入力による下方向スクロールが行われてしまいます.
これを回避するにはどうすればよいでしょうか?

774:名無しさん@お腹いっぱい。
06/06/25 21:42:04 4MUoUZSq0
#IfWinActive
じゃないの?

775:773
06/06/25 23:46:38 2OPiWT000
>>774
なるほど #つきのコマンドでできるのですね.
以下のようにして実現できました.

#IfWinNotActive, ahk_class MEADOW
+Space::Send, {vkF3sc029}
#IfWinNotActive


776:名無しさん@お腹いっぱい。
06/06/27 19:35:19 Fgs5cyTC0
UWSCとどっちが強い?

777:名無しさん@お腹いっぱい。
06/06/28 01:16:03 1Uw7Us+E0
>>776
[AutoHotkey] 攻撃:87 素早さ:59 防御:39 命中:18 運:48 HP:277
[UWSC] 攻撃:41 素早さ:95 防御:98 命中:18 運:88 HP:288

AutoHotkey vs UWSC 戦闘開始!!
[UWSC]の攻撃 MISS [AutoHotkey]は攻撃を回避した。
[AutoHotkey]の攻撃 HIT [UWSC]は74のダメージを受けた。
[UWSC]の攻撃 HIT [AutoHotkey]は113のダメージを受けた。
[AutoHotkey]の攻撃 MISS [UWSC]は攻撃を回避した。
[UWSC]の攻撃 MISS [AutoHotkey]は攻撃を回避した。
[AutoHotkey]の攻撃 MISS [UWSC]は攻撃を回避した。
[UWSC]の攻撃 HIT [AutoHotkey]は94のダメージを受けた。
[AutoHotkey]の攻撃 MISS [UWSC]は攻撃を回避した。
[UWSC]の攻撃 HIT [AutoHotkey]は79のダメージを受けた。
[UWSC]が[AutoHotkey]を倒しました(ラウンド数:5)。

orz

778:名無しさん@お腹いっぱい。
06/06/28 03:26:29 1HU1H9N90
マルチャン

779:名無しさん@お腹いっぱい。
06/06/28 15:13:01 P/5ViBO60
>>776
ぬるさんとこの旧サイト過去ログが参照できないんでうろ覚えだけど
uwscとDMonkeyか何かと演算速度比較してぶっちぎりトップだったような


780:名無しさん@お腹いっぱい。
06/06/28 21:25:25 RTMBh9ap0
AHKだとCapsLockをControlにできないそうですが
では皆さんは何を使っていますか?

781:名無しさん@お腹いっぱい。
06/06/28 22:13:43 gxLI0N320
WinMinimizeで最小化するとデスクトップの左下にタイトルバーのみの状態になるソフト(たとえばJane)を、
最小化ボタンを押したときのように完全に最小化するにはどうすれば良いんでしょう。

782:名無しさん@お腹いっぱい。
06/06/28 22:31:20 p4FtCeYm0
>>780
URLリンク(www.losttechnology.jp)

783:名無しさん@お腹いっぱい。
06/06/29 00:12:50 KazRnh6f0
>>781
URLリンク(lukewarm.s101.xrea.com)


784:名無しさん@お腹いっぱい。
06/06/29 02:56:57 YMIL19fZ0
>>783
できました。ありがとう。

785:名無しさん@お腹いっぱい。
06/06/29 12:55:57 mOUKYabn0
ファイルのドラッグ&ドロップに対応してないアプリに
AutoHotKeyを使って対応させたいとか思ってます.

1.LButton Upで該当アプリにフックかける
2.今つかんでいるファイル名を手に入れる
3.ファイル名つかってアプリになんかする

...という手順で実装しようと思っていますが,
2.をahkでどうやったらいいものか困っています.
なにかいい方法ないでしょうか?

786:名無しさん@お腹いっぱい。
06/06/29 14:09:16 2lcTgBXF0
Ctrl+Cでクリップボードにファイル名を入れて、吸い出す

787:名無しさん@お腹いっぱい。
06/06/29 14:38:33 gyii8ANd0
ExplorerならF2押してリネームモードにしてからCtrl+Cか。
誤動作したら嫌なことになりそうだがw

788:名無しさん@お腹いっぱい。
06/06/29 14:47:28 OjEa1TAf0
どういうことがしたいのかよくわかってないけど
ファイル名が欲しいならF2押さなくてもctrl+cだけで
フルパスで取得できない?

789:名無しさん@お腹いっぱい。
06/06/29 16:30:38 2lcTgBXF0
できるよ、しかもフルパスで取れる

790:名無しさん@お腹いっぱい。
06/06/29 16:36:16 oU3zY0Gn0
ドロップ先にGuiウィンドウを挟んでGuiDropFiles:で知る

791:名無しさん@お腹いっぱい。
06/06/29 17:27:49 mOZeA58w0
>>782
えっとじゃあ CapsLock をコントロールにするだけなら
↓でいいんでしょうか?

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,3a,00,1d,00,00,00,00,00


792:785
06/06/29 17:49:04 mOUKYabn0
>>786-789
言葉足らずで申し訳ありません.
「ExplorerでCtrl+cをおしてファイル名を取得」
→「該当アプリにファイル名使ってなにかする」
というのをやりたいわけではなく
「該当アプリにファイルをDropしたときにファイル名を使ってなにかする」
を実現したいのです.

>>790
LButton Upしたときに
MouseGetPosしてその位置に透明なGUI窓を即座に作って
GuiDropFiles: でファイル名をゲットするということでしょうか.
ちょっと考えてみます.

793:名無しさん@お腹いっぱい。
06/06/29 18:49:05 n43RwllZP
あほには何言っても無駄か

794:名無しさん@お腹いっぱい。
06/06/29 18:55:00 OjEa1TAf0
ドラッグ&ドロップするアイコンはその「該当アプリ」のものじゃなくちゃ
絶対だめなの?
そうじゃなくていいなら
run,c:\program files\hoge.exe %1%
みたいなスクリプトを書いてexeにコンパイルしたファイルに
ドラッグ&ドロップという方法でも
いいような気がするんだけど、だめかな

コンパイルしたファイルにドラッグ&ドロップで%1%が使えるかは
わからなかったので今試した

msgbox,%1%
;終わり
exit

こんなスクリプトを書いてコンパイルしたものにファイルを
ドラッグ&ドロップしたら投げたファイルのフルパスがメッセージ
ボックスで出たから大丈夫じゃないかな

795:名無しさん@お腹いっぱい。
06/06/29 19:03:37 2lcTgBXF0
やりたいことは理解できるが何で説明し直してるのかがわからん
ファイル名取れたらその後は自力でなんとかするって話じゃないの?
785でも「何か」のしかたついては聞いてきてないようだが。

796:名無しさん@お腹いっぱい。
06/06/29 19:15:36 2lcTgBXF0
ごめん今理解した。掴んだ時じゃなくて話した時にファイル名取りたいのか
んでショートカットアイコンじゃなくて起動中の該当アプリに
ファイルをドロップさせたいんだよね?

790のは該当アプリに直接ドロップするのではなく、
マウス監視してドラッグしたら最前面の小窓出してそこにドロップてことでは?
irvineみたいな感じで。
ウィンドウを透明化したら制御権取れないような希ガス

797:名無しさん@お腹いっぱい。
06/06/29 19:19:42 OjEa1TAf0
>>796
あーそうなのか
オレはファイルへのドラッグ&ドロップだと思ってたごめん

798:名無しさん@お腹いっぱい。
06/06/29 20:44:53 YMIL19fZ0
面倒なので検証してないが、

1,#Ifwinexistで該当アプリがあるときのみ以下を実行
2.左ボタンを押し下げた時点で、Ctrl+C
3.左ボタンを押し上げた時点で、
 a、もしマウスの下のウィンドが該当アプリならば→2のファイル名を使って処理
 b、違うなら放置

ではいかんのか?

799:785
06/06/29 22:08:24 mOUKYabn0
>>794-797
「離した時にファイル名取りたい」まさにそれです.
たしかに「別ショートカット作ってそこにドロップ」「別GUIにドロップ」
に逃げればなんにも問題ないんですが...

>>798
電卓で試してみました.

#IfWinExist ahk_class SciCalc
$LButton::
ClipSaved := ClipboardAll
Clipboard =
Send, ^c
ClipWait, 0.1
SelText := Clipboard
Clipboard := ClipSaved
ClipSaved =
Send, {LButton Down}
Return
#IfWinExist

800:785
06/06/29 22:09:59 mOUKYabn0
#IfWinExist ahk_class SciCalc
$LButton Up::
Send, {LButton Up}
MouseGetPos, mX, mY, mID, mCtrl
WinGetClass, mClass, ahk_id %mID%
if (InStr(mClass, "SciCalc") > 0)
{
MsgBox %SelText%
}
Return
#IfWinExist
$LButton Up::
Send, {LButton Up}
Return

なんとか目的の動作は実現できそうです.ありがとうござしました.
ただ...LButton Down/Up奪っちゃうと他の動作が怪しくなりますね...

801:名無しさん@お腹いっぱい。
06/06/29 22:52:55 YMIL19fZ0
>>800
最後の3行いらないだろ
他の動作でUp/Downを奪わないための#IfWinExistなんだから

802:名無しさん@お腹いっぱい。
06/07/01 12:37:26 kCidEIr20
バックグラウンドにあるウィンドウを指定して
キーをSendするにはどうすればいいですか?
WinActivate するとフォーカスが切り替わってもとに戻せないし
できればフォーカスを切り替えたくありません

803:名無しさん@お腹いっぱい。
06/07/01 12:47:27 0Hi33u+L0
WinexistとかMouseGetPosで目的のウインド取得してSendMessageは?

804:名無しさん@お腹いっぱい。
06/07/01 14:30:17 ejLYm2Hs0
>>802
ControlSend

805:名無しさん@お腹いっぱい。
06/07/01 18:47:47 kCidEIr20
>>804
ControlSend, , i, ahk_class Notepad
なら希望の動作になりましたが
実は送りたいアプリは mAgicTV という TV 視聴ソフトで
ControlSend, , i, ahk_class mAgicTVWindow
とすると mAgicTV がアクティブになってしまいました。

WinGet, id, ID, A

WinActivate, %id%
ではさんでみてもダメでした。

なんとかフォーカスを変えない方法ないでしょうか?

806:名無しさん@お腹いっぱい。
06/07/01 21:43:19 9gtYySno0
キーのリピート入力ってよくやると思うんですが、
loop と sleep でぐるぐる回すしか方法ないんですか?

807:名無しさん@お腹いっぱい。
06/07/01 23:47:50 DmCRCPtK0
キーダウン キーアップで間に間隔入れたら勝手にキーリピートになるんじゃないの

808:806
06/07/02 00:09:52 Ab02y6aS0
>>807
実際今そういう風にやってるんですが、
なんか無理やりなやり方のように思えるので、
こんなやり方でいいのかと思って。
ちなみに今使ってるのはこんな感じです。

F1::MyKeyRepeat("^{Right}",200}
F1 Up::MyKeyRepeatStop()

;;
MyKeyRepeat(key,sleep=80){
global MyKeyRepeatLoop
MyKeyRepeatLoop = 1
loop {
if MyKeyRepeatLoop != 1
break
Send,%key%
sleep,%sleep%
}}

MyKeyRepeatStop(){
global MyKeyRepeatLoop
MyKeyRepeatLoop=0
}


809:名無しさん@お腹いっぱい。
06/07/02 02:02:42 Q+Ta5ezk0
イベントじゃなくて SendコマンドのほうをUp/Downで指定したらどうよ
勝手にリピートしてくれないのか? 試してないけど

F1:: Send,{Right Down}
F1 Up:: Send, {Right Up}


810:名無しさん@お腹いっぱい。
06/07/04 18:26:50 cof1Hegt0
#p::SendMessage, 0x111 , 1007, 273, , ahk_class PrxTronCls
で、Proxomitronのバイパスの切り替えをしたいですが、ウインドウが無い限りできません。
どうしたらいいでしょうか?

811:名無しさん@お腹いっぱい。
06/07/04 19:43:46 AkaYH3FC0
POstMessageでは?

812:名無しさん@お腹いっぱい。
06/07/04 21:54:04 rHd9XQGV0
>>810
俺もやってみようとしたができないな。
AHK使わないでWPara1007 LPara273をSend/Postしたら、タスクトレイにあるときでもちゃんとできたんだが。
ウインドの指定のやり方かな。

813:806
06/07/04 21:59:05 G6/vCvv+0
>>809
返事が遅れてすみません。
いままでその方法ではリピートできないと勝手に思っていたのですが、
普通のキーでならそれでできますね。

実はマウスボタンで使うのが目的だったので、
マウスボタンでしか実験していなかったのですが、
マウスでは同様の方法でリピートしてくれなかったため、
勘違いしてました。

814:名無しさん@お腹いっぱい。
06/07/04 22:13:53 WJt1gwBr0
もれは
Comandiux
URLリンク(www.scot.sk)
でポストしてるけどウィンドウなくてもバイパス出来る。

815:名無しさん@お腹いっぱい。
06/07/04 22:38:44 ZOjlKI+I0
>>810

DetectHiddenWindows, On
SendMessage, 273, 1007, 0,, ahk_class PrxTronCls
DetectHiddenWindows, Off
return

ではダメですか?

816:名無しさん@お腹いっぱい。
06/07/04 22:41:01 iCn4YQLM0
>>813
マウスだったら Sendより MouseClickのがいいんじゃまいか
D|Uで押し下げ/押し上げ状態もキープできる。

あとホイールでスクロールをどうにかしたいって話だったら過去レスに漁れば出て来ると思う

817:名無しさん@お腹いっぱい。
06/07/04 22:48:33 rHd9XQGV0
>>815
810じゃないけど、これで動きますね
DetectHiddenWindowsなんてコマンドあったのか

不具合でまくりそうだけど、
SendMessage, 0x111 , 1007, 273, , ahk_id 0xFFFF
でもいけました。
存在するすべてのウィンドにSendMessageですw

818:名無しさん@お腹いっぱい。
06/07/05 01:01:48 4vOv08xf0
>>811-817
ありがとうございます。DetectHiddenWindowsを使えばいけそうですが、誤爆が怖いんでWinShow使ってやってみます。
URLリンク(lukewarm.s101.xrea.com)
(送ったあとはWinHide使えばいいのかな。個人的にはDetectHiddenWindowsが楽そうなんですが)
HoeKeyの時は問答無用で送れたんでちょっと困ってたところ、ありがとうございました。
>>817
それは誤爆が怖いと思うが、いかがなもなか('Д`;) 最初はそれでやってたけど・・・

819:名無しさん@お腹いっぱい。
06/07/05 01:45:01 4vOv08xf0
別にクラスをちゃんと指定すればおkでしたね。ごめんなさい。
需要無いかもしれませんが、foobar2000でsendmessageを使う方法と、疑似Open/Hideコマンドです。Winキーを多用する人はうはうはかもしれません。0.8.3
(もしくはすでに知ってるかもしれませんが。)
#q::
DetectHiddenWindows, On
SendMessage, 273, 40010, 0,, ahk_class {DA7CD0DE-1602-45e6-89A1-C2CA151E008E}
DetectHiddenWindows, Off
return

#o:: ;最小化時、トレイに格納する場合だけ動作確認
IfWinExist, ahk_class {DA7CD0DE-1602-45e6-89A1-C2CA151E008E}
{
WinMinimize, ahk_class {DA7CD0DE-1602-45e6-89A1-C2CA151E008E}
return
}
else
{
DetectHiddenWindows, On
WinActivate, ahk_class {DA7CD0DE-1602-45e6-89A1-C2CA151E008E}
DetectHiddenWindows, Off
return
}

820:名無しさん@お腹いっぱい。
06/07/08 07:42:17 qGKJnijM0
AHKから録音ソース(マイクやライン入力)を切り替えたいのですがどうすれば良いのでしょうか?

SoundSetで色々試してみたつもりですが録音ソースを切り替える機能は見つけられませんでした...

821:名無しさん@お腹いっぱい。
06/07/08 10:50:35 HLRnu2ow0
漏れも前やったな~
見当たらないんだよね

822:名無しさん@お腹いっぱい。
06/07/08 11:39:03 qe11Eg9V0
DllCall("winmm.dll\mixerGetNumDevs")
みたいな感じで、MixerのAPI呼び出していけば行けるんじゃないか

APIはさっぱりわからんのであとはまかせるw

823:名無しさん@お腹いっぱい。
06/07/08 13:24:39 ALwXZ4jD0
いざとなったらプロパティ表示してソース選び直して[OK]押下、をエミュレートするとか
見た目はあまり美しくはないが

824:名無しさん@お腹いっぱい。
06/07/08 21:06:55 z5OGIaz00
>>821-823
簡単には行かないみたいですね
API呼ぶのはちょっと敷居が高すぎる気がするので
sndvol32.exe /r にMessage投げてごまかすことにします
ありがとうございました。

825:名無しさん@お腹いっぱい。
06/07/11 13:55:28 EvY29YJw0
Guiのタブがえらく使いにくい
3つのタブをGui,Addで作成すると、

1  2  3
○ ▲ ◆
↑こうなるんだけど(上段:タブ番号、下段:それぞれのタブに配置したコントロール)、
そこからさらに2つタブを追加しようとすると

5  4  1 2 3
○ ▲ ◆
↑このように追加される


1  2  3 4 5
○ ▲ ◆
か、

5 4 1  2  3
    ○ ▲ ◆
せめてこうして欲しいんだが、何とかなりませんか

826:名無しさん@お腹いっぱい。
06/07/13 03:36:51 eLwJZVSR0
ソースを弄る

827:名無しさん@お腹いっぱい。
06/07/13 07:24:10 0SzuAgk/0
autoitはどうなの?

828:名無しさん@お腹いっぱい。
06/07/14 00:46:44 Fp8tR7J00
スレリンク(news4vip板)

829:名無しさん@お腹いっぱい。
06/07/16 04:02:55 xOvCEZJX0
ホットキーで
Ctrl-マウスクリック
の組み合わせのキーを書いているのですが、
時々コントロールが抜けて出力されることがあります。

例えば firefox では
拡大縮小が Ctrl-WheelUp, Ctrl-WheelDown に割り当てられてるのですが、
a:: Send,^{WheelDown}
こういうようにキー割り当てして a をリピートすると、
なぜか時々純粋な WheelDown が送られ、画面がスクロールしていってしまいます。

他にも、エクスプローラではCtrl-ダブルクリックで
フォルダを新しいウインドウで開けるのですが、
MButton:: Send,^{LButton 2}
こう記述しても新しいウインドウが開く時と開かないときがあります。

原因がよくわからないのですが、
確実にCtrl-マウスクリックの組み合わせが出力できる方法はないでしょうか。

830:名無しさん@お腹いっぱい。
06/07/16 10:48:40 JXnX7QJM0
SendMode
Sleep
色々ある

831:名無しさん@お腹いっぱい。
06/07/16 15:20:28 xOvCEZJX0
どうもありがとうございます。

MButton:: Send,^{LButton 2}
こちらについては、sleep を間に入れて時間を置くことで
きちんとダブルクリックと認識させることができました。

a:: Send,^{WheelDown}
こっちは、いままで firefox でしか検証していなかったのですが、
先ほど OpenOffice で試したところ、
なんとそのままでまったく問題なく動いていました。
firefox でのみ、どうしてずれるのかよくわかりませんが、
a::
Send,{Ctrl Down}
Send,^{WheelDown}
sleep 300
Send,{Ctrl Up}
return
このようにしてみたところ、とりあえずうまくいくようになりました。

832:名無しさん@お腹いっぱい。
06/07/20 03:18:26 aCwM17AQ0
ウインドウの操作を行いたいと思うのですが,思うようにいかないので質問させてください.
目標としては,ウィンドウをhoekeyのようになめらかに移動させること,
トグルでの水平方向,垂直方向への最大化です.

色々なスクリプトを参考に以下のように書いてみました.
ディレイを小さくしたのですが,移動がカクカクしてしまうこと,
水平方向,垂直方向の最大化は同時に複数最大化するとサイズが上書きされてしまう問題があります.
ご意見を頂けないでしょうか.

833:名無しさん@お腹いっぱい。
06/07/20 03:24:33 aCwM17AQ0
;●ディレイの調節
SetWinDelay, 0

;● ウインドウ位置移動
#Left:: ;[Win] 移動 (←)
#Right:: ; (→)
^!h:: ;Ctrl+Alt+Hで水平方向の最大化
^!v:: ;Ctrl+Alt+Vで垂直方向の最大化
WinGetPos,x,y,w,h,A
if A_ThisHotkey = #Left ;
x -= 5
else if A_ThisHotkey = #Right ;
x += 5
else if A_ThisHotkey = ^!h{
if(w = A_ScreenWidth and x = 0){
w := w_h_old
x := x_h_old
}

834:名無しさん@お腹いっぱい。
06/07/20 03:25:39 aCwM17AQ0
else{
w_h_old := w
x_h_old := x
w := A_ScreenWidth
x := 0
}
else if A_ThisHotkey = ^!v
if(h = A_ScreenWidth and y = 0){
h := h_v_old
y := y_v_old
}
else{
h_v_old := h
y_v_old := y
h := A_ScreenWidth
y := 0
}

WinMove,A,,%x%,%y%,%w%,%h%
return

835:名無しさん@お腹いっぱい。
06/07/24 01:39:51 DNeHp1KC0
タスクトレイにある特定のアプリのアイコン(例hoge.exe)1個だけを
左クリックするだけのスクリプトを作ろうとして挫折してます。
このアプリは、コマンドラインの引数を指定できず、
とにかくタスクトレイのアイコンをクリックする以外にどうしようもないやつで。
いい方法はないですかね。



836:名無しさん@お腹いっぱい。
06/07/24 02:53:57 9I40KnIj0
TrayCommand
URLリンク(hp.vector.co.jp)

837:835
06/07/24 03:41:24 DNeHp1KC0
>>836
おーこんな便利なのがあったんですか。
さっそく引数をつけて、適当なキーでiniファイルに登録しました。ありがとう。

838:名無しさん@お腹いっぱい。
06/07/24 03:53:26 7uh8bAg30
どういたしまして

839:名無しさん@お腹いっぱい。
06/07/24 03:56:34 Pbf/E+DV0
流行らせるページにある

840:名無しさん@お腹いっぱい。
06/07/24 04:26:24 l/qgUJwX0
前スレのjaneのdatもらえませんか?

841:名無しさん@お腹いっぱい。
06/07/24 09:06:31 EJoF76QI0
>>840
URLリンク(makimo.to)

842:名無しさん@お腹いっぱい。
06/07/24 15:37:02 6Dn/b3UJ0
プロセスの「ユーザー名」(Windowsタスクマネージャ→プロセスタブで見られる) を取得する方法はありますか?
よろしくお願いします!

843:名無しさん@お腹いっぱい。
06/07/24 16:00:38 ozVjeoNVO
こちらこそよろしく!
俺は雅也。まー坊って呼んでくれ!

844:名無しさん@お腹いっぱい。
06/07/24 16:02:37 6Dn/b3UJ0
( ^ー゚)

845:名無しさん@お腹いっぱい。
06/07/24 18:06:13 ozVjeoNVO
まー坊って呼べっつってんだろ。日本語通じないんか?

846:名無しさん@お腹いっぱい。
06/07/24 18:27:05 NC3ES9PEP
やん某

847:名無しさん@お腹いっぱい。
06/07/24 18:54:27 7uh8bAg30
”マー坊“くん

”!?“

848:名無しさん@お腹いっぱい。
06/07/25 00:11:34 DKWTwnVd0
>>841
ありがとうございます
亀レスごめんなさい
これで勉強できます

849:名無しさん@お腹いっぱい。
06/07/26 18:57:00 ZZJ5BPcR0
マウスカーソルを右端に寄せてホイールスクロールするとボリューム操作
みたいな事って出来ますか?

850:名無しさん@お腹いっぱい。
06/07/26 19:01:43 8mmomP4l0
頑張れば多分できる

851:名無しさん@お腹いっぱい。
06/07/26 19:05:14 Jv4bTjlL0
>>849
MouseGetPos…マウスの座標等を取得
SoundSetWaveVolume…音量を変更する
WheelDown/WheelUp…ホイールを回転させたとき

852:名無しさん@お腹いっぱい。
06/07/26 19:50:19 7nemhq5U0


853:名無しさん@お腹いっぱい。
06/07/26 20:25:01 4OoZiY1v0
>>851
まれに見る良レスだな。

854:名無しさん@お腹いっぱい。
06/07/31 18:22:20 bPE7OiBX0
Logicoolのマウスドライバ、SetPointがよく落ちてプロセスだけ残ってしまいます
SetPoint.exeを殺して再起動するスクリプトを書いてくださいませ

855:名無しさん@お腹いっぱい。
06/07/31 18:48:20 0t/+ddRa0
Process Close, SetPoint.exe
Process, WaitClose, SetPoint.exe

Run, **ふるぱす**\SetPoint.exe

落ちてからならこれでもいいだろうけど
監視したいならちょっとややこしいかも


856:名無しさん@お腹いっぱい。
06/07/31 18:55:52 oc5sAuQK0
MX1000 使ってるけど setpoint 落ちたことないよ?
マウスによって安定度が違うのかもしれないが、
バージョンあげてみたら?

857:名無しさん@お腹いっぱい。
06/07/31 19:00:04 bPE7OiBX0
USB接続のKVMスイッチ使ってて切り替えたときによく落ちるのです
各種バージョンは試してみました

858:名無しさん@お腹いっぱい。
06/07/31 20:31:27 zq3T1Gna0
夏だなぁ

859:名無しさん@お腹いっぱい。
06/08/01 05:10:23 riT7Kvih0
8月でもクリスマス島か

860:名無しさん@お腹いっぱい。
06/08/05 06:25:55 WcqHgm+Q0
特定ブラウザを起動しているときだけ、insert、break、capsLockキーあたりのあまり使わないキーに
「ワンクリックで画像保存」を割り当てたいのですがうまくいきません。

Break::
IfWinActive,ahk_class IEFrame
{
Send,{RButton}
Send,s
Send,!s
}

else
{
Exit
}


上うまくいかない例、Sendのあたりをいろいろいじってみてもどうもうまくいきません。
どうかアドバイスをお願いします。

861:名無しさん@お腹いっぱい。
06/08/05 09:51:50 4KEWoUh00
とりあえずコマンドの合間にsleep入れないとだめそうではある

862:名無しさん@お腹いっぱい。
06/08/05 10:15:42 UFh/CFsn0
>>861
適当にsleep,250いれて、
キーをcapslock::から、Ins::にしたらうまくいった。

日本語環境だとcapslockはうまく利用できないみたいですね。
os、imeあたりの制御が優先されるためかも。


863:名無しさん@お腹いっぱい。
06/08/05 10:28:45 qCpTWQJA0
>>862
日本語版だとCAPSのKeyUpが取得できないらしい。

864:名無しさん@お腹いっぱい。
06/08/07 18:35:57 wlefqxTe0
UWSCとAHKの比較

AHKの長所 --- AU3_SPY
これがいちじるしく使える。クラス名取得が便利すぎ。

AHKの短所 --- ヘルプ、解説
海外ツールゆえの弱点。
日本語化されてないとこもある。
その他文法解説が弱い。

UWSCの長所 --- ヘルプ、国産、解説本

865:名無しさん@お腹いっぱい。
06/08/08 17:00:56 xAuF67xb0
やる気さえあれば、言葉の壁なんてたいしたことないと思うけど。

866:名無しさん@お腹いっぱい。
06/08/08 21:43:28 10WWq08h0
スクリプト系のツール使おうって奴が英語読めない方がおかしいんだから
日本語(2byte文字)が全く扱えないとかならまだしも日本語化されてないとか、
解説が英語だとかなんて短所にならん。それにAHKは文法解説もきちんとしてる。
弱いと感じるなら、それは君の英語読解力が弱いからだ。

つまりAHKに海外ツールゆえの弱点があるのではなく、
君自身に英語力が低いという弱点があるってことだなw

867:名無しさん@お腹いっぱい。
06/08/08 22:13:51 xAuF67xb0
まるで留学先で日本語が通じないことにキレてるようなもんだよな。
コンピュータがどこで発明されたか知らんのか。

868:名無しさん@お腹いっぱい。
06/08/08 22:37:30 68cnhmau0
おれは英語そこそこ出来るからそこそこ使えて問題は感じないぜ、
英語できない奴はかわいそう、
なんて考えてる奴こそ、いつまでたってもそこそこしか使えないんだよ。

869:名無しさん@お腹いっぱい。
06/08/08 22:56:26 RC9dTpIq0
完璧に使えないと駄目だったらあれだな。

UWSCのドキュメントも見てみたけど、文法解説はいまひとつだと思った。実用には十分だと思うけど。
AHKは流行らせるページの文法解説ってそんなに弱いか?

個人的には、AHKの最大の長所は「過去の資産が膨大にある」点だと思うんだが。

870:名無しさん@お腹いっぱい。
06/08/08 22:56:38 wARQiyMe0
>>866
まず一行目を論理的に説明して

871:名無しさん@お腹いっぱい。
06/08/09 01:27:51 upMtDTV/0
ここ耐性低いな

872:名無しさん@お腹いっぱい。
06/08/09 01:28:39 lyPkatCS0
入れ食いだな。

873:名無しさん@お腹いっぱい。
06/08/09 01:50:17 +c+/K6Sh0
フレーミングは参加した時点で(何を言おうが)負け。
見かけたら、通り過ぎるまでじっと待つのが最善の策。

よって、俺も負け。

874:名無しさん@お腹いっぱい。
06/08/09 01:53:27 9toRUw2f0
俺も負け

875:名無しさん@お腹いっぱい。
06/08/09 02:07:24 AXyISart0
耐性とかどうでもいいんだけど
そもそも俺は荒れても構わないし
反応したやつに反論できないなら普通にそいつの負け

876:名無しさん@お腹いっぱい。
06/08/09 10:12:49 PuK1jjIl0
ネット上での言い争いの事をフレームというのだな
>873のおかげでひとつ賢くなった

877:名無しさん@お腹いっぱい。
06/08/09 11:23:35 4XOMBbI70
というか AHK と UWSC って比べるようなソフトだっけ?
用途が違うような気もするが。

878:名無しさん@お腹いっぱい。
06/08/09 11:29:02 q+f9pvSC0
要は、必死で煽り文書いてみたけど、
反論に答える力がないから、すぐに釣り宣言して逃走ってことでいいの?

879:名無しさん@お腹いっぱい。
06/08/09 11:59:39 cLFR+lkB0
>>878
正解

880:名無しさん@お腹いっぱい。
06/08/09 23:15:43 NC9fRfuw0
>>232と(たぶん)同じだから環境特有の問題じゃないと思うんだけど、
vkF2 & up::SoundSet,+2.5
vkF2 & down::SoundSet,-2.5
ってスクリプト動かすと、ひらがなキーを一度でも押すとずっとvkF2押しっぱなしな状態になってしまう。
以降はもうupかdown入力するだけでSoundSet実行。
mayuでひらがなキーをmod0にして使ってたのを乗り換えたいんだけど解決方法無いかな?

881:名無しさん@お腹いっぱい。
06/08/12 05:57:56 dKEaHFEv0
>>878
しかし、まともに反論しても、
フレーミングに参加するやつは負け組みといわれるのが2チャンネル。

もしくは、「ねたにマジレスすんな、お前は釣られているのだが……」

882:名無しさん@お腹いっぱい。
06/08/12 08:42:18 YN3EaHF80
蒸し返すなYO

883:名無しさん@お腹いっぱい。
06/08/12 15:54:25 H0uY3V2H0
>>881
だからこっちは常駐してるスレが荒れてもいいって言ってんだよボケ
釣りなら釣りでやり遂げろよ
あと自演するなら文体変えろド素人が

884:名無しさん@お腹いっぱい。
06/08/12 17:10:39 nKacSO160
フレーミングは参加した時点で(何を言おうが)負け。
見かけたら、通り過ぎるまでじっと待つのが最善の策。

よって、俺も負け。

885:名無しさん@お腹いっぱい。
06/08/12 19:52:23 EmbbAg0I0
アジャパーヽ(´ー`)ノ

886:名無しさん@お腹いっぱい。
06/08/12 20:11:11 dUP2033C0
flaming 覚えたてで使いたかっただけちゃうんかと

887:名無しさん@お腹いっぱい。
06/08/12 20:39:07 /DuFVmL/0
コピペ

888:名無しさん@お腹いっぱい。
06/08/14 15:30:20 DtFvPCvr0
AAAというソフトがアクティブな時
マウスカーソルがソフトAAAのクラスBBBとクラスCCC上にある場合
マウスの拡張ボタン XButton1を押すとXButton1がそのまま送られ、
クラスBBB、CCC上以外の場所にカーソルがある場合は XButton1を押したらEnterキーが送られる。

という物を作りたいのですが、どうすればいいでしょうか?

889:名無しさん@お腹いっぱい。
06/08/14 15:54:17 NTc2eNg20
>>888
MouseGetPosでいいんじゃない

890:名無しさん@お腹いっぱい。
06/08/14 15:59:46 U+odDKWZ0
IfWinActive…該当ウィンドウがアクティブか
MouseGetPos…マウスカーソルの位置、マウスの下のウィンドウやコントロールを取得
Send…キーストロークを発生させる


851に倣って必要なコマンドあげてみたが、わざわざ解説するまでもなく基本機能だったな
まぁせっかくの夏休みなんだし、頑張ってみれ

891:名無しさん@お腹いっぱい。
06/08/14 16:34:20 DtFvPCvr0
変数名とキー名は流行らせるページに一覧が乗っていたので分かるのですが、
構文が分からないんです。

892:名無しさん@お腹いっぱい。
06/08/14 16:40:23 U6j7VEhq0
> どうすればいいでしょうか?
勉強

893:名無しさん@お腹いっぱい。
06/08/14 17:16:18 mrhengen0
>>891
まず、最初から丸投げしないで、自分なりに書いてみる。
それで動かなかった場合、何故動かないかをここで聞いてみれ。
さすがにそれをスルーする程にはここの人達も冷たくなかろう。

894:名無しさん@お腹いっぱい。
06/08/16 00:12:28 uW+77TpF0
すみません、ちょっとお伺いします
これってコンパイルするときに、例えば画像や音声ファイルを
一緒にパックしてexe化することって可能ですか?

895:894
06/08/16 00:22:57 uW+77TpF0
すみません、見つかりました。自己解決です。

896:名無しさん@お腹いっぱい。
06/08/16 00:25:14 1qUWJw7B0
>>894
アイコンは含められるけど、その他のファイルは(実用的には)無理だと思う。

897:名無しさん@お腹いっぱい。
06/08/16 00:41:55 uW+77TpF0
そうみたいですね
マニュアルで FileInstall っての見つけて、これでパックしてみたんですが
何故だかいざ実行してみるとファイルが見つかりませんってなりますね
なにか使い方を根本的に間違っているなかな?
ともかく、お返事ありがとうございます。

898:896
06/08/16 01:09:20 1qUWJw7B0
>>897
あ、ごめん。FileInstallの存在忘れてレスしてた。
FileInstall使えばできるよ。
できないとしたらスクリプトの先頭の方に書いてないとか。

899:名無しさん@お腹いっぱい。
06/08/17 00:47:26 2PVlAupL0
カーソルが画面隅にあるときホイールを無効化するスクリプトを組んだのですが
WheelUp::
IfWinActive, Sleipnir
{
Send, {F1}
}

else
{
Send, {WheelUp}
}

return

IEなのでページをスクロールするときのホイール動作がもっさりしている気がします。
else文で WheelUp::WheelUp こうなってるのが原因な気もしますが・・・ 
なにかいいアイデアは無いですか?

900:名無しさん@お腹いっぱい。
06/08/17 00:52:35 2PVlAupL0
誤:IEなので
正:IEなどで

901:名無しさん@お腹いっぱい。
06/08/17 01:10:07 In5F2pPh0
PostMessageでWM_MOUSEWHELLを投げる
それか,加速処理を入れ込んでみたら?
前スレにサンプルあった筈

902:名無しさん@お腹いっぱい。
06/08/17 01:20:46 In5F2pPh0
つか,ぬるさんがホイールリダイレクト作ってたんだっけ
この辺落としてきて中身参考に汁
URLリンク(lukewarm.s101.xrea.com)

903:名無しさん@お腹いっぱい。
06/08/17 01:51:04 2PVlAupL0
>>902
ホイールリダイレクトも試しに使ってみたのですが、やはりもっさりしてしまいました。
加速度はマウスドライバで細かく弄ってあるので、できれば加速処理等はしたくないです。

あとWheelUp::WheelUp この処理が原因かと思って↓こんなのも試したのですが
IfWinActive, Sleipnir
{
WheelUp::F1
}

else
{
;何も無し。うまくいけばホイール回転をスルーしてそのままの加速度でいけるかも?
}
return

これだと、どの場所でホイールしてもホイールが全てF1に変換されてしまい失敗でした。
ちなみにマウスはMicrosoft IntelliMouseOpticalです。ドライバは純正でVer5.2です。

904:名無しさん@お腹いっぱい。
06/08/19 16:48:04 cQubjpuu0
小ネタ

; irfanViewのexe を指定
iview32 := "C:\Program Files\irfanview\i_view32.exe"
; 画像の拡張子を指定
screenShotExt := "png"
; 保存先のディレクトリを指定
screenShotDir := userprofile "\デスクトップ"

任意のキーバインド::
; yyyyMMdd-hhmmss 形式を生成
file := A_YYYY A_MM A_DD "-" A_Hour A_Min A_Sec
; capture=0 なら 画面全部、 1ならアクティブウィンドウ
Run, "%iview32%" /capture=1 /convert=%screenShotDir%\%file%.%screenShotExt%


905:名無しさん@お腹いっぱい。
06/08/19 17:09:38 nR6kdIAC0
irfanviewでも出来たのか・・・
俺もちょうど昨日winshot非常駐化した
常駐ソフトがどんどん減って面白いわ

906:名無しさん@お腹いっぱい。
06/08/22 11:29:47 UMefObLg0
流行らせるページ落ちてる?
ようやく始めようと思って開いたら無かった。
復旧町か。

907:名無しさん@お腹いっぱい。
06/08/23 04:15:23 52TsQxrC0
「;」キーを「a」にするのってどう書けばいいんですか?
;;;aだと.ahk実行しても出来ません
多分「;」をなにかで囲んだりするんだろうけど、どうやるか分かりません
どなたか教えてください

908:名無しさん@お腹いっぱい。
06/08/23 05:07:11 hfHkq/U60
つ キーコード

909:名無しさん@お腹いっぱい。
06/08/23 10:21:32 Y+tDCBhY0
>>907
URLリンク(lukewarm.s101.xrea.com)
今後は↑の一番下を見ること。↓の3つの内のどれでも指定できるはず。
vkBB::a ;「;」の仮想キーコードBBを指定
sc027::a ;「;」のスキャンコード027を指定
vkBBsc027::a ;仮想キーコードとスキャンコードの両方を指定

910:907
06/08/23 14:50:08 52TsQxrC0
>>908-909
出来ました
ありがとうございました

911:名無しさん@お腹いっぱい。
06/08/23 20:36:48 52TsQxrC0
>>575-576みたいに
格ゲーのコマンドをボタン一発で出したい時ってどう書けばいいんですか?

d→d+f同時押し→f+j同時押し(ちなみにd=下、f=前、j=弱パンチ。波動拳コマンドです!)

とやりたいんですけど、

a::
Send,{d}
Send,{f}
Send,{j}

と書いて.ahkで保存したんですけど、まったく機能してません
どなたか教えてください

912:名無しさん@お腹いっぱい。
06/08/23 20:42:00 hfHkq/U60
ゲームだと、ツールでの不正防止(格ゲーでは必要ないだろうけど)とか、
入力制御の都合とかで、通常のキーコードを拾わないものが腐るほどある。
とりあえず複数キーではなく、単発キーで試して、それすら拾わないならAHKでの対応は諦めよう。

913:911
06/08/23 20:54:32 52TsQxrC0
>>912
レスありがとうございます
f::dとして入れ替えてみたんですが、ちゃんと入れ替えできました

.ahkに書く内容って
a::
Send,{d}
Send,{f}
Send,{j}
だけでいいんですか?
なんかこれだとD(十字キー↓)、F(十字キー→)で、J(ボタンA)って割り当ててるんで
斜め押しがないような気がするんですけど。

914:名無しさん@お腹いっぱい。
06/08/23 21:33:10 zLZrXw5L0
Send, afj
これだけでいいんじゃまいか


915:911
06/08/23 21:39:23 52TsQxrC0
>>914
a::Send, dfj
をsenddfj.ahkで保存してやって見ましたがダメでした_| ̄|○

書き方間違ってますか?

916:名無しさん@お腹いっぱい。
06/08/23 21:52:13 el4zMw010
send,{d down}{f down}{d up}j{f up}
あとSetKeyDelayの値とか。

917:911
06/08/23 22:22:39 52TsQxrC0
>>916
これってaボタンにこのコマンドを登録するには
a::send,{d down}{f down}{d up}j{f up}って
a::はいらないんですか?

918:911
06/08/23 23:40:00 52TsQxrC0
どなたか!

919:名無しさん@お腹いっぱい。
06/08/23 23:42:40 Y+tDCBhY0
>>918
試せば分かるでしょ。

920:911
06/08/24 00:02:41 52TsQxrC0
a::
send,{d down}{f down}{j down}{d up}{f up}{j up}

でやったらなんとか出るんですけど、時々パンチだけ打ったりします
どこがわるいんでしょうか?

921:391
06/08/24 00:05:02 N+GjQWMF0
>>920
1時間くらい試行錯誤してみろよ

922:911
06/08/24 00:07:29 52TsQxrC0
>>921
了解! く(`・ω・´)行って参ります

923:名無しさん@お腹いっぱい。
06/08/24 00:22:50 KH7bvAbO0
てめーSendコマンドの説明読んでないな

924:名無しさん@お腹いっぱい。
06/08/24 00:38:31 WnBC1VuP0
どうでもいいけど 2行以上にするなら return入れなさいよ

925:名無しさん@お腹いっぱい。
06/08/24 01:27:15 9ANH7vkE0
どうでもいい

926:911
06/08/24 01:50:07 TebRODsR0
全然出来ない・・・
何回か連打してると確実にパンチとか出る

>>923
すみません
読んだけど全然出来ません

>>924
ありがとうございます
入れなくても動くけど入れた方がいいんですね

もうひとつ聞きたいんですが、aキー押したら、Jキー1秒間に20連打とかって出来ますか?
a::{j 20}
で1秒間に20連打いきますか?

927:名無しさん@お腹いっぱい。
06/08/24 03:58:18 KH7bvAbO0
ディレイの設定次第ではそうなる

928:名無しさん@お腹いっぱい。
06/08/24 06:41:08 e+RPRV6N0
毎度のことだけど合間にpauseが無い性じゃないかと

929:連続で申し訳
06/08/24 06:41:53 e+RPRV6N0
sleepでした。すみません

930:911
06/08/24 16:40:26 TebRODsR0
>>929
ヘルプ見たけどこれをどう組み込むかが全然分からない
どうやるんですか?
Sleep, 1000 ; 1 second
SetKeyDelay, 0

931:911
06/08/24 16:40:56 TebRODsR0
>>927
出来るんですか、良かった

932:名無しさん@お腹いっぱい。
06/08/24 19:13:28 WmELH/U20
とりあえず一回ごとに聞きに来ないで、流行らせるページをきちんと熟読しろ
こないだ落ちてたけど今はもう復旧してるから

933:911
06/08/24 23:17:24 TebRODsR0
>>932
見たけど、何がなんだかさっぱり・・・
なんというかもっと書式の具体例が多く載ってるサイトってありませんか?

というか、誰か書いてよ。・゚・(ノД`)・゚・。

934:名無しさん@お腹いっぱい。
06/08/24 23:25:42 6uORQeeG0
いい加減自重しろ。only1の存在だか何だか知らんが無知である事ぐらいは恥じてくれ。

935:名無しさん@お腹いっぱい。
06/08/25 00:10:48 thm//g2H0
以後放置かレスするなら丁寧に教えるかどっちかにしてもらえるかな
キリがないから

936:名無しさん@お腹いっぱい。
06/08/25 00:17:13 1crmFTa/0
どんどん質問してくれ、ここの人は親切だから答えてくれるよ

937:名無しさん@お腹いっぱい。
06/08/25 00:30:24 Vi3Seppi0
正直、流行らせるのとこのサンプルどんな挙動するのか書いてないから
全然参考にできない。キー置換くらいしかできない人だから・・・

938:名無しさん@お腹いっぱい。
06/08/25 00:39:39 4nigyMat0
>>937
書いてないなら試せばいいじゃない。
ちょっとした挙動確認にこのスクリプトマジおすすめ。
URLリンク(www.autohotkey.com)

939:391
06/08/25 00:46:09 PBih+xe80
>>938
このスクリプトいいすね
保存とかしなくても動作確認出来るのか!サンクス

940:名無しさん@お腹いっぱい。
06/08/25 00:49:13 PBih+xe80
また名前が残ってたよ。。orz

941:名無しさん@お腹いっぱい。
06/08/25 08:22:44 XRAU8LtZ0
もうちょっとモジュール管理とかしやすくならないかな。
自分のコードをそれなりに育ててると他人のコードを導入しにくい。

942:名無しさん@お腹いっぱい。
06/08/25 09:26:22 CVIA2L5H0
月曜日に使い始めて初めて作ったスクリプ㌧がどうにか想定どおりに動いたので記念カキコ


943:名無しさん@お腹いっぱい。
06/08/25 15:34:19 B5FGjtB30
AHK使いこなせてる人がうらやましい。
俺が知らないちょー便利なスクリプトがあるかと思うと腹が立つ!

944:名無しさん@お腹いっぱい。
06/08/25 17:58:08 jUefnTnu0
>>943
あんなことやこんなことにちょー便利なスクリプト
作って運用してるよ~ ムフフフ
羨ましかったらがんばりな~

945:名無しさん@お腹いっぱい。
06/08/25 19:17:42 zpsuwIMd0
マウスに機能振付ける程度しかしてねえ。
みんなAHKでなにやってんの?

946:名無しさん@お腹いっぱい。
06/08/25 19:28:21 PlFbS7d10
よく使うソフトが存在して非アクティブならアクティブに、アクティブなら非アクティブに。存在しないなら起動する、ってのが一番使ってるのかな?

947:名無しさん@お腹いっぱい。
06/08/25 19:42:10 i2UrWwt80
一番使ってるのは、Alt+英字キーでそれぞれ特定窓のアクティブ化かな
あとはAlt+↑で窓最全面固定、Alt+↓で解除

948:名無しさん@お腹いっぱい。
06/08/25 19:51:56 hvqw5/0V0
俺もウインドウ操作が多いかな。Win+中クリックでアクティブウインドウをシェードが一番お気に入り。

949:名無しさん@お腹いっぱい。
06/08/25 20:09:30 R2YBf9ek0
X1,X2にマウスジェスチャ

950:名無しさん@お腹いっぱい。
06/08/25 20:22:15 wwLtwdLn0
Winシェード、助けっててば~もどき、キーボードでのウィンドウ操作(移動、大きさ変更等)、
ホイールリダイレクトとか 後は普通にキーボードランチャとか
一時期 TTBaseをやたらとパクってた

951:名無しさん@お腹いっぱい。
06/08/25 20:37:43 jUefnTnu0
漏れは、DVという動画再生ソフトをコントロールするのに使っている。
DVは動画の特定場面を(始点終点を指定して)ブックマークできるので、
これをAHKを使って外部からコントロールしている。
これで何が出来るかというと、いきなり動画を立ち上げたら
特定場面を繰り返し再生するようなことができる。

用途は

952:名無しさん@お腹いっぱい。
06/08/25 21:15:26 IrUfF2vB0
アプリ起動時に何か作業させたいときとか
キーカスタマイズできないアプリ使うときに重宝してる
スクリプトごとにAHKファイルを作って使う事が多いかな
フリーソフトはカスタマイズして好みの動作に出来るのにさ
パッケージソフトって融通効かないのが多いよね

953:名無しさん@お腹いっぱい。
06/08/25 22:20:34 B5FGjtB30
俺がよくつかうスクリプトは画面のガンマを明るくしたり暗くしたりするスクリプトかなぁ。
フルスクリーンのゲームとかやるときに重宝する

954:名無しさん@お腹いっぱい。
06/08/25 23:14:52 wwLtwdLn0
毎回決まった操作するソフトのバッチ化とか便利だよな
マウス操作しか受けつけないソフトとかでもエミュレートできるし、ゲーム系は知らんけど

955:名無しさん@お腹いっぱい。
06/08/25 23:17:29 MlWlsT/U0
みんないろいろな使い方してるんだね。
自分で作ってこれがないとイヤって気分になったのは

・タスクトレイの不要なアイコンを消す。消したアイコンはGUIで作ったメニューで操作
・コモンダイアログ操作(新規フォルダ作成や上のフォルダへ移動をキーで行える、よく使うフォルダをGUIメニューで選べるなど)
・自作コマンドラインランチャ
・クリップボード拡張に似た定型文貼り付けツール
・ファイルを開くときに起動ソフトを選べるポチエスもどき
・非アクティブ状態の音声プレイヤーをキー操作
・音声ボリュームをキー操作
・壁紙を10分ごとに変える
・メッセンジャーのアラートをすぐ閉じさせる

こんなとこかな。

956:名無しさん@お腹いっぱい。
06/08/26 00:02:07 YnG/1Q9h0
結構人いるじゃん。普段どこにいるのよw

957:名無しさん@お腹いっぱい。
06/08/26 00:07:35 +klA55Wk0
自慢大会

958:名無しさん@お腹いっぱい。
06/08/26 00:28:44 JO8noLou0
いろんなスレで宣伝されてるから結構ひとは増えてるな

959:名無しさん@お腹いっぱい。
06/08/26 01:04:49 8DCBYvtZ0
キーロガ(ry として・・・

960:名無しさん@お腹いっぱい。
06/08/26 02:36:43 X/Ib7Ykp0
ひでえw

961:名無しさん@お腹いっぱい。
06/08/26 08:45:01 m3e78oi50
スレのまとめサイトを作るときの省力化に使ってる
スレの書き込みをコピーすると、自動でまとめの形式に整形してペーストできるようにしたりとか

962:名無しさん@お腹いっぱい。
06/08/26 15:17:13 wHPKaZ6r0
>>955
>>タスクトレイの不要なアイコンを消す
これ便利そうですね
どんな感じで実装したか教えていただけませんか?
#NoTrayIconがそれ系の設定かと思ったんですが
自身のアイコンしか設定できないみたいですね

963:名無しさん@お腹いっぱい。
06/08/26 16:29:27 JCJaH2650
流行らせるページに置いてあるっしょ

964:名無しさん@お腹いっぱい。
06/08/27 00:32:45 ZEntdSAc0
>>963
見落としました、ありがとうございます。

965:911,913,920
06/08/27 01:33:14 HA7NngEi0
もうなんか全然出来ません_| ̄|○

どなたかキー設定はこれとしてどのように書くか教えてください
上=E
左=S
下=D
右=F
パンチ=J

波動拳コマンド(下→右下→右+J)←最後の右と同時にJ押す
ため技(左2秒間押しっぱなし→右+J)
連射(Jボタン1秒間に20連射)

966:名無しさん@お腹いっぱい。
06/08/27 03:04:25 Avw5cK+C0
>>965
教えてあげたいけどもうなんか全然出来ません_| ̄|○

967:名無しさん@お腹いっぱい。
06/08/27 03:13:42 hasAzi8a0
>>965
UWSCでその操作を記録する

再生する


968:名無しさん@お腹いっぱい。
06/08/27 05:01:24 m+fbBZjP0
>>967
> >>965
> UWSCでその操作を記録する
> ↓
> 再生する
> ↓

じゃあまずJボタン1秒間に20連射することからはじめなきゃな


969:名無しさん@お腹いっぱい。
06/08/27 09:50:26 pdM9eWxw0
> Jボタン
ボタンかよwww


970:名無しさん@お腹いっぱい。
06/08/27 16:24:32 nyrLHg0T0
悩むよりパッド買ったほうが早いんじゃねえ?

971:名無しさん@お腹いっぱい。
06/08/27 23:46:40 HXc/5fNb0
>>970
正論だな
1000円以下で買えるんだし、
あれこれ悩む時間と比較したらやすいもんだ

というか、レスの流れみてると一生スクリプト組めそうもないし

972:名無しさん@お腹いっぱい。
06/08/27 23:57:30 hasAzi8a0
家庭用ゲーム機の格闘ゲームを買う

PCのことは忘れる

973:942と961
06/08/28 08:50:44 Is6v/MF40
>>942
のように言っておきながら、いざ実際に使ってみるとまったく動かなかったり…

~1
ToolTip, *加工中*
Sleep, 200
BlockInput, On
send, {Lbutton Down}
send, {Lbutton Up}
Sleep, 50
Send, w
Sleep, 50
Send, a
Sleep, 50
~2
ClipSaved := ClipboardAll
Run,E:\softwares\refo\refo.exe E:\softwares\refo\recipe\■■■■_resban.rrf
Sleep, 200
FileAppend, %Clipboard%, E:\■■■■_temp.rrf
~3
Sleep, 200
Clipboard := ClipSaved
Run,E:\softwares\refo\refo.exe E:\softwares\refo\recipe\■■■■.rrf
Sleep, 200
Run,E:\softwares\refo\refo.exe E:\■■■■_temp.rrf
Sleep, 200
FileDelete, E:\■■■■_temp.rrf
ToolTip,
BlockInput, Off

974:942と961
06/08/28 08:51:44 Is6v/MF40
Janeでレスの全文を自動でコピー(~1まで)、それをセーブしてから
クリップボードの書き込みからrefoで2次加工をするためのマクロを作成してファイル化(~2)。
~1でセーブしておいた全文を復活させrefoで1次加工したあと~2で作ったマクロで2次加工。
~2のマクロを消して完了

正規表現ではちょっとやりにくいことをさせてるんで
その場でマクロを作成してテキストを加工するという流れ。
USBメモリにexe化して使ってるが、
家のw2kでは問題なく動くんだが出先のxpの入ったpcだとロクに動かない…

975:942と961
06/08/28 09:52:32 Is6v/MF40
>家のw2kでは問題なく動くんだが出先のxpの入ったpcだとロクに動かない…

と思ってたが、実際使うのと同じような環境で使ってみると
家のPCでもやはりうまく動かないことが多い…

どうすればいいのじゃ

976:名無しさん@お腹いっぱい。
06/08/28 10:09:50 qnqCJlGT0
昔のヴァージョンだとFileAppendで
存在しないパスを指定してもファイルが新規作成されなかったけど
XpでのAHKヴァージョンはどう?

あとRunWAitでREFOを終了を待ってみるとか

>Run,E:\softwares\refo\refo.exe E:\■■■■_temp.rrf
>Sleep, 200
>FileDelete, E:\■■■■_temp.rrf

ここで間に合わないと削除の方が早くなるかも

977:名無しさん@お腹いっぱい。
06/08/28 23:13:58 bfA0G0oq0
URLリンク(la.ma.la)
まらたん万歳

978:名無しさん@お腹いっぱい。
06/08/29 00:49:37 sj53R3ZL0
マウスの中ボタンでアプリの切り替えをおこなおうとおもい、
いろいろ試したのですがうまく操作を受け付けてくれません。

MButton::AltTabMenu

↑を起点にして、sendとかいろいろしてみたのですがうまくいきません。
どうか知恵をおかしください。


979:942と961
06/08/29 08:55:42 4kzVANcN0
>>976

>XpでのAHKヴァージョンはどう?

最新版の入った家のPCで作ったexeをUSBメモリに入れて使っていますので
そっちの問題ではないと思われ


refo使用後に必ずRunwait、それからSleepを全動作の間に狂ったようにはさみまくってどうにか成功率が上がりました
…といっても10%以下だったものが50%くらいにですが。

微調整すれば期待通りに動くと信じていじってみます

980:名無しさん@お腹いっぱい。
06/08/29 10:00:48 vaG1joB40
何か別のクリップボード監視系ソフトが入ってるとか

981:942と961
06/08/29 12:32:46 1byQz9JE0
tomoclipというソフトは使ってますが、
使用を止めてみても変化がありませんでした。

982:名無しさん@お腹いっぱい。
06/08/29 12:52:58 vaG1joB40
あとはFileAppendで時間がかかってるという線かな
これもWait出来ればいいんだけど。

FileGEttimeとかIfExistとかで
書き込みが終了してファイルが解放されたことを調べられないかな?


983:名無しさん@お腹いっぱい。
06/08/29 17:23:41 eGhPSUa50
MsgBoxデバッグ

984:名無しさん@お腹いっぱい。
06/08/30 10:10:31 ZRSPoaox0
>>978
中央ボタンがマウスドライバかなんかで
別なのにのっとられてるんじゃないの。
logitech の setpoint なんかだとそうだよ。
設定で直せる。

985:名無しさん@お腹いっぱい。
06/08/30 19:23:03 2Q5vZD5n0
>>984
レスありがとうございます。

サンワのマウスつかってます。
ドライバがくそです。ハードは軽くて、ボタンとかも押しやすいんだが……

やっぱりMSのマウスかな。

986:911,913,920,965
06/08/30 20:11:37 YWVqs1GT0
誰か~。・゚・(ノД`)・゚・。

987:名無しさん@お腹いっぱい。
06/08/31 12:04:34 RRrBfgN00
まだいたのか・・・

988:名無しさん@お腹いっぱい。
06/08/31 13:10:44 ho1dZPPmO
>波動拳
920じゃdキーを押したまま(downのまま)jキーを押してる。dを離してからjだろ?

>ため技
sを押してから2000ミリ秒sleepしてsを離してfとjを押せ。

>連射
SetKeyDelayを適当に設定して{j 20}。

989:名無しさん@お腹いっぱい。
06/08/31 13:19:57 zsrklxdL0
send,{した down}{みぎ down}{した up}{パンチ down}{みぎ up}{パンチ up}
こうじゃないの。
あとは必要なら間にスリープ入れてタイミング取る。

990:名無しさん@お腹いっぱい。
06/08/31 13:20:20 J2AR2qUd0
MButton::
RButton::
  Hotkey,LButton,MRtoLButton

  If 条件
    ジェスチャー発動
  Else
    キャンセル処理

  Hotkey,LButton,Off
Return

MRtoLButton:
  Lジェスチャープラス
Return

こんな感じで、普段 LButton は拾わず、MButton か RButton が押された時だけ
LButton を Hotkeyコマンドで登録して MButton or RButton 始動のジェスチャーに LButton を
からめたいんだが、LButton が登録されず どうしても上手くいかない。
(MR , MM , RMMM , R→M↑ 等のジェスチャーは上手くいっている)

なぜだろう?

991:990
06/08/31 13:52:02 J2AR2qUd0
自己解決・・・・・・たぶん。

992:名無しさん@お腹いっぱい。
06/08/31 15:04:24 skD9nj7X0
BuildWait, NextThread

993:911,913,920,965
06/08/31 20:58:47 zM1AWgyN0
>>988
>>989
ありがとうございます!
>>965の波動拳コマンドはなんとか安定して出るようになってきました
波動拳コマンド
a::
send,{d down}{f down}{d up}{f up}{j down}{j up}

が、ため技が全然出ません。。。
h::
send,{s down}Sleep, 2000{s up}{f down}{u down}{f up}{u up}
こう書いてみたのですが、なんかまったく違う動きをします。

どこが違うのでしょうか?

994:名無しさん@お腹いっぱい。
06/08/31 21:14:55 VxkuwdTM0
>>993 このスレも残りわずかだし、乗りかかった船だ。
オマエのミスその1:1行に命令文はひとつしか書けないことがわかってない。
オマエのミスその2:複数行にわたる場合は最後にreturnが必要。
オマエのミスその3:jキーを押すだけならdownとかupとかは不要。
オマエのミスその4:そもそも人生の大切な時期をゲームに費やしている時点で負け組。

以上を踏まえて。

>波動拳⇒自分が書いたものとjキーの扱い方を比べてみろ。
a::
send,{d down}{f down}{d up}j{f up}
return

>ため技⇒命令はsend、sleep、sendと3つあるので3行にならなくてはいけない。
h::
sキーを押下
2秒スリープ
sキーを離してfとjを押下
return


995:名無しさん@お腹いっぱい。
06/08/31 22:30:44 0kJl8rFb0
繭スレの奴に比べればかわいいもんだわ。

996:911,913,920,965
06/08/31 22:56:03 zM1AWgyN0
>>994
おお、ありがとうございます
なんかすごく安定しました
波動拳は、ほとんど余計な動作が入らなくなりました
ため技は完璧です

あとは、いくつかのゲームで試したのですが、相性みたいのがあるみたいなので
Sleep入れたりしてこれから試して生きたいと思います。

また、分からなくなったら聞きにきますのでよろしくお願いします。

997:名無しさん@お腹いっぱい。
06/08/31 22:59:55 LVFk+1qM0
どういたしまして
またいつでもどうぞ^^

998:名無しさん@お腹いっぱい。
06/08/31 23:24:22 QM2YH2fS0
こうしてまた役立たずの低脳が1匹居付いたのであった。

999:名無しさん@お腹いっぱい。
06/08/31 23:48:21 Ft3Xb2Oa0
999

1000:名無しさん@お腹いっぱい。
06/08/31 23:51:07 UYcjre3V0
1000

1001:1001
Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch