Click here to Skip to main content
Click here to Skip to main content

Macro to initialize GDI+ in VC6.0 MFC projects

By , 20 Apr 2003
 

Introduction

I have started to use GDI+ with MFC in VC++ 6.0 and got tired of always having to remember to add the GDI+ startup code and header and library files to my project. So I decided to write a simple VS macro that would do all this for me.

What's added?

In stdafx.h file the following lines are added:

// GdiPlus -- Added by the GdiPlus macro
#include <gdiplus.h>
using namespace Gdiplus;
#pragma comment (lib, "Gdiplus.lib")

In the <AppName>.h header file the following lines are added:

// GdiPlus -- Added by the GdiPlus macro
protected:
    ULONG_PTR m_gdiplustoken;

And if the application's ExitInstance() function is not already declared, a declaration is also added in the virtual functions section.

// GdiPlus -- Added by the GdiPlus macro
public:
virtual int ExitInstance();

In the <AppName>.cpp source file, the following lines are added to the InitInstance() function.

// GdiPlus -- Added by the GdiPlus macro
GdiplusStartupInput gdiplusstartupinput;
GdiplusStartup (&m_gdiplusToken, &gdiplusstartupinput, NULL);

And, in the ExitInstance() function, which is added if it is not already present, the following lines are added:

// GdiPlus -- Added by the GdiPlus macro
GdiplusShutdown(m_gdiplusToken);

How to install

Simply save the GdiPlus.dsm file in your <Visual Studio>/Common/MSDev98/Macros/ folder. Then, in Dev Studio, select the Tools menu, Macro dialog. On the Macro dialog click the Options button to show an extra four buttons. Click the Loaded Files button to bring up another dialog. Scroll down the list of macro files until you find GdiPlus. Select the check box for GdiPlus and Bob's your uncle.

That's it! I hope someone finds this useful because I sure do!

Updates

  • April 21, 2003 - Minor bug fix. Thanks to Larry Desonier

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

PJ Arends
President
Canada Canada
Member
No Biography provided

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
Hint: For improved responsiveness ensure Javascript is enabled and choose 'Normal' from the Layout dropdown and hit 'Update'.
You must Sign In to use this message board.
Search this forum  
    Spacing  Noise  Layout  Per page   
GeneralLicensing for commercial applicationmemberwill626219 Oct '10 - 5:09 
GeneralRe: Licensing for commercial applicationmemberPJ Arends20 Oct '10 - 7:09 
GeneralRe: Licensing for commercial applicationmemberwill626216 Nov '10 - 5:13 
GeneralDownload GDI+ version 1.1susspubba23 May '04 - 17:52 
GeneralRe: Download GDI+ version 1.1memberRYU^^27 Sep '05 - 19:47 
GeneralRe: Download GDI+ version 1.1memberJIANG, Sheng[MVP]6 Apr '07 - 6:54 
GeneralUnknown errormembershiggity s28 Mar '04 - 15:48 
GeneralRe: Unknown errormemberPJ Arends28 Mar '04 - 16:16 
GeneralGDIplus.dllmembervimalk5 Feb '04 - 20:32 
GeneralRe: GDIplus.dllmemberPJ Arends6 Feb '04 - 6:48 
GeneralRe: GDIplus.dllmemberwaelahmed27 Mar '04 - 23:15 
GeneralRe: GDIplus.dllmemberPJ Arends28 Mar '04 - 16:20 
GeneralUsing makro inside a dllsussjung-kreidler8 Oct '03 - 21:31 
GeneralI get some errorsmemberstealth kid19 Jun '03 - 4:00 
GeneralRe: I get some errorsmemberPJ Arends19 Jun '03 - 10:24 
GeneralRe: I get some errorsmembernastanet19 Apr '04 - 22:05 
GeneralRe: I get some errorsmemberPJ Arends19 Apr '04 - 22:16 
GeneralRe: I get some errorsmemberEinst16 Oct '05 - 19:33 
GeneralWhy not use a simple smart typememberRama Krishna15 Jan '03 - 11:15 
GeneralRe: Why not use a simple smart typesusswangwanxin1@163.net17 Jan '05 - 23:47 
GeneralYep...memberJ.G. Hattingh23 Dec '02 - 7:51 
GeneralWhere Can I found more GDI+ materialsmemberNing Cao22 Dec '02 - 20:11 
GeneralRe: Where Can I found more GDI+ materialsmemberPJ Arends23 Dec '02 - 9:49 
GeneralRe: Where Can I found more GDI+ materialsmemberptfoof1 May '04 - 15:30 
GeneralGraphics hardware acceleration with GDI+memberGiles10 Dec '02 - 3:04 
GeneralRe: Graphics hardware acceleration with GDI+memberPJ Arends10 Dec '02 - 6:34 
GeneralThanksmemberAli Khanlarkhani9 Dec '02 - 20:38 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Permalink | Advertise | Privacy | Mobile
Web01 | 2.6.130523.1 | Last Updated 21 Apr 2003
Article Copyright 2002 by PJ Arends
Everything else Copyright © CodeProject, 1999-2013
Terms of Use
Layout: fixed | fluid