2008-09-04 25 views
2

私の会社のイントラネット上で実行されているASP.netとC#で開発されたWebアプリケーションがあります。このアプリケーションのすべてのユーザーがすべてMicrosoft Outlookを例外なく使用しているため、アプリケーションでクライアント側でOutlookメッセージを開くことができます。 私はOfficeがサーバーではなくデスクトップ上で動作するように設計されていることを理解していますが、クライアント側でWord文書またはExcel文書を作成することは問題ありません。Outlook Webページからの電子メール

私は、Microsoft.Office.Interop.Outlook名前空間とサーバーにインストールされているOutlookを使用してOutlookオブジェクトをインスタンス化するコードを用意しています。サーバーからコードを実行しようとすると、「コンピュータの既定のアクセス許可設定でCLSID {000C101C-0000-0000-C000-000000000046のCOMサーバーアプリケーションのローカルアクティベーションアクセス許可が与えられない」というDCOMソースエラーメッセージが表示される}このセキュリティアクセス許可は、コンポーネントサービス管理ツールを使用して変更できます。私は、コンポーネントサービスツールを使用してアクセス許可を変更しましたが、この同じエラーが発生します。

Outlookをサーバー側のコードからクライアント側で開くことができないため、これを克服する方法はありますか、これは実用的ではありませんか?

Mailtoは、電子メールが取得できる極端な長さのため動作しません。また、それを送信するユーザは、受信者のためにテキストに目立たせる必要があります。

答えて

6

サーバーサイドコードからクライアント上で何かを開くことはできません。ページ上のスクリプトを使用して、必要なもの(ActiveXや埋め込み.NETなどのクライアント側のもの)を行う必要があります。

ウェブページからOutlook MailItemを呼び出すサンプルJavaScriptです。これは、サーバー側のコードからページに簡単に挿入できるため、クライアント上で実行されます。

http://www.codeproject.com/KB/aspnet/EmailUsingJavascript.aspx

2

(ヒント:あなたの質問に書式設定)

私は、mailtoのリンクまたはformmail型ページと間違って何理解していませんよ。

+0

冗談の書式設定はありません。申し訳ありません。 – Keng

1

社内の全員がOutlookを使用している場合は、標準の「mailto」リンクを使用するだけで常にOutlookを開く必要があります。あなたはこれを過剰工学的に扱っているように思えます。

1

既存の電子メールを開くか、新しい電子メールを作成しますか?

はおそらく、私はあなたの質問を誤解していますが、

のmailtoのようなリンクを提供することができます?[email protected]対象=この%20is%20the%20subject &体=こんにちは%の20there!

ユーザーがリンクをクリックすると、新しいOutlook-E-Mailが開き、受信者はrecipient @ email-tld、件名は「This is the subject」、本文は「こんにちは! "これらのフィールドはすべてリンクから既に埋め込まれています。

1

私はちょうどそこにこれを投げてくれるでしょう。

Mailtoには多くの欠点があります。主にサイズ。送信者は電子メールテキスト上で多くの書式設定を行う必要があるため、生成されるhtmlコードはmailtoを使用すると失敗する多くのスペースを占める可能性があります。

提案に感謝します。

+0

これを明らかにすることはできますか? mailto:リンクが何よりも "スペース"を占めるのはなぜ私には分かりません。メールの本文は完全に自動生成されていますか? –

+0

@Oliver Giesen、それはmailtoが "あまりにも多くのスペースを占める"わけではありません。 Mailtoには一定の長さ制限があります。メッセージが長すぎると切り詰められます。 –

関連する問題