2012-03-05 18 views
9

Mi entorno de desarrollo es PHP 5.3, IIS 7.5 y Windows7 Home. Estoy desarrollando una aplicación prototipo, que requiere la función PHP imagewindowgrab(). Esta función requiere llamar al Modelo de objetos componentes de Windows (COM).Modelo de objetos componentes PHP "Acceso denegado"

Mi línea de código era la siguiente:

 

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

Se produjo el siguiente error:

 

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 
 

Después de buscar durante horas, arrastre a través de foros de .NET, y encontrar buenos recursos:

Lo que finalmente funcionó para mí estaba siguiendo las instrucciones descritas en la respuesta a esta cuestión de forma:
Accessing Office Word object model through asp.net results in "failed due to the following error: 80070005 Access is denied."

y el seguimiento de esas instrucciones con lo siguiente:

  1. Por línea de comando ingrese DCOMCNFG
  2. Haga clic en la derecha en la consola Root> Component Service> Computers> My Compute r y seleccione Propiedades
  3. En la ficha Seguridad COM > Permisos de Acceso clic en Modificar predeterminados y agregue el usuario (por ejemplo, IIS_IUSRS) o servicio
  4. de verificación Permitir acceso local

Esto parece haber tomado el cuidado de mis problemas de permisos de acceso con el marco COM desde PHP.

+5

¡Bienvenido a SO! Debe poner su solución como una respuesta y luego aceptarla para dejarla más clara. – drew010

Respuesta

2

Esta pregunta no tiene respuesta, pero la respuesta se ha explicado por sí misma. sólo estoy poniendo aquí: -

Código intentado: -

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

error generado: -

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 

Pasos y recursos que ayudaron a resolver: -

Buenos recursos: -

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

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

recursos que realmente ayudan a resolver: -

Accessing Office Word object model through asp.net results in "failed due to the following error: 80070005 Access is denied."

pasos: -

  1. En la línea de mando puso DCOMCNFG
  2. click derecho en Raíz de consola> Servicios de componentes> Equipos> Mi PC y seleccione Propiedades
  3. En la ficha Seguridad COM> Permisos de acceso Haga clic en Editar valores predeterminados Añadir al Usuario (Ex. IIS_IUSRS) o servicio
  4. de verificación Permitir acceso local

Nota: ocuparse de los problemas de permisos de acceso con el marco COM desde PHP.

Cuestiones relacionadas