i have problem publishing my web application on IIS. i'm using stonefield query tools which using SQProxyWrapper component.
When i publish the page on IIS i got this error:
Exception Details: System.UnauthorizedAccessException: Retrieving the COM class factory for component with CLSID {F83BAE78-C971-4083-B191-64AE6790104E} failed due to the following error: 80070005.
[UnauthorizedAccessException: Retrieving the COM class factory for component with CLSID {F83BAE78-C971-4083-B191-64AE6790104E} failed due to the following error: 80070005.]
SQProxyWrapper.SQProxy..ctor() +26
I believe that the component 'SQProxyWrapper' is blocked. The stonefield query use 2 dll SQProxyWrapper.dll and SFQWrapper.dll . is there anything that i need to do to this 2 dll before publishing the web application to IIS?
I tried to put the whole files and folders security to full access to everyone but no luck I still got the same error.
Related
During a deployment of an update to our Web Service that QuickBooks Web Connector calls, we are not having a bunch of issues related to the Interop.QBFC13.IQBSessionManager. Note our code all works in development environment and has worked in the past on our production server.
We are running on a 64 bit Windows 2016 server, but are running the IIS site for our web service as 32bit and did compile the project as x86 and verified the dlls are x86.
We started with this error, then added the App Pool Identity permission to the registry keys associated with this class Id/
Error message: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.InvalidCastException: Unable to cast COM object of type 'Interop.QBFC13.QBSessionManagerClass' to interface type 'Interop.QBFC13.IQBSessionManager'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{50F59D7F-4E65-45D8-8F19-135F9FE05296}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).
After that, the error message changes from No such interface supported... to Library Not Registered.
Now its giving
System.Runtime.InteropServices.COMException: Could not read key from registry (Exception from HRESULT: 0x80040150 (REGDB_E_READREGDB))
at Interop.QBFC13.IQBSessionManager.CreateMsgSetRequest
But it doesn't state which registry key it is trying to read.
It is always at the same place in our code where the error is triggered:
IMsgSetRequest msgSetRq = sessMgr.CreateMsgSetRequest(qbXMLCountry, (Int16)qbXMLMajorVers, (Int16)qbXMLMinorVers);
We've tried uninstalling, re-installing the QB SDK, QBFC13_0Installer.exe and QBXMLRP2Installer.exe...all with reboots after uninstalling and reinstalling.
Not really the answer to the actual problem, but you can usually figure out permission (and other) issues with registry by using Process Monitor.
The actual problem seemed to have been that IIS APPPool did not have proper rights for the registry key.
My asp.net c# webforms site use the Microsoft.Office.Interop.Word
the project work fine local when i publish it to the server i get this message
Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
Both developer computer and server are 64 bit
I try to put dll on bin folder in server - dosent work.
As I have seen recommended, I am using the Microsoft.web.administration library, specifically the ServerManager.OpenRemote() and manager.ApplicationPools[poolName] code to try and recycle a remote application pool. My code is
var managerTwo = ServerManager.OpenRemote(serverTwo);
var testPoolTwo = managerTwo.ApplicationPools[testPoolName];
However I get the error
{"Retrieving the COM class factory for remote component with CLSID
{2B72133B-3F5B-4602-8952-803546CE3344} from machine wycvwwebd017
failed due to the following error: 80040154 wycvwwebd017."}
It seems this error means that it cannot find the class to load. I have checked in the registry on the remote machine and the clsid definitely exists. Any idea how to troubleshoot why COM cannot find the clsid?
I am in need of read a PPT/X PowerPoint File in C# code and display that in web form as image.
I did it using in VS 2013 C# .NET 4.0 and using dlls, Microsoft.office.interop.powerpoint.dll and Office.DLL.
It is working perfectly fine when running on local machine and working in local machine.
When I publish it on Azure Web Server or in Shared Server IIS,
I am ending up with
*
Error occurred: Retrieving the COM class factory for component with
CLSID {91493441-5A91-11CF-8700-00AA0060263B} failed due to the
following error: 80040154 Class not registered (Exception from
HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
*
I copied both DLLs into BIN folder.
Still no use.
Any idea how can i resolve this!!
Thanks in advance.
Just try enabling the fusion logs, it may be the case that your library is not signed and due to that your are getting this exception. Try disabling the strong name validation using sn -Vr
I have an asp.net hosted in IIS. that uses the Com library "Microsoft Word 14.0 Object Library". I am using this to convert the word Document to HTML, on my machine it works. I have Office 2007 on my machine. but when i try to run my app on the server it gives me the Following error
Retrieving the COM class factory for component with CLSID
{000209FF-0000-0000-C000-000000000046} failed due to the following
error: 80070005 Access is denied. (Exception from HRESULT: 0x80070005
E_ACCESSDENIED)).
i have given all the permissions to the aspnet user and other users full access but this does not work,
From the Start menu, click Run and type Dcomcnfg.exe.
In Component Services, click Console root, expand Component Services, expand Computers, expand My computer,expand DCOMConfig.
Search for Microsoft Word 14.0 Object Library. Click on it.
Right click and select Properties.
On security tab, select Customize in "Launch and Activation" section.
Click edit and add identity of app pool under which you application is running.
Repeat above step for "Access Permission"