I still maintain many old VB6 applications, a few of them are ActiveX Dll that Implements IDTExtensibility2
.
Today I opened one of them on Windows 10, tried to run it, and the line Implements IDTExtensibility2
was highlighted and the message "Compile error: Automation type not supported in Visual Basic" appeared.
I created a VirtualBox with Windows 7, installed VB6, and the same project works without problems.
I had Windows 10 for many months now and i'ts unlikely that I never opened any of the old the ActiveX Dll projects, but I don't remember if I did. My feeling is that I did, it was working and it has been broken recently, but I'm not sure because they are old projects and I open them very seldom for minimal maintenance.
Unfortunately I still need to maintain those antiques. Do I need to do the maintenance in the Windows 7 virtual machine? Or do I have a chance to get it to work in Windows 10?
I finally found the solution: I had the wrong version of the service pack 6 installed.
Installing the correct version it solved the problem, and now I can finally (and sadly) use VB6 on Windows 10.
The correct version can be downloaded from here: https://www.microsoft.com/en-us/download/confirmation.aspx?id=7030
EDIT
When Microsoft pushes an update the problem pops up again. Trying to re-install the service pack fails showing a message about a phantom network folder.
In order to fix the problem after a Windows update right click on the file downloaded from the link above, uninstall, then double click on it to re-install, and all is good until the next Windows update.