Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed(转)
2011-12-02 17:51
645 查看
if you add a reference to Microsoft Excel and then try to use it within your ASP.NET application you may receive the following error.
Server Error in '/excel' Application.
Retrieving the COM class factory for
component with CLSID {00024500-0000-0000-C000-000000000046} failed due
to the following error: 80070005.
The problem is that by default Microsoft Excel as a COM object can only activated by the following accounts:
Administrator
System
Interactive
When you are running your ASP.Net account on Windows XP your web application is running as the ASPNET account.
The way to resolve this issue is to edit the DCOM configuration settings for the Microsoft Excel Application object.
Type in "DCOMCNFG" and hit enter.
This should load the "Component Services" MMC (you can also load from Administrative Tools - Component Services"
Expand "Component Services"
Expand "Computers"
Expand "My Computer"
Select the "DCOM Config" item
Select the "Microsoft Excel Application" item.
Right click and select Properties
Select the Security Tab and you should see the following:
Under "Launch and Activation Permissions" select the "Customize" option.
Click the "Edit" button
Click the "Add" button to add a new account to the list.
On the dialog that is displayed click the Locations button
(this is because by default your domain will be selected and we need a local account)
In this dialog scroll the list to the top (sometimes the first item is not visible) but scroll to the top and select the first item which is your computer name. In the list below "CCROWE" is the name of my computer.
Click the OK button
On the dialog that is displayed enter "ASPNET" as the account name (make sure location is set to the name of the computer that IIS is on) on Windows XP or if you are running on Windows 2003 Server you must enter the account that the Application Pool is running as, by default "Network Service"
Click the OK button
Now make sure you select the following options for the "ASP.NET Machine Account" or the account that is the application pool identity ( by default Network Service)
Local Launch : Allow
Remote Launch : [blank]
Local Activation : Allow
Remote Activation : [blank]
These settings can be seen below:
Click the OK button and test your web application again and it should work fine.
Note: Remember if you are running on
Windows 2003 Server you must use the application pool identity as the
account and not the ASPNET account.
原文:http://blog.crowe.co.nz/archive/2006/03/02/589.aspx
Server Error in '/excel' Application.
Retrieving the COM class factory for
component with CLSID {00024500-0000-0000-C000-000000000046} failed due
to the following error: 80070005.
Example Application
The problem is that by default Microsoft Excel as a COM object can only activated by the following accounts:
Administrator
System
Interactive
When you are running your ASP.Net account on Windows XP your web application is running as the ASPNET account.
The way to resolve this issue is to edit the DCOM configuration settings for the Microsoft Excel Application object.
Configure DCOM
Go to the Start-Run menu item.Type in "DCOMCNFG" and hit enter.
This should load the "Component Services" MMC (you can also load from Administrative Tools - Component Services"
Expand "Component Services"
Expand "Computers"
Expand "My Computer"
Select the "DCOM Config" item
Select the "Microsoft Excel Application" item.
Right click and select Properties
Select the Security Tab and you should see the following:
Under "Launch and Activation Permissions" select the "Customize" option.
Click the "Edit" button
Windows XP | Windows 2003 Server | |
On the dialog that is displayed click the Locations button
(this is because by default your domain will be selected and we need a local account)
In this dialog scroll the list to the top (sometimes the first item is not visible) but scroll to the top and select the first item which is your computer name. In the list below "CCROWE" is the name of my computer.
Click the OK button
On the dialog that is displayed enter "ASPNET" as the account name (make sure location is set to the name of the computer that IIS is on) on Windows XP or if you are running on Windows 2003 Server you must enter the account that the Application Pool is running as, by default "Network Service"
Windows XP | Windows 2003 Server | |
Note: A quicker way on Windows XP is to just enter the computer name and the account so in my case that would be: ccrowe\ASPNET |
Now make sure you select the following options for the "ASP.NET Machine Account" or the account that is the application pool identity ( by default Network Service)
Local Launch : Allow
Remote Launch : [blank]
Local Activation : Allow
Remote Activation : [blank]
These settings can be seen below:
Windows XP | Windows 2003 Server | |
Note: Remember if you are running on
Windows 2003 Server you must use the application pool identity as the
account and not the ASPNET account.
原文:http://blog.crowe.co.nz/archive/2006/03/02/589.aspx
相关文章推荐
- Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005.
- Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005
- 异常:Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005 拒绝访问
- Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005
- Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005.
- Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005.
- C# Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005
- Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046}
- Retrieving the COM class factory for component with CLSID {0006F03A-0000-0000-C000-000000000046} failed due to the following error: 80080005
- 异常:Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046}
- 【Excel】Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046}:
- COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005.
- office2010 x64 Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 800
- Retrieving the COM class factory for component with CLSID {0002E55D-0000-0000-C000-000000000046} failed due to the following err
- 关于Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 80070005的解决办法
- COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005.(转载)
- 部署到服务器后,导出Excel发生错误Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046}
- Retrieving the COM class factory for component with CLSID {00024500-0000-000 .
- 【Excel】Retrieving the COM class factory for component with CLSID {00024500-0000-0000- C000-000000000046}:
- Retrieving the COM class factory for component with CLSID {00024500-0000-000