【问题标题】:how to make php Outlook.Application work and send mail?如何使 php Outlook.Application 工作并发送邮件?
【发布时间】:2014-08-15 03:55:36
【问题描述】:
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] 操作中止D:\NotEncrypted\xampp\htdocs\copper\system\modules\projects\index.php 在第 11251 行

感谢cmets和帮助家伙..

【问题讨论】:

    标签: php outlook


    【解决方案1】:

    很可能您的 Outlook 组件服务没有运行

    运行

      Start -> run -> dcomcnfg.exe 
    

    看看有没有

    如果MAPI.Session 可用,您还需要检查您的 Windows 注册表

     Start -> Run -> HKEY_CLASSES_ROOT  -> Outlook.Application -> MAPI.Session 
    

    如果找不到,请使用本教程

    http://www.digiways.com/articles/php/outlook/

    例子

    set_time_limit(10);
    
    if (! defined ( "olMailItem" ))
    {
        define ("olMailItem", 0 );
    }
    
    try {
        $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 = "xxxx@xxx.com";
        $myItem->SentOnBehalfOfName = "yyy@xxyyx.com";
        $myItem->Subject = "This is a test";
        $myItem->Body = "This is a Body Section now…..!";
        $myItem->Send ();
    
    } catch ( Exception $e ) {
        var_dump ( $e->getMessage () );
        debug_print_backtrace ();
    }
    

    希望对你有帮助

    【讨论】:

      【解决方案2】:

      我刚刚从这个页面找到了另一个解决方案:http://forums.devshed.com/php-development-5/php-com-automating-outlook-46167.html

      基本上PHP没有olMailList这样的常量,所以你必须通过值来引用它。因此,要使您当前的脚本正常工作,请更改此行:

      $myItem = $objApp->CreateItem(olMailItem);
      

      到:

      $myItem = $objApp->CreateItem(0);
      

      这很适合我的情况。

      【讨论】:

        猜你喜欢
        • 2013-10-06
        • 1970-01-01
        • 1970-01-01
        • 2013-01-04
        • 1970-01-01
        • 2018-12-02
        • 2011-06-21
        • 2016-02-25
        相关资源
        最近更新 更多