■前提
- 既定以外の予定表フォルダも指定したい
- 出力処理を自動化したい(警告ダイアログは困る)
- セキュリティ警告周辺の設定をいじらないで済ませたい
- Outlook 2003でも使いたい
(コンテキストメニューから保存。拡張子を.jsに)
cscript.exe ol2ics.js [/folder:folder_path] 出力ファイル.ics
/folder:予定表フォルダのpath。
- 省略すると既定の予定表フォルダ
- フォルダのpathは「VBAで Outlookの予定表フォルダを取得する」のスクリプトで調べられる。
- エクスポート時点で、終了時刻が過ぎていない予定が出力される
- 定期的な予定は未対応
インポート先アプリケーションが繰り返し予定のインポートに対応していない(手入力はできるのに・・)ので、まぁいい。 - SaveAsしないのは、
→OL2003で↓警告が出たから。次項のAppointmentItem.Bodyと関係ある?
→OL2007だとデフォルトでは、以下のような設定になっていて、アンチウイルスが有効なら警告されないみたい。試しにアンチウイルスをoffにしてから試行したら警告が出た。 - DESCRIPTIONを出力していないのは、
→AppointmentItem.Bodyを参照すると上記の警告ダイアログが出たから。(OL2003)
→インポート先アプリケーションのUIを勘案して、SUMMARYだけ反映できれば十分と割り切ることに。。 - OL2007だと、Folderに対してSaveAs出来るようだけど、OL2003でも使うので見送りに。
OutlookからUIを用いてics形式で保存すると、UIDの桁数がかなり多く、AppointmentItem.EntryIDの値とは異なる。
AppointmentItem.EntryIDのリファレンスには"The EntryID property returns a MAPI long-term Entry ID. "とあるけど。
>> Home