|
K'zawa/ユーザーです。
横から失礼します。
> if($folder == "User\folder1"){
のところは、
if($folder == "User\\folder1"){
のように書いてください。
で、それとは別に、ちょっとこんなマクロを作ってみました。
試してみてください(自己責任で)。
2つのマクロを同じ場所に置く。
まず特定のフォルダでA.macを実行してそのフォルダを登録。
あとはdelキーを押す代わりにB.macを実行する。
特定のフォルダではログも削除します。
特定のフォルダ以外ではdelキーと同じことをします。
とは言うものの、削除の部分はコメントアウトしていますので
とりあえずお知らせメッセージが出るだけです。
なお、マクロと同じ場所に、
マクロ1行目に書かれたファイルを勝手に作ります。
いらなくなったらそれも捨ててください。
--- A.mac:ここから --------------------------------------
$inifile=currentmacrodirectory+"\\TestList.txt";
loaddll "tkinfo.dll";
if(!result){beep;endmacro;}
if(!dllfunc("IsHidemaruMailMain")) goto ExitMacro;
menu "リスト登録・削除","リストファイル";
if(result==0) goto ExitMacro;
else if(result==1) call Touroku;
else message $inifile;
ExitMacro:
freedll;
endmacro;
Touroku:
$Account=dllfuncstr("CurrentAccount");
$folder=dllfuncstr("CurrentFolder");
#n=getininum($inifile,$Account,$folder);
if(#n){
question "このフォルダはログごと削除リストに登録されています。\n"
+"削除しますか?";
if(result) writeinistr $inifile,$Account,$folder,0;
}else{
question "このフォルダをログごと削除リストに登録しますか?";
if(result) writeininum $inifile,$Account,$folder,1;
}
return;
--- A.mac:ここまで --------------------------------------
--- B.mac:ここから ------------------------------
$inifile=currentmacrodirectory+"\\TestList.txt";
loaddll "tkinfo.dll";
if(!result){beep;endmacro;}
if(!dllfunc("IsHidemaruMailMain")) goto ExitMacro;
openreg "CURRENTUSER","Software\\Hidemaruo\\TuruKame\\Config";
#Confirm=getregnum("Confirm");
closereg;
if(!(#Confirm & 0x100)) #delmode=1;
else goto DeleteMail;
$Account=dllfuncstr("CurrentAccount");
$folder=dllfuncstr("CurrentFolder");
#dellog=getininum($inifile,$Account,$folder);
DeleteMail:
#SMCnt=dllfunc("SelectedMailCount");
if(#SMCnt){
if(#dellog){
question str(#SMCnt)
+"通のメールを完全に削除してもいいですか?";
if(result) #delmode=2;
else goto ExitMacro;
}
// -----↓テスト用-------------------------
$s=str(dllfunc("SelectedMailCount"))+"通のメールを";
if(#delmode==0) $s=$s+"通常の確認付き削除";
else if(#delmode==1) $s=$s+"通常の確認なし削除";
else if(#delmode==2) $s=$s+"確認してログごと削除";
message $s;
message "とゆうのは嘘";
// -----↑テスト用-------------------------
// -----↓本番-----------------------------
// #n=dllfunc("Delete",#delmode);
// -----↑本番-----------------------------
}
ExitMacro:
freedll;
--- B.mac:ここまで ------------------------------
|
|