AutoHotkey スレッド ..
134:名無しさん@お腹いっぱい。
09/01/25 02:22:31 tSgUCSWd0
ahkの初期実行部分で、実行してるマシンのOSを判別させてるんだけど、
Windows7で実行してみたら、PC名の変数が「WIN_VISTA」になった。
これだと本当のVISTAとWin7が判別できないね。
なんか適切な判別方法ないかな?
135:名無しさん@お腹いっぱい。
09/01/25 14:38:08 zq9D9YZQ0
何かシステム系DLLのヴァージョンを調べるとか
136:名無しさん@お腹いっぱい。
09/01/25 19:32:57 xTILthLA0
ver というコマンドプロンプトで使えるコマンドがあってだな
137:名無しさん@お腹いっぱい。
09/01/25 22:59:29 C2p4wSr10
報告その一
流行らせるページのリファレンス、ControlGetの説明の項
>Choice
>リストボックスやコンボボックスで選択されている項目の番号
>(TListBox/TComboBoxコントロールにも対応)
ってなってるけど
ControlGet,var,Choice,,ComboBox1,画面のプロパティ
msgbox,%var%
でやってみたら、選択されている項目の"番号"ではなく"文字列"が取れた。
ちなみに本家ヘルプの説明はこんな感じ
>Choice: Sets OutputVar to be the name of the currently selected entry in a ListBox or ComboBox.
>To instead retrieve the position of the selected item, follow this example (use only one of the first two lines):
>
>SendMessage, 0x188, 0, 0, ListBox1, WinTitle ; 0x188 is LB_GETCURSEL (for a ListBox).
>SendMessage, 0x147, 0, 0, ComboBox1, WinTitle ; 0x147 is CB_GETCURSEL (for a DropDownList or ComboBox).
>ChoicePos = %ErrorLevel% ; It will be -1 if there is no item selected.
>ChoicePos += 1 ; Convert from 0-based to 1-based, i.e. so that the first item is known as 1, not 0.
138:名無しさん@お腹いっぱい。
09/01/25 23:27:14 NAyEbsnB0
むしろ、番号が取れなくて困った覚えがある。
日本語取得出来たけど再利用出来ないよ!な感じで
139:名無しさん@お腹いっぱい。
09/01/25 23:28:39 C2p4wSr10
報告その二
TrackWheelでタイトルバーをクリックしてもアクティブウィンドウが切替わらなくなることがあるです。
[Alt]+[Tab]で切り替えてやると復活するが、以降のドラッグ操作に支障が出る。
→ ドラッグ&ドロップが効かなくなる。(ポインタはドラッグの絵になるがドロップができない)
→ マウスジェスチャ対応アプリでマウスジェスチャが効かなくなる。
スクリプトをReloadしても直らず、諦めてしばらく使ってるといつの間にか復旧してる。
vmWareのゲストOS画面(MKSEmbedded)上でうっかりスクロールさせようとした時によく起きた。
vmWareを一切起動させてなくても時々なる。
再現パターンは今のとこ不明だけど、発生直前に本来のマウスポインタとスクロールポインタが
二重で表示されていたような気がする。
WinXP SP2 AHK ver 1.0.47.06 AutoHotkey.iniに組込み利用
あとスクロール制動についての感想というかできれば要望です。
(これは多分に好みの問題かも知れないので気に入らなかったら無視して下さい)
横スクロールしたい時にブレで縦方向までスクロールしてしまうことがよくあり、縦横自在杉な制動が
ちょっと仇になっているような印象を受けました。
ThinkPad標準のスクロールではあまりその辺を意識したことがなかったんですが
直前に移動した位相(xもしくは、y方向)で固定し、別の位相へのスクロール時は閾値と感度を
通常より多めに取る。もしくは縦横の移動を同時には行なわない。
(xのが移動量が多いなら横のみスクロールさせてy値はあえて無視)
みたいな対処が入っているような気がします。
140:名無しさん@お腹いっぱい。
09/01/26 00:08:35 OzaHopDg0
>>139
TrackWheelの中の人だす。
> TrackWheelでタイトルバーをクリックしてもアクティブウィンドウが切替わらなくなることがあるです。
> [Alt]+[Tab]で切り替えてやると復活するが、以降のドラッグ操作に支障が出る。
認識していまつ。同症状がこっちでも起きていて、原因は分からない。orz。
こっちは、再現性っていうか、今のところFireFoxでしか起きないんだけど・・・。
申し訳ないが、今のところメドはなし・・・です。
> 再現パターンは今のとこ不明だけど、発生直前に本来のマウスポインタとスクロールポインタが
> 二重で表示されていたような気がする。
ふむ。。。TrackPointのツールだとFireFoxの場合カーソル消えない(というかちらつく)し、ちょっと手がかりかも。
不具合でどうしようもねぇ!っていうのなら、以下のオプションをIniで設定して様子見してくれるとありがたい。
マウスポインタは消えないけど・・・
> ; マウスカーソル消去を無効にする場合は 1、しない場合は 0 にする
> NoHide=1
> 横スクロールしたい時にブレで縦方向までスクロールしてしまうことがよくあり、縦横自在杉な制動が
> ちょっと仇になっているような印象を受けました。
> :
> 直前に移動した位相(xもしくは、y方向)で固定し、別の位相へのスクロール時は閾値と感度を
> 通常より多めに取る。もしくは縦横の移動を同時には行なわない。
これは、好みっつーか仕様の範囲だね。数式いじるだけだから実現は楽なはず。
オプションで変えられるようにすればいいだけだから、気が向いたらやってみる。
141:名無しさん@お腹いっぱい。
09/01/26 06:04:32 VuJfFU6y0
trackwheel便利なんだけど
外付けマウスまで同じ挙動になっちゃうのは避けられないのかな。
142:名無しさん@お腹いっぱい。
09/01/26 09:52:19 z8Mo5hpU0
>>139
dです
発生頻度はそれほど高くないんだけど、リブート以外の復旧方法がわからないのが痛いところ。
>気が向いたらやってみる。
>申し訳ないが、今のところメドはなし・・・です。
更新とか急かすつもりはないんで報告も参考程度で見といて下さい。
もうTrackWheel依存しすぎでThinkPad標準のドライバには戻れない状況ですわ。
>ふむ。。。TrackPointのツールだとFireFoxの場合カーソル消えない
そういえばVMWareも消えないですね。ゲストOSにマウス制御全部渡してるらしくトラックポイントでの
スクロールも一切できないです。
ちなみにVmWareのゲストOS内でTW.ahkを動かすことはできます。
でも仮想マシン内は普通よりディレイが発生しやすいためかスクロールはカクカクで例の現象も
比較的高頻度で起こってた気がします。
直近での発生はVMではなく Jane Styleのスレ欄だったんだけど
・その前にシェルが一回落ちていて窓切替にやたら時間がかかる状態だった。
・トラックポイント操作してもスクロール制御ができてない(間に合ってない)うちにmbuttonを離してしまった。
のが原因だったような。(いやそもそもシェルが落ちてる段階で参考にならないか)
> NoHide=1
今すでに現象が起こってるので、後でOSリブート後に試してみます。
あとTW_POSTACTIONを設定してるのでそれ解除しても起こるかも見てみます。
143:名無しさん@お腹いっぱい。
09/01/26 09:53:17 z8Mo5hpU0
レス番まちがい
×139
○ >>140
144:名無しさん@お腹いっぱい。
09/01/27 14:21:32 paF95q4q0
ControlGetTextとかって「ahk_pid %pid%」が上手に使えない。
「ahk_id %id%」等なら使える。はまった。
145:名無しさん@お腹いっぱい。
09/01/27 17:39:54 lduHMXnK0
Jane Doe Styleってなんでタスクバーで左右になべて表示ってやると
二つ分として扱われるの?これAHKでなんとかならん?
146:名無しさん@お腹いっぱい。
09/01/27 17:45:58 Ny4HM/7G0
>>132,133
遅くなりましたがありがとうございました
147:名無しさん@お腹いっぱい。
09/01/27 18:26:19 eAnAnnBW0
>>144
一つのプロセスで窓はいくつでも持てるんだぜ。
>>145
以下を実行した直後なら・・・
WinSet, Style, -0x10000000, ahk_class TApplication ; WS_VISIBLE
148:名無しさん@お腹いっぱい。
09/01/27 19:56:41 t0VmE1Ht0
質問です
特定の動作をさせる為のホットキーを設定ファイルで設定する方法はありませんか?
例えば設定ファイルに#Eと書かれていればwin+Eで動作
#Qと書かれていればwin+Qみたいな感じで
149:名無しさん@お腹いっぱい。
09/01/27 20:15:43 X4tsXHNf0
僕も質問です。
アプリ上で開いているファイルの名前を取得する方法ってありますか?
例えば、エディタでc:\***.docというファイルを開く。
c:\***.docはエディタ上ではアクティブな状態だとして、
このc:\***.docという名前をAHK上で取得したいのです。
無理かなあ。
150:cbibnvn
09/01/27 20:17:47 nCQqd/B10
4fr8vT <a href="URLリンク(awqiefzmnckd.com)">awqiefzmnckd</a>, [url=URLリンク(ohcwsocuvnsl.com) [link=URLリンク(fyltntzeasap.com) URLリンク(hzumapjsvzmu.com)
151:名無しさん@お腹いっぱい。
09/01/27 20:27:41 WqNNCHEs0
>>149
一番お手軽なのはエディタ側でタイトルバーにファイルパス表示する設定にしといて
それ取得して加工すれば?
152:名無しさん@お腹いっぱい。
09/01/27 20:41:15 X4tsXHNf0
>>151
そか、ありがとう!
153:名無しさん@お腹いっぱい。
09/01/27 21:18:33 paF95q4q0
>>147
なるほど…常識…。はまると往々にして単純で当たり前の理由なんだなwまた間違えそうで怖い。
>>149
MouseGestureのコマンドラインを取得する関数が使える時もある。
俺が使ってるのはMenuHackerで、%arg%%titlepath%を使って、ポチエスに投げる。
メモ帳から使い慣れたエディタに開き直すときに使っている。
154:名無しさん@お腹いっぱい。
09/01/27 21:28:17 hKjgB29J0
>>148
IniRead と Hotkeyコマンド使え
>>149
コマンドライン文字列を取得するという方法もある
スレリンク(software板:683-691番)
155:148
09/01/27 21:56:28 t0VmE1Ht0
>>154
設定ファイルから設定を読み込むのは出来るのですが
割り振るキーを設定に応じて変更する方法が無いものかと。
156:148
09/01/27 22:05:14 t0VmE1Ht0
読み違えてました
Hotkeyコマンドで出来ますね
すみませんでしたm(_ _)m
157:名無しさん@お腹いっぱい。
09/01/27 22:19:04 eAnAnnBW0
>>142
TWのテスト版だけど、こっちを試してくれるとありがたい。
一応 *今のところ* 不具合は出ていない。
あと、縦横どっちかにスクロールを固定するオプションを追加(dx, dyの大きい方のみを採用、手抜きw)
URLリンク(sites.google.com)
もしこれで直ったてら単純なコーディングミスだな...
158:名無しさん@お腹いっぱい。
09/01/27 22:50:56 hKjgB29J0
>>157
お疲れさまです
ちょうど今の時期、在宅でのPC仕事なんで(自宅警備じゃないよ)しばらくこれで酷使テストしてみます。
つか今日気がついたけどリモートデスクトップ上でもホイール相当のスクロールは効くんだな。
さすがにマウス下ウィンドウの認識まではしてくれなかったが。
>縦横どっちかにスクロールを固定するオプション
DenyBoth=1にしてみたらWinMergeでスクロールさせる時カクカクしなくなったヽ(´ー`)ノ
ありがとです
159:名無しさん@お腹いっぱい。
09/01/29 06:09:04 LOmhUipb0
QWERTY 配列の109キーボード用を dvorak 配列に変更しようとして
#InstallKeybdHook
#UseHook
*z::;
*+z:::
と書いたところ、
Shift + z で + が表示されるようになりました。
意図しているのはもちろん : の表示です。
どのようにすればよいのでしょうか?
またなぜこのように表示されてしまうのでしょうか?
AutoHotkeyは最新版を使用しています。
160:名無しさん@お腹いっぱい。
09/01/29 09:10:03 b+H6/CBd0
+z::Send,:
z::Send,;
Remapは面倒な事があるねぇ。
これはキーコード送信でなくて、「キー置き換え」なんだわ。
つまり、
z::;
と書くと以下のようになる、([]内はキー名)
[Shift] +[z] -> [Shift] + [;]
[Ctrl] +[z] -> [Ctrl] + [;]
[Alt] +[z] -> [Alt] + [;]
ってなる。
QUERTYキーボードだとおもうけど、キーに印字されたものを見れば・・・
161:名無しさん@お腹いっぱい。
09/01/29 09:40:20 qrvrUYM20
*z::send,;
*+z::send,:
162:名無しさん@お腹いっぱい。
09/01/29 14:19:47 SY+Fy4ud0
>>160-161
ありがとうございます。sendでしたか。
*z::send,;
*+z::send,:
を記述すると常に ; が表示されるようになったので
もしやと思い
*+z::send,:
*z::send,;
と表記したらうまくいきました。
163:名無しさん@お腹いっぱい。
09/01/29 21:38:27 aLpAKfgd0
CAPSLOCKをCTRL(左)に置き換えるには
どのように設定すればよいのかわかりません
旧雑記サルベージ
URLリンク(lukewarm.s101.xrea.com)
>CapsLockCtrl入れ替えは実現できず
こういう情報がありますが
やはりレジストリを弄るしかないのでしょうか
164:名無しさん@お腹いっぱい。
09/01/29 21:48:36 PtNO3FlD0
>>163
Change Keyでサクッと弄っちゃえばいいじゃない
URLリンク(www.forest.impress.co.jp)
165:名無しさん@お腹いっぱい。
09/01/29 22:25:49 Of1QsQUs0
テンプレ>3
166:名無しさん@お腹いっぱい。
09/01/29 22:45:33 wR4WwhsC0
>>164--165
そうでしたか
ありがとうございました
167:名無しさん@お腹いっぱい。
09/01/30 20:57:31 w6m+xv+i0
TrackWheelの中の人です。
>>139の症状としては依然として再発する・・・orz
詳しく書くと非クライアント領域(タイトルバーとかメニューとかサイズ変更とか)でマウス押下が効かない。
いろいろググってみたけど、
新・なまず日記(このスレでは既出中の既出)のIME状態取得のところで、
AttachThreadInput の多用で問題発生とのこと。
URLリンク(endoh-namazu.tierra.ne.jp)
TrackWheelは 危なさそうなのは ControlClick と Send かなぁ。。。
あとは自前の 組み込み用の PostAction で A_Cursor 参照してる。。。
AHKのコマンドをあまり使わずに DllCall でゴリ押しすれば何とかなるのかなぁ・・・
ちょっと根が深いかもしれないので、同症状で悩んでいる人は Ini で NoHide=1 でよろしく
自分は頻発するわけじゃないので [Alt] + [Tab]で逃げている。
>>141
すっかり見落としてた。ソフトウェア層でやっているので無理。
Hotkeyコマンドでマウスボタンに割り当てているんで、何らかの方法(ホットキー割り当とか)で
Hotkey, *MButton, Off
とかで一時的に解除するとか
168:158
09/01/30 21:53:26 HlJEMNMH0
>>167
>A_Cursorの参照
>A_CaretX(Y)の参照
>ControlClick
>ControlGetFocus
>ControlFocus
>Controlコマンドの、Check,Uncheck
やばい。バリバリ使ってる。特にControl関係は最近作ってる奴でテストしまくってた。
ってことは現象が出るのはTWじゃなくて自分が書いたスクリプトだった可能性も大だ orz
ちなみにRC版導入以降、こちらでは問題は起こってないです。
(仕事が込んできてスクリプト弄る余裕がなかっただけかも知れないが)
169:名無しさん@お腹いっぱい。
09/01/30 22:44:06 w6m+xv+i0
> ちなみにRC版導入以降、こちらでは問題は起こってないです。
発生していないなら何よりだけど、、、
>>140書いた段階で単純なバグ(コーディングミス)を見つけて直したので、
4日くらいは大丈夫だったので、発生頻度は確かに減った気はする。
だけどさっき出たんで・・・。
原因はこっちだと思うなぁ。
というか、列挙されたコマンドってAHKでは肝なところだと思うし、
他スレッドに長い間(マウス押下中ずっと)アタッチしっぱなしって、想定してないはず。
というか、これも自体が的外れな見解なのかもしれないけどorz
ちなみに、AHK の C++ のソースコードを分かりもしない癖にふいんき(何故かry で斜め読みしたら
1.0.42.02以降ではA_Cursor では実質使わないようになっているみたいだけど他は変わってない。
170:名無しさん@お腹いっぱい。
09/01/30 22:49:38 HlJEMNMH0
自分も今 ソース眺めてたんだけど、ControlClickもv1.0.45 以降の"NA"モードでは
AttachThreadInput()使ってないみたい。
コメント読む限りでは AttachThreadInput()で何かしらの問題が起こることは作者氏も
たぶん認識していて使用頻度は極力減らしているような印象。
(テキスト翻訳で適当に解釈してるから実際はわからんけど)
171:名無しさん@お腹いっぱい。
09/01/31 12:06:50 DjmYD3GA0
>170
あんまりそんな風には読めなかった。別のコメントならごめん。
ちなみに AttachThreadInput() は SetActiveWindow() するのに必要なはず。
// It was reported (and confirmed through testing) that this new NA mode (which avoids
// AttachThreadInput() and SetActiveWindow()) improves the reliability of ControlClick when
// the user is moving the mouse fairly quickly at the time the command tries to click a button.
// In addition, the new mode avoids activating the window, which tends to happen otherwise.
// HOWEVER, the new mode seems no more reliable than the old mode when the target window is
// the active window. In addition, there may be side-effects of the new mode (I caught it
// causing Notepad's Save-As dialog to hang once, during the display of its "Overwrite?" dialog).
// ALSO, SetControlDelay -1 seems to fix the unreliability issue as well (independently of NA),
// though it might not work with some types of windows/controls (thus, for backward
// compatibility, ControlClick still obeys SetControlDelay).
この(AttachThreadInput() と SetActiveWindow() を避ける)新しい NA モードは
コマンドがボタンをクリックする時にユーザーがマウスを素早く動かしている場合に
信頼性が向上することが報告され(またテストを通じて確認され)ている。
加えて、新しいモードでは避けようとしなければ発生しがちであるウィンドウの
アクティブ化を避ける。
「しかし」、対象のウィンドウがアクティブウィンドウである場合には、新しいモードは
古いモードよりも信頼性が高いとは言えないようである。さらに新しいモードには副作用が
あるかもしれない。メモ帳の「名前を指定して保存」ダイアログで上書きするかを
たずねるダイアログが表示されている最中に一度ハングしたことがある。
「また」、SetControlDelay -1 は同様に信頼性の問題を(NA とは独立に)解決するよう
だが、動作しない Winow や Control が存在するかもしれない。
そのため、互換性のため ControlClick は依然として SetControlDelay の設定に従う。
172:名無しさん@お腹いっぱい。
09/01/31 13:46:06 g43WAhtb0
アウチ、AttachThreadInput()でgrepかけたら、コメントで
「AttachThreadInput()を避ける」みたいなのが結構出てきたんで勝手に解釈してた。
SetForegroundWindowEx()とかの中でも使ってるし、WinActivateする度に呼ばれてるのか
コーディングを工夫して避けるは無理そう。
普通のホットキー駆動だとユーザー操作が発生してからのアクションが多いから
あまり問題にならないみたいだけど
間隔短くとってタイマーぶん回して高度なことやらせるのは避けたほうが無難?
173:名無しさん@お腹いっぱい。
09/01/31 16:44:41 XA0EcD/m0
そこまで分かる人でもAHKを使うんだな
174:名無しさん@お腹いっぱい。
09/02/01 03:06:41 Ul6ytoNp0
2ストロークで特定の語句を出力したいのですが、
(以下では見やすくするため全角空白を使用してます)
#v::
Input, InputChar, C I L1 T2,{Esc}, n, h
if ErrorLevel=Match
{
if InputChar = n
Send, win + v -> n
if InputChar = h
Send, win + v -> h
}
if ErrorLevel=Max
{
Send, %InputChar%
}
return
これでは、 Win + v を押して n を押したときのみ正常に動作し、
それ以外の場合はまったく動きません。
意図しているのは
Win + v, そして n で Send, win + v -> n
Win + v, そして h で Send, win + v -> h
Win + v, そして n と h 以外のキーで Send, win + v -> それ
どこを変更すれば正常に動くのでしょうか
175:名無しさん@お腹いっぱい。
09/02/01 03:41:30 +8QlN44X0
>>174
流行らせるページより
>MatchList
>「,」で区切って文字列を列挙する。
>入力内容がここに列挙したものに一致した場合、コマンドは終了しErrorLevelが「Match」になる。
>カンマ区切りだが、引数の区切りとは扱いが違い、カンマの前後の空白文字などは、文字列の一部とみなされる。
これが原因?
176:名無しさん@お腹いっぱい。
09/02/01 04:11:44 Ul6ytoNp0
>>175
ありがとうございます!うまくいきました
177:名無しさん@お腹いっぱい。
09/02/01 16:20:16 WFl1N4Nl0
名前を付けて保存ダイアログってスクリプトから出せないのかな?
ファイル選択ダイアログを表示・フォルダ選択ダイアログを表示 はあるんだけどなー。
178:名無しさん@お腹いっぱい。
09/02/01 16:32:19 5OtrqmWb0
選択ダイアログを出して
ウィンドウタイトルとかボタンのテキストとか書き替えて
無理からControlとかでテキスト拾って
保存用に利用してみるとかw
179:名無しさん@お腹いっぱい。
09/02/01 16:35:34 gM29b+OF0
FileSelectFileでできるだろ?
180:名無しさん@お腹いっぱい。
09/02/01 17:16:49 WFl1N4Nl0
>>179
リファレンスよく見たら保存ダイアログにする方法書いてあるな
気付かなかった
181:名無しさん@お腹いっぱい。
09/02/01 19:02:57 o14t9yXp0
アイドル状態ってどうやって調べてるんだろ?
5分ごとに、アイドル状態ならば検索ソフトのインデックス作成を行うように設定してるのだが、
Civilization4っていうゲームをプレイ中に、5分ごとにフォーカス奪われちゃってすごく困ってる。
なんか改善策ないかなー
182:名無しさん@お腹いっぱい。
09/02/01 19:09:30 zLFlCA+70
組み込み変数の A_TimeIdle や A_TimeIdlePhysical じゃ用はなさないってこと?
というか、プレイ中と書いてあるけど、起動して放置中ってことか?
183:名無しさん@お腹いっぱい。
09/02/01 19:24:13 nES9c2H30
Civilization4がどこまでマルチスレッド対応してるかにもよるかもね。
ウィンドウでもプロセス検知でもいいから、ゲームが起動中かどうかで判断するのが一番簡単じゃない?
184:名無しさん@お腹いっぱい。
09/02/01 22:31:29 IsdiFXGP0
スレッド毎のCPU占有率調べて処理すればいいんじゃね
除外設定付けておけば望みの動作になると思われ
185:名無しさん@お腹いっぱい。
09/02/02 00:37:36 ghjeIC8V0
直前に閉じたウィンドウを開くスクリプトは書けますか?
186:名無しさん@お腹いっぱい。
09/02/02 00:41:16 /eytDMHF0
>>185
無理。具体的に言ってよ。
アクティブウィンドウを再起動させるのならできると思う。
直前に閉じちゃったのなら、常に何かしら監視していないといけないから面倒かも。
187:名無しさん@お腹いっぱい。
09/02/02 00:59:40 1rUYw8J20
ワークステーションがロックされてる、で、パスワードを入れて復帰する。
この直後に処理を挟みたい。
OnMessageとかでトラップなのかな?
188:名無しさん@お腹いっぱい。
09/02/02 01:43:07 ghjeIC8V0
>>186
操作ミスで閉じてしまったときに楽に復帰できたらいいなと思ったんだ。(´・ω・`)
189:名無しさん@お腹いっぱい。
09/02/02 02:02:47 09XryvuG0
>>185
これか?外人がAutohotkeyで色々作っていたやつ。試してレス横瀬。
窓の杜 - 【NEWS】誤って閉じたウィンドウを60秒以内なら復活できる「GoneIn60s」
URLリンク(www.forest.impress.co.jp)
190:185
09/02/02 04:29:43 ghjeIC8V0
>>189
サンクス!さっそく使ってみたので以下報告。結論としては不採用。
Alt + F4を押すとWinHideする仕組みらしい。で、
・GoneIn60sのアイコン右クリックして閉じたアプリを選択 ⇒ WinShowで復帰。
・指定時間後までに何もしない ⇒ WinCloseで閉じる。
なぜかWinKillでなくWinCloseだから、「保存しますか?」と出るはずのときに、
・指定時間後までは何もなしで閉じたように見える。→後で急にあらわれて「保存しますか?」
となる。これは気持ち悪い。
しかも右上の×でも同様なんだけど、こっちはもっとひどくて、位置が正確でないから
誤動作する場合がある。最小化ボタンの位置で反応したり、閉じるに反応しなかったり。
WinHideの仕組みはいいアイデアだと思った。
ちなみに窓の杜の紹介記事からバージョンアップしてて、今はv1.4。
191:名無しさん@お腹いっぱい。
09/02/02 05:46:25 BYiuvhuI0
DDWinというソフトの小窓をESCキーで閉じて
他のソフトの時は標準の動作をするようにしたいのですが
Esc::
IfWinActive, ahk_class TDefForm
{
Send,WinClose
}
else{
Send,{Esc}
}
return
だとDDWinの小窓では何も起きませんし
それ以外のところでは
xx hotkeys have been received in the last xxxxms
Do you want to continue?
というエラーメッセージが出てしまいます。
192:名無しさん@お腹いっぱい。
09/02/02 07:28:16 ghjeIC8V0
>>191
このスレでhotkeys have been receivedを検索。
特定のウィンドウでの動作は
#IfWinActive, ahk_class TDefForm
;ここに処理を書く。
#IfWinActive
って具合に書くといいよ。
193:名無しさん@お腹いっぱい。
09/02/02 08:46:33 BYiuvhuI0
>>192
ありがとうございます。うまく行きました。
194:名無しさん@お腹いっぱい。
09/02/02 22:31:32 kP24v5Wa0
URLリンク(www2.atchs.jp)
こちらもつかってください。
195:名無しさん@お腹いっぱい。
09/02/02 22:52:47 99xZfHQW0
なぜ情報を拡散させたがるのか。
ここと流行らせるページの掲示板で十分だろ。
196:187
09/02/02 23:15:39 1rUYw8J20
自己レス。
WM_POWERBROADCAST(0x218)じゃ捕まえられないっぽいので、
フォアグランド窓をとれるかで判断した。
SetTimer, HogeHoge, 1000
HogeHoge:
WinGet, fgId, ID, A
if (!fgId) {
Loop {
WinGet, fgId, ID, A
if (fgId)
break
Sleep, 1000
}
// ここに処理を書く
}
return
197:名無しさん@お腹いっぱい。
09/02/03 19:09:41 d0uBooiq0
あるウィンドウがアクティブなときのキー設定を
#IfWinActive, WinTitle
1:: F1
2:: F2
3:: F3
という感じで書いています。
そのウィンドウが非アクティブのときでも、
Win+Space 1 のように2ストロークキーで
同様のキー操作ができるようにしようと、
#Space::
Input, key, C I L1 T2, {Esc}, 1,2,3
IfWinExist, WinTitle
ControlSend, , key
という感じに書いたのですが、当然というか
1,2,3 が直接送られるだけで、F1,F2,F3 になってくれません。
If key = 1
ControlSend, , {F1}
というように逐一書いていくしかないでしょうか?
定義を二重に書かないといけないのでできれば避けたいんですが…
198:名無しさん@お腹いっぱい。
09/02/03 19:18:13 qfq9gHtT0
残念ながら無理(なはず)。
窓使いの憂鬱(のどか)とかkeyhacでいう「キーマップ」とか「キープレフィックス」に相当するものはない。
強いて言えば同じサブルーチンに飛ばすくらい。
ex) Gosub, 1 ; 1のキーに割り当てられている機能を呼ぶ
199:名無しさん@お腹いっぱい。
09/02/03 20:57:50 LGJ9Ljgs0
ControlSend, , {F%key%}
でできない?
あと、そういう場合は Autohotkey_L の #if expression 使うと
楽に実現できそうな気がする。
200:名無しさん@お腹いっぱい。
09/02/03 23:23:58 LGJ9Ljgs0
>>197
せっかくAutoHotkey_L使ってるので、試してみた。
あとこのスレでURL出てなかったので出しておく。
URLリンク(www.autohotkey.net)
;---------------------------------------------
#if WinActive("無題 - メモ帳")
or (A_ThisHotkey=="#Space"
and A_TimeSinceThisHotkey<=2000
and WinExist("無題 - メモ帳"))
1::msgbox, syori 1
2::msgbox, syori 2
3::msgbox, syori 3
#if
#Space::Return ; A_ThisHotkeyに記録するために必要
;---------------------------------------------
これでメモ帳がアクティブな時か、
メモ帳がある時にWin+Spaceしてから
2秒以内に各キーを押すと処理が実行されて、
そうでない時は普通に各キーが送られる。
201:名無しさん@お腹いっぱい。
09/02/03 23:26:30 LGJ9Ljgs0
ちなみにキーマップはこんな感じで書ける。
;---------------------------------------------
keymap:=0
Exit
#if keymap==1
1::a
2::x
#if keymap==2
1::b
2::y
#if keymap==3
1::c
2::z
#If
; F12を押すたびにキーマップ切り替え
F12::keymap++ == 3 ? keymap:=0 :
;---------------------------------------------
AutoHotkey_L便利だと思うんだけど…
こういう需要あんまり無いのかな?
202:名無しさん@お腹いっぱい。
09/02/04 00:16:05 53JDVpb00
いや、あると思う。
窓使いの憂鬱とかでkeymapでの定義に慣れた人には断然分かりやすいとは思う。
というか _L って安定してる?
ウニコード化してくんないかなぁ。
203:199
09/02/04 00:50:50 mEq9h9q70
>>202
環境によるかもしれないけど、むしろ
俺の環境では本家より安定してるかな。
WinXP SP3。
本家の使ってるとスクリプトリロードさせた時に、
たまにエラー出るんだけど_Lだと今のところない。
単に俺の書いてるスクリプトがおかしいのかもしれないが…
もし使う時に注意する事があるとしたら、
#if expression使う時に、時間かかる判定しないように
気をつけるくらいかな。一応タイムアウト時間も指定できる。
3ヶ月くらい使ってるけど今のところ不満は無いです。
Unicode化は…して欲しいね。
204:名無しさん@お腹いっぱい。
09/02/04 15:39:07 MFTbk+bR0
時間がものすごくかかる演算をDLLで組もうと思うんだけど
参考になるサイトとかないかな
中身は単純にfor文とかを大量に繰り返して結果を返す、といったものなんだけど
ためしに
extern "C" __declspec(dllexport) INT WINAPI extracter(int x){
return 5*x;
}
こんな感じのDLL組んでDLLCALLで呼び出してみたけど上手く動作しなかったんだ…
205:名無しさん@お腹いっぱい。
09/02/04 18:27:03 k5e6IctL0
>>204
時間掛かる処理をさせるならLoadLibraryしてみたほうがいいよ
206:名無しさん@お腹いっぱい。
09/02/04 21:27:31 Ut7+efCd0
>204
多分呼び出し規約が stdcall になってるので関数名を extracter@4 にすれば呼び出せるかも。
207:206
09/02/04 21:38:23 Ut7+efCd0
補足。
dll 側のコードはそのままで、DllCall するときに extracter@4 で呼ぶって意味ね。VC だと _extracter@4 かも。
@以降の数字は引数に使用するスタックのサイズ。今回は int が 1 つなので 4。
gcc だと -Wl,-kill-at というオプションを渡すと @ 以降がなくなって extracter で呼べるようになるはず。
VC 側の同等オプションは知らね。DEF ファイル使えば制御はできると思う。
208:名無しさん@お腹いっぱい。
09/02/04 23:14:11 MFTbk+bR0
>>206-207
神
問題解決しますたありがと><
209:197
09/02/04 23:30:00 uksORcM50
>>198-201
ありがとうございます。
>>200 の方法でできました。
>>201 とか面白いですね。
210:名無しさん@お腹いっぱい。
09/02/05 03:44:32 He1nXNrH0
白背景に黒い文字を書いた画像を用意して
ImageSearchで*TransWhiteをオプションに指定したら真っ黒な場所に反応してしまう…
何か良い方法はないかな
211:名無しさん@お腹いっぱい。
09/02/05 03:58:21 Ctlz88MC0
初心者質問で申し訳ないんだけど、入力キー、回数、間隔時間を指定して
直前にアクティブなウインドウに対して、キー(コード)を送るスクリプトってどう書くの?
現状↓のような感じで詰まってる
DefaultKey=Enter
InputBox, OutputKey ,入力設定,KeyName で指定,,200,150,,,,,%DefaultKey%
if ErrorLevel != 0
exit
else
counter = 1
Loop, 3
{
SendEvent, {%OutputKey%}
SetKeyDelay, 100
counter += 1
}
212:名無しさん@お腹いっぱい。
09/02/05 05:28:16 JN8SH5jU0
連続した入力
{BS 5}のように、「{}」で囲んで、右に数値を指定すると、複数回押すことができる。
って書いてるけど。
213:名無しさん@お腹いっぱい。
09/02/05 11:01:00 6B3J8+du0
212の言うように
SetKeyDelay,100
SendEvent, {%OutputKey% 3}
とするか
Loop,3
{
SendEvent, {%OutputKey%}
Sleep,100
}
でいいんでね?
あとIfでExitしてるからこの場合の動作には影響ないと思うが
文法上はElseのあと { } で囲わないとまずくね?
214:名無しさん@お腹いっぱい。
09/02/05 14:59:25 Ctlz88MC0
>>212-213
レス、サンクス
やっぱ質問が悪かったか。今分からないのが、
・入力キー、回数、間隔 を一括で各変数に入れる関数(方法)
・入力キーはKeyNameで指定じゃなく、キーコードを直接受け取りたい
という感じ。ま、挫折するまで調べてみる
215:名無しさん@お腹いっぱい。
09/02/05 15:57:17 rxk2q+A70
アクティブウィンドウのプロセスのフルパスを
Autohotkey単体で取得することはできますか?
Winget, OutputVar, ProcessName, A で実行ファイル名は取得できたのですが
それから先がわかりません
216:名無しさん@お腹いっぱい。
09/02/05 16:12:39 JN8SH5jU0
>>215
ほい、前スレから。俺が教えて貰ったんだけどw
47 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2008/08/25(月) 23:01:23 ID:O2etOCIT0
eamatの日記
URLリンク(d.hatena.ne.jp)
にあると思う
48 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2008/08/25(月) 23:22:03 ID:iVqjz6P/0
URLリンク(d.hatena.ne.jp) の一番下
これ大元は流行らせるページ管理人氏のなんだけどそっちは今見れないね。
削除されちゃったんだろか。結構需要あると思うんだけど。
217:名無しさん@お腹いっぱい。
09/02/05 20:19:48 n8B6a3aC0
>>214
> ・入力キー、回数、間隔 を一括で各変数に入れる関数(方法)
こんな感じか?
HogeInputBoxを呼ぶと変数にキー名、回数、ディレイが入る
Gosub, HogeInputBox
return
HogeInputBox:
Gui, Destroy
Gui, +LastFound
Gui, Add, Hotkey, vKeyName
Gui, Add, Edit, vCount Number
Gui, Add, UpDown
Gui, Add, Edit, vDelay Number
Gui, Add, UpDown
Gui, Add, Button,, OK
Gui, Show
WinWaitClose, % "ahk_id " WinExist()
return
ButtonOK:
Gui, Submit
return
GuiEscape:
return
> ・入力キーはKeyNameで指定じゃなく、キーコードを直接受け取りたい
キー名から頑張って変換する・・・かな。
というか、キーコードって手入力前提でないの?
(上のサンプルだと KeyNameになるけど)
218:名無しさん@お腹いっぱい。
09/02/05 21:45:16 dLfvsoZw0
今押されているVirtualKeyCodeを得るならこんな感じ?
#Persistent
CoordMode,ToolTip,Screen
SetTimer,TipView,10
Exit
TipView:
ToolTip, % GetAllVirtualKeyState(),0,0
Return
GetAllVirtualKeyState(){
str:="",tf:=A_FormatInteger
SetFormat, Integer, H
Loop, 0x100
str:=str (GetKeyState("vk" SubStr(A_Index-1,3),"P") ? A_Index-1 "," : "")
SetFormat, Integer, %tf%
Return SubStr(str,1,-1)
}
219:名無しさん@お腹いっぱい。
09/02/06 03:17:46 wnkD34rd0
クリップボードに変更があったらその内容をテキストファイルに追記する、
というのを作ったのですが、下のだと数時間経つと使えなくなってしまいます。
AHKを再起動すればいいんですが毎回再起動するのも面倒です。
何か対策とか無いでしょうか?
#Persistent
Clipboard=
OnClipboardChange:
Run,"テキストファイルに追記するソフト起動"
tooltip clip
sleep,300
tooltip
return
220:名無しさん@お腹いっぱい。
09/02/06 03:43:37 /VPzv7st0
俺も過去にそれを作ったことがあった。
クリップボードバッファの領域に、スクショ画像などのテキスト以外の
巨大データが出現すると、エラーメッセージなしにAutoHotkeyが死んでしまう。
解決策は見つからなかった。うまい回避法はあるのかな?
221:名無しさん@お腹いっぱい。
09/02/06 05:09:20 ka9EMbek0
>>201を見て
キーマップのきりかえができることにおどろいたので
222:214
09/02/06 05:58:59 NAAOC5m30
>>217-218
こいつ・・・動くぞ、すげーー!
>というか、キーコードって手入力前提でないの?
最終的に send,{vkXX} という感じでやった方が楽かなーと思ったので
さて、>>218 の解読作業に移ります。ありがとう!!
223:名無しさん@お腹いっぱい。
09/02/07 02:39:29 81yNBSmE0
>>216
参考になりました
ありがとうございました
224:名無しさん@お腹いっぱい。
09/02/07 15:22:29 WmNZzOvm0
スクリプト内にGUIを表示するサブルーチンが複数あって、
それぞれのGUIの中で同じ名前のボタンを追加した場合、
ボタンを押したときに呼び出されるサブルーチンを区別することは
できないのでしょうか?
↓のようにすると二重定義でエラーになってしまいます。
Test1:
Gui, Add, Button, , 1
Return
Button1:
MsgBox, 1 in Test1
Return
Test2:
Gui, Add, Button, , 1
Return
Button1:
MsgBox, 1 in Test2
Return
225:名無しさん@お腹いっぱい。
09/02/07 15:33:57 AcAuyp/00
押しいなぁ。
ボタン名省略時のデフォルトサブルーチンラベルまで分かってて、ボタン名重複時のところが分かってない、と。
もう一度解説読んでみ。
226:名無しさん@お腹いっぱい。
09/02/07 15:37:05 AcAuyp/00
ん?もしかして Test1 と Test2 って別窓(GUI)にしたいのかな?
だったら、GUI番号を変えた二つのGUIを用意するか、毎回破棄(Destroy)するとかすればいい。
どっちにしろサブルーチンラベルの重複で怒られるとは思うけど。
227:224
09/02/07 15:46:42 WmNZzOvm0
>>225-226
あぁ G オプションってこういうときのためか
Gui, Add, Button, GButton1inTest2, 1
でいけました。ありがとうございました。
228:名無しさん@お腹いっぱい。
09/02/07 18:34:02 OHL9IjH/0
語学関係のもの(英検、TOEIC、留学)がまったくない私が
語学について聞かれたらなんて答えるべきですか?
229:名無しさん@お腹いっぱい。
09/02/07 22:07:43 vTbfdAUL0
ジュワワワジュワワ、 ジュワジュワジュジュワワワワワ?
230:名無しさん@お腹いっぱい。
09/02/07 22:16:28 WFpsFaYj0
面接官「ジュワ!ワタシジュワワイイビョウインシッテルヨワワ」
231:名無しさん@お腹いっぱい。
09/02/07 23:02:35 SzMrA22TP
Vista環境だと、コンマ使うショートカット(#,::Run,cmd みたいな)
のが動作しないみたいのがえらい不便だ。
これだけでXPに戻しそう…
232:名無しさん@お腹いっぱい。
09/02/07 23:46:19 +Kjk/oX50
>>231
スクリプトに何か問題があるんじゃない?
Vista64Ultで普通に動く・
233:名無しさん@お腹いっぱい。
09/02/08 13:37:15 lpNI9P4b0
>>231
原因決め付けすぎわろた。
おいらもVista環境だけど、そのスクリプトでまったく問題なく動くぜ。
AutoHotkey ver 1.0.47.06
234:名無しさん@お腹いっぱい。
09/02/08 20:56:33 sclNqxNe0
AutoHotKey.iniに、ウインドウなどを定期監視するルーチンをつけくわえたいと思っているのですが、
上手く動作しません。
AutoHotKey.iniの最後に以下のように書き足して、reloadしているのですが、SplashTextがでてくれないのです
#Persistent
SetTimer, OnTimer, 1000
return
OnTimer:
SplashTextOn,,, MAGE...
Sleep, 2000
SplashTextOff
return
235:234
09/02/08 21:13:15 sclNqxNe0
SetTimer, OnTimer, 1000
をAutoHotKey.iniの先頭の方に記述したらいけました。
これだと、上記とSetTimerとOnTimerの位置がちらばってしまうので、
SetTimer, OnTimer, 1000
Goto, NextOnTimer
OnTimer:
SplashTextOn,,, MAGE...
Sleep, 2000
SplashTextOff
return
NextOnTimer:
+0::Send, 0000
: ;以下、ホットキーの設定が続く
という風にAutoHotKey.iniの最初の方に書いたら、
今度は、NextOnTimer: の後のホットキーの入力が、起動時(reload時)に誤爆してしまうようになりました。
上記例では、0000が強制発動します。
この辺の挙動がいまいちわかりません・・・
どこかに記述はありませんでしょうか?
236:名無しさん@お腹いっぱい。
09/02/08 21:14:11 yKg3PII70
> AutoHotKey.iniの最後に以下のように書き足して
~~~~~~~
ってのがマズいんじゃないかと。
> #Persistent
> SetTimer, OnTimer, 1000
この2行は多分ホットキー定義より後ろに書いてあると思うんで
ファイルの頭に持ってきた方がいい。
頭から読んで順次実行するところ(Autoexecブロック)として扱われていない
死にコード担ってると思う。
237:名無しさん@お腹いっぱい。
09/02/08 21:21:06 yKg3PII70
うひ。解決してやがるw
URLリンク(lukewarm.s101.xrea.com)
> スクリプトが読み込まれると、最初にReturnかExitが実行されるか、
> ホットキーラベルが記述されている行やスクリプトの終わりに達するまで、スクリプトが実行される。
> この部分のことを、auto-executeセクションと呼ぶ。
これは Gotoがあっても同じなわけ。
で、ラベルって関数じゃないから上から読んで実行するから
Gotoで飛んで先のコードも順次実行するだけ。
要は
> Goto, NextOnTimer
を
return
にする
238:234
09/02/08 21:33:53 sclNqxNe0
>>236
なるほどホットキー定義より先に書かないといけないんですね。
>>234のコードを丸ごと先頭に書いても問題ない感じでした。
returnしてますけど、後ろのホットキー定義はちゃんと定義されるんですね・・・。
いろいろ試してみて、>>234のコードをAutoHotkey.iniに書かずに、
別ファイルに書いて、最初に#includeするようにしても問題ない感じなので、
管理楽だしそっちで行ってみようと思います。
ありがとうございました。
239:234
09/02/08 21:34:56 sclNqxNe0
>>237
記述もあったのか!理解が深まり助かりました。
ありがとう。
240:名無しさん@お腹いっぱい。
09/02/09 22:16:03 s0aAmitG0
キーのリマップで、キーリピートしないようにするにはどうしたらよいですか?
回数指定で1としても、Pauseキーなどからリマップしたものは
リピートしてしまうようなのですが・・・
241:名無しさん@お腹いっぱい。
09/02/09 22:25:30 qaZxLjlv0
リマップは所詮リマップなので
キーを Send したあとに、キーが離されるのを待つようにすればいい
KeyWaitを使うと楽
242:240
09/02/09 23:33:15 s0aAmitG0
>>241
なるほど、うまくいきました。ありがとうございます。
Pause::
KeyWait, Pause
Send, {キー}
return
243:名無しさん@お腹いっぱい。
09/02/10 00:02:17 y3Hmn7JH0
このソフト今しがた知ったんだけど使えるようになるとかなり便利そうだなw
コンピュータ言語知らない俺には敷居高いが・・・
10分毎に同じ操作を永遠に繰り返させるのってどういうコードになるんだ?
244:名無しさん@お腹いっぱい。
09/02/10 00:05:43 2gVYx17+0
タイマーでおk
245:名無しさん@お腹いっぱい。
09/02/10 00:08:18 y3Hmn7JH0
>>244
上でも出てる
SetTimer,OnTimer,xxxxxx
でいけるわけね納得
246:名無しさん@お腹いっぱい。
09/02/10 02:28:03 5/WxU7qW0
AutoHotkey楽しすぎ
ちょっとした自動応答的なボタン押下とか
(AutoPushButton win32がVistaで動かないし、ウインドウ検知方法も融通も利かなくて長い間代替探してた)
長い間最前面にでしゃばってくるスプラッシュウインドウを後ろに回したりとかしようとして、
Delphiでプログラムでも組むか、マンドクセ('A`)と思ってたことが、
思いついてからものの数分でできてしまうじゃないかー。
すばらしいソフトだ。
簡易言語だと心の底で馬鹿にしてて正直すまなかった。
ホットキー定義以外のことにも使い出してから、やたら普段の操作が楽になったよ。
247:名無しさん@お腹いっぱい。
09/02/10 04:00:00 4LTAENh50
ウィンドウを作成してチェックボックスをクリックしたら
タスクトレイに収納されてしまいます
チェックはできているようなのですが
どうすれば常にウィンドウを表示できるのでしょうか
Gui, Add, Text, x10 y20 w90, test
Gui, Add, Checkbox, vStateOK gCheckOK, ok ?
Gui, Show, x100 y100 h100 w110, aaa
Return
CheckOK:
GUI, Submit
OK = StateOK
Return
#a::MsgBox,OK: %OK%
248:名無しさん@お腹いっぱい。
09/02/10 04:10:55 CECmGA9+0
タスクトレイにあるアプリを右クリックしたときに出るメニュー
これをPostMessageで実行したいのですが
WinTitleには何を指定すればよいのでしょうか
アプリのウィンドウを指定しても駄目みたいです
249:名無しさん@お腹いっぱい。
09/02/10 04:36:17 0gok775Y0
>>247
GUI, Submit , NoHide
「NoHide」を指定すると、ウィンドウを非表示にせずに、変数への反映だけを行う。
>>248
とりあえずDetectHiddenText, On|Off を使ってるかどうかだね。
250:名無しさん@お腹いっぱい。
09/02/10 04:37:04 0gok775Y0
はい間違えたー
DetectHiddenWindows
251:247
09/02/10 04:38:07 4LTAENh50
>>249
おお、ありがとうございます。
252:248
09/02/10 07:49:43 s6avSLrT0
>>249
ありがとうございます
基本的なことだったんですね
スレ汚し失礼しました
253:名無しさん@お腹いっぱい。
09/02/11 20:27:22 oCH0A50w0
どうにもうまくいかないので教えてください。
Firefoxでステータスバーに出るURLを取得しようとしているのですが
StatusBarGetText WinGetText WinGetText では空白のままで何も取得できません。
どなたかFirefoxのステータスバーの情報を取得する方法を教えてください。
254:名無しさん@お腹いっぱい。
09/02/11 20:53:00 i+mKzUyY0
Window Spy で見たら分かると思うけど
ステータスバー(に見える所)のクラスが ahk_class MozillaUIWindowClass なはず。
で、これって普通のウィンドウのステータスバーとは違ってAHKのコマンドじゃ情報とれない。
255:名無しさん@お腹いっぱい。
09/02/11 21:20:11 vlusE0/P0
operaとかffとか何かと難しいわな
256:253
09/02/11 21:26:56 oCH0A50w0
皆様どうもありがとうございます。
どうにもならん事もあるのですね。
257:名無しさん@お腹いっぱい。
09/02/11 21:36:16 PyctzTlz0
流行らせるページのMouseGesture.ahkを使ってるのですが、他のスクリプトと同時にincludeができません……
#include MouseGesture.ahk
#include aaa.ahk
return
とするとタスクトレイの右クリックメニューにはMouseGestureのメニューが追加されますが
MouseGesture自体は動きません。aaa.ahkは読み込まれているようです。
#include 1.ahkの行を消すと普通に動きます。
説明のページに書いてある「Gosub,MG_Init」なども適当に追加してみましたが、
あまり変わり映えがしません……
何が悪いのかどなたか教えていただけませんか;
258:名無しさん@お腹いっぱい。
09/02/11 21:56:06 eSu8v8vr0
じゃあ別々に動かせ
259:名無しさん@お腹いっぱい。
09/02/12 18:55:35 Cq/OSsWb0
ブラウザ上の画像を保存する関数ってないの?
260:名無しさん@お腹いっぱい。
09/02/12 19:25:19 nX4GYxrz0
ない
261:名無しさん@お腹いっぱい。
09/02/12 23:46:28 iXdCSKaG0
作れば良いだけだがな
初心者は関数ってのは組込のを使うだけだと思ってるようだが
プログラムでもスクリプトでもこういった言語では
関数ってのは作るものだから
まあ中には関数が作れない言語もあるけど、これは該当しないし
262:名無しさん@お腹いっぱい。
09/02/13 00:34:12 EUev75pp0
作るってもキーマクロでそ
263:名無しさん@お腹いっぱい。
09/02/13 00:39:11 tq73/xcp0
いや、あらゆる処理が作れるだろ、dll呼び出しもできるし
264:名無しさん@お腹いっぱい。
09/02/13 00:52:14 P/hV8GiU0
AutoScriptWriter使えばキーマクロっぽいこともできるんだよな
ほとんど利用したことはないが。
>257
例によってAutoExecuteセクションの記述飛ばしてて引っかかってるんじゃね?
265:名無しさん@お腹いっぱい。
09/02/13 01:15:10 EUev75pp0
>>263
確かにそうだけどさ、、AHKの範疇は超えちまうわな
AutoScriptWriter はテキストエディタのマクロみたく操作がコードになってくれるから
全然コマンドを知らない人が後からマニュアル見ながら改変するのには便利かなぁとは思う。
出来たコードはかなりしょっぱいけど・・・
マクロ登録の貧弱さという点で、UWSCとかより弱いと言われている点だな
266:名無しさん@お腹いっぱい。
09/02/13 09:36:47 PZx5JzBI0
>>259
(比較的)楽な方法
・キーマクロで何とかする
・適当なダウンローダ探して連携する
・URLDownloadToFile でhtmlを取得して、リンク抽出して個別に落す
そりゃ、comやdll使えば何でも出来るだろうが、
やはりそこは作成者・利用者の技能と、それを現実的なコストで作れるかというのも考慮すべきではないかと。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5215日前に更新/194 KB
担当:undef