■ ほかのアプリケーションを起動するには...
* Process.Start() を使用する
参考資料
http://www.atmarkit.co.jp/fdotnet/dotnettips/149procstart/procstart.htmlhttp://www.atmarkit.co.jp/fdotnet/dotnettips/211startmail/startmail.html
http://uchukamen.com/Programming1/Process/index.htm
■ ブラウザを起動する
private void button1_Click(object sender, EventArgs e) { Process.Start("IExplore.exe", "http://blogs.yahoo.co.jp/dk521123"); }
実装注意(ブラウザ)
* ブラウザを指定しないと、例外が発生する必要あり (既定のブラウザをIE以外だと例外が起きる可能性あり)
■ メーラを起動する
private void button1_Click(object sender, EventArgs e) { string encMail = string.Format( "mailto:{0}?subject={1}&body={2}&cc={3}&bcc={4}" , "abc@def.com,ghi@jfk.com" , HttpUtility.UrlEncode("件名", Encoding.GetEncoding("shift_jis")) , HttpUtility.UrlEncode("本文", Encoding.GetEncoding("shift_jis")) , "lmn@opq.com" , "rst@uvw.com"); Process.Start(encMail); }
実装注意(メール)
* エンコードをする必要があるが、むやみにURLエンコードするのも危険なので適切に。 * エンコードで、HttpUtilityが使えない場合、Uri.EscapeUriString()もある。http://iseebi.half-done.net/?TechDoc%2FUrlEncodeWithoutHttpUtility
補足:HttpUtility.UrlEncode()を使用するには
(1) 対象のプロジェクトを右クリックし、「プロパティ」を選択 (2) 「アプリケーション」の「対象フレームワーク」を「.Net Framework4」などを選択 (3) VCの「参照設定」を右クリックし、「参照の追加」を選択 (4) [.NET]-[System.Web]を選択し、「OK」を選択すれば、使える
補足:添付ファイルをするには...
* 通常できないらしいが、一部のメーラでは『attach="(ファイルのパス)"』でできるかも。 (Outlookじゃできなかった)http://dobon.net/vb/dotnet/process/openbrowser.html
* メーラ起動からではなく、独自にメーラを作成すれば、可能。http://www.kisoplus.com/net/mail_sub/temp.html
http://dobon.net/vb/dotnet/internet/smtpmail2.html#section1
■ 実装注意(全体)
* Win32Exceptionなどが発生するケースがある * 文字制限に注意する必要があるhttp://msdn.microsoft.com/ja-jp/library/system.diagnostics.processstartinfo.arguments%28VS.80%29.aspx
.NET Framework アプリケーションの最大文字列長が 2,003 文字で、 .NET Compact Framework では 488 文字です。* 既定のメーラ、ブラウザなどの指定は以下の通りです
[コントロールパネル]-[インタネットオプション]-[プログラム]で指定できる