Môi trường phát triển của tôi là PHP 5.3, IIS 7.5 và Window7 Home. Tôi đang phát triển một ứng dụng mẫu, đòi hỏi hàm PHP imagewindowgrab(). Hàm này yêu cầu gọi mô hình đối tượng thành phần Windows (COM).Mô hình đối tượng thành phần PHP "Truy cập bị từ chối"
dòng duy nhất của tôi mã được điều này:
$browser = new COM("InternetExplorer.Application") or die("Unable to instantiate IE");
Nó tạo ra các lỗi sau:
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
Sau khi tìm kiếm trong nhiều giờ, trolling thông qua diễn đàn .NET, và việc tìm kiếm các nguồn lực tốt:
- http://forums.asp.net/t/1680634.aspx/1
- http://learn.iis.net/page.aspx/624/application-pool-identities/
gì cuối cùng làm việc đối với tôi là theo các hướng dẫn được nêu trong câu trả lời cho câu hỏi này SO:
Accessing Office Word object model through asp.net results in "failed due to the following error: 80070005 Access is denied."
VÀ theo dõi những hướng dẫn như sau:
- Trên dòng lệnh nhập
DCOMCNFG
- Nhấp chuột phải vào Bảng điều khiển Root> Dịch vụ thành phần> Máy tính> Tính toán của tôi r và chọn Thuộc tính
- Trên tab COM Bảo mật> Quyền truy cập nhấp chuột vào Sửa Mặc định và thêm người sử dụng (ví dụ IIS_IUSRS) hoặc dịch vụ
- Kiểm tra cho phép truy cập địa phương
này dường như đã đưa về chăm sóc của các vấn đề truy cập Permission của tôi với khuôn khổ COM từ PHP.
Chào mừng bạn đến với SO! Bạn nên đặt giải pháp của bạn như là một câu trả lời và sau đó chấp nhận nó để làm cho nó rõ ràng hơn. – drew010