0

MAPIを使用して、アプリケーションからの添付ファイル付きの電子メールを作成しました。これは、XPおよびVista(UACなし)で非常にうまく機能します。もちろん、UACを有効にしている場合は、機能しません(ただし、エラーは発生せず、ユーザーに続行の許可を求めるプロンプトは表示されません)。

私はたくさんの読書をして、たくさんの異なるアイデアを見つけました:

  • アプリの管理者権限が必要
  • アプリに何らかの形の昇格された特権が必要
  • 標高が必要なコードの小さな部分のCOMオブジェクトを作成します
  • OSに、続行するかどうかを尋ねるユーザーのプロンプトを表示させます。

私が本当に必要なのは1つまたは2つの機能だけであるとすると、SOユーザーは何をするのだろうかと思います。私はここで最小限の苦痛を探しています(私はCOMを行いませんが、それらの最高のものでP / Invokeを実行できます...)、そして.NET 2.0で作業しています(これはレガシーアプリです) 。

編集:アプリの一部だけをエレベーションする必要があることを考えると、アプリ全体を昇格させるのは良い考えではないことに同意しますが、長期的には、アプリの一部だけを昇格させるよりも簡単かもしれないと思っていました。

また、私の目標は単にメッセージと添付ファイルを作成することであるため、.NET SMTPソリューションから離れたいと思いますが、ユーザーがテキストを追加して自由に送信できるように、メッセージをユーザーに表示します。 。

4

1 に答える 1

0

より一般的なSMTPを優先してMAPIを放棄できる場合は、.NETのSystem.Net.Mail.SmtpClientクラスを使用できます。MailMessageクラスと一緒に、任意のSMTPサーバーを介して添付ファイルを追加したりメッセージを送信したりできます。

すべて、古き良き.NET2.0でマネージコードとして利用できます。p/invokeやCOMは必要ありません。参照ページの例。

于 2008-12-18T17:15:10.953 に答える