Welcome!
Hard to believe it's been over three years since I put up
this new design. I'm afraid the proverbial "dust" still hasn't fully
settled. Wish I had more time to put into this. Hard to get as enthusiastic
as once was possible, I'm afraid, given the horrible destruction done.
Seems that the general consensus is starting to swing, though, back towards
"maybe Classic VB wasn't so bad after all."
VSM has decided
there's enough interest still that, for the time being at any rate, they're
going to revive my old column! There are links to all of them over on the
Articles page, but here's the jumping off point to
them on the VSM site:
Classic VB Corner <<== new Classic VB column!
The code sample offerings have gone under the most redesign
of all. Whereas they used to be listed on a single page for all, you will
now find a descriptive page for each! Unfortunately, it's going to take a bit
more time to get the descriptions updated for all those projects, so I've
copied the old page over for your
reference.
This site is totally devoted to Classic Visual Basic, as millions once knew
and loved it. This is a certifiably .NET-Free zone.

What's New
- July 2, 2009
- Added the HookXP
code sample. This shows how to subclass any window in your process,
using a method built into Windows! Very slick, safe, and incredibly
flexible. Will be featured in upcoming VSM Online column, and will
definitely be enhanced as time goes on. One you'll want to be familiar
with.
- June 24, 2009
- Updated the Console
code sample, adding another demonstration program which modifies system
environment variables. Also, generally re-organized the entire download,
renaming the included projects and modules to make it easier to identify
which was which, and recompiled all samples using VB6.
- June 23, 2009
- Updated the Uptime
code sample, patching a critical error in the MRegCalls.bas file.
If you downloaded this file before this date, please discard and
redownload. The RegDeleteValue function calls the wrong API, as a result
of a hasty cut/paste error, and instead recursively deletes an entire
key. I cannot urge caution here strongly enough, which may be best
illustrated by the fact that this is the first time in the nearly 12
years this site has existed that I've published such a routine. <sigh>
- June 22, 2009
- Updated the DualList
code sample, adding another custom control to the project. The new
ReorderList control contains a standard ListBox and two Command buttons,
offering your user the opportunity to reorder the elements within the
list by moving them up and down.
- May 19, 2009
- Added the StockFont
code sample. Demonstrates a very simple way to use the old-fashioned
block drawing characters by selecting a stock font (one that ships as
part of Windows) into any control.
- May 5, 2009
-
- April 9, 2009
- Added the Uptime
code sample. This shows how to determine when the computer its running
on was last rebooted. Actually two methods. One retrieves the last
proper shutdown time, and the other retrieves the startup time.
- March 31, 2009
- Peter Young has granted permission for me to
host vbAdvance, which is
now freeware. Folks, this is the only add-in that I always
have loaded in my IDE. You really shouldn't be with out it. It's
officially "unsupported," but if you can read the help file and follow
along with the packaged examples, you should get along just fine.
- February 25, 2009
- Decided that all samples that include executables will be
compiled using VB6 from this point onward, as I feel that is the
most ubiquitous ClassicVB runtime out there at this point in time.
- Added the Monitors
code sample. A drop-in ready class and standard module that together offer
access to information about all monitors and display devices connected
to a system.
- Updated the SendInput
code sample. Added support for Unicode characters being embedded within
the sent string, and a trapdoor call to VB's native SendKeys if the
application is running on Windows 95.
- December 21, 2008
- Added the SysFolders
code sample. A drop-in ready class that offers instant discovery of
where all the special system folders are located on the user's machine.
Need to know where the My Music folder is? Here ya go. Need to know
where to stick an INI file? Couldn't be simpler!
- March 28, 2008
- Added the SnapDialog
code sample. A drop-in ready class that uses subclassing to detect when the user is
dragging your form around, and snaps the form to the screen edges when
it's within a preset number of pixels. Supports multiple monitors and
taskbar position.
- February 13, 2008
- Updated the Grabber
code sample. Major clean-up! Removed two of the methods that relied on
subclassing and another that used window styles, as none of these really
worked in XP or Vista. Added a new method that fully supports themed
grab handles in XP and Vista, but also offers the standard grip all the
way back to Windows 95.
- February 7, 2008
- Added the NetGrab
code sample. Drop-in ready UserControl demonstrates how to download
files asynchronously using nothing but native VB5/VB6 code.
Comprehensive Updates List
Odds and Ends
Here are a few offerings you won't find linked to in the main menus on this
site, but that I'd like to make sure you were aware of regardless.
- Hardcore Visual Basic, by Bruce McKinney
- When Microsoft decided to drop Bruce's classic tome from MSDN, I quickly offered to host it here at
MVPs.org and, against what I considered all odds, they agreed. I'm glad we
could save this one, and make it available to everyone from here onward.
More recently, this site assumed the honor of hosting The
End of
Hardcore Visual Basic, a fond farewell to
what was.
-
- Visual Basic 4 How-To
- Several of us put together this little tome in 1994-95, during the
world's longest beta. I don't believe there ever was a fully electronic
copy suitable for online publishing, at least I never encountered one.
While much of the text is now somewhat obsolete, the code may still
contain a few tricks.
-
- Site Statistics
- Call it vain, or whatever. In case you care, here are a few stats taken
over the years. I hope to provide a more up-to-date selection of frequent
downloads once this new site stabilizes.
-
- Those Awful Midis
- Okay, it took three (or more?) years, but I finally rolled out a
new site that isn't a throwback to the 90s. If you actually miss those old
Pink Floyd midi tunes, don't fret! They're still here.
-
Donations
After great agonizing, I have decided to plop a PayPal
Donations button down on the bottom of every page here. The simple truth
is, Visual
Basic Programmer's Journal used to (unwittingly?) finance this site by
commissioning my articles on Classic VB. Sadly, that publication is no longer
with us, and the one that's taken its place isn't much interested in the
programming language you and I still use. So, long story-short, if I've saved
you (or your boss!) a bundle of money with the code you've downloaded from
here, and you're feeling generous (or you have access to the company credit
card!), well, I'm not too proud to let you help me defray the time I spend
building the samples offered here. Thanks!
|