Error Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)) - visual-studio-2010

I have an error with my mvc3 application.
In my application I have a reference to a vb6 DLL which is a dll of another program.
When I debug my application with VisualStudio server developpement all is ok but I tried to deploy it in IIS7.5
I changed in the properties of my application the server and I chose local IIS webServer. (I didn't change the properties of IIS since the installation).
And when I try to debug my application I have an error when instanciating my dll :
Retrieving the COM class factory for component with CLSID .... Class not registered
This dll was registered with regsvr32.
The same application was deploy on a server with windows server 2003 and IIS6 and it works correctly.
If anybody have an idea ?
Thanks

If the COM component is 32bit you will have to enable 32 bit applications in IIS:

Related

Is it possible to debug a .NET application that is deployed to IIS on my local machine?

I have incorporated Azure authentication in to a .NET application on my local development machine. When I debug/run the application in Visual Studio the app runs just fine.
I have deployed the application to IIS on my local development machine and have configured a new site binding of type HTTPS which uses an SSL certificate that I have created locally and added to my "Trusted Root Certification Authorities" store. When I try to browse the application through IIS, I get a generic error message that is generated by the Application_Error method in my global.asax.cs file.
Is it possible for me to use a debugger to "step through" code that has been actually deployed in IIS? I think that I have found MSDN documentation that describes doing this for a .NET Core application (https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/development-time-iis-support?view=aspnetcore-2.1) but I my app is written in .NET 4.8 so I don't think it applies for me.
To debug an ASP.NET application that has been deployed to IIS, install and run the remote tools on the computer where you deployed your app, and then attach to your running app from Visual Studio.
For more information about "Remote Debug ASP.NET on a Remote IIS Computer", you can refer to this link.

Delphi Rio application doesn't start on Windows 2003 Server (Missing d2d1.dll)

Since the Delphi Rio 10.3.3 update (before: Delphi Seattle) my application has not been started on a Windows 2003 server.
Error message like: The application could not be started because d2d1.dll was not found. Reinstalling the application can fix the problem.
I have copied the file d2d1.dll from my PC to the Windows 2003 Server. The following error message appears: The application or DLL d2d1.dll is not a valid Windows file. Check this with the installation chain.
Then I tried to register the DLL via CMD as follows: regscr32 / i d2d1.dll
Error message: d2d1.dll is not an executable file and is not a registration tool that is registered for this file type.
Any ideas? (I know that Windows 2003 Server is very old and nasty but I need any solution)
EDIT: A simple Hello World Application works.

Microsoft Office Interop dll fails when application is deployed on server

I have used Excel and Powerpoint Interop Dlls in my web application, they run fine on local machine. However when I deploy it on IIS the application breaks giving following error
Retrieving the COM class factory for component with CLSID {00020820-0000-0000-C000-000000000046} failed due to the follo
wing error: 80040154.
Make sure of following things when dealing with applications using MS Office Interop Dlls delpoyed on server
Your application pool needs to run under a user account who has full permission to Interop Dlls
It would also be essential to intsall MS Office on your server

Catastrophic failure on IIS Web Service when calling a COM method

Maybe the worst type of error message that one can see. Does not mean anything, may be related to everything...
I try to create a web service (WS) on IIS 7.5 (I have initially tried WCF services but same story)
The WS uses a COM DLL which is successfully registered and the COM security permissions are given.
When I run the WS using Visual Studio Development Server everything is fine, I get the results as requested. But when I try to deploy the WS to IIS, I end up with
System.Runtime.InteropServices.COMException: Catastrophic failure
My computer has Windows Server 2008 R2 Standard, x64.
I have to emphasize: I develop (using Visual Studio 2010 Ultimate), test (using Visual Studio Development Server) and deploy (using IIS 7.5) on the same computer.
I was thinking that the problem might be related to 32-64 bit incompatibilities, as my COM is supporting 32 bits. Therefore, I changed the application pool settings to enable 32 bit applications, changed the platform target to x86 in Visual Studio, redeployed the WS, none of these helped.
My question is:
How can a WS successfully run on VS Development Server but fail on IIS? What else shall I change in IIS settings?
It really helps to consult the producer of the COM DLL. They have given a clear installation procedure for the DLL, that I have somehow omitted.
Moral of the story: Although your web service or web site operates successfully under Visual Studio Development Server, this does not necessarily mean that you have configured all settings for the COM DLL correctly.
You can start checking the following issues:
Register the COM DLL
Check configuration settings using dcomcnfg
If your DLL does not appear in dcomcnfg lists, then probably you did not register it correctly. Some registry editor entries are probably missing.
Check your IIS application pool settings
You may need to impersonate in web.config
Check the event viewer. It might include some important clues
In my case, I was playing with all of these items, but never in the correct sequence. Finally the help from the producer has arrived which was showing the correct path.

"The specified module could not be found" asp.net mvc app on IIS 7, windows server 2008

We have an ASP.NET MVC application working on a 32bit Windows Server 2003 with IIS 6.
After deploying it on a 64bit Windows Server 2008 R2 with IIS 7.5 it stopped working. We get the following error:
"Could not load file or assembly '###.dll' or one of its dependencies. The specified module could not be found"
The dll is a 3rd party dll, and we can not re-compile it.
We tried putting it in every possible directory but nothing helped. It appears in the Fusion log and the last line of this files log contains "IL assembly loaded from C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary .....".
The application pool runs in Integrated mode and "Enable 32-bit applications" is set to True.
Any help would be appreciated.
Thank you,
Katie D.
Do you have MVC3 installed? It is a separate install.
Maybe check your 3rd party dll with a tool like reflector to see what it relies on.

Resources