This page contains information on the Microsoft Visual Basic 6 integrated development environment. Information on how to install this legacy IDE on modern Windows versions, where to get the latest supported ActiveX controls and some of my software projects will be listed here.
About Visual Basic 6
VB6 is depreciated these days, but still useful for many small projects. Microsoft has committed to supporting the ActiveX controls it uses through at least Windows 11, so it is safe to use VB6 programs. The most current version of VB6 is Service Pack 6, and will be referred to here as VB6SP6.
The latest version of the ActiveX controls provided by Microsoft are located here and generally show a version of x.x.98 (98 in the third position). You want to install the KB2708437 update to upgrade your ActiveX controls to the latest version with all the current security fixes. After doing that, if you are developing VB6 programs and re-distributing them, you should get a copy of the updated ActiveX controls your application uses from your development system and re-distribute them with your application's installer (don't forget to register them as servers). FYI I prefer the NSIS installer and will include a couple sample NSIS installer scripts that work well with installing/uninstalling VB6 applications.
Installing VB6 on Windows 7/8/10/11
Installing VB6 on a modern Windows system takes some extra steps as the software was written for Windows 98 and Windows XP. But contrary to what you might read, it can be done easily and it works quite well. Obviously you have to start with a licensed copy of Visual Basic 6 and a license key to proceed. You can usually find one on eBay.
Here is an install procedure that works well for me:
1. You need to make sure MSJAVA.DLL exists in the Windows\system32 (x86) or Windows\SystemWOW64 (x64) folder. If it does not, download it here and copy it to the appropriate folder.
2. Copy the install files to a folder on the desktop. Do not install directly from the CDROM.
3. Open the install folder on the desktop, navigate to the setup folder, and change compatibility settings for acmsetup.exe to XP SP2 and check the Run as Administrator box.
4. Start the install by running setup.exe, ignore the windows blocking error and select Custom install.
5. Click Data Access, Change Option, and unselect ADO, RDS and OLE DB Drivers and click OK twice (ignoring the error message and exiting).
6. Click Continue to start the install.
7. You should get a clean install at this point. If you do not, go back and review the above. Restart windows when prompted. YOU MUST GET A CLEAN INSTALL TO PROCEED TO INSTALLING SERVICE PACK 6.
8. After the reboot, setup will continue.
9. It is not necessary to install and MSDN files, so uncheck that unless you really want the MSDN samples and click Next. The samples do contain some useful stuff such as vbterm. These files will be found in the C:\Program Files (x86)\Microsoft Visual Studio\MSDN98\98VSa\1033\Samples\VB98 folder.
10. Click Next again (do not install backoffice install wizard).
11. Uncheck Register Now and click Finish.
12. You will have to manually copy a desktop shortcut from All Programs, Microsoft Visual Basic 6.0 to the desktop.
13. Change the compatibility settings for this shortcut to XP SP3 and run as administrator.
14. Launch the app and verify the build is 8176 in help about. Once you install SP6 the build will be 9782.
15. Close the app.
16. Go to the SP6 folder you copied to your desktop and set setupsp6.exe to compatibility mode for XP SP2 and run as administrator and run it.
17. Click Continue and install the service pack. YOU MUST GET A CLEAN INSTALL.
18. Run the app and verify the build number changed to 9782
19. Install the KB3096896 security rollup for VB6SP6 which updates all the VB6 controls that had security flaws – this is important! Should change them from version 184.108.40.206 to 220.127.116.11. The old controls will be moved to a backup directory if they are needed for some reason. New controls have a 98 in the third position of their version number, old controls have an 81 in the third position.
20. Run setup.exe on the MSDN library CDROM and add VB6 Documentation and VB6 Samples (if desired)
21. Install HTML Help Workshop htmlhelp.exe (optional, only if you want to make help files for your application, see VB6 Help Files below)
The project section here contains the project source code for some, but of my software projects. These are .zip files that will need to be unzipped to a folder and the project file opened with Microsoft Visual Basic 6.0.
VBTERM - A nice VB6 RS-232 terminal program from the MSDN Samples Folder
Footswitch Connector - Retired and replaced with K3 Remote Connector below.
K3 Remote Connector - VB6 program that allows you to connect a K3 remotely over the internet to N1MM (for remote operation). Supports mumble remote audio, a remote footswitch, a remote VFO and remote CAT frequency display. Two types of VFOs are supported for K3 only, WR9R remote VFO and Contour ShuttlePro or ShuttleXpress. The settings file for Countour ShuttleXpress is located here. Uses Mumble as audio source to and from remote station, using either a public or private mumble server. Connects peer-to-peer or via a cloud connection using K3 Remote Connector Server (below). This connector solves issues where port forwarding is not available at the remote station end (i.e. LTE internet modem) by allowing the networking roles to be reversed and the network server to be at the remote operator end and forward ports there instead of at the remote station. Port forwarding is also solved when using the remote connector server then port forwarding is not required at either end, but is required on the cloud server.
K3 Remote Connector Server - A small server module to be installed on a cloud server to allow K3 Remote Connector Clients to connect as clients without requiring port forwarding at the remote station or remote operator end. Port forwarding is still required on the cloud server.
Meteor Wattmeter - A VB6 program that provides a GUI-based wattmeter and controls for the Meteor VHF Amplifier.
SO2R Focus Control - A VB6 program that lets you remotely control a SO2R box via the OTRSP or MK2R protocols. Supports RS-232 connection locally, or remote connection via the internet (port forwarding unless using SO2R FC Server (below). Allows two simultaneous remote connections to your SO2R box.
SO2R FC Server - A VB6 program that provides a server to listen for two SO2R Focus Control programs to remotely connect over the internet or LAN
VB6 Help Files
VB6 uses the Microsoft .chm (compiled HTML help) file format. To create these files, use a program called HTML Help Workshop (HHW). This is available from various online historical MSDN archives that have it. Microsoft no longer maintains an active download link for this software.
VB6 Software Download
Several of my programs are here for download as installable windows exe's, and a few examples from the VB6 samples and the web have been cleaned up and included here.
PLEASE NOTE - I do not have a code-signing certificate, nor am I going to go through the trouble and expense to get one. As a result, Windows will present you a SmartScreen warning when you try to use the installers below. Please click on More Info, then Run anyway to start the installer.
SO2R Focus Control (more info on this here):
SO2R Focus Control
SO2R FC Server
Footswitch Connector (retired and replaced with K3 Remote Connector below)
K3 Remote Connector
K3 Remote Connector Server
Meteor Wattmeter - this is a program that only works with the Meteor Electronics solid-state VHF 1kw amp, via its RS-232 port:
Meteor Wattmeter 1.5
Last updated 09/25/2023