C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
掲示板トップ
C# と VB.NET 入門
新規作成
利用方法
ツリー表示
トピック表示
ランキング
記事検索
過去ログ
ログ内検索
キーワードを複数指定する場合は 半角スペース で区切ってください。
検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
[返信]をクリックすると返信ページへ移動します。
キーワード
/
検索条件
/
(AND)
(OR)
検索範囲
/
(現在のログ)
(全過去ログ)
(過去ログ1)
(過去ログ2)
(過去ログ3)
(過去ログ4)
(過去ログ5)
(過去ログ6)
(過去ログ7)
(過去ログ8)
(過去ログ9)
(過去ログ10)
(過去ログ11)
(過去ログ12)
(過去ログ13)
(過去ログ14)
(過去ログ15)
(過去ログ16)
(過去ログ17)
(過去ログ18)
(過去ログ19)
(過去ログ20)
(過去ログ21)
(過去ログ22)
(過去ログ23)
(過去ログ24)
(過去ログ25)
(過去ログ26)
(過去ログ27)
(過去ログ28)
(過去ログ29)
(過去ログ30)
(過去ログ31)
(過去ログ32)
(過去ログ33)
(過去ログ34)
(過去ログ35)
(過去ログ36)
(過去ログ37)
(過去ログ38)
(過去ログ39)
(過去ログ40)
(過去ログ41)
(過去ログ42)
(過去ログ43)
(過去ログ44)
(過去ログ45)
(過去ログ46)
(過去ログ47)
(過去ログ48)
(過去ログ49)
(過去ログ50)
(過去ログ51)
(過去ログ52)
(過去ログ53)
(過去ログ54)
(過去ログ55)
(過去ログ56)
(過去ログ57)
(過去ログ58)
(過去ログ59)
(過去ログ60)
(過去ログ61)
(過去ログ62)
(過去ログ63)
(過去ログ64)
(過去ログ65)
(過去ログ66)
(過去ログ67)
(過去ログ68)
(過去ログ69)
(過去ログ70)
(過去ログ71)
(過去ログ72)
(過去ログ73)
(過去ログ74)
(過去ログ75)
(過去ログ76)
(過去ログ77)
(過去ログ78)
(過去ログ79)
(過去ログ80)
(過去ログ81)
(過去ログ82)
(過去ログ83)
(過去ログ84)
(過去ログ85)
(過去ログ86)
(過去ログ87)
(過去ログ88)
(過去ログ89)
(過去ログ90)
(過去ログ91)
(過去ログ92)
(過去ログ93)
(過去ログ94)
(過去ログ95)
(過去ログ96)
(過去ログ97)
(過去ログ98)
(過去ログ99)
(過去ログ100)
(過去ログ101)
(過去ログ102)
(過去ログ103)
(過去ログ104)
(過去ログ105)
(過去ログ106)
(過去ログ107)
(過去ログ108)
(過去ログ109)
(過去ログ110)
(過去ログ111)
(過去ログ112)
(過去ログ113)
(過去ログ114)
(過去ログ115)
(過去ログ116)
(過去ログ117)
(過去ログ118)
(過去ログ119)
(過去ログ120)
(過去ログ121)
(過去ログ122)
(過去ログ123)
(過去ログ124)
(過去ログ125)
(過去ログ126)
(過去ログ127)
(過去ログ128)
(過去ログ129)
(過去ログ130)
(過去ログ131)
(過去ログ132)
(過去ログ133)
(過去ログ134)
(過去ログ135)
(過去ログ136)
(過去ログ137)
(過去ログ138)
(過去ログ139)
(過去ログ140)
(過去ログ141)
(過去ログ142)
(過去ログ143)
(過去ログ144)
(過去ログ145)
(過去ログ146)
(過去ログ147)
(過去ログ148)
(過去ログ149)
(過去ログ150)
(過去ログ151)
(過去ログ152)
(過去ログ153)
(過去ログ154)
(過去ログ155)
(過去ログ156)
(過去ログ157)
(過去ログ158)
(過去ログ159)
(過去ログ160)
(過去ログ161)
(過去ログ162)
(過去ログ163)
(過去ログ164)
(過去ログ165)
(過去ログ166)
(過去ログ167)
(過去ログ168)
(過去ログ169)
(過去ログ170)
(過去ログ171)
(過去ログ172)
(過去ログ173)
(過去ログ174)
(過去ログ175)
(過去ログ176)
(過去ログ177)
(過去ログ178)
強調表示
/
ON
(自動リンクOFF)
結果表示件数
/
20件
30件
40件
50件
100件
記事No検索
/
ON
大文字と小文字を区別する
No.61103 の関連記事表示
ヒット / 1件
(1-1 を表示)
<<
0
>>
■61103
Re[1]: 【C#】MAPIを用いてメーラーを起動
□投稿者/ 魔界の仮面弁士 -
(2011/08/02(Tue) 12:42:20)
掲示板の利用ルールにも記載されていますように、半角カナは使用しないようお願いいたします。
■
No61085
(KAMIMURA さん) に返信
> 使用するメーラーは「Microsoft Office Outlook」または
> 「Outlook Express」となります。
「Microsoft Windows Mail」や 「Microsoft Internet Mail and News」は対象外なのですね。
(まぁ、MSIMN + C# の組み合わせは流石に無いと思いますが、Windows Mail はありそうな気が)
> C#(ASP.NET)
MAPI って、ASP.NET から利用できましたっけ?
現在の MAPI は、ユーザー応答を必要とするタイプの COM API として実装されているため、
サーバー動作の無人アプリや、Web Client からは利用できないと思っていたのですが…。
(もちろん、Windows Client として実装する場合は良いでしょうけれど)
どうしても Web Client として実装したいなら、IE の object タグに C# 製 DLL を
埋め込んで実行させるという手はありますが、セキュリティ上の問題が残りますね。
> MAPIを使用を前提に検討いたしました。
Windows Client から実行した場合においては、当方環境(Outlook 2007)で
提示された C# コードでエラーなく動作しました。
ということで、先に環境側の確認をしておいてください。
(1) Windows Client から呼び出した場合もエラーになるのか?
(2) 非.NET な環境から利用した場合にも同様のエラーになるのか?
(3) Outlook VBA あるいは Excel VBA などから Outlook (≠Express) の
Send メソッド経由でメールを送出することはできるのか?
http://www.ken3.org/cgi-bin/group/vba_outlook.asp
> // 「参照の追加」より、「Microsoft MAPI Controls 6.0」を追加
MSMAPI はデザインタイムライセンスが要求されるコンポーネントですが、
その点はクリア済みでしょうか。(VS6 開発環境あるいは VB6Controls.reg 等)
なお、MSMAPI32.OCX を使えない場合は、mapi32.dll を直接利用する手もあります。
http://www.pinvoke.net/default.aspx/mapi32.MAPISendMail
> System.Runtime.InteropServices.COMException (0x800A7D02):
VB6 環境で「Err.Raise &H800A7D02」を実行したところ、実行時エラー 32002 に変換されました。
800A7D02 だけではなく、32002 という番号でも情報を探してみてください。
こちらの方でも、ヘルプファイル(mapi98.chm)の「MAPI コントロールのエラー定数」を
見てみたのですが、そこに書かれているのは、
mapFailure 32002 予期せぬエラーが発生しました。
という程度で、それ以上の情報は無さそうです。
同様に、オンライン版 MSDN Library も参照してみました。
既に日本語版が閉鎖されているため、英語版ページから辿って行きます。
http://msdn.microsoft.com/en-us/library/aa228170%28VS.60%29.aspx
こちらは、日本語版よりも少し詳しく書かれてはいましたが、
mapFailure 32002 Unspecified failure has occurred
An unspecified error occurred during the current action.
For example, the action was unable to delete or address mail correctly.
という程度なので、残念ながら解決には至りそうな情報は見当たりませんでした。
> MapiMs.Send(true);
true 指定という事は、Outlook 等の送信画面が表示され、そこで「送信」ボタンを
手動で押す必要がありますが、それは構わないのですよね。
# false を指定した場合も、最近の環境 (Outlook 2002 以降?) では
# ユーザー操作は必要になりますけれどね。
> try
> {
> MapiMs.Send(true);
> MapiSs.SignOff();
> }
> catch
> {
> MapiSs.SignOff();
> }
逆運の覇者さんも書かれていますが、try 句と catch 句の両方で MapiSs.SignOff(); を
呼んでいるのであれば、それらは finally にまとめた方が良い気がします。
記事No.61085 のレス /過去ログ102より /
関連記事表示
削除チェック/
<<
0
>>
パスワード/
-
Child Tree
-