非常にシンプルな Outlook を使用してメールを送信する小さな C# コンソール アプリを作成しました
Outlook.Application oApp = new Outlook.Application();
//Create the new message by using the simplest approach.
Outlook.MailItem oMsg = (Outlook.MailItem)oApp.CreateItem(Outlook.OlItemType.olMailItem);
oMsg.Recipients.Add("xxx@xxx.com"); //////////////////problem line
oMsg.Subject = "aaaa";
oMsg.Body = "body";
//Send the message.
oMsg.Save();
oMsg.Send();
このコードは、php コードから呼び出す必要があります。
1) コンソールで問題なく動作します。
2) PHP から呼び出すと、エラーが発生します。このコンソール アプリを php から呼び出すと、システム ユーザーで実行されることに気付きました。そのため、システムとして実行するように Outlook を作成しましたが、それでもこのエラーが発生します。私はApacheサーバーを実行しています。
System.Runtime.InteropServices.COMException (0x80004004): Microsoft.Office.Interop.Outlook._MailItem.get_Recipients() で SyncEmail.Program.sendMailUsingOutlook(String recipient, String body, D:\NotEncrypted\Projects\SyncEmail\SyncEmail\Program.cs:line 121 の文字列 subject)
髪を伸ばして色々見てます。どんな助けでも大歓迎です。私の投稿を読んでくれてありがとう。
一部の人がphpを使用すると言った後、私はphpルートに行き、このコードを書いて同じエラーを取得することにしました。
if (!defined(‘olMailItem’)) define(“olMailItem”,0);
$objApp = new COM(“Outlook.Application”);
$myItem = $objApp->CreateItem(olMailItem);
$myItem->To=’xxxx@xxx.com’;
$myItem->SentOnBehalfOfName = ‘yyy@xxyyx.com’;
$myItem->Subject=”This is a test”;
$myItem->Body=”This is a Body Section now…..!”;
$myItem->Send();
このエラーが発生します
致命的なエラー: D:\NotEncrypted\xampp\htdocs\copper\system\modules\projects\index.php 行 11251 ( ! ) com_exception: エラー [0x80004004] Operation aborted in D:\ NotEncrypted\xampp\htdocs\copper\system\modules\projects\index.php 行 11251