|
はじめまして、AKTです。
こういう、発言は許されるんでしょうか? まあ、やってみないとわからんなーと
思ったんでやってしまいましょう。
実は、自分は秀ページの秀丸マクロライブラリの方でしょうもないマクロを載せて
もらってるんですが、そのマクロにマクロサーバーを使った機能を追加しようと、
今日、ちまちまやってたんですが、そこでどーしようもない状態に陥ってしまいま
した。ごちゃごちゃ説明する能力がないんでそのマクロの一部を載せさせていただ
きます。
-----
run "macserv.exe /h";
ddeinitiate "HideMacroServer", "DlgService";
ddeexecute "setcurdir " + directory;
#l=33;
$$harf="";
while(#l < 126){
$$harf=$$harf+char(#l);
#l=#l+1;}
#no=0;
#l=0;
ddepoke "newdialog", "8";
while(#l < 5){
#j=0;
while(#j < 20){
$mac="check,MC"+str(#no)+",["+midstr($$harf,#no,1)+"]";
ddepoke "newcontrol", $mac;
ddepoke "default", "1";
#j=#j+1;
#no=#no+1;}
ddepoke "newcolumn", "8";
#l=#l+1;}
#l=0;
while(#l < 13){
$mac="check,MC"+str(#no)+",["+midstr($$harf,#no,1)+"]";
ddepoke "newcontrol", $mac;
ddepoke "default", "1";
#j=#j+1;
#no=#no+1;}
call MakeDialog;
endmacro;
MakeDialog:
#hwnd = hidemaruhandle(0);
ddeexecute "dialog " + str(#hwnd);
$$a = "";
ddestartadvice "dlgresult", $$a;
while( strlen($$a) == 0 ) {
ddewaitadvice $$a, 100;
}
ddestopadvice "dlgresult";
ddeexecute "enddialog";
return $$a;
-----
と、いうようなやつなんですが(これはその問題のある部分だけのカット&ペースト
したものです)、これはどうも具合が悪いらしくマクロサーバーが落ちてしまいます。
確かに、今日ホントに初めてヘルプとサンプルマクロを見ながら作ったやつなんで、
「そら、あんた。あかんがな」
と、言われるようなことをしているのかも……。どうか、ご教授を。これがうまく
いかないと大したこともないところでやたら行数を稼いでいるマクロになってしま
うんです。なんとか、お願いします。あ、今見直したら、余計な動作が……
ま、いっか。
|
|