отправка почты Outlook 2010 с использованием PHP

0

Уже добавлено:

[COM_DOT_NET]

расширение = php_com_dotnet.dll

в конце файла php.inI

Это код, который я использую:

    if (!defined("olMailItem")) define("olMailItem",0); 

    $objApp = new COM ( "Outlook.Application" ) or die ( "Cannot Load Outlook.Application" );
    $namespace = $objApp->GetNamespace("MAPI");  // or MAPI.Session
    $namespace->Logon();

    $myItem = $objApp->CreateItem (olMailItem);
    $myItem->To = $email;
    $myItem->SentOnBehalfOfName = "[email protected]";
    $myItem->Subject = "Notification: application form submitted successfully.";
    $myItem->Body ="Hi " . $realname .",
    You have successfully submitted the applicant form for (".$firstname." , ".$lastname.")
The application has been sent to the respective managers for approval.


    Thank you,
    Applicant Portal";  
    $myItem->Send ();

Полная ошибка msg:

Неустранимая ошибка: Не удалось исключить "com_exception" с сообщением "Не удалось создать COM-объект" Outlook.Application ": доступ запрещен. 'в C:\inetpub\wwwroot\doForm.php: 268 Трассировка стека: # 0 C:\inetpub\wwwroot\doForm.php(268): com-> com (' Outlook.Applica... ') # 1 {main} выбрано в C:\inetpub\wwwroot\doForm.php в строке 268

Теги:
outlook

2 ответа

0

Я искал обходной путь в течение двух дней подряд. Мое приложение отлично работало, и вдруг я наткнулся на то же исключение.

Проблема заключалась в том, что Outlook и мой сервер Apache выполнялись под разными правами (один - как пользователь, другой - администратор). Я побежал и как пользователь, и все вернулось к норме.

  • 0
    Не используйте Outlook в службе. Просто не надо. Это гарантированно рано или поздно провалится.
0

Автоматизация Outlook с PHP - это не очень хорошая идея. В соображениях для статьи " Автоматизация Office" на стороне сервера указано следующее:

Microsoft в настоящее время не рекомендует и не поддерживает автоматизацию приложений Microsoft Office от любого бездействия, неинтерактивного клиентского приложения или компонента (включая ASP, ASP.NET, DCOM и NT Services), поскольку Office может проявлять нестабильное поведение и/или тупиковой ситуации, когда Office запущен в этой среде.

Как вы можете видеть, такой способ автоматизации Outlook не поддерживается.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню