該当メールを選択の方法?No.00755
davinci1958 さん 06/10/05 23:16
 

2006/10/05(木) 23:06:24

こんにちは、ダヴィンチ@ユーザーです。

みなさん、教えて欲しい事があります。
今、返信元メールと返信メールが別々のフォルダに分割している時に
両者を同じフォルダに統合するために『関連メール』から片方を
検索して、これを秀丸本体側で選択した後に手動で該当フォルダに
移動という処理をするために関連メールで見つけたメールの
『フォルダに移動』、現在エディタで表示しているメールを本体側で
『選択』させる方法がわかりません。
メールの保存フォルダへの移動は、・・・

#n = dllfunc( "ExecAtMain", "SelectFolder", $act, $folder ); で
実現できました。

でも、今現在エディタで表示しているメールを本体側で選択させる処理を
以下のようにしていますが、うまくいきません。

#idx = dllfunc( "ExecAt", #main, "MailIndex");
#r = dllfunc("ExecAt", #main, "SetMailIndex", #idx);

何かいい方法はないでしょうか。
是非、ご教示下さい。

───────────────────────────────────
 if ( $$id != "" ) {
 
  #main = dllfunc( "MainWnd" );

  // メール検索条件設定=フォルダ内をmessageidの値で検索します。
  #r = dllfunc("ExecAt", #main, "SetFindPack","(\"" + $$id + "\",target=pers
on),messageidtarget=messageid,inmail=0");

  // メール検索&ジャンプ
  #r = dllfunc("ExecAt", #main, "NextPrevCustom", "", "down", "", "RollFolde
rAccount");
 
  if ( #r == 1 ) {
   #idx = dllfunc( "ExecAt", #main, "MailIndex");

   #r = dllfunc("ExecAt", #main, "SetMailIndex", #idx);
  }
 }
───────────────────────────────────

--
メーラー: HidemaruMail 4.68beta8 (WinNT,500)
OS: Windows2000 SP4

[ ]
RE:00755 該当メールを選択の方法?No.00756
アルビレオ さん 06/10/05 23:36
 
アルビレオです。

>でも、今現在エディタで表示しているメールを本体側で選択させる処理を
>以下のようにしていますが、うまくいきません。

秀丸メールマクロヘルプより引用
>Sync関数は、現在メールエディタ・ウィンドウが開いているメールを秀丸メール本体
側で選択した状態にします。

たぶんこれを呼び出すだけでいけるんじゃないでしょうか。

[ ]
RE:00755 該当メールを選択の方法?No.00757
Iranoan さん 06/10/06 00:40
 
 davinci1958 さん今日は、Iranoan です。
> 返信元メールと返信メールが別々のフォルダに分割している時に
> 両者を同じフォルダに統合する
 最終的にこれがしたいなら、何も返信元のメールを本体で選択する必要は無
いでしょう。送信済みメールに限られますが、返信元のメールに移動させるマ
クロは末尾の要領です。
 受信したメールでも移動させたい場合は、davinci1958 さんが試されたよう
に、Message-Id 検索を使うしかないでしょうね。
--------------------------------------------------------------------
loaddll "tkinfo.dll";
#main = hidemaruhandle( 0 );
if( dllfunc( "OpenRootMail" ) ){
  $a = dllfuncstr( "CurrentAccount" );
  $f = dllfuncstr( "CurrentFolder" );
  #reply = hidemaruhandle( 0 );
  setactivehidemaru #main;
  closehidemaru #reply;
  #tmp = dllfunc( "Move", $a, $f );
}
freedll;


[ ]
RE:00756 該当メールを選択の方法?No.00760
davinci1958 さん 06/10/06 20:36
 
ダヴィンチです。

アルビレオさん、Iranoanさんレスありがとうございました。
Sync関数による解決がもっともシンプルに決まりました。
コードもスッキリできて一石二鳥でした。
ヘルプを探すのがへたくそで、反省してます。^^;


>アルビレオです。
>
>>でも、今現在エディタで表示しているメールを本体側で選択させる処理を
>>以下のようにしていますが、うまくいきません。
>
>秀丸メールマクロヘルプより引用
>>Sync関数は、現在メールエディタ・ウィンドウが開いているメールを秀丸メール本体
>側で選択した状態にします。
>
>たぶんこれを呼び出すだけでいけるんじゃないでしょうか。


[ ]