PHP 组件对象模型“访问被拒绝”

2024-03-17

我的开发环境是PHP 5.3、IIS 7.5、Window7 Home。我正在开发一个原型应用程序,它需要 PHP 函数 imagewindowgrab()。该函数需要调用Windows组件对象模型(COM)。

我的单行代码是这样的:


$browser = new COM("InternetExplorer.Application") or die("Unable to instantiate IE");

它产生了以下错误:


Fatal error: Uncaught exception 'com_exception' with message 
'Failed to create COM object `InternetExplorer.Application': Access is denied. ' 
in C:\inetpub\wwwroot\trial.php:8 Stack trace: #0 C:\inetpub\wwwroot\trial.php(8): com->com('InternetExplore...') #1 {main} thrown 
in C:\inetpub\wwwroot\trial.php on line 8

经过几个小时的搜索、浏览 .NET 论坛并找到了好的资源:

  • http://forums.asp.net/t/1680634.aspx/1 http://forums.asp.net/t/1680634.aspx/1
  • http://learn.iis.net/page.aspx/624/application-pool-identities/ http://learn.iis.net/page.aspx/624/application-pool-identities/

最终对我有用的是遵循这个问题的答案中概述的说明:
通过 asp.net 访问 Office Word 对象模型会导致“由于以下错误而失败:80070005 访问被拒绝”。 https://stackoverflow.com/questions/3477086/accessing-office-word-object-model-through-asp-net-results-in-failed-due-to-the

并按照这些说明执行以下操作:

  1. 在命令行输入DCOMCNFG
  2. 单击控制台右键根 > 组件服务 > 计算机 > 我的电脑并选择特性
  3. 在选项卡上COM 安全 > 访问权限点击编辑默认值并添加用户(例如IIS_IUSRS)或服务
  4. 勾选允许本地访问

这似乎已经解决了我使用 PHP 的 COM 框架的访问权限问题。


这个问题似乎没有答案,但答案已经在问题中自我解释。 我只是放在这里:-

尝试过的代码:-

$browser = new COM("InternetExplorer.Application") or die("Unable to instantiate IE");

生成错误:-

Fatal error: Uncaught exception 'com_exception' with message 
'Failed to create COM object `InternetExplorer.Application': Access is denied. ' 
in C:\inetpub\wwwroot\trial.php:8 Stack trace: #0 C:\inetpub\wwwroot\trial.php(8): com->com('InternetExplore...') #1 {main} thrown 
in C:\inetpub\wwwroot\trial.php on line 8

有助于解决问题的步骤和资源:-

好资源:-

http://forums.asp.net/t/1680634.aspx/1 http://forums.asp.net/t/1680634.aspx/1

http://learn.iis.net/page.aspx/624/application-pool-identities/ http://learn.iis.net/page.aspx/624/application-pool-identities/

真正有助于解决问题的资源:-

通过 asp.net 访问 Office Word 对象模型会导致“由于以下错误而失败:80070005 访问被拒绝”。 https://stackoverflow.com/questions/3477086/accessing-office-word-object-model-through-asp-net-results-in-failed-due-to-the

Steps :-

  1. 打开命令提示符窗口并键入DCOMCNFG打开组件服务界面。
  2. Expand 控制台根目录 > 组件服务 > 电脑并右键单击我的电脑,并选择特性
  3. 在选项卡中通讯安全 > 访问权限点击编辑默认值添加用户(例如 IIS_IUSRS)或服务
  4. Check Allow for 本地访问

注意:注意 PHP 中 COM 框架的访问权限问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 组件对象模型“访问被拒绝” 的相关文章

随机推荐

  • .sql 文件的存储过程

    SQL 2005 中是否有一个简单的过程可以将我的所有存储过程吐出到单独的 sql 文件中 我想将它们转移到 VSS 中 但我对单击每个文件获取源代码 将其转储到文本文件等的前景感到不太兴奋 在 SQL Management Studio
  • DocuSign 嵌入签名 returnUrl 长度限制?

    在处理 DocuSign 嵌入式签名流程 过去曾有效 时 我注意到在签署文档后 我被发送回的 returnUrl 中缺少 event 参数 returnUrl 看起来像 http www example com index php para
  • 什么是 Android 的 Smali 代码

    我将学习一些有关 Dalvik VM dex 和 Smali 的知识 我已经阅读过有关 smali 的内容 但仍然无法清楚地了解它在编译器链中的位置 以及它的目的是什么 这里有一些问题 据我所知 dalvik 与其他虚拟机一样运行字节码 对
  • Neo4J - 存储到关系与节点中

    我想知道将数据存储到关系或节点中是否有任何优点或缺点 例如 如果我要将与讨论相关的评论存储到数据库中 我应该将评论数据存储在 评论 关系中 还是通过单独的关系存储在与讨论相关的 评论 节点中 正确的数据模型取决于您需要进行的查询类型 您应该
  • 设计时和运行时的 WPF 数据上下文

    我正在学习 WPF MVVM Light 和 ViewModelLocator 模式 但在主窗口的数据上下文方面遇到了困难 public class ViewModelLocator public ViewModelLocator var
  • 将 C++ 类的定义放入头文件中是一个好习惯吗?

    当我们用 Java Vala 或 C 设计类时 我们将定义和声明放在同一个源文件中 但在 C 中 传统上首选将定义和声明分开在两个或多个文件中 如果我只使用一个头文件并将所有内容都放入其中 就像 Java 一样 会发生什么 是否有性能损失或
  • OS X:如何获取 macOS 上桌面目录的路径?

    如何在 macOS 上以字符串形式获取桌面目录的文件路径 我需要用纯 C 或一些 C 级框架来完成它 这是一个简短的函数 它适用于更多基于 Unix 的系统 而不仅仅是 macOS 并返回current用户的桌面文件夹 include
  • create-react-app 显示了我在生产中的所有代码,如何隐藏它?

    在我的 chrome 源选项卡中 我可以按确切的文件夹位置查看所有文件 我怎样才能隐藏它们 这些不是我之前项目中的问题 该项目是在没有使用 create react app 的情况下制作的 根据create react app 这似乎是正确
  • 下拉菜单推开下面的 div

    当鼠标悬停在菜单上时 子菜单会 拒绝 下一个 div 如何将 div 固定在下面的位置 这是我的代码 box sizing border box body font family Helvetica Neue Helvetica Arial
  • 根据 MySQL 中的半径合并边界框内的长/纬度点

    这是我基本上想要实现的目标的图片 因此 正如标题所说 我想合并长 纬度点 它们的半径 例如 25 公里 触摸长 纬度点的边界框内 这是我非常简单的数据库结构 id long lat 1 90 27137 50 00702 2 92 2713
  • 字段初始化中未处理的异常

    Java 是否有任何语法来管理声明和初始化类的成员变量时可能引发的异常 public class MyClass Doesn t compile because constructor can throw IOException priva
  • Gitlab CI 同时在多个平台上运行

    我有一个针对多个操作系统 Linux Windows MacOS 以及多个 CPU 架构 i386 x86 64 arm Aarch64 编译和打包的 C 项目 为此 我使用 Jenkins 获取源代码并在每个系统上并行运行构建脚本 这是一
  • 在 DateTimePicker 中输入数据时移动到以下日期部分

    我有一个用户请求 我正在尝试满足 我能想到的最简单的解释方法是使用图片进行说明 Essentially the user is typing a ton of dates in Instead of typing the MM 反斜杠 或右
  • 如何在golang中使用LDFLAGS的相对路径

    我正在尝试构建一个使用静态库 a 文件 的 golang 程序 我的项目的目录结构如下 testserver bin pkg src logging testserver libtest a test go test go 中 cgo 的标
  • Laravel 4:使用数据在布局内嵌套视图

    我正在编写一个简单的应用程序 仅依赖于一些路线和视图 我已经设置了总体布局并使用以下内容成功嵌套了模板 路线 php View name layouts master master layout View of master Route g
  • 使用 INDEX-MATCH 进行多个非精确标准的查找 - 查找最符合条件的最近值时出现问题

    我正在尝试使用 INDEX MATCH 使用多个非精确条件进行查找 形式如下 索引 C314 C318 匹配 1 D314 D318 gt G313 E314 E318 gt G314 0 标准是 大于或等于金额 X 公式工作正常 但是当使
  • Flutter 提供的字体系列的完整列表?

    在 Flutter 中 我们可以使用 TextStyle 为文本提供所需的 fontFamily 属性 虽然某些 fontFamily 名称很明显并且确实有效 例如 Arial Courier Times 等 但可用选项的完整列表在哪里 文
  • Flickr 如何阻止人们从该网站下载图像?

    只是想知道 Flickr 如何阻止人们从其网站下载图像 他们用什么 图像上的透明 gif 您仍然可以通过查看 HTML 源并找到图像的实际 URL 来下载实际图像 例如 随机图像 http www flickr com photos 342
  • 同步与 ReadWriteLock 性能

    我试图证明当有很多读者而只有一些作者时同步会更慢 不知怎的 我证明了相反的情况 以 RW 为例 执行时间为 313 ms package zad3readWriteLockPerformance import java util Array
  • PHP 组件对象模型“访问被拒绝”

    我的开发环境是PHP 5 3 IIS 7 5 Window7 Home 我正在开发一个原型应用程序 它需要 PHP 函数 imagewindowgrab 该函数需要调用Windows组件对象模型 COM 我的单行代码是这样的 browser