添付ファイルの削除No.10329
はんぺん さん 02/12/17 11:40
 
こんにちは。ちょっとご相談させてください。

・現在選択中のメールの
 添付ファイルのみを簡単に削除する方法はないでしょうか?

現在は該当メールの添付ファイル欄で「すべて選択」し、
右クリックで「削除」を選択後「OK」という操作をしていますが、
そんなメールがたくさんあると面倒で。
(でもこれができるからこそOutlookExpressから乗り換えましたが)
キー一発でできたらうれしいです。

仕事柄、添付ファイルが多いのですが、
一つのプロジェクトが終了したら本文は残して、
用済みの添付ファイルのみ削除しています。

メールを一つ一つ確認し、削除すべきかどうかを判断してから、
選択中のメールのみの添付ファイルを削除したいです。
だからエクスプローラなどでまとめて削除するわけにはいかないのです。

(Windows2000SP3+IE6.0、鶴亀メール2.25、秀丸エディタ3.18)

[ ]
RE:10329 添付ファイルの削除No.10330
秀まるお2 さん 02/12/17 13:59
 
>現在は該当メールの添付ファイル欄で「すべて選択」し、
>右クリックで「削除」を選択後「OK」という操作をしていますが、
>そんなメールがたくさんあると面倒で。

 標準のキー割り当ての場合だと、「すべて選択」はCtrl+A、「削除」はDelete
キーなので、Ctrl+A Deleteと操作するだけで全部削除されます。

 大した手間ではないと思いますが、しいてこを一発でやるにはマクロを使う手
があります。

 マクロが必要でしたらすぐに作りますので連絡ください。

[ ]
RE:10330 添付ファイルの削除No.10332
はんぺん さん 02/12/17 14:26
 
作者ご自身から有り難いお言葉をいただき、感激です。

>  マクロが必要でしたらすぐに作りますので連絡ください。

お手すきの時で構いませんので、お願い申し上げます。

[ ]
RE:10332 添付ファイルの削除No.10334
ひろ さん 02/12/17 15:03
 
 はんぺんさん今日は、ひろです。
> >  マクロが必要でしたらすぐに作りますので連絡ください。
>
> お手すきの時で構いませんので、お願い申し上げます。
 作者ではありませんが、X-Attach ヘッダがそのままの場合、末尾のような
マクロになります。Windows98 でしか確認していませんが、NT 系でも動くは
ずです。
//--------- delete attachment file (selected mail)-------------------
//              X-Attach header はそのまま
loaddll "tkinfo.dll";
$shell = dllfuncstr( "ToLower", getenv( "COMSPEC" ));
if( strstr( $shell, "command.com" ) == -1 ){//NT 系
  $opttion = "\" /S /Q";
  $shell = "cmd /C rd \"";
}
else{//95 系
  $opttion = "\"";
  $shell = "deltree.exe /Y \"";
}
#tmp = dllfunc( "DisableDraw", 1 );
#n = dllfunc("LockSelection");
$dir = dllfuncstr("HomeDir") + dllfuncstr("CurrentAccount")+ "\\";
while(1) {
  if( !dllfunc("EnumSelection", 1) )break;
  $attach = dllfuncstr("CurrentHeader", "X-Attach");
  if( $attach != "" ) {
    $src = $dir + $attach;
    // フォルダ名のみに変換する。
    #xFolder = -1;
    #xFile = -1;
    while(1) {
      #x = strstr( midstr( $src, #xFile + 1, 256 ), "\\" );
      if( #x < 0 ) {
        break;
      }
      #x = #x + #xFile + 1;
      #xFolder = #xFile;
      #xFile = #x;
    }
    $src = leftstr( $src, #xFile );
    if( existfile( $src ) )runsync2 $shell + $src + $opttion;
  }
}
#n = dllfunc( "UnlockSelection", 0);
#n = dllfunc( "EnableDraw" );
freedll;

[ ]
RE:10334 添付ファイルの削除No.10336
はんぺん さん 02/12/17 15:47
 
ひろさん、ありがとうございます。

マクロを扱えるか不安でしたが、なんと一発で動作しました。
それも期待通りの動きで。
いままで1メール当たり4〜5タッチ必要だったのが、
2タッチで済むようになりました。(マクロ実行と次のメールへ移動)

重ねてお礼申し上げます。
秀まるお2さんにもこの場をお借りしてお礼申し上げます。

[ ]