1 名前:名無しさん@お腹いっぱい。 [2005/10/21(金) 04:31:53 ID:qy14hWPT0] If You = beginner Read, Template, >>2-6 Previous Thread:: AutoHotKey Thread pc7.2ch.net/test/read.cgi/software/1098531338/ If Res > 950 Please, Build, NextThread
399 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 15:46:10 ID:Yqz0MIUn0] EnvAddで-300秒を足すんじゃなかったけ?
400 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 16:19:08 ID:1N3K73ci0] 時間計算はEnvAddとEnvSubの扱いの違いに気がつかないとハマるな 過去スレでも何度か話題になってるから調べてみ
401 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 17:01:54 ID:2qAgcpH90] ほ、ほんとだ... >399,400 レスありがとうございました。 EnvAddのマニュアルにも、たしかにそれらしい文言がありますね。 でもこんなのわかんないよぅ...
402 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 17:12:45 ID:v9Q+2/T40] タイトルバーで中クリックされたら処理を行うってこと(QuickDirみたいなもの)がやりたいんだけど、 どんな感じでやれば良いんでしょーか。とりあえず↓のようにやってみたけど、 SendMessageの使い方が間違ってるのか、うまくいかないっす。(ErrorLevelがFAILになる) ~MButton:: MouseGetPos, x, y, id SetFormat, integer, H x += 0 y += 0 xy := x + y * 0x10000 SendMessage, 0x84, 0, %xy%, ahk_id %id% If ( ErrorLevel == 2 ) { ;ここに処理を入れる } return
403 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 17:52:51 ID:69RhDVUi0] 1.0.40.12から1.0.41にバージョンアップしたら、 RWin up::Return が効かなくなってしまいました。 AutoHotkeyを常駐させ、右Windowsキーを >#i::Send,{Up} >#k::Send,{Down} のように使っているのですが、Windowsキーを押して そのままはなすとスタートメニューがでるのがいやで 冒頭のものを一緒に書いていました。 ところが1.0.41ではスタートメニューがでてしまいます。 解決する方法があれば教えてください。
404 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 17:54:27 ID:1N3K73ci0] 0x84 て何だっけ? 値からメッセージ名探すの大変なんで質問する時はコメントとか入れてクレ
405 名前:402 mailto:sage [2006/01/22(日) 18:30:09 ID:v9Q+2/T40] >>404 スイマセン。 コメント入れるとこんな感じです。 ~MButton:: MouseGetPos, x, y, id ;カーソル下の座標とid取得 SetFormat, integer, H ;座標を16進数に変換 x += 0 y += 0 xy := x + y * 0x10000 ;座標を上位ワードと下位ワードにまとめる SendMessage, 0x84, 0, %xy%, ahk_id %id% ;カーソル下のウィンドウにWM_NCHITTESTを送る If ( ErrorLevel == 2 ) ;タイトルバーならば処理を実行 { ;ここに処理を入れる } return メッセージに関してはここを参考にしました。 ttp://www.winapi-database.com/Message/WM/WM_NCHITTEST.html
406 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 19:02:30 ID:GjGnwmrQ0] >>403 1.0.41 から流行らせるページの 2 stroke key も動かなくなっちゃいましたね。 本体のバグだと思うんで、本家の更新待ちです。
407 名前:406 mailto:sage [2006/01/22(日) 20:00:46 ID:GjGnwmrQ0] すいません。 Ctrl key double tap の方でした…。
408 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 21:39:01 ID:1N3K73ci0] >>405 とりあえず2つほど気がついた点。ただこれでも期待通りの値は取れてないが。 ・SendMessage はウィンドウ指定より先にControlを指定する。(FAILの原因) ・MouseGetPosのX,Y座標はアクティブウィンドウの左上からの相対座標で取得される。 (CoordMode,Mouse,Screenを実行してない場合) つかこのWM_NCHITTESTって「非クライアント領域のどの部分でマウスが操作されたか調べる」って なってるんだけど、いいのだろうか ~MButton:: MouseGetPos, x, y, id,ctl ;カーソル下の座標とid取得 xy := x + y * 0x10000 ;座標を上位ワードと下位ワードにまとめる SendMessage, 0x84, 0, %xy%, ,A MsgBox, ErrorLevel=%ErrorLevel% return 自分もキャプション位置を取得するのにかなり面倒な関数組んでるので こんな簡単にまとめられるならその方が有り難いんだがね
409 名前:402 mailto:sage [2006/01/22(日) 23:52:19 ID:v9Q+2/T40] >>408 座標自体は16進変換しなくても良かったんですね。 自分もその座標の原点をどこにすればよいのか分からなかったので、とりあえずそのままやってみた次第です。 どうやら、Delphi製もしくはWTLを用いて作られたソフトではうまくいくようです。 >自分もキャプション位置を取得するのにかなり面倒な関数組んでるので どのようなロジックで実装されているんでしょうか。
410 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/23(月) 03:04:13 ID:zfPva1iV0] >>409 ちと長いんで自ブログのほうに上げますた。無駄に助長だが一応コピペで当座は動くと思う ttp://d.hatena.ne.jp/eamat/20060123
411 名前:403 mailto:sage [2006/01/23(月) 22:02:12 ID:mqTpMs440] >>406 そうなんですか。 では次のバージョンでの改善を望むことにします。
412 名前:402 mailto:sage [2006/01/24(火) 01:16:40 ID:JUUu5mZd0] >>410 ありがとうございます。期待通りの動きとなりました。 ご苦労の程お察しします。 自分はSendMessageの挙動はいまいち理解できていなく、 根本的な解決法を考えられそうにないので、誰か識者の方ヘルプ^^
413 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/24(火) 11:29:31 ID:hmUrV7Tv0] winキーを単体で押したときだけ無効にするにはどう設定すればいいんでしょうか win+Dとかの操作は有効にしたいんですけど LWIN::Return とすると全部無効になってしまいます。
414 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/24(火) 12:41:36 ID:ArnUgYQ30] 質問前にせめて10レス前ぐらいは読みたまえよ
415 名前:413 mailto:sage [2006/01/24(火) 16:50:53 ID:hmUrV7Tv0] 1.0.40.12 で LWIN up::Return としても全部無効になってしまいます どうしたらいいんでしょうか
416 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/24(火) 23:18:38 ID:Kbo1n5/E0] >>412 ttp://cgi19.plala.or.jp/lukewarm/news/2006_01.html#23
417 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/24(火) 23:30:27 ID:duKuEjYk0] >>413 LWIN::Return LWIN & LWIN::Return;二つ目のLWIN部分は何でも良い。 裏技的だが・・v1.0.40.05ではこれで動いた。他verではどうなるか知らん。
418 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/24(火) 23:35:41 ID:duKuEjYk0] >>416 あぁ、なるほど、SendMessage自体を直に呼べばいいのか。目から鱗。 そうだよなぁ・・・気が付かなかったなぁ・・
419 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/25(水) 00:09:26 ID:1ITNklYD0] >>416 ぬおお、コンパクトだ。さすが
420 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/25(水) 00:37:47 ID:whVXuEi20] ぬるたん ∩ ( ⌒) ∩_ _ グッジョブ!! /,. ノ i .,,E) / /" / /" _n グッジョブ!! / /_∧ ,/ノ' ( l ∧_∧ / /*´∀`)//∧_∧ グッジョブ!! \ \ (*´∀`)( / (*´∀`) n ヽ___ ̄ ̄ ノ ヽ |  ̄ \ ( E) / / \ ヽ フ /ヽ ヽ_//
421 名前:402 mailto:sage [2006/01/25(水) 02:38:42 ID:XjlFS14L0] >>416 (n‘∀‘)ηキテルワー!! 確かにDllCallから使った方が確実ですね。 さり気なくビットシフトなどを使っている辺り、自分との経験?の差を感じます… 改めてお二人に感謝。
422 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/25(水) 04:04:49 ID:8YZ6hNpP0] あら・・スクリーン座標にするだけで、AHKのSendMessageでも出来たよ・・・ 問題はそこだったか・・
423 名前:413 mailto:sage [2006/01/25(水) 19:22:45 ID:sklEJtBz0] >>417 1.0.41.00 で動きました! ありがとう
424 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 00:09:38 ID:NczzL1RK0] RButton & WheelDownにAltTabを割り振りました 特定のアプリだけ、この機能を無効にしたいのですがそれは可能でしょうか Sendにするとすぐキーを離してしまうし、かといってifで条件分岐したあとにAltTabを置いても機能しません
425 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 03:33:13 ID:AxRUycRL0] #IfWinActive
426 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/27(金) 18:46:53 ID:khUBsNcY0] 点呼スレがピンポイントで狙われてるな、何でだろ
427 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/27(金) 18:52:03 ID:MkK/HyNo0] NP2のウィンドウに対してだけ急にahkが効かなくなっちゃったんですが どうすればまた有効になるんでしょうか?
428 名前:403 mailto:sage [2006/01/27(金) 23:27:57 ID:/9813JvU0] >>417 遅ればせながらありがとうございます。 それでうまくいきました。
429 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/28(土) 14:18:33 ID:+ZZFrik00] AHKだと、こういうコメントの書き方できませんね。 /******************************************************************************* * これは、ahkのコメントを確認するためのサンプルです *******************************************************************************/ これもダメ。 /******************************************************************************* * これは、ahkのコメントを確認するためのサンプルです ****************************************************************************** */ これならOK。 /******************************************************************************* * これは、ahkのコメントを確認するためのサンプルです ****************************************************************************** */
430 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/28(土) 14:37:46 ID:9fE5ExNP0] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; これでいいじゃん ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
431 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/28(土) 15:18:26 ID:M2n6ETLA0] /* 行頭に無いとコメント終始認識されないよん */
432 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/28(土) 16:09:27 ID:QgFgpb9I0] ちょこちょこ弄ってたら常駐スクリプトが16KB突破… Runコマンドで呼び出してるのも含めたら40KB超えてたよ。 AutoHotkeyって自由度高い分、各人がどんな使い方してるか気になる。 自分は無変換、変換、カナ/かなキーを修飾キーとしてキーやコマンド割り当てをするのがメイン。 各ウィンドウ位置の保存とかも簡単だし。 トリプルクリック、クワドロプルクリックでも自由に設定できるのも良いね。 あとは、エディットボックスならどんなソフト上にあるものでも 電卓・検索・辞書・コマンドランチャとして使えるようにしたりとか。
433 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/29(日) 22:55:37 ID:g1nyLRt50] 各スクリプトの共通項を切り出してインクルードするのって無理だよね?
434 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/29(日) 23:08:49 ID:sQBDNXPy0] >>433 具体的に。
435 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/29(日) 23:10:30 ID:g1nyLRt50] AHKがインクルードファイルをサポートしてるか否か。 またそれに類する代替機能があるか。
436 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/29(日) 23:18:01 ID:sQBDNXPy0] >>435 ttp://lukewarm.s101.xrea.com/commands/_Include.htm
437 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 00:25:20 ID:jpKlrbYu0] gdiplus.dllで描画出来ないYO!! GIFとかICONをPictureコントロールで透明色部分を背景透過して表示したいんだが、 うまくいかない・・ Gui, Add, Picture, AltSubmit BackgroundTrans, AAA.ico Gui, Show とかやっても透明部分が透過されないYO!!! ちゃんとgdiplus.dllはAutoHotkey.exeのフォルダに入れてあるのに・・ へるぷみー><; Win2Ksp4 Ahk1.0.41.00
438 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 01:41:27 ID:uhBVy+7t0] >>437 dllが認識されてないとかかな。 system32ディレクトリに置いてみるとか、regsvr32で登録してみるとか、パス通すとかやっても駄目だった?
439 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 15:20:34 ID:uhBVy+7t0] Run/RunWaitコマンドでコンソールアプリケーションに引数を与えて実行し、 標準出力を得たいんだけど、とりあえず直接標準出力を得るのは無理っぽいので、 ファイルにリダイレクトし、FileReadLineで読み込む方法をとることにした。 Run, %comspec% /c test.exe "引数" > %A_ScriptDir%\test.dat んで、↑のようにやっても、「 > %A_ScriptDir%\test.dat」部分まで test.exeの引数として認識されてしまうらしく、うまくいかない。 多分AHKは関係ないと思うんだけど、解決策求む。
440 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 22:16:04 ID:llgn8y2u0] RunWait は試した?
441 名前:439@携帯 mailto:sage [2006/01/30(月) 22:46:29 ID:Spq+eLJkO] >>440 YES そもそもtest.exeに正しい値が渡っていないのであんまり関係ない感じ。 cmd.exeを経由しなくてもダメでした。 普通にコンソールで、 test.exe 引数 > test.dat とやる分にはうまく行くんだけど…
442 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 23:57:09 ID:LkEIKve40] うちでもうまく行くのと行かないのがあった気が。 上手く行かないの早々にあきらめて捨てちゃったんでもう憶えてないけど。
443 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/31(火) 02:44:23 ID:cbKaLT0a0] なんかダブルクォートをAHKで処理してる感じ パラメータに日本語とか使ってない?
444 名前:439 mailto:sage [2006/01/31(火) 03:38:14 ID:iIRAafqH0] >>443 g_calcっていう引数として式を与えると、Google電卓を使った結果を出力するソフトで、 引数としては、1+2*4とか、sin(3.14)のような1バイト文字しか使ってないっす。 ttp://www.vector.co.jp/soft/win95/net/se337404.html …結局面倒なんで、このソフトと同等の機能を持つAHKスクリプトを作って対処してしまいました。 簡単なエラー処理入れても5行程度で済むのね。 なので、自己解決したと言えばしたんだけど、せっかくだから、AHKで標準出力を確実に取得する方法を 後学のためにも知っておきたい。
445 名前:名無しさん@お腹いっぱい。 [2006/01/31(火) 11:20:44 ID:333EyHKl0] てst
446 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/31(火) 18:20:05 ID:61oRgPKa0] ニーツオルグ見た?
447 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/31(火) 18:28:13 ID:R4U/vQRD0] あそこトップがでかいんだもん。
448 名前:391 mailto:sage [2006/02/01(水) 01:02:52 ID:lbQsX6480] ttp://www.vector.co.jp/soft/win95/net/se269471.html コマンドライン型のメール送信ソフトなんだがAHKと組み合わせるとおもしろいな。 携帯にメール送るのに便利だわ。
449 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 01:04:48 ID:lbQsX6480] 名前消し忘れてた。はずかし。。。。
450 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 01:10:05 ID:mATxrmSJ0] >>448 詳しく
451 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 01:15:27 ID:Ll9eZFNT0] POP Out ttp://www.vector.co.jp/soft/dl/win95/net/se367561.html これでメールチェックも出来るお(多分)
452 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 07:17:12 ID:CHFM6H+R0] >>439 ttp://cgi19.plala.or.jp/lukewarm/news/2006_01.html#30
453 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 13:09:29 ID:vBsLlalo0] ファイルの名前を、現在アクティブになってるウィンドウのタイトルにつけかえる、 というスクリプトを書いてみたんですが…… #SingleInstance IGNORE ^r:: f0 = test.txt FileAppend, test, %f0% WinGetActiveTitle, title StringReplace, title, title, `:, f1 = %title%.txt MsgBox, %f1% FileCopy, %f0%, %f1% MsgBox, %f0% return まめFileのように、タイトルに「パス - まめFile4」のようになっていると、 ファイルがA_WorkingDirにできてくれないので、 「C:\ほにゃらら」となっている部分のコロンを落とすようにしてみたんですね。 その後のMsgBoxでちゃんと落ちているのは確認できたんですが、FileCopyは失敗してしまいます。 どうしたらよいでしょうか。これがダメ文字というやつですか?
454 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 15:19:14 ID:qvxzsIy40] コロンはパスの一部なので削ったらダメ タイトルが「パス - まめFile4」ってなってるのが原因なら、 パスじゃない部分「 - まめFile4」を削る。 ファイル名に日本語使ってないならダメ文字は関係ないよ
455 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 15:25:04 ID:7xayIcgw0] あれだ、たぶん、 たとえば、WorkingDirがC\AHKだったとすると C\AHKC\ほにゃらら.txtってことになるってことだろ。
456 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 15:51:43 ID:7xayIcgw0] あ、ちょっと、的ずれてた・・ タダ単に、相対パス指定では\以外で始まる指定は出来ないってだけだた・・ ごめん<>
457 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 15:54:39 ID:vBsLlalo0] えーと、こんな感じです。 C:\ahk ←これがWorkingDirで、 C:\home ←たとえばまめFile4でここを開いているとします。 「C:\ahk\"C:\home\ - まめFile4".txt」みたいな感じにしたいのですが、 ;;ほんとはこんな名前のファイルはつくりたくないのです。 ;;タイトルにパスが入るソフトの対策のためのテストというわけで。 「C:\home\ - まめFile4.txt」という名前で保存されることになるため、 実際にはC:\homeの下に「- まめFile4.txt」がつくられてしまうんですね。 で、これを回避したい、ということで。 それで、とりあえずコロンを落とすことにしてみたんですが…… あと、「\」も問題だと思ったので、「¥」に変えるとかしてみましたが、うまく行かず。 コロンを残しているとこんな感じになります。 「C:¥home¥ - まめFile4.txt」つまり、「C:」に「¥home¥ - まめFile4.txt」ができちゃう。
458 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 16:01:53 ID:5DqBaWvy0] 119 名前:unnamed.ahk[sage] 投稿日:06/02/01(水) 05:06 ID:??? そんなの聞く必要あるの? この程度の簡単なものなら、見ればどういう動作するかはすぐにわかるんだから 自分にとって益があるなら使えばいいし、不要なら構わなければいいじゃん。 >>116 を誰が何の用途に使おうとどうでもいいだろ。 ↑こいつ何様?
459 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 16:03:04 ID:vBsLlalo0] もう少し補足。 タイトルにパスが入って悪さをしさえしなければ問題がないんです。 で、ウィンドウのタイトルを拾うため、どうしてもファイル名に日本語が入ることは避けられません。 たとえば今このスレはJane Doe Styleで見てるんですが、これで同じ操作をすると、 タイトルが「Jane Doe Style 【ソフトウェア】 - AutoHotkey Theread 2」となっているので、 これ+.txtという名前にしたいわけなんです。 やっぱり難しいんですかね……
460 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 16:39:10 ID:7xayIcgw0] いや、別に平気でしょ。ただ日本語入るとダメ文字に引っかかる可能性あるのでそこは考慮する必要があるかもしれない。 ただ、さっきの問題とは別だよ。 ^r:: WinGetActiveTitle, title StringReplace, title, title, `:,: StringReplace, title, title, \,\ , All msgbox, %title% FileAppend, , %title%.txt 基本はこんな感じになる。タイトルのファイルがダメ文字無ければ ワーキングディレクトリにちゃんとファイル出来るよ。 ダメ文字関連はここ参照 ttp://www.tierra.ne.jp/~aki/diary/?date=20060111
461 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 16:44:07 ID:7xayIcgw0] >タイトルのファイルがダメ文字無ければ >ワーキングディレクトリにちゃんとファイル出来るよ。 文章めちゃくちゃだな・・(;´Д`) タイトルにダメ文字含まれてなければ、ちゃんと ワーキングディレクトリに狙ったとおりの名前のファイル出来るよ。 と言いたかった・・スレ汚れまくりごめん<>
462 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 17:22:32 ID:qvxzsIy40] >>458 えー、そのスレの 118=120 だけど、ここに持ち込まんでも… ちなみに大元の書込み人からは補足が入った模様です
463 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 17:37:40 ID:vBsLlalo0] およよ…? 何かうまくいきますね。 すみません、レスいただいてありがとうございました。
464 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 17:49:47 ID:7xayIcgw0] SerchStr=\/:,;*?"<>| ReplaceStr=\/:,;*?”<>| ^r:: WinGetActiveTitle, title c=0 Loop{ StringMid, s, SerchStr, c+1, 1 if !s break StringMid, r, ReplaceStr, c*2+1, 2 StringReplace, title, title, %s%, %r%, All c++ } msgbox, %title% FileAppend, , %title%.txt >>463 これでファイル名に使えない文字はOKかな・・
465 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 21:08:57 ID:vBsLlalo0] うを、すばらしい! そのまま組み込んでみます。重ね重ねありがとうでした<O>ペコリ
466 名前:448 mailto:sage [2006/02/01(水) 21:37:49 ID:+NEdY0Ev0] ;メールサーバー host=mail.xxx.xxx.jp ;表示するメアド mine=xxx@xxx.xx.jp ;送り先のメアド address=xxx@xxx.xx.jp filedelete,temp.txt fileappend,,temp.txt sleep,100 run,temp.txt sleep,1000 winwaitclose,temp.txt run,smail.exe -h%host% -f%mine% -Ftemp.txt %address% return こいつをsmailのフォルダにいれてAHKを起動。ノートパッド開くから本文書いて閉じる。これでメール送信完了です。 自分はiniでアドレス帳作って、メニューで選択、確認ボタン、終了後に送信ログ残すようにしてる。 表示メアドに携帯メアド設定しとけば、携帯料金浮いてなかなかおいしいです。 いちいちメールソフト立ち上げてヘッダ変えてっつーのがめんどくさいもんで。
467 名前:439 mailto:sage [2006/02/02(木) 17:06:47 ID:T+u93vk30] >>452 何かDllCallだらけで、どういう仕組みになってるか良く理解できてないけど、 とりあえずうまく標準出力を取り込めたよ。サンクス。
468 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/02(木) 17:09:23 ID:RzOqQmwX0] 出てるスクリプトまとめたいんだが 本人はスクリプト理解してないんだよなぁ。 やっぱある程度分かってる人がまとめた方がいいよね。
469 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/04(土) 13:22:47 ID:vcsivbfp0] Autohotkeyでは上手くテキストを取得できない リストヴューのテキストを取得したいんだけど (Clipyでは取れた。具体的にはnPOPのメール一覧) コマンドラインでWINDOWとかクラスとかを指定してテキストをコピーしてくれるような ツール知りませんか。
470 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/05(日) 18:35:24 ID:Uooh/wVt0] ネットの一時ファイルのうち、jpgファイルだけ削除したいのですが、 FileDelete, C:\Documents and Settings\ユーザー名\Local Settings\Temporary Internet Files\*jpg とやっても消えてくれません。 Temporary Internet Filesって、普通じゃ消せないのでしょうか。
471 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/05(日) 19:37:58 ID:dd1IDrgA0] 実際はその二階層下のフォルダに入っている その書き方だと直下のJPGしか消さないかも Temporary Internet Filesを Loopして拡張子が JPGだったら消すようにしたらいいのではまいか。
472 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/05(日) 21:13:30 ID:Uooh/wVt0] >>471 content.ie5以下のフォルダにあるんですね。はじめて知りました。 以下のもので出来ました。感謝。 ^#D:: path = C:\Documents and Settings\Admin\Local Settings\Temporary Internet Files\Content.IE5\ Loop, %path%*.jpg , 1 , 1 { FileDelete, %A_LoopFileFullPath% } return
473 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/06(月) 09:47:34 ID:XthrTebI0] なまず日記さんがすげーことをやってるぞ
474 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/06(月) 10:45:51 ID:wtWU+HDQ0] あそこはすごすぎてワシャついていけんw
475 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/06(月) 11:52:47 ID:+ZyBL9kh0] よかった、ついて行けないのは俺だけじゃないんだw すごすぎて感嘆のため息しか出ません
476 名前:名無しさん@お腹いっぱい。 [2006/02/06(月) 14:24:28 ID:3MY6UK/h0] >>473 IMEの状態表示っていうの試したけど iniが初期状態だと何も起きないね iniの仕様調べてまで試す気起きないな
477 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/07(火) 15:24:32 ID:cd4qYKRv0] このスクリプトがうまくいかないのはなぜでしょうか。 Home:: SetTitleMatchMode, 2 /* IfWinExist, メモ帳 { ControlSend,, ^s Send, a } */ IfWinExist, xyzzy { ControlSend,, ^a ;Send, ^a MsgBox, %ErrorLevel% } return Homeキーを押したらxyzzyにCtrl+Aを送る、というテスト用に書いたスクリプトなんですが、 アクティブなxyzzyにSendするのはできても、ControlSendはアクティブかどうかに関わらず動いてくれません。 でもErrorLevelは「0」です。 試しにメモ帳で似たようなことをやってみたんですが(上のコメントアウト部分)、こちらはすんなり通りました。
478 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/07(火) 16:56:51 ID:I1jBElpS0] Home:: IfWinActive, xyzzy send, ^a else send, {home} return
479 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/07(火) 16:58:56 ID:I1jBElpS0] あ。勘違いしてたすまん・・・なかったことに・・・
480 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/07(火) 18:50:22 ID:I1jBElpS0] Home:: IfWinExist, xyzzy SendMessage, 0x102, 0x1, 0x1E0001 ;lParamは指定しなくても動くみたいだが・・。 return よくわからん。。これで一応逝けるけど。非アクティブだと反応が鈍い。 識者頼む。
481 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/07(火) 18:56:46 ID:I1jBElpS0] 書き忘れ0x102はWM_CHARです。
482 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/07(火) 19:00:10 ID:fWzsdUXL0] 出来ないなxyzzy クラスの取得出来ないし、何か特殊なんじゃないか?
483 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/07(火) 22:59:45 ID:I1jBElpS0] >>480 修正 Sendしちゃだめだったみたい。ポストしたらちゃんと動いた。 Home:: IfWinExist, xyzzy PostMessage, 0x102, 0x1, 0x01E0001 ;0x102はWM_CHAR 01E部分はスキャンコード、環境によると思うので適当に修正してくれ。つか、もしかしたらlParamは要らないかも。 return
484 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/08(水) 02:59:44 ID:ENi2eeYG0] xyzzyのクラス名は確か " "(スペース)かなんかだったと思う テキスト描画部は "1" とかそんなん。
485 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/08(水) 15:48:29 ID:h/owdFIx0] >483 どうもいろいろ確かめていただいてありがとうございました。 ほとんどスレ違いになっちゃうのでこの書きこみだけにとどめますが、 どうもxyzzyの入力の受け付けはかなり特殊なようです。 他に試した限りでは、 場所に応じてIMEのON/OFFを自動切替する「Dさんの日本語じゃなきゃイヤン」というソフトも、 キーマップを入れ替える「姫踊子草」というソフトも、xyzzy上でだけは挙動不審になりました。 その都度メモ帳でも確かめましたが、こちらでは正常動作してました。 どちらも捨てがたいソフトながら、xyzzyでまともに動かないという一点で泣く泣く使用を諦めました。 ドライバレベルで動作する「窓使いの憂鬱」でもない限り、 入力関係ソフトにとってxyzzyは鬼門のようです。
486 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/11(土) 21:24:33 ID:ylI57ddE0] スクリプトのコマンドラインオプションの出現位置を可変にしたいのですが、うまくいきません。 ^o:: Loop, %0% { ;if (%1% = aaa) if (%A_Index% = aaa) MsgBox, hit! } return Ctrl+Oで引数表示というサンプルを書いてみました。 はじめ引数に「aaa」だけ指定して、 このコメントアウトしている部分の条件で行なうと、きちんとhitしました。 そこで今度は「bbb aaa」を引数に指定してみて、上記のように書いてみたんですが×。 「%A_Index%」を「%%A_Index%%」としてみたら案の定怒られました……。 引数の出現位置って決まってないとダメなんでしょうか???
487 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/12(日) 02:36:41 ID:L6cRhp4J0] すいません、本家のサイトで調べて自己解決しました。 しかし、こんなやり方ほとんど裏技っぽい……。 param = %%A_Index%% はダメだけど、 param := %A_Index% ならOK、とのこと。
488 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/12(日) 02:40:14 ID:2QBETCrR0] ネットゲームなんかで割り当てたホットキーが使えなくなるのはなんとかできないものでしょうか? 窓使いの憂鬱でも使うしかないのでしょうか・・・
489 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/12(日) 02:46:26 ID:gYCfWe6P0] >>487 外出。
490 名前:sage [2006/02/13(月) 00:13:32 ID:xfk4rPhl0] 質問です お試しに使い出したらすごいはまったんですけど 皆さん割り当てるキーってなんかうまいことやってますか? できるだけ他のアプリのショートカットとは競合しないように 設定したいのですが,何が安全なのかわかりません コツがあったらお願いします!
491 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/13(月) 00:17:29 ID:C1wU8uUC0] sageはメール欄にどうぞ
492 名前:490 mailto:sage [2006/02/13(月) 00:34:08 ID:xfk4rPhl0] だな・・・ 多分生まれて初めてのミスだけど自然と心地良い
493 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/13(月) 01:06:49 ID:DnCFW1yt0] >>490 Ctrl+Win+○ をAutoHotKey用のショートカットにしてる。これならほとんど被らないし。 ^#G ;選択文字列をググる ^#W ;壁紙変更 ^#P ;スクリーンショットを時刻.pngで保存 みたいな感じ。実際はこのショートカットをマウスジェスチャーに割り振ってたりする。 AutoHotKeyのマウスジェスチャーに統合したいんだが、めんどいw
494 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/13(月) 06:24:46 ID:RLYX7csf0] これはバグ? j < %i% で比較すると i < j が表示され、 i > %j% で比較すると i > j が表示される。 両方%で囲むと i < j になる。 ^i:: i = 1 j = 2 ;if (j < %i%) if (i > %j%) ;if (%j% < %i%) ;if (%i% > %j%) MsgBox, i > j else MsgBox, i < j return
495 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/13(月) 07:46:35 ID:VjRV7iIc0] そりゃ文字列と数字を比較演算した場合の当然の結果だと思うが。 比較演算で数値と文字列扱えるどの言語だって同じ仕様でしょ。 MsgBoxに i と書いて文字列の"i"が展開されてるのを見れば気付きそうなものだが。
496 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/13(月) 08:17:16 ID:RLYX7csf0] そりゃ文字列と数字を比較演算した場合の当然の結果だと思うけど、 ttp://lukewarm.s101.xrea.com/Scripts.htm 条件分岐 If文で条件分岐が行える。 else文で条件に一致しなかったときの処理も記述できる。 比較条件は、if var = valueという形で記述できる。 比較演算子は、「=」、「<>」(not equal)、「>」「<」「>=」「<=」が使用できる。 左辺には変数名が来るが、右辺には値がこなければならないので、「%」で挟んで変数の内容を展開するようにする必要がある。 ↑ この最後の行に書いてあるでしょ。 ( )でくくるのがよくないのか。
497 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/13(月) 08:29:14 ID:RLYX7csf0] ttp://www.autohotkey.com/docs/commands/IfExpression.htm ( )でくくると文法が変わるわけね。この場合は if (i > j) と書かなければいけなかった、ということで。 ……なんだか仕様が混乱してるなあ。
498 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/13(月) 14:16:14 ID:HZjUhtGG0] たしかに、まぎらわしい仕様ではあるな
499 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/14(火) 15:34:05 ID:RVF5Wq5S0] WinSet, TransColorで透明色を指定できるけど、 この色だけ半透明にするって指定はできない? 例えば、WinSet, TransColor, AABBCC 127, WinTitleと書くと AABBCCは完全に透明になり、それ以外の部分が半透明になってしまう。