-1

プログラムでSharePointからOutlookの複合メールを開く必要があります。このコードを試しましたが、Outlookのプロセスを開くだけですが、メールの作成ウィンドウが表示されませんでした。

  using (SPSite currentSite = new SPSite(SPContext.Current.Site.ID))
            {
                using (SPWeb currentWeb = currentSite.OpenWeb(SPContext.Current.Web.ID))
                {
                    WebURL = currentWeb.Url;
                    currentWeb.AllowUnsafeUpdates = true;
                    SPList correspondences = currentWeb.Lists.TryGetList("list1");

                    SPListItem correspondenceItem = correspondences.GetItemById(id);
                    WebURL = currentWeb.Url;
                    SPAttachmentCollection CorrespondenceAttachemt = correspondenceItem.Attachments;

                                           Microsoft.Office.Interop.Outlook.Application oApp = new Microsoft.Office.Interop.Outlook.Application();
                    Microsoft.Office.Interop.Outlook._MailItem oMailItem = (Microsoft.Office.Interop.Outlook._MailItem)oApp.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);

                    oMailItem.Body = body;
                    oMailItem.Subject = title;



                    oMailItem.Display();

                }
            }
4

2 に答える 2

1

そのコードはSharePointサーバーで実行されていますよね?その場合、クライアントではなくサーバー側でOutlookを起動します。それ以上に、Outlook(他のOfficeアプリと同じように)をサービスで使用することはできません。

mailto URLを使用してみませんか?

于 2013-03-25T02:40:17.953 に答える
0

デフォルトでは、oMailItem.DisplayはFalseです。trueに変更します。

 oMailItem.Display ( true );

これでうまくいくはずです。

于 2013-03-27T10:50:27.857 に答える