vb6 nostalgia trip

This commit is contained in:
Wouter Groeneveld 2022-10-19 21:32:57 +02:00
parent 5e272f8188
commit 1dc3c51da7
1 changed files with 10 additions and 9 deletions

View File

@ -11,7 +11,9 @@ Something I've been pondering on lately: do you preserve your _very old_ creatio
I happen to be someone who neatly archives---which used to be the term when one creates simple zipfiles instead of going fancy and employing some kind of source control repository. I still have code of high school programming projects and even before that, the stuff I used to dabble in to discover the world of programming, really.
For me, that was just after the release of Windows 95 and the very first Visual Studio release ever: VS '97. That was nothing more than a bundling of separated IDEs: Visual C++, Visual FoxPro, and Visual Basic. Most of my "serious" programming happened on VB5 and later, when migrating to Win98 and VS 6.0, VB6. Time to dust off some 24 year old zipfiles and take a look whether or not that stuff still compiles---on [time period correct hardware](/post/2020/10/building-an-athlon-win98-retro-pc), of course!
For me, that was just after the release of Windows 95 and the very first Visual Studio release ever: VS '97. That was nothing more than a bundling of separated IDEs: Visual C++, Visual FoxPro, and Visual Basic. Most of my "serious"---the connotation of that term unfortunately shifts as one gets older---programming happened on VB5 and later, when migrating to Win98 and VS 6.0, VB6. Time to dust off some 24 year old zipfiles and take a look whether or not that stuff still compiles---on [time period correct hardware](/post/2020/10/building-an-athlon-win98-retro-pc), of course!
_Take more screenshots!_ they said. Sure, I said.
![](../vs6install.jpg "Next Gen, here I come.")
@ -21,13 +23,13 @@ A few minutes later, it's time to try to load an old project:
![](../vb6autounpacksplash.jpg "Woah, that still works?!")
Remember that time when splash screens where popular---so popular that every small piece of software ever released included them even though it wasn't loading anything? I just used a timer and triggered a `FrmMain.Show` after a few seconds.
Remember that time when splash screens where popular---so popular that every small piece of software ever released included them even though it wasn't loading anything? I just used a timer and triggered a `FrmMain.Show` after a few seconds to fool people into thinking it was doing honest DLL loading work.
By the way, did you see what I did there? If you're a fan of _Windows Plus! Themes_, I'm sure you have. I decided to revert to the boring default theme to better focus on the hand crafted software in the screenshots, so expect a lot of gray pixels when reading further on.
**AutoUnpack** was software to automatically unzip/unace/unrar multipart archive files. It existed at a time when early versions of WinAce didn't yet support that. Remember WinAce? Having to extract each part separately? It probably also had something to do with downloading shady versions of software through newsgroups.
**AutoUnpack** was software to automatically unzip/unace/unrar multipart archive files. It existed at a time when early versions of WinAce didn't yet support that. Remember [WinAce](https://archive.org/details/tucows_194310_Winace)? Having to extract each part separately? It probably also had something to do with downloading shady versions of software through newsgroups.
My software was installed through a custom-made "installer" a-la InstallShield (another awesome nostalgia piece):
My software was installed through a custom-made "installer" a-la InstallShield (another awesome nostalgia piece) that came with a wizard and even supported template variables like `$ProgrName$`:
![](../vb6autoupdate.jpg "The AutoUpdate install compiler.")
@ -36,7 +38,7 @@ I called that the **InstallCompiler**, and I even developed an ActiveX component
Of course, taking a peek under the hood is best to be avoided:
```vb
If mFTP.OpenConnection("users.skynet.be", "someusername, "somepassword") Then
If mFTP.OpenConnection("users.skynet.be", "bk01234567, "somepassword") Then
mFTP.SetFTPDirectory "/updates/" & Mid(strProgToUpdate, 1, 6)
LblInfo(0).Caption = "Versie-informatiecontrole..."
End If
@ -56,7 +58,7 @@ Which comes from [the wininet.h FTP/HTTP session call](https://learn.microsoft.c
Here's another tool called **DirPrinter**. It... prints the contents of a dir in a `.txt` file. Recursively, mind you! Wow!
Another lovely touch: I made sure to include a carefully designed _About_ dialog in each tool. I even envisioned to own a software design company called _aWhile Software_. Yeah, indeed, what was I thinking? "Hi I'd like some software for this or that, when is it going to be finished?" to which I then respond "oh, sure, aWhile."
Another lovely touch: I made sure to include a carefully designed _About_ dialog in each tool. I even envisioned to own a software design company called _aWhile Software_ including the green logo you must have noticed by now. Yeah, indeed, what was I thinking? "Hi I'd like some software for this or that, when is it going to be finished?" to which I'd then respond "oh, uh, I don't know, aWhile?"
Back then I even worked together with another guy, who had this site called `vbwereld.nl`, and together we formed the conglomerate "\[deep\] software".
@ -64,7 +66,7 @@ Back then I even worked together with another guy, who had this site called `vbw
The next piece I tried is apparently called **PWLEncoder**---the splash screen kind of screamed it, which I all made in early versions of Photoshop. For some of those, I still have the source `.psd` files.
PWLEncoder unfortunately does _not_ what it says on the tin: when attempting to encode a `.txt` message, it scrambles the first character, says it's done, and when decoding, crashes.
PWLEncoder unfortunately does _not_ do what it says on the tin: when attempting to encode a `.txt` message, it scrambles the first character, says it's done, and when decoding, crashes.
But! By looking at the error dialog and source code, I even developed general error catch-all modules that were supposed be informative and to help the customer get in touch with me.
@ -80,7 +82,6 @@ Another major rookie mistake: `#include <C:\fullpath\whoops.h>` doesn't work tha
---
Well that was fun. It's very satisfying to see your old stuff still working, especially on "real" hardware from back in the day. Although I didn't feel the immediate urge to start a new VB6 project, I love this kind of stuff. It somehow feels like my younger self was more imaginative and hands-on than my current self. Perhaps that's because of the joyful naivety that inevitably wanes. Nostalgia trips such as these help me ground myself and remind me that now and then I should just fool around and create stuff _because I can_ and _because I want to_.
Well, that was fun. It's very satisfying to see your old stuff still working, especially on "real" hardware from back in the day. Although I didn't feel the immediate urge to start a new VB6 project, I love this kind of stuff. It somehow feels like my younger self was more imaginative and hands-on than my current self. Perhaps that's because of the joyful naivety that inevitably wanes. Nostalgia trips such as these help me ground myself and remind me that now and then I should just fool around and create stuff _because I can_ and _because I want to_.
The silly kind of stuff that's fun to create, not that someone else says I should create or get paid to do so.