Valhalla Legends Forums Archive | Visual Basic Programming | Vb6 in 64 Bit

AuthorMessageTime
Imperceptus
Is anyone aware of any programming issues with vb.6 in a 64 bit enviroment?  I am running into some rather strange problems that don't make much sense to me.  Mainly withevents hasn't really ever given me any problems.  But now it just plain wont work.   

If there is anything that I might need to look at, please let me know.
February 19, 2007, 9:40 PM
dRAgoN
[quote author=Imperceptus link=topic=16358.msg165216#msg165216 date=1171921214]
Is anyone aware of any programming issues with vb.6 in a 64 bit enviroment?  I am running into some rather strange problems that don't make much sense to me.  Mainly withevents hasn't really ever given me any problems.  But now it just plain wont work.   

If there is anything that I might need to look at, please let me know.
[/quote]
I would suggest converting to VB .Net since its free.
http://msdn.microsoft.com/vstudio/express/vb/
February 19, 2007, 9:45 PM
Imperceptus
Yeah, But I don't like vb.net, or .net in general.  I have vs 2005 as well, but thanks for the link anyways. I'm just wondering about why my vb6 app is being screwy.  Debugging has come to show me that my class events arent firing for some reason.
February 19, 2007, 9:52 PM
Hell-Lord
.NET is the future of programming, yes i know it is shame  :-[
February 20, 2007, 6:14 AM
Barabajagal
[quote author=Hell-Lord link=topic=16358.msg165242#msg165242 date=1171952078]
.NET is the future of programming, yes i know it is shame  :-[

[/quote]

No, it's the future of Microsoft programming. That's why I'm working on switching to PowerBasic.
February 20, 2007, 6:17 AM
Hell-Lord
PowerBasic is great! but at a professional level .NET will always be the most often used programming software. Not many people have even heard of PowerBasic it wasn't advertised like it should have been.
February 20, 2007, 6:22 AM
JoeTheOdd
Just let VB6 die. Please.
February 20, 2007, 8:17 AM
Hell-Lord
Vb6 won't die out for a very long time....
February 20, 2007, 8:36 AM
TheMinistered
[flame] Joe, coming from someone who is a complete newb with every language BUT vb6 and is still, in my opinion a newb at vb6 too... you sound like a complete dumbass for saying let it die... [/flame]

As for vb6 running in a 64bit enviornment, the operating system should have some sort of emulation for 32bit applications otherwise people would be less likely to switch to a 64bit OS as their valuable/pricey 32bit software wouldn't work anymore.

I'd assume microsoft has pretty good emulation for 32bit, but I could be wrong.  Perhaps its a code problem and not the processor... ;) show us your code... just saying there is a problem isn't enough... you should know this by now
February 21, 2007, 4:54 AM
Imperceptus
oh yeah, great emulation for almost all 32-bit apps.  Starcraft is a bit hay-wire.  And some of my calls in vb6 just plain don't work.  So I will take a look at PowerBasic, see what it has to offer.  I'm a bit .net'd out after all the crap with RunUO.
February 21, 2007, 5:11 AM
JoeTheOdd
[quote author=TheMinistered link=topic=16358.msg165321#msg165321 date=1172033663]
Joe, coming from someone who is a complete newb with every language BUT vb6 and is still, in my opinion a newb at vb6 too... you sound like a complete dumbass for saying let it die...
[/quote]

I don't care if you call me a newb at VB, because honestly, being the Grand Master of Visual Basic still amounts you to nothing.

As for being a complete newb in every other language, just because I don't release every single thing I program doesn't mean I don't know how to write code. I'm a fully fluent Java programmer, current maintainer of JavaOp2 (yes, I fixed it after lockdown, something nobody else even attempted), and every time I walk into the Computer Programming lab (I'm working during my spare time at school, fixing all the machines for Advanced Comp Sci) I find myself answering more programming questions than the teacher.

But.. being more useful to others than my teacher doesn't mean I know anything. Oh well.
February 21, 2007, 5:37 AM
Barabajagal
Not insulting you or anything... but programming teachers are usually teachers because they couldn't cut it as professional programmers. The first day in my first VB class, I was correcting my teacher on a language I had never used (I was using BASIC 7.2 for the Commodore 128 at the time).

In any case, yes, 64 bit currently sucks. There's very few working 64 bit drivers, the 32 bit emulation is sub-par to say the least, and it slows down 32 bit applications that do work in the first place. PowerBasic does not currently have 64 bit support, and it uses the same API calls as any other 32 bit language, though the compiler is much better designed than any VisualBasic compiler ever was.
February 21, 2007, 5:41 AM
Myndfyr
[quote author=[RealityRipple] link=topic=16358.msg165327#msg165327 date=1172036500]
In any case, yes, 64 bit currently sucks. There's very few working 64 bit drivers, the 32 bit emulation is sub-par to say the least, and it slows down 32 bit applications that do work in the first place. PowerBasic does not currently have 64 bit support, and it uses the same API calls as any other 32 bit language, though the compiler is much better designed than any VisualBasic compiler ever was.
[/quote]

Are you using a 64-bit platform?  Or are you just shooting from the hip?

I upgraded from XP32 to Vista64 on my Core 2 Duo at home (clean install on each).  The performance differences are, at the very least, significant.  (Incidentally, the Microsoft benchmark also notices a processor performance increase when moving from x86 to x64).

The WOW64 emulation layer is very efficient; it does NOT slow down application execution time significantly because the WOW64 calls simply thunk the 32-bit API calls to the 64-bit equivalents and then run them.  I didn't have trouble finding drivers for my hardware except the NVidia stuff for Vista, which of course wasn't out yet.  All of my hardware works on Vista x64 which of course requires signed drivers.

PowerBasic not having 64-bit support means it can't compile a PE file to use the 64-bit subsystem, and so it can't use 64-bit references.  It's not a matter of the API in use, it's a matter of the pointers the compiler can generate.

Last, it's important to note that a 64-bit process can't load a 32-bit DLL into its process space, and a 32-bit process can't load a 64-bit DLL into its process space.  That's the only limitation imposed by the environment.
February 21, 2007, 7:33 AM
Barabajagal
You're telling me there's no emulation problems, and yet this topic is focused on one of the problems of that emulation...
February 21, 2007, 8:25 AM
Myndfyr
[quote author=[RealityRipple] link=topic=16358.msg165333#msg165333 date=1172046313]
You're telling me there's no emulation problems, and yet this topic is focused on one of the problems of that emulation...
[/quote]

It's not even real emulation!  It's a thunk layer!

http://support.microsoft.com/kb/894373/en-us
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/win64/win64/running_32_bit_applications.asp
February 21, 2007, 4:35 PM
Quarantine
[quote author=[RealityRipple] link=topic=16358.msg165333#msg165333 date=1172046313]
You're telling me there's no emulation problems, and yet this topic is focused on one of the problems of that emulation...
[/quote]

That's probably exactly what he told you.
February 22, 2007, 12:12 AM
JoeTheOdd
*thunk*
February 23, 2007, 6:22 AM
Grok
[quote author=[RealityRipple] link=topic=16358.msg165327#msg165327 date=1172036500]
Not insulting you or anything... but programming teachers are usually teachers because they couldn't cut it as professional programmers. The first day in my first VB class, I was correcting my teacher on a language I had never used (I was using BASIC 7.2 for the Commodore 128 at the time).[/quote]

Off-topic reply:  Don't fall into this trap.  Being able to correct someone on language symantics is far from saying they are not adequate professional programmers.  It would be like saying since George W. Bush lacks the basic English skills to construct a proper sentence, he is an inadequate president .... oh wait, bad example.

Back on topic:  What reason is someone trying to do VB 6.0 programming in a 64-bit Windows environment?  If it is to support legacy VB6 programs, just run them in a VM and be done with it.  If it is for new development, the company or person should seriously evaluate their choice of development tools, or at least of runtime platforms. They have a mismatch, the development tool being used was never intended for the runtime platform, never tested, and certainly not support.  Seems it would be a scary expensive choice in ongoing support manhours if the two were combined (VB6+64bit Windows).
February 23, 2007, 5:53 PM
Quarantine
LOL @ the bush comment.

Visual Basic 6 support should stop at 32Bit. It will only make me hope for the advent of the next installment of Windows (which iirc will only come in 64Bit)
February 24, 2007, 6:13 PM
Imperceptus
just trying to us vb6 for my resume on application at the time. Didn't much matter now as to another job hired me in mid process of building a demo app.  appreciate the help though. strange how being an electrician offered more then the programming job I was looking into.
March 21, 2007, 7:26 AM
JoeTheOdd
lol, you were going to put VB6 on a resume? No wonder the electrician job paid more! :P

By the way, I've been offered more for electritian jobs than programming jobs so far.
March 21, 2007, 7:50 AM
Imperceptus
the company wanted someone to maintain and refine their vb6 app that is used at hundreds of places by doctors and nurses such.  They wanted to then port it to vb.net lead by the person they would hire for it. their loss.
March 21, 2007, 8:00 AM

Search