Does anyone know if there are any issues installing/running VB5 on Windows 10? Every time I try and Google this I only find articles relating to VB6.
I have an old legacy program in VB5 I need to maintain (until I finally get round to rewriting it in .NET... or, should I say, the client finally decides to pay me to...)
Sorry if this si impertinent, to ask a follow-up question like this, but I wonder if you mght know this:
The difficulty with installing W10 in a VM is that it won't recognise it as a free upgrade from my W7, so will ask for a product key - which I don't have (or would need to buy.) But it occurs to me that I could instead go for the W10 upgrade and then, if necessary, re-install W7 in a VM on the same machine... the querstion then is: would it let me? Or would it tell me that the W7 product key has akready been used? As it'd be the same physical machine perhaps it would... but being a VM, maybe it won't... i.e. can one re-use a Windows product key on a VM on the same box as the orginal OS was installed?
Although legacy codes do run on Windows for sake of backward compatibility. But why would you even want to use such an old language on a new platform?
You may want to upgrade your current application to Windows Runtime. Windows Runtime and .NET framework are separate, Windows Runtime is the native framework provided with Windows 10, where as .NET framework is a separate product that you install.
Read this API[^] for Visual Basic on Windows Runtime.
The sh*t I complain about
It's like there ain't a cloud in the sky and it's raining out - Eminem
~! Firewall !~
As I said, it's an old application I wrote for a client way back in the early 90's which I still need to maintain occassionally. It was originally written in VB3, but apart form a minor update to VB5 in the mid 90's has remined pretty much teh same, and is still in use to day - a fact I am ever so slightly proud of Of course it should be rewritten for a modern OS, but it's no small task, and the client likes it as is, so there is a certain amount of "if it ain't broke, don't fix it" going on. It will have to eb done day, but in the meantime....
I think the coder is the one who wants to switch in this case, and the IDE's compatibility is the primary concern. That client doesn't particularly sound like the sort of person who's likely to have ever ventured beyond windows XP.
The coder is heading for problems; an unsupported IDE on an OS that was created years later. It is not just that it will be a 32-bit environment in a 64-bit OS, there will be more recent versions of COM-controls, something VB leans on. Those would be different on XP, generating a error if not compiled on XP.
"Unsupported" really means it could stop working tomorrow. It is never a good strategy to build on something that can be gone tomorrow.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
Yes, you're right, and I realise this - but it's a large job to re-write the code, and I don't feel like doing it for free. So until the client is prepared to fork out for it, we'll just have to struggle on with the current code. As the earlier poster pointed out, this client is a tech dinosaur... I have pointed out to them the dangers of the path they are currently on.
Well, that's the obvious thing - but I don't want to risk upgrading and then finding VB5 won't run. Mind you, I believe the W10 upgrade offers a rollback to W7 if wanted, so I guess I could just go that route...
I have seen other people's solution to the rather small, obscured 'power off' button in Windows 10 - by making a link to shutdown.exe. Unfortunately, as far as I can see, shutdown.exe will not check to see if there are any unsaved documents and will close the computer whether data is saved or not. Also, although you can delay shutdown.exe - this, I think, is made almost completely pointless by the fact that there is no way to cancel it (that I can see).
My idea is to write a small program which will call shutdown.exe after a delay but which can be cancelled. This bit, I'm pretty sure I can do. The part I have no idea how to do is to check to see if there are any unsaved documents so I can give the user the option to quit shut down.
Is it possible to check to see if there are unsaved documents? How would I do this?
I thought there would be some way of centrally registering if a document is unsaved. After all, doesn't then main 'Power Off' button in Windows prompt you with an 'You have unsaved data. Are you sure you want to close down?' type message? - which suggests that this is the case for at least some applications.
I thought there would be some way of centrally registering if a document is
No. You simply keep a dirty-flag somewhere in your application.
Ben Aldhouse wrote:
'You have unsaved data. Are you sure you want to close down?' type message?
It will say that some applications aren't responding and that you might lose data if you close them anyway.
In WinForms you get a closing-event that is fired when Windows shuts down; the application should then shut down, but some applications show a dialog asking the user whether or not to shut down. Meaning Windows asks them to close, and they simply refuse and hang around.
Next question from Windows; do you want to terminate the applications that did not shut down?
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
Thanks for your replies Richard and Eddy. I think I may have discovered a 'feature' of Windows 10 here. I have just done some experiments with Notepad++ v6.7.7 and Inkscape v0.91. Notepad is so advanced that an unsaved document gets saved anyway and opened up next time you open Notepad++. I think Visual Studio tends towards this level of foolproofness, too. It will give a message when you open it up asking if you would like to 'recover' unsaved files from the last session. Inkscape, however, will lose what you were working on if you haven't saved it.
When I try and close Inkscape with an unsaved document it will produce a dialog asking me if really want to close it. However, when I close Windows 10 with an unsaved Inkscape document the document is lost. I think that this dialog would have caused the shutdown process to ask for user feedback in older versions of Windows. Not so in the current version of 10.
Is it Windows policy now that all applications should save documents on the fly or users be more careful? Is it an oversight in Windows 10? May be it will be fixed soon and I won't have to write my little program...
When you close an application (Inkscape for instance), it will receive a WM_CLOSE[^] message form the OS and as response to it it will ask you to save (or not to save) the unsaved documents...
When you close the whole OS the messages to send is WM_QUERYENDSESSION[^] and WM_ENDSESSION[^].
If those messages are not handled the application will lost data...
So it is entirely up to the application...
However you may replace the standard shutdown process with your own, where before any other messages you send a WM_CLOSE to each (top-level) window...If the window returns 0 (means, it handled the message), you continue to the next, but if not you can pop a message to alert the user and bring the window to focus...If you got to the end of the list, you can shut down the OS...
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
This looks interesting. May be I'll get around to having a look at what is going on with these messages eventually. It would be an interesting exercise.
However, now I have seen that it isn't just short cuts to shutdown.exe that cause Windows to close down in a way that can cause unsaved work to be lost I've come to the conclusion that this is a possible oversight by Microsoft and I'll probably leave it for a while to see if they change it back themselves before I attempt to write my own fix.
Oh for just a little bit more time per day to get things done...
Last Visit: 31-Dec-99 19:00 Last Update: 2-Dec-22 10:48