[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 03/07 16:17 / Filesize : 304 KB / Number-of Response : 977
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

AutoHotkey スレッド part4



1 名前:ぬるぽ mailto:sage [2007/07/16(月) 12:30:27 ID:cd0T6xfs0]
(テンプレ>>1)
■公式
www.autohotkey.com/

■解説
AutoHotkeyを流行らせるページ
lukewarm.s101.xrea.com/

■過去スレ
1 pc7.2ch.net/test/read.cgi/software/1098531338/
2 pc7.2ch.net/test/read.cgi/software/1129836713/
3 pc11.2ch.net/test/read.cgi/software/1157043396/

関連リンク>>2以降も参照


730 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 01:17:03 ID:CkIfa/570]
質問してる奴等
まずは>>1の日本語解説ページのリファレンスを読んでこい。
話はそれからだ。

731 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 09:24:38 ID:GvfwM5TX0]
タスクマネージャーでは存在するのにwingetでpidが取得できません。
WinGet,v,Listでリストを書き出してみたところ該当するプロセスがありませんでした。

試したスクリプトは
DetectHiddenWindows,On
WinGet,w,List,,,joijpouhpoijjjjjjj
Loop, %w%
{
tempid := w%A_index%
WinGet, PName, ProcessName, ahk_id %tempid%
WinGet, Pid, PID, ahk_id %tempid%
FileAppend, %A_index%%A_Tab%%Pid%%A_Tab%%PName%`n, %A_ScriptDir%\%A_ScriptName%.txt
}
return

です。
タスクマネージャを起動してpidを手打ちしているのですが、
スクリプトで取得する方法がありましたら教えていただけませんでしょうか。

732 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 09:37:32 ID:MV1rI88j0]
>>731
detecthiddenwindows

733 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 11:59:47 ID:tWWYI8If0]
VBなどでカレンダーのコントロール(部品?)がでて、選択するとその日にちが
横のテキストにセットされるなんてのがありますが、
そんなことって、autohotkeyでできますか?

734 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 14:27:22 ID:36qedEkq0]
>>733
>>730

735 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 16:07:50 ID:V77SupSP0]
>>720
すすす、すげぇ!!! ばっちりです。
質問の前に自分でも調べてみたのですが、当分できなかった気がします。
また勉強してきます。本当にありがとうございました。

736 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 17:10:19 ID:GvfwM5TX0]
>>732 さんありがとうございます。
DetectHiddenWindows,Onは試してるんですがどうにもうまくいきません。

タスクマネージャーでPidを表示できるようにして確認したところ、pidは最大でも4000までだったのでloopで総当りしてみました。
その時点で50プロセス程存在していました。

DetectHiddenWindows,On
Loop,4000
{
tpid := A_Index
WinGet, PName, ProcessName, ahk_pid %tpid%
if (PName == "")
continue
FileAppend, %tpid%%A_Tab%%PName%`n, %A_ScriptDir%\%A_ScriptName%.txt
}
return

結果は32プロセスしか取得できなかったようです。
System Idle Process,System,Spoolsv.exe等のユーザー名がSYSTEMなものがほとんどなんですが
それ以外にも散見されます。
取得したいプロセスは自ユーザーです。
PCに詳しくない人に使ってもらうためなので、できればスクリプトの中で取得したいと思っています。
どなたかお知恵を拝借願えませんでしょうか。

737 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 17:16:41 ID:MV1rI88j0]
>>736
ソフトとかも何も提示されていないから、エスパーするしかないが、
もしかしてウィンドウが存在しない物のpidを取得したいってことか?

738 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 18:51:29 ID:tWWYI8If0]
サンプルコード類のCtrl key double tapで
コピーするときにCtrl押してからcを押すまでがとろいと ;some actionが走ります。

何か方法はあるでしょうか。

そもそもCtrlキー長押しは連打になるのでしょうか?



739 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 19:45:03 ID:tWWYI8If0]
2つのウィンドウを作って呼び出そうとしているのですが、
2つ目の画面が出ません。なぜでしょうか。

MyRadio = 1
w1:=1
Gui,%w1%:Default
Gui, add, radio, vMyRadio, 何もしない
Gui, add, button, default xm, OK ; xm puts it at the bottom left corner.

+^b::
Gui,%w1%:Default
Gui, show
return
ButtonOK:
GuiClose:
GuiEscape:
Gui, submit
return

MyRadio1 = 0
w2:=2
Gui,2:Default
Gui, add, radio, vMyRadio1, 何もしない
Gui, add, button, default xm, OK1 ; xm puts it at the bottom left corner.

+^v::
Gui,2:Default
Gui, 2:show
return
ButtonOK1:
Gui, 2:submit
return

740 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 20:56:41 ID:X1W5C5Ju0]
賑やかだがややカオス

741 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/18(日) 10:09:47 ID:DxQltXMf0]
A:: Send,{B}
A:: Send,{C}

でエラーを出さずに後の定義を有効にするようには出来ないものか。

742 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/18(日) 10:44:26 ID:pEScAPz30]
割り込みというもの

743 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/18(日) 19:08:11 ID:k9r02pTe0]
>>741
その定義をすることで
何をしたいんだ?

ていうか、BとC両方を押す処理を送りたいなら
Send,BC
だけじゃね?

744 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/18(日) 23:14:31 ID:AHiS+Z1P0]
>>737
> ウィンドウが存在しない物
そうだと思います。
アプリケーションの通信部分を担当してるような名前です。

タスクマネージャに出てるならなんとか操作できるんじゃないかってのが事の発端でした。
今はタスクマネージャを起動してpidを目視→入力って手順で使ってもらってるんですが
そこ手順を省略できないかなぁと思いまして書き込んでみました。

リストビュー操作の方向でもうちょっと勉強してみます。

745 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/18(日) 23:35:05 ID:ellkomLo0]
>>744
psapi.dll

746 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/19(月) 03:16:43 ID:eArk+a4z0]
>>745 さま
/*
psapi.dllを使ってプロセス名からpidを取得するサンプルは発見できたんですが
DllCallに書き直すのに挫折しました。
流行らせるページからProcessMem.ahkというスクリプトを拝領して
先のloopスクリプトで検索することでうまくいきました。
ヒントを与えてくださった皆様ありがとうございました。
*/
hModule := DllCall("LoadLibrary", str, "psapi.dll") ;ロードする
#Include %A_ScriptDir%\ProcessMem.ahk
limits = 4000
Loop, %limits%
{
tpid := A_Index
PName := getPEName(tpid)
if (PName == "")
continue
else if PName Not contains hogehoge.exe ;プロセス名
continue
else
break
}
msgbox, % tpid = limits ? 0 : tpid
DllCall("FreeLibrary", UInt, hModule) ;開放する

return


747 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/19(月) 19:23:07 ID:H4+iClNx0]
↑解決されたようなので次の質問です

コンテキストメニューが表示されたことを判断したいのですが
どうすれば良いでしょうか?

ひと通り「流行らせるページ」は読んできました

748 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/19(月) 22:26:14 ID:PuiTrZ3r0]
既出かもしれないけど貼っておく
ttp://www.donationcoder.com/Software/Skrommel/index.html

色々勉強になる。



749 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/19(月) 22:32:24 ID:xgu4LjI+0]
>>748
既出かもしれないと思うなら、さすがに>>2くらい見てからのほうが…

750 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/20(火) 19:27:35 ID:IdA+GMNY0]
質問です。
直前のアクティブウィンドウのハンドルを取得することはどうすればいいですか
DllCallのGetWindowでいけそうなんですが、うまくいきません
よろしくお願いします。

751 名前:初心者だが mailto:sage [2007/11/20(火) 19:44:17 ID:+H6sk/kC0]
これちょっと惑わされたぜ

誤)ライブラリスクリプトは「%A_MyDocuments%\AutoHotkey\Lib\」か、AutoHotkey.exeのあるフォルダ内に格納する。

正)ライブラリスクリプトは「%A_MyDocuments%\AutoHotkey\Lib\」か、AutoHotkey.exeのあるフォルダ内の「Lib\」に格納する。


それともこれって常識なのか?

752 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/20(火) 19:47:12 ID:0O21fTkm0]
>>751
ソース本体と同じディレクトリにいれておいた方が便利だよ。
どうせたいしたライブラリもないし。

753 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/20(火) 19:50:41 ID:RcpW0Wap0]
>>707
遅くなりましたがありがとうございます。
どうもidの取得・指定がうまくいってないみたいです。

別のソフトでウインドハンドルを取得して、それを指定するとうまくいったので。
いろいろ試してみようと思います。ありがとうございました。

754 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/22(木) 18:26:21 ID:g9vmyrCo0]
起動してもタスクバーに表示されなくて何もできない zipとインストール版両方試したけど
前は使えてたのになんでよ


755 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/22(木) 18:32:50 ID:g9vmyrCo0]
ドキュメントに作成されたやつ削除して起動繰り返してたらタスクに常駐しだした
おじゃましますた

756 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/24(土) 05:35:20 ID:dDIqV/XZ0]
1.0.47.05

757 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 03:05:24 ID:aen/os2R0]
名前に「ソ系」のダメ文字の入ったファイルの属性変更をするにはどうすれば良いですか?

ソЫ\噂浬欺圭構蚕十申曾箪貼能表暴予禄兔喀媾彌拿杤歃濬畚秉綵臀藹觸軆鐔饅鷭xx\\


裏技で変更できたりしますか?

758 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 11:46:08 ID:IObwvCyD0]
キーカスタマイズソフトスレで見つけました。これはAHKで実現できますか?
60 名前:名無しさん@お腹いっぱい。[] 投稿日:03/06/19(木) 02:09 ID:Yi+QkHTo
XKeymacsなどを使って、
Ctrl と CapsLockをひっくり返すのではなく、
通常のCtrlはそのままで、
CapsLockをemacsバインド専用のCtrl2として、
利用できるようにはできませんか?
通常のCtrlとemacsキーバインドが重複するのはすごく不便な反面、
CapsLockキーのほうはなくなってもほとんど困ることはないので。



759 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 11:49:56 ID:z38QYbrw0]
>>758
できるだろうけどお前のPCじゃ無理なのは間違いない。

760 名前:757 mailto:sage [2007/11/25(日) 12:17:57 ID:neA10OGo0]
ソ.txtに対して
FileGetAttribは問題ないのですが
FileSetAttribが利きません


誰か助けてください



761 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 12:25:17 ID:IObwvCyD0]
>>759
AHKはCapslockはいじれないんでしたっけ?
F13を割り当ててやってみましたが、全然ダメでした。
非常駐型でF13〜F24までを割り当てられるのってあるのかな?
でも、絶対に重複してはいけないというわけでもないから、F13〜F24を使う必要もないか。
changekeyとかでCapslockに数字キーのようなコンビネーションをあまり使わないキーを割り当ててそのコンビネーションで使えばいいかな?

762 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 12:27:00 ID:IObwvCyD0]
>>761
あっ、数字が入力されてしまうか?ダメだね。
あんまり使わない修飾キーをアサインするしかないのかな?
誰か助けてー

763 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 12:30:38 ID:33flX5nk0]
Capslockはレジストリで変更したほうがラクだし確実じゃね?
keyswapとか併用しろよ

764 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 13:12:22 ID:4BOZwyhx0]
>>758 俺もレジストリ値書き換えが面倒で、Xkeymacsに書き換えてもらってるわけだが、
何の問題なく書き換えられたぞ(Varsion 3.19)。最新版はしらんがね(Varsion 3.43)。

765 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 13:14:52 ID:ewXDjkPs0]
>>760
なまず ダメ文字 でカス

766 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 13:21:37 ID:neA10OGo0]
>>765
いやそういう問題ではなくて

FileGetAttrib, OPV, ソ.txt

はOKで

FileSetAttrib, +R, ソ.txt

がダメなのはどうしてだろうと思って質問しました


767 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 13:54:48 ID:xHrvRBu30]
マウスの左右のキーどちらか押されたほうの入力を監視したいのですが、
Input, InputKey, L1, {RButton}{LButton} ではだめでした。
keywaitは一文字しかだめらしいので、何かよい方法はあるでしょうか。

768 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 15:12:26 ID:/9NP1ooM0]
>766
FileGetAttrib は AHK 内部で文字列を解析していないが、FileSetAttrib は解析しているんじゃないの?

と思ってみたらソース見たらやっぱりその通りで、FileGetAttrib はほぼ Win32 API にスルー、FileSetAttrib は
ワイルドカード系の処理のためにパス区切りを自前で調べてる。

DllCall 使って SetFileAttributes() を直接呼び出せばいいんじゃない?



769 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 15:58:12 ID:lrJQTdQh0]
>>764
単なるCtrlじゃなくて、Ctrl2として使用できていますか?
Ctrl+HをBackspaceにアサインしたいんですけど、メモ帳

770 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 16:00:36 ID:lrJQTdQh0]
>>769
うっかり送信してしまいました。

単なるCtrlじゃなくて、Ctrl2として使用できていますか?
Ctrl+HをBackspaceにアサインしたいんですけど、メモ帳
で検索が立ち上がるし、ATOKだとHelpが出てくるしで面倒なので、Ctrl2が使いたいのですが。
>>758の文章だとXkeymacsでは出来ないように思えるのですが。。。。

771 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 18:38:18 ID:e5c2cAn40]
>>758
RWinとか、あんまり使いそうにないキーをCapsLockに割りあてて、
RWin & h::Send, {BS}とかすれば良いのでは?

772 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 19:06:04 ID:EUDcNtJ60]
>>768
どうもありがとうございました
自分にはソース解析などまったくできないので、本当に感謝しています

FileSetAttribは使えないことがわかったので以下の関数を登録して使うことにしました


SetFileAttributes(ByRef path,attrib=128){
DllCall("SetFileAttributes", str, path, int, attrib)
}


DllCallを使うのは初めてだったのですが何とかできました

AutoHotkeyの日本語環境で使ってはいけない(ダメ文字)コマンドの一覧があると便利だと思います
誰か作ってください

773 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 19:21:55 ID:SP727yv40]
JoystickMouse.ahkを改造してアクティブウィンドウ毎にボタン設定を
切り替えるようにしたいのですが、
AutoHotKey.iniに書いたコマンドをグローバル変数に代入して、.ahk側で
参照し実行するというような事は可能でしょうか?

774 名前:773 mailto:sage [2007/11/25(日) 19:28:23 ID:SP727yv40]
書き換えたいのはボタンではなくPOVの設定です。
POV上下::スクロールをカーソルキーにしたりという感じです。
JoystickMouse.ahk内にIfWinActiveを書き連ねるしか無いのでしょうか?

775 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/25(日) 21:57:52 ID:ZcmBxjB40]
基本的に一般的な使い方しか出来ないアプリだよ。
そういうマニアックなことには使えない。

776 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 07:54:16 ID:CAK4/XjM0]
Alt+`をホットキーにできないようですがこれは仕様ですか?
`をIME起動に割り当てているので代わりにAlt+`に`を割り当てたいのですが。

777 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 08:13:56 ID:CAK4/XjM0]
質問なのですが、トレイアイコンのシングルクリックに、メインウィンドウを
表示する以外のコマンドを割り当てることはできないでしょうか?

778 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 08:16:46 ID:0Q60mCj/0]
>>776
`はエスケープ文字



779 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 13:06:53 ID:fm9sZXc30]
>>767
現状keywaitで一つだけしかできないべ

780 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 14:19:05 ID:uAmLls5k0]
ボタン長押しで連打をやりたいのですが、スマートなやり方が考えられず
長押し解除専用のキーを必要としてしまいます。>>781

キー一本で長押し実現するヒントを教えてください。

781 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 14:19:37 ID:uAmLls5k0]
Trigger=0
2::
if Trigger =0
Trigger :=1
else if Trigger =1
Trigger :=0
return
1::
sleep,500 ;sleep入れて疑似長押し?
Loop
{
if Trigger =1
{
Trigger :=0
break
}
else
{
keywait,2, t0.25 ;長押し解除キーを.25秒待つ
send,繰り返しキー
}
}
return

782 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 15:27:59 ID:iMxJ7Rzr0]
>>780
解除するキーを 1 up に割り当てればいいんでね?
適当だけど。

783 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 21:21:06 ID:wbN4Z2af0]
神様!

どうか私にgogo.dllを使用するwav→mp3エンコードの関数をくださいませ!

784 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 21:55:57 ID:/7Fctvyq0]
gogo.exeを探し他方が早い気も酢

785 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 23:00:08 ID:uAmLls5k0]
>>782 2回押さないと止まらないし、確実に差し込めない。
というか、1キーで長押し自体Autohotkeyで無理ですか?

786 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 23:37:08 ID:ZTpaeFzk0]
>>785
希望と違う動作だったらスマン
Aをリピート

1::
KeyWait,1,U T0.5
If ErrorLevel=1
{
Loop
{
GetKeyState,State,1
If State=U
Break
Send,A
sleep,100
}
}
Return

787 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/26(月) 23:58:44 ID:EJchMc/w0]
>>784
まったくそのとおりですねw

run, gogo_8hz.exe [options] inputPCM [outputPCM]

だそうです

788 名前:787 mailto:sage [2007/11/27(火) 00:17:22 ID:OYLJ5zKh0]
さて、デコードはどうすんべ



789 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/27(火) 00:46:17 ID:kvvUYL2J0]
LAME.EXEでいいんじゃ

790 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/27(火) 01:34:48 ID:ia6xNpI10]
ffmpegでもいいし

791 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/27(火) 08:46:55 ID:YpWIafWr0]
>>785
$1::send,繰り返しキー

で、長押ししてれば普通は勝手にキーリピートしてくれないか?
特に制御とかなくてもイベント発生したような。
1 up:: を入れてしまうと解除までノーアクションになるかも知れんが。
リピートさせたいキーは特殊なキーなの?

792 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/28(水) 00:36:00 ID:CPesBzhw0]
>>778
亀レスだが、キーラベルをエスケープすると怒られるよ。

793 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/29(木) 02:35:47 ID:urhdV+bi0]
Offece2007 ってWinMenuSelectItemの 特殊な仕様のメニューバーに含まれる?

794 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/29(木) 13:57:46 ID:urhdV+bi0]
FirefoxもWinMenuSelectItemが運ともスントも言わない。糞だ。

795 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/29(木) 14:40:10 ID:EAGnRBHX0]
はいはい。そうだね。

796 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/29(木) 22:54:55 ID:uaNLMd3k0]
767です。

お願いですから、誰か教えてくださいぃぃぃ・・・


797 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/29(木) 22:57:50 ID:aduZWmtj0]
>>796
何がしたいのか分からない。

798 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/29(木) 23:22:39 ID:dRUo8qbw0]
元々キー入力を監視するソフトじゃないか
確かに何がしたいのかわからん
~LButton::
~RButton::
SoundBeep
Return




799 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/29(木) 23:53:16 ID:ZgP+LruG0]
英語版Windows XP Pro SP2上でAHKを使用しています。
AHKから英語版秀丸エディタ(Maruo Editor)を同定したいと思い、
以下のようなスクリプトを書きました。

SetTitleMatchMode, 2
#IfWinActive, ahk_class Hidemaru32Class
1::
WinGetTitle, title, A <-- ここが質問
MsgBox %title%
Return

WinGetTitleでアクティブウィンドウを指定すると期待通りにタイトル文字列が
取得できるのですが、タイトル取得モードを中間一致にしているにもかかわらず、
タイトル中の文字列を指定した場合にうまく動作しません。

WinGetTitle, title, Maruo <-- これはうまくいかない

何か理解不足があるのだと思うのですが、どなたか教えていただけませんか。

800 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/30(金) 00:30:29 ID:wmXESGfa0]
大文字と小文字は区別されるよ

801 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/30(金) 00:55:37 ID:1wAf3rVe0]
英語版まるおは使ったことないのでどういうタイトルがついてるのかよくわからん
まるおのタイトルキャプション見本をあげてくれ

802 名前:799 mailto:sage [2007/11/30(金) 01:21:26 ID:kqe4GcaD0]
>>801

キャプションは以下のとおりです。
(untitled) - Maruo
C:\AUTOEXEC.BAT - Maruo <-- これだけハイフンのまえにスペース2つ
C:\WINDOWS\win.ini (updated) - Maruo

803 名前:799 mailto:sage [2007/11/30(金) 01:51:52 ID:kqe4GcaD0]
本来の問題は解決していないのですが、>>799のスクリプトは単独ならば正常に動作しました。
何か他のスクリプトとコンフリクトしているようなので、もう少し調べてみます。

804 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/30(金) 05:07:18 ID:auk33WG70]
SetTitleMatchModeをちゃんと「実行」しろ

805 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/30(金) 06:55:00 ID:t7lB3msY0]
Gui,+Resize
Gui,Add,ListView,g_List grid -Hdr -Multi NoSort r32 w512 -Wrap,text

_List:
Loop,Read,%_ReadText%
{
LV_Add("",A_LoopReadLine)
}
LV_ModifyCol()
Gui,Show
Return

ExitApp

ウィンドウ表示後にウィンドウを大きくしても、リストの外側部分が広くなるだけで
リスト部分はリサイズされないんだけど、追随させるにはどうすれば良いのでせう。


806 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/30(金) 22:37:02 ID:xm2XOGBn0]
w512で固定してるんだから、Guiがリサイズされたときにそこを変更するように書かないとだめなのでは。

807 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/30(金) 23:52:27 ID:+kb/eKZx0]
>>797
右か左クリックが押されるのを待ちたいのです。

808 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/01(土) 00:51:47 ID:Ekk8adlM0]
Loopで左右両方のGetKeyStateを監視するとか



809 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/01(土) 01:36:47 ID:qDIhy/Pw0]
したいことをはっきり書かなきゃ分からんな。

「待ちたい」のはなぜ?
1) 前処理 → クリックイベント待ち→後処理 の様に連続処理の間に待ち時間がほしい
2) クリックイベントで何らかの処理を走らせたい

1) なら途中に無限ループ(適宜スリープを入れる)タイプ
>>808 の様にする

2) ならクリックイベントの処理を書く
>>798 の様にする

810 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/01(土) 20:28:42 ID:c5xiGZ130]
>806
w512を消しても駄目だし、GuiSize:で別の値設定しても駄目なんすよね。
ウィンドウサイズ可変なんてよくありそうな処理だし、
何か方法はあるんだろうと、色々やってみてはいるんだけど。


811 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/01(土) 22:24:15 ID:Ekk8adlM0]
GuiSize:
でいいんじゃないの

812 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/01(土) 23:35:35 ID:nbkJkIto0]
ウィンドウ可変と言えばコレだろ
ttp://www.autohotkey.net/~Titan/#anchor

813 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 00:33:46 ID:DHBOHEh30]
初心者質問ですみません。uwscで書いたスクリプトをAutoHotkeyに移行したく、
流行らせるページのリファレンスを読んだのですが、
ファイルの特定の行の文字列を置換した文字で上書き、たとえばuwscで
fid = Fopen(InputVar, F_read or F_write1)
Fput(fid, ChgMoj(Fget(fid, line), "hoge","hogehoge"), line)
Fclose(fid)
のような事を行える方法が見つかりません。

Loop, Read, hoge.txt, hoge.txt
{
StringReplace, NewStr, A_LoopReadLine, hoge, hogehoge, All
IfInString, A_LoopReadLine, hoge, FileAppend, %NewStr%`n
}
return
これだと、ファイルの末尾に置換した文字列(行)が書き込まれてしまいます。
NewStrに取得した置換後の文字列を、その行に上書きするには、AutoHotkeyでは
どのように書いたら良いでしょうか。

814 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 01:20:29 ID:sHQIZF330]
Loop, READ, hoge.txt, temp.txt

とかやって、別ファイルにいったん書き出し、
新しいファイルを元の名前に上書きリネームするとかかな
UWSCも内部的には同じこと支店じゃないかとも思うんだけど

815 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 01:31:24 ID:p1dTw0Br0]
fputs使ってるんじゃね。

816 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 04:21:56 ID:dsrGxldQ0]
>>810
消したってそりゃだめだってw
一度設定した値を変えるのはGuicontrolで。

GuiSize:
width:=A_GuiWidth-10
height:=A_GuiHeight-10
GuiControl,Move,list,w%width% h%height%
Return

817 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 08:31:32 ID:9WHdCfv90]
どちらかでSpace + 文字キーでShiftを送るスクリプトが公開されていますが(SandS.ahk)、
もう少しシンプルなスクリプトはないでしょうか。
当方の環境ではスクリプト実行に少し時間がかかっているようで、
たまにキー入力についてきてくれないことがあるのです。
そこで自分で多少カスタマイズしようと思ったのですが、
複雑で理解できなかったため、もう少しやさしい教材があればと思ったためです。

818 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 12:15:45 ID:6uXj/QTc0]
そのスクリプト見てないし、
どんだけしょぼいスペックなのか分からないし
超高速タイピング技術の持ち主かもしれない
で、sleepはどうなっている



819 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 12:56:02 ID:322RY1hZ0]
スクリプトはこちらの、SandS.ahkというものです。
sadat-studio.net/modules/mydownloads/viewcat.php?cid=3
スペックはXP Pro SP2, Pentium M 1.6GHz, 2GBです。
Sleepはスクリプト中には入っていなかったので、Sleep, -1を入れてみましたが、
あまり変わらないような気がしました。
とりあえずこれで使ってみます。

820 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 12:58:27 ID:qQ8bqVi50]
menu を表示したときにそれを ESC で Cansel できないのが不便なのですが。
キーでメニューを消せるのでしょうか?

821 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 14:31:26 ID:sHQIZF330]
通常は出来る
そのスクリプト内でESCに何か割り当ててんじゃないの
その場合はMenuの前にHOtkeyをOffにしてその後でONにすりゃいい

822 名前:820 mailto:sage [2007/12/02(日) 18:16:08 ID:qQ8bqVi50]
>>821
ありがとうございます。できました。

823 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/02(日) 19:11:10 ID:LBr1z7it0]
>816
できた。ありがとう。


824 名前:名無しさん@お腹いっぱい。 [2007/12/04(火) 09:48:59 ID:J9CGIaP70]
少し教えてください。
上がよくて、下がダメなのはなぜでしょう?

If GetKeyState("Space", "P") = 0
IfEqual, GetKeyState("Space", "P"), 0

825 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/06(木) 11:00:17 ID:fp6dFs/50]
あるアプリを起動してマウスカーソルの位置に表示したいのですが、
基本的にはうまくいくのですが、sleipnirやx-finderといういくつかのウィンドウ上では
ポジションがずれます。
何か考慮抜けがあるのでしょうか。

#x::
MouseGetPos, xpos, ypos
Run ..\CopyDate.exe
WinWaitActive, ahk_class TForm1
WinMove, ahk_class TForm1,, xpos, ypos
return



826 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/06(木) 12:24:11 ID:ARnZThbh0]
AutoHotkey 1.0.47.05で
+2::@
とだけ記述した設定ファイルでShift+2を押下すると`が入力され、
+2::Send, {@}
の場合は@が入力されます。
これはShift+2の押下でShift+@にremapされるからのようなのですが、
このようなケースではSendを使う以外に解決方法はないのでしょうか。
また、remapと一文字のみ送るSend関数とでは、厳密には何が違うのでしょうか。

827 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/06(木) 12:40:24 ID:KwRlT3gU0]
>>825
CoordMode,Mouse,Screenではどうかな?

828 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/06(木) 12:47:58 ID:o4L+ibFD0]
>>824
IfEqual の一つ目の引数は variable name じゃないとだめだから。
IfEqual, GetKeyState("Space", "P"), 0 と書いても、GetKeyState("Space", "P") は実行されない。



829 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/06(木) 13:30:46 ID:OUFr4hs70]
>>828
なるほど、そういうことでしたか。
理解しました。
ありがとうございました。

830 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/06(木) 15:45:51 ID:fp6dFs/50]
>>827
なるほど。できました。
ありがとうございます。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<304KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef