Simple way to restrict functionality of MFC utility until serial # is applied

Posted on 2007-08-09
Last Modified: 2013-11-20
I have an MFC utiility in which I need to restrict certain functionality (disabling buttons and their procedures) until a serial # is provided.

Is there a simple class that will perform this, maybe using registry keys, or is the best method to purchase some third party utility?  If so, can you recommend one?

Question by:howardsd
    LVL 22

    Expert Comment

    The simplest and most secure way is to have them type the serial number into a web page and the page sends them a new library or executable with the extra features.
    LVL 86

    Expert Comment

    Why reinventing the wheel? Check out ("Shareware registration dialog") - the article comes with full source code (

    Author Comment

    Check out ("Shareware registration dialog") - the article comes with full source code (


    The source code for those projects are corrupt.  Might anybody have it?

    I understand the concept, but was hoping for something a little more robust.  How can I provide a different serial number to each different customer so that serials can't be shared?

    Author Comment

    I found an alternate location for the above project files.
    LVL 22

    Accepted Solution

    >> How can I provide a different serial number to each different customer

    You may develop application to generate such serial number from customer's hardware information..such as  using harddisk volume information+time+date+network adaptor serial etc etc. Depending on this information you may generate a string and encrypt that to provide your 'product activation code'

    Additionaly to jkr's above links you may also look at  :

    Product Activation Based on RSA Signatures

    License Key Generation


    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Enabling OSINT in Activity Based Intelligence

    Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

    Suggested Solutions

    When writing generic code, using template meta-programming techniques, it is sometimes useful to know if a type is convertible to another type. A good example of when this might be is if you are writing diagnostic instrumentation for code to generat…
    Introduction: Hints for the grid button.  Nested classes, templated collections.  Squash that darned bug! Continuing from the sixth article about sudoku.   Open the project in visual studio. First we will finish with the SUD_SETVALUE messa…
    The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.
    The viewer will learn additional member functions of the vector class. Specifically, the capacity and swap member functions will be introduced.

    760 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

    9 Experts available now in Live!

    Get 1:1 Help Now