|
Here! Here!
My firm conviction is that all web coding is just black (box) magic. You add some toe of frog and a sprinkle of rose petals (sourced from hopefully a reputable vendor) to a cauldron and pray that a useful potion is brewed without any side-effects. Oh, and if that toe of frog has nail fungus, then that potion is going to give you quite the headache in a few days/months/years down the line.
Bond
Keep all things as simple as possible, but no simpler. -said someone, somewhere
|
|
|
|
|
I just started a new job where they use React and whew. It has been a learning curve. I feel your pain. I haven't gotten to a point yet where I can see that it's worth it, but I keep thinking I will eventually. I mean, if you work with any language long enough you'll grow to like it. right? RIGHT?!?!
|
|
|
|
|
Spent most of my week so far getting an old Visual Basic 6 environment up and running on my Windows 11 laptop.
I've got it running in a VM now (which I got from the original programmer), but that VM has lots of noise and issues and doesn't work very well (it's the result of 20 years of development by someone who still prefers and uses VB6 and DBF), plus switching between VM and laptop is a pain.
The entire project spans some 40 applications, that use about as much components.
We need to replace all these applications one by one, making sure the output stays the same, so being able to easily run and debug them kind of comes in handy.
With a bit of "luck" we'll get another project which has even more applications (but running them will be a breeze now *ahem*).
So, I got VB6 running, which was only the first step (and surprisingly painless, followed How to install Visual Basic 6.0 on Windows 11 - YouTube[^]).
Then I had to restore all kinds of folders and files in specific places (like C:\Company\Files) and relative to various projects (like ..\..\Components\Component A, etc.).
Not to mention change all kinds of configurations (ini files) because they point to T:\ or specific databases.
Obviously, these files, folders and configurations are all over the place.
I've put all of it in Git, including bin and obj folders, because I can't rebuild most of this stuff and just opening a project in VB6 changes it (it mostly sets references from System32 to SysWOW64, etc.).
Even complete database files (mostly DBF files, but maybe some SQL backups too) got included in Git, because that's how the original programmer works.
I've got Git repositories larger than 1.5 GB now, but it!
I'm currently trying to figure out which OCX files have to be registered and (from) where.
A few (most?) are working, but I'm currently having some trouble with some TLB file... Can't register it, but it's referenced in the project, but I keep getting "Class is not registered" (can't find it registered on the VM either though)
I'm too old young for this sh*t.
|
|
|
|
|
That sounds so painful.
We are still using VStudio 2013 at work and that is painful enough.
But trying to get VB6 stuff going...
Sander Rossel wrote: The entire project spans some 40 applications, that use about as much components.
!!!! 😵😵
This feels kind of like the kind of work I've done in SQL to transform data from old schema to new.
What I mean is that you can start getting into it and writing some really great stuff and learning esoteric details.
Then you transform and transfer the data to the new schema and all that lovely SQL no longer has a purpose.
It's the pinnacle of glory when you get it done. You stand at the mountain top basking in the sun and looking down. But then one week later its just some mountain you climbed in the past.
Hopefully the company will just have you re-write the stuff to a modern dev platform. Good luck.
modified 15-May-24 10:16am.
|
|
|
|
|
raddevus wrote: It's the pinnacle of glory when you get it done. You stand at the mountain top basking in the sun and looking down. But then one week later its just some mountain you climbed in the past. Yeah, this feels pretty familiar
raddevus wrote: Hopefully the company will just have you re-write the stuff to a modern dev platform. Good luck. It's our job to rewrite it to something modern and since I'm the final boss we're using the latest greatest: .NET 8 with .NET MAUI (a bit of a gamble to be honest) and ASP.NET Core
|
|
|
|
|
Yeah, this is why I laugh at everyone who shouts in my face "VB6 STILL WORKS AND IS STILL A GOOD PLATFORM!"
Sure, it works. If you like propping the damn projects and COM controls up with 2x4s, chicken wire, and duct tape.
|
|
|
|
|
Yeah, it's not good and it only works after a lot of blood, sweat and tears and then you'll just have to pray it keeps working
That said, it still works
|
|
|
|
|
I had a similar journey getting my VC6 IDE running on a Windows 7 machine (no VM). Took days of porting certain files over from XP, but finally managed to get it all going. The guys in the IT department can't understand why I don't want them touching that machine.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
|
|
|
|
|
Aren't TLB files generated from DLL files?
It might be easier to find to original DLL and generate a new TLB file.
Best of luck in your VB6 'adventure'
|
|
|
|
|
Yeah, found that out along the way.
Never heard of TLB files before, but I did it!
|
|
|
|
|
TLB files are useful if you work with COM objects. We do so that our unmanaged Delphi code can talk to our .NET Framework code. Even though COM is old, it still is the best when you need something like this. We can even embed .NET UI components into our Delphi UI via OLE, which is also using COM/TLB at some level.
Bond
Keep all things as simple as possible, but no simpler. -said someone, somewhere
|
|
|
|
|
40 applications - that is the next year allocated for you. Presumably the client has a working environment, I would be asking for a desk on site that can be used. The ultimate "break it down to small pieces". Good luck and let the fees add up!
Never underestimate the power of human stupidity -
RAH
I'm old. I know stuff - JSOP
|
|
|
|
|
Mycroft Holmes wrote: 40 applications - that is the next year allocated for you. And not just for me, I hired someone specifically for this job (and another one)
Mycroft Holmes wrote: Good luck and let the fees add up! Thanks, and they are!
|
|
|
|
|
Sander Rossel wrote: plus switching between VM and laptop is a pain. Windows Mode and maximized, then you have two task bars visible at once when you are in the VM
or
(No matter if window mode or full screen)
CTRL+TAB to change to host and ALT+TAB to switch to the last program used in the host
ALT+TAB to go back to the VM
I personally like version 1
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
One thing that may make life easier is putting some sort of VNC/RDP on the VM so that you don't actually have to switch to the VM, but remote desktop into it.
It's marginal, but it's definitely been better on a Pi to do that. They do something to them to make them not poll the mouse so often by default so it is like pushing the cursor through molasses. RDP though, mouse moves client side, so it doesn't really matter.
|
|
|
|
|
Our tester had a nice error in our .NET 8 application, it was trying to find "kernel32.dll" in the "Program Files\dotnet" directory
It is a 64 bits application but luckily there is a 64 bits version named "kernel32.dll" in the System directory
|
|
|
|
|
I love kernel32, it's so much better than kernel31.
|
|
|
|
|
... they have a foot fetish?
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
oh oh.... so bad. lol.
Charlie Gilley
“They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
Has never been more appropriate.
|
|
|
|
|
This deserves a big hand!
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
Well give 'em an inch ...
|
|
|
|
|
Americans are moving to the metric system... inch by inch.
|
|
|
|
|
|
To quote Bill Bryson ("The road to Little Dribbling"):
'Of course they make sense,' the British person will sniff. 'Half a firkin is a jug, half a jug is a tot, half a tot is a titter, half a titter is a c**k-droplet. What's not logical about that?'
We have traces of funny units in the metric world, too, such as measuring thickness in grams. Plated silverware (not silver through) is usually referred to as "60 grams", but not until recently did I know the true meaning of the "60 grams": If 60 grams of silver is used to plate 24 pieces of cutlery, 12 forks and 12 (full size) spoons, then the silver layer has a thickness of 60 grams.
Earlier, cheaper silverware was only 40 grams. Some years of use might wear off the silver so the cutlery got brownish spots where the underlaying copper comes out. Today, 60 grams is the standard; that is enough to stand many years of wear.
None of my sources said a word about how many micrometers thick layer 60 grams of silver would make on 24 pieces. I was thinking of measuring the surface area of a spoon and a fork to get a rough idea (I know of no good way to measure the surface area exactly), but I never got around to it. If anyone around here knows the answer - how many micrometers is 60 grams? - I'd be happy if you would reveal it!
Religious freedom is the freedom to say that two plus two make five.
|
|
|
|
|
When I was a teenager, a teacher told me that the best thing about all the drugs in American is that the students learned the metric system that way.
Bond
Keep all things as simple as possible, but no simpler. -said someone, somewhere
|
|
|
|