Click here to Skip to main content
15,885,216 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I have a couple a VB.2010 Desktop apps that have been running successfully for years on many clients.

One of my customers got a new Windows 10 PC.

He installed Office 2010.

When our program runs it gets the the
000245-0000-0000-C000-000000000046 80040154 class not registered
error.

He then installed Office 365 but it didn't help.

Since the programs where running on his old machine without an issue for years (and on many other systems) I cannot believe it is the code.

So what exactly does Class not registered mean?
How do you registered the class?
What really causes this issue?

Thanks

What I have tried:

Explained above.
Installed Office 365
Posted
Comments
Richard MacCutchan 11-Jan-19 7:35am    
Which version of Excel did you build your application against?
F-ES Sitecore 11-Jan-19 7:42am    
It means a dll the code needed isn't registered on the target PC. Go to a PC where the code works and look the class up in the registry (HKEY_CLASSES_ROOT\CLSID\{....}). Look at the sub keys at that will give you some info about the class\code\dll it is looking for. As Richard suggested it is likely a version problem.

Edit: done this on my own machine;

Assembly: Microsoft.Office.Interop.Excel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71E9BCE111E9429C
RuntimeVersion: v2.0.50727
ZurdoDev 11-Jan-19 8:00am    
Please post as solution.
Richard Deeming 11-Jan-19 9:05am    
Could also be a 32/64-bit issue if the new PC is 64-bit and the application is compiled as "Any CPU".
QuickBooksDev 11-Jan-19 9:15am    
Currently developed on W10, Office 365 2016. The programs have been around for about 10 years and have been developed and worked on many versions of Office/Excel. Have been developing on the Office 2016 for about 1 year.

Searching with RegEdit hangs the system and forces a hard reboot. Viewing an export in Notepad is not the easiest to see what is happening in the registry.

Closest I see is
[HKEY_CLASSES_ROOT\Wow6432Node\Interface\{000214F9-0000-0000-C000-000000000046}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"


The app must be 32bit. Has run on 64/bit excel before.

I exported the classes and cannot find
clsid\{000214F9-0000-0000-C000-000000000046}
in nodepad

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month


CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900