中年プログラマーの息抜き

カシマルです。 最近、新しい土地へ引っ越しをしたのですが、これを機に何か始めたいなと思ってブログをはじめました。気の向くままに更新していきます。

Visual Studio で Outlook 用 VSTO アドインを作成してみた

f:id:tm-b:20161229140514p:plain

はじめに

今回は、Visual StudioOutlookVSTO アドインを作成して、添付ファイルを送る手間を軽減してみました。

メールでファイルを添付するときは、まずパスワード付ZIPを作ってそれを添付、パスワードは別メールで送付するというのを、毎回のようにしているのですが、 これをやめたい! そこで、自動化してしまおうと思いどうするか考えたところ、 まあ、ホスティングサービスもあったのですが有料のものが多いみたいですし、今回はVSTOで自作して無料のまま試したいと思います。 

機材

・Windows10
・Visua Studio 2017
・Office 2010 (Outlook2010)

作業内容

Visual Studio でプロジェクトを作成
・Add-inでフックするのは、送信ボタンを押したとき
・パスワード付ZIPは「7-zip.dll」を使う(C:\Windows\SysWOW64\7-zip.dll)
・Add-inのインストールはClickOneで公開してやってみる

C#のソース

送信対象のメールへ添付ファイルが含まれていれば、添付ファイルを適当なフォルダへまとめ、ZIPで固め、新しいメールへ添付して送信、そのあと、パスワードお知らせの新しいメールを書いて送信、最後にオリジナルのメールは削除、大まかには、この三段階を自動で行うように処理してみようと思います。

まとめ

少し動かしてみたところ、まあ楽ですね。いちいちzipで固めたものを準備しなくてよいし、なによりパスワードを間違えないようにとか考えなくてよくなります。

 

【1通目はこんな感じです。】←プログラムで作成&送信

件名:(オリジナルの 件名)

  様

  ・・・

  署名とかも含めてオリジナルの 本文と同じ

  ・・・
(添付ファイルの開封時パスワードは別途お知らせいたします)←プログラムで追記

 

【2通目はこんな感じです。】←プログラムで作成&送信

件名:(オリジナルの 件名)

(メールアドレス) 様
========================================================
先ほどお送りしたファイルのパスワードをお知らせします。
ファイル名 : (ZIPファイルのファイル名) 
パスワード : (ZIPファイルのパスワード)
========================================================

 

【オリジナルのメール】←プログラムで削除

メール丸ごと削除

 

使いながら細かいとこを直していけば、意外と良いかもしれません。 たまに、パスワードのお知らせが、添付ファイルよりも先に届くことがあるので、気になる人は気になるかもしれないなあと・・;;

 

d(`Д´)b39