Search code examples
performancevisual-studiocompatibility

VB6 program compiled in a new computer in incredibly slow in other computers


I have this weird problem that's killing us. I have a widely used app that is written in VB6.

Everything works fine. This week I decided to chance the computer where we do the compiling. I tried not to tempt our luck, so I had an AMD X2 270 with DDR3 and a Gigabyte motherboard (I though it was better not to go with bigger hardware and W7 so Visual Studio 6 would be easier to install...)

I installed Windows XP SP3, because the main purpose of that computer is perform the vb6 application maintenance, besides common tasks such as email checking, web surfing and web programming with other tools.

PROBLEM IS: executables generated in this new computer are painfully slow!!! My old computer (pentium 4, also XP) creates executables that works just fine. Both have Visual Studio 6 SP 5. They work just fine in the computer where it is compiled, but as soon as i move the exe file to a computer that already has the app, it goes nearly impossible to use.

Anybody has any ideas???? We are kind of puzzled here, not to mention worried. (The "old" machine has presented sign of failure recently, like rebooting itself)

More info: the app talks with sql server 2000, uses a flexgrid and Crystal Reports 8.5

Thanks in advance, Daniel


Solution

  • For whatever it's worth, I have a bunch of old legacy stuff installed on my XP computer, including MSVS 6/Pro. Also, for whatever it's worth, I cannot think of any reason for the same MSVS6 compiler to produce different .exe's on different machines.

    SUGGESTIONS:

    1) When you get a chance, please post back a command-line "dir" of the "good" .exe vs. the "bad" .exe. Do the file sizes match?

    2) Please run "depends" (one of the MSVS6 tools, as you probably know) on the "good" .exe on the "good" PC, vs. the "bad" .exe on the "bad" .exe. Do both .exe's use the same .dll's, from the same places, with the same versions?

    3) What about your VBRUN.dll? For example:

     Directory of C:\WINDOWS\system32
    03/31/2003  05:00 AM         1,355,776 msvbvm50.dll
    04/13/2008  05:12 PM         1,384,479 msvbvm60.dll
    

    4) What happens if you copy the "good" .exe from the "good" computer to the bad? Does the "good" .exe suddenly behave "bad"?

    5) What do you see in task mgr. Any difference between the "good" PC and "bad" PC in %CPU? Memory/Paging? I/O reads/writes?

    Thank you in advance