I have a VB6 legacy program which I need to change. I am unable to run the program from the IDE. When I activate one of the forms in the IDE I get an error which refers me to an
If you have "Cannot load control SysInfo; license not found."
This reg fix the problem:
[HKEY_CLASSES_ROOT\Licenses\E32E2733-1BC5-11d0-B8C3-00A0C90DCA10]
@="kmhfimlflmmfpffmsgfmhmimngtghmoflhsg"
One possibility was in Microsoft article kb177799 "License Information for This Component Not Found Error" (also Q177799)
Though the original article is gone, an archive is here and here and relevant text reproduced as follows:
SYMPTOMS
When you try to add a control to a form, the following message may appear:
License information for this component not found. You do not have an appropriate license to use this functionality in the design environment.
CAUSE
When a control is installed for run time use only (such as those installed by an application created with Visual Basic), if the Visual Basic Development Environment is installed onto the same machine afterwards and the existing control is of equal or higher version than that from the CD, the license key for that control is not updated.
RESOLUTION
If the control in question is any of the ones listed below, then find and double-click on the file Vbctrls.reg on the Visual Basic CD-ROM:
AniBtn32.ocx
Gauge32.ocx
Graph32.ocx
Grid32.ocx
KeySta32.ocx
MSOutl32.ocx
Spin32.ocx
Threed32.ocx
This will update the design-time licenses for these controls.
For Visual Basic 5.0, Vbctrls.reg is found in the \Tools\Controls folder. For Visual Basic 6.0, it is found on Disk 1 in the \Common\Tools\Vb\Controls folder, and for Visual Studio 6.0, it is in the same folder of Disk 3.
The Visual Basic 6.0 CD-ROM also contains these files for the Visual Basic 5.0 Custom Controls that were discontinued in Visual Basic 6.0:
Dbgrid.reg
Mschart.reg
If the control in question is not among the controls listed above, please do the following:
Locate Regsvr32.exe on your machine. Note its path.
Locate the offending OCX file(s), usually found in the Windows\System folder...
On the Start menu, click Run.
In the Run dialog box, type the following:
<Path to RegSvr32>\REGSVR32.EXE /u <Path to OCX>\OCXFILE.OCX
For example:
C:\Devstudio\VB\REGSVR32.EXE /u C:\Winnt\System32\COMCTL32.OCX
If you are reinstalling an older version of the control, you should delete/remove the .OCX, .OCA and .DEP files so they will be replaced.
Repeat the previous 3 steps for each offending OCX.
On Control Panel, click Add\Remove Programs.
Select Visual Basic, and click Add\Remove.
Click Reinstall when the options (Add\Remove, Remove All, Reinstall) dialog box appears.
Reapply the latest Visual Studio Service Pack
Another possibility was the Microsoft article Q195353 FILE: VBUSC.EXE Provides Licensing for Discontinued Controls
which is archived here and here.
Key summary: VBUSC.EXE installs the design-time licenses for the controls listed above if Visual Basic is detected on the computer.
The VBUSC program can be downloaded here (still direct from Microsoft).
Original article text was:
SUMMARY
=======
VBUSC.EXE is a file that installs the Design-Time Licenses for ActiveX controls
that shipped with earlier versions of Visual Basic, but are no longer supported
and have been discontinued with the current version.
MORE INFORMATION
================
The following file is available for download from the Microsoft Download
Center:
VBUSC.exe
(http://download.microsoft.com/download/VB60Pro/Install/2/Win98/En-US/VBUSC.exe)
Release Date: August 15, 2000
For additional information about how to download Microsoft Support files, click
the following article number to view the article in the Microsoft Knowledge
Base:
Q119591 How to Obtain Microsoft Support Files from Online Services
Microsoft scanned this file for viruses. Microsoft used the most current
virus-detection software that was available on the date that the file was
posted. The file is stored on secure servers that prevent any unauthorized
changes to the file.
FileName Size
---------------------------------------------------------
VBUSC.EXE 88k
The following controls are no longer supported by Microsoft Visual Basic:
ActiveX Control Name Filename
------------------------------------------------
Desaware Animated Button Control ANIBTN32.OCX
Microhelp Gauge Control GAUGE32.OCX
Pinnacle-BPS Graph Control GRAPH32.EXE
Microsoft Grid Control GRID32.OCX
Microhelp Key State Control KEYSTA32.OCX
Microsoft Outline Control MSOUTL32.OCX
Outrider SpinButton Control SPIN32.OCX
Sheridan 3D Controls THREED32.OCX
The ActiveX controls listed above are no longer supported, but ship with the
Professional and Enterprise Editions of Microsoft Visual Basic for backward
compatibility when upgrading existing projects.
These controls do not ship with the Learning Edition of Microsoft Visual Basic.
For the Professional and Enterprise Editions, the controls are located on the
installation CDs at the following locations:
Microsoft Visual Basic Edition Location
----------------------------------------------------------------------
Professional 6.0 \Common\Tools\VB\Controls
Enterprise 6.0 \Common\Tools\VB\Controls
Visual Studio Professional 6.0 \Common\Tools\VB\Controls (CD2)
Visual Studio Enterprise 6.0 \Common\Tools\VB\Controls (CD3)
Each of these directories contain a README.TXT with instructions on how to
install the controls for design-time use.
NOTE: Using the Learning Edition to upgrade a project developed in an earlier
version of Microsoft Visual Basic might result in licensing problems for these
controls.
The VBUSC.EXE installs the design-time licenses for the controls listed above if
Visual Basic is detected on the computer.
Having come across this question, and tried all the answers without success, I thought I'd add an additional piece of information that solved the issue for me.
The problem appears to be linked to a Windows 7 update pack. A colleague running a slightly out of date version of the OS managed to get our VB6 projects working fine, but my new machine with an up-to-date Win7 install had this problem.
Anyway, the solution is this:
Locate regtlibv12.exe
(it's normally in C:\Windows\Microsoft.NET\Framework\[version]
.. e.g. C:\Windows\Microsoft.NET\Framework\v4.0.30319
if that's what you've got installed)
Run a command prompt as administrator and navigate to that files' location
Execute regtlibv12.exe C:\Windows\SysWOW64\msdatsrc.tlb
for 64bit windows
regtlibv12.exe C:\Windows\System32\msdatsrc.tlb
for 32bit windows.Just had to deal with this in some legacy code. The issue seems to be with controls that were discontinued before vb6. Didn't have the setup disk readily available, so i did a little digging and found an executable that you can download from microsoft.com.
Microsoft had a kb article which addresses this issue: https://jeffpar.github.io/kbarchive/kb/177/Q177799/ (archived copy)
The file VBUSC.exe seems to have fixed it.
The solution that worked for me was to execute the file VBCTRLS.REG on the installation disc (common/tools/VB/controls). It registered the control. I stopped getting the error and I was able to run the program from the IDE