Is it possible to speed up my VB6 application with new version of GDIPlus?

Posted on 2011-03-08
Last Modified: 2012-05-11
Hi experts!

Well, I’m not expect in GDIPlus application, but I have ready code I should maintain.  It is written in Vb6 and the primary task is to increase the speed of it as it does extensive render of different moving object and they not run smooth under XP.

So my idea is to update a version of GDI library used. Can somebody tell me can I expect better speed if I mange to update version? I need update of speed with 30-50 % , I use powerful CPU now however this doesn’t seem to help a lot.

I found a upper version 6.1.76 but is I update only this DLL it make error with my application. So I wonder, doest’t cost the effort to try to make update to this version ?

Any offer will be welcome.
 New version which I found Current used version
Question by:dvplayltd
  • 2
LVL 16

Expert Comment

Comment Utility
Gut instinct tells me that you are not likely to get a 30-50% speed boost by installing any sort of update from Microsoft.  From my experience, Microsoft is not in the business of modifying their code to make it run faster so much as they are in the business of adding more features to their code.  After all, there was a saying I heard years ago that said "What Intel givith [in speed performance] Microsoft takeith [to expand functionality]".

As an example, I learned the hard way that the VB File Length function was still opening the file and reading through the contents to discover the length (at least back in the days of VB4).  Because I had to determine the size of thousands of files, I had to resort to VB calling Windows API functions to get the file length because the VB way was WAY TOO SLOW.

So IMHO, the only way you are likely to see a 30-50% speed boost is to rewrite your code in something more like C++ and possibly even ASM to get the speed boosts you need.  Depending upon your needs, that would allow you to write the logic using multi-threading and taking advantage of modern multi-core processors.
LVL 10

Accepted Solution

cool12399 earned 500 total points
Comment Utility

Very unlikely. GDI is hardware accellerated, whereas GDI+ is not.

You'll actually need to 'recode' your existing application if you want to see a performance boost.

I.e., if you are using "DrawLine" -- instead of using that -- use "Drawlines" with an array of points & you can see a performance increase. That is one example.

You'll need to review the existing docs for GDI, & test out different functions to see what gives you a performance increase.

Author Comment

Comment Utility
To cool12399

Hyym. I have enoght experience (10+ years) in both hadrware and software and know that increase with 20-50 % is not easy at all.

But I was hope that new version of GDI+ could be hardware accelerated from video card .. Do you sure that GDI+ is not and will be not at all hardware supported? It is 100 % sure that only GDI will use new  hardware power?

But to access GDI from VB6 is not possible, also this mean that I should totally rewrite my application . OK .. i see you are in matter - which techonlofy give me hardware accelleration ? I need to show cralw text in screen (tex going from left to right). I appears that GDI+ is not fast enoght for this and a jump while text is move can be seen now with mu current sofwtare.

Author Closing Comment

Comment Utility

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

Moving your enterprise fax infrastructure from in-house fax machines and servers to the cloud makes sense — from both an efficiency and productivity standpoint. But does migrating to a cloud fax solution mean you will no longer be able to send or re…
This paper addresses the security of Sennheiser DECT Contact Center and Office (CC&O) headsets. It describes the DECT security chain comprised of “Pairing”, “Per Call Authentication” and “Encryption”, which are all part of the standard DECT protocol.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now