0

A small business here has been using a custom-built program for over 10 years on their Windows 7 32-bit computer. The PC completely died, and so I purchased a new one. I'm trying to transfer the program to the new pc.

My first try was to copy / paste app directory to the new PC. That directory is simply in a folder on the C: drive, with Visual Basic project files and executables. Running it on Windows 10 x64 gave a "mscomctl.ocx not found" error, so I copied those files over from the old drive and regsvr32'd them.

Opening the program now gives the error "Class not registered. Looking for object with CLSID:{00000000010-0000-0010-8000-00AA006D2EA4}". And I'm stuck here.

Trying to simply boot the old Win7 drive on the new computer wouldn't work. I can boot it on a different computer of mine, and I updated it to Windows 10 there. The program still works under Windows 10. But the new computer still won't boot from that drive. I'm guessing it's because the CPU doesn't support a 32-bit OS?

I also tried installing every installed app from the old computer, onto the new computer. That included "Visual C++ 2005 redistributable", Microsoft SQL Server 2005 compact edition, and Visual Studio 6.0. No dice, still the same error as above.

Any other ideas? Thank you!

segers909
  • 19
  • 1
  • 2
    Have you tried looking up the GUID? [I have](https://www.vbforums.com/showthread.php?458327-Clsid-00000010-0000-0010-8000-00aa006d2ea4&p=2815800&viewfull=1#post2815800). – GSerg Aug 29 '21 at 17:18
  • Oh jeez. Don't know how I missed that. Trying it now, thank you. – segers909 Aug 29 '21 at 17:19
  • VB6 is 32-bit so files such as mscomctl.ocx should be in the C:\ Windows \SysWOW64 folder on a 64-bit Windows 10 machine. The "Visual C++2005 redistributable and Microsoft SQL Server 2005 compact edition" have nothing to do with VB6 so wouldn't help. – John Eason Aug 29 '21 at 17:28
  • @JohnEason It is irrelevant where the mscomctl.ocx file physically is as long as regsvr32 registers it properly. Microsoft SQL Server 2005 compact edition may very well be used as the database for the application, Visual Studio 6 contains VB6 as its part so may resolve even more dependencies, and "Visual C++2005 redistributable" is likely required by the SQL Server 2005. – GSerg Aug 29 '21 at 17:31
  • 4
    Your GUID tip lead me to find "dao350.dll", which is in "C:\Program Files\Common Files\Microsoft Shared\DAO". I copied it over, regsvr32'd it, and.. success! Thank you SO much, I spend about 8 hours trying to get this working and now it's fixed in a few minutes. – segers909 Aug 29 '21 at 17:49
  • @Gserg Fair enough. It's where it was installed on my machine when I installed VB6 here. – John Eason Aug 29 '21 at 18:13
  • Someone should summarize these comments as an answer; external references will eventually go dead – StayOnTarget Sep 02 '21 at 11:50

0 Answers0