【发布时间】:2014-09-01 10:10:57
【问题描述】:
我正在尝试使用 PHP 的 COM 接口来查询数据库并根据 Excel 工作簿中的数据创建数据透视表。
我已在本地计算机上配置 DCOM 设置,以授予用户本地访问、本地启动和本地激活权限以及配置权限的完全控制权限。我也尝试了所有三种身份设置。
这是我正在使用的代码:
<?php
$application = new COM("Excel.Application") or die("Unable to load Excel.");
$workbook = $application->Workbooks;
$workbook = $workbook->Add();
$sheet = $workbook->Worksheets(1);
$sheet->Activate();
$application->Quit();
?>
这是我得到的错误:
PHP Fatal error: Uncaught exception 'com_exception' with message 'Unable to lookup `Workbooks': Access is denied.
这与我之前遇到的错误不同,它告诉我我无权访问 Excel COM 对象。设置权限解决了这个问题。
环境是:
- Windows Server 2012 R2
- Excel 2010(64 位)
- PHP 5.5.9(64 位)
【问题讨论】: