Click here to Skip to main content
13,257,667 members (73,236 online)
Click here to Skip to main content
Add your own
alternative version


35 bookmarked
Posted 3 Mar 2000

CPL++ v1.1 - Control Panel Applets

, 3 Mar 2000
Rate this:
Please Sign up or sign in to vote.
A freeware MFC class framework for developing Control Panel Applets.
  • Download source files - 14 Kb
  • Introduction

    Welcome to CPL++ v1.1, An MFC class framework to encapsulate developing Control Panel Applets.

    Contacting the Author


    V1.0 (18 July 1999)
    • Initial public release.

    V1.1 (20 November 1999)

    • Now fully supports CPL_INQUIRE as well as CPL_NEWINQUIRE messages.
    • Now supports a document template approach to creating applets. This means that you can easily support multiple applets per dll using the CPL++ framework.
    • Demo program now supports demo'ing both static and dynamic applets.
    • Control panel applet now always output as a ".cpl" file instead of a ".dll" file.
    • Now supports displaying the specified property page (via the CPL_STARTWPARMS message) when a control panel applet is called via the rundll32 command line.


    To use CPL++ in your applets all you need to do is:

    • Ensure your DLL has a DEF file and exports the sole function CPlApplet. Note: You do not need to write this function as it is provided internally by the CPL++ code.
    • Include cpl_pp.h and cpl_pp.h in your project (configured to produce a standard DLL including MFC either dynamically or statically).
    • Derive a class from CControlPanelApp and override its OnInit() function. In it call AddApplet() to add each applet you want. Normally, you would do this just once, but for demonstration purposes, the sample creates two applets.
    • Each applet you add should be an instance of the class CControlPanelApplet. It should be created on the heap. See CApp::OnInit() for an example. Depending on which constructor you call, you will have created an dynamic (responds to CPL_NEWINQUIRE) or static (responds to CPL_INQUIRE) control panel applet.
    • The code is UNICODE enabled and UNICODE build configurations are provided for the test applet.
    • For further information on developing and debugging control panel applets, please refer to the MSDN.

    Contacting the Author

    PJ Naughter
    20 November 1999


    This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

    A list of licenses authors might use can be found here


    About the Author

    PJ Naughter
    United States United States
    No Biography provided

    You may also be interested in...


    Comments and Discussions

    GeneralRe: Suggestion Pin
    pjnaughter8-Aug-02 5:05
    memberpjnaughter8-Aug-02 5:05 
    GeneralVery good work Pin
    Armen Hakobyan29-Jul-02 12:12
    memberArmen Hakobyan29-Jul-02 12:12 
    QuestionHow to remove the Applet? Pin
    Anonymous21-Feb-02 18:05
    memberAnonymous21-Feb-02 18:05 
    AnswerRe: How to remove the Applet? Pin
    Anonymous18-Mar-02 10:52
    memberAnonymous18-Mar-02 10:52 
    GeneralMaking Changes Pin
    confuses7-Dec-01 4:00
    memberconfuses7-Dec-01 4:00 
    GeneralRe: Making Changes Pin
    Anonymous18-Mar-02 11:31
    memberAnonymous18-Mar-02 11:31 
    GeneralRe: Making Changes Pin
    pjnaughter8-Aug-02 5:07
    memberpjnaughter8-Aug-02 5:07 

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

    Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

    Permalink | Advertise | Privacy | Terms of Use | Mobile
    Web04 | 2.8.171114.1 | Last Updated 4 Mar 2000
    Article Copyright 2000 by PJ Naughter
    Everything else Copyright © CodeProject, 1999-2017
    Layout: fixed | fluid