This is a showcase review for our sponsors at The Code Project. These reviews are intended to provide you with information on products and services that we consider useful and of value to developers.
Introduction � The Wannakey Concept
Wannakey (www.wannakey.com) redefines software distribution and creates a new place (a Marketspace) where developers can sell their small size software. The concept is simple. Developers deliver the program; distributors deliver the customers, and Wannakey organize the Marketspace, controls the payment and the license management.
What we are reacting to is, the way developers of small size software today are selling their programs. We Instead of these we want to make it possible for developers to sell their programs on regular websites. We do it by creating the Wannakey Marketspace that helps developers offer their programs to websites that have the customers they are interested in reaching. Picture a warehouse, where you enter your software. The website then goes into the warehouse and pick your software for sale on their site.
The tools
Wannakey is a Marketspace, first and foremost; this means that the core of Wannakey is a database with programs for sale and stores registered. As a developer you upload your programs and allow websites to put them for sale at their site.
Wannakey is also a License Management system that helps the developer secure the program and control their Digital rights. Wannakey ensures that the program will only be used on computers that have been registered through payment or trial registration. It is possible to use straight forward sale, continuous payment (e.g. Monthly payment), trial periods and pay-per-use.
Finally, Wannakey is a payment system that help the developer receive money for his programs. Our PayPal supported payment system controls customer's payment and enables payment to happen with credit cards, bank transfers or PayPals own system. It also automatically controls the revenue distribution between developer and distributor. The developer decides the individual shop commission and the money is distributed according to the Revenue key.
http://www.wannakey.com/p283.asp
Implementation of Wannakey
Enough about the concept, let's move into the details. Let's start with what you as a developer have to do. First you create a new application, then you register at Wannakey.com and download our System Development Kit.
The SDK has the following content
- DFWKNETPC.dll � the actual Wannakey implementation
- ApplicationKey.txt � the unique Key for each application
- Readme.pdf � a help text
Then you load the application you wish to sell into visual Studio (Wannakey currently only work on .Net applications), and import the DFWKNETPC.DLL file to the application. Import the namespace Wannakey.Net.Pc
and System.Drawing
in your source code
- System drawing is used when specifying your application picture
Wannakey.Net.Pc
is used when calling Wannakey specific functionality
Then add an application picture to a resource file in your application � you will use this picture when specifying the look of the Wannakey license dialog. Following this you instantiate the Wannakey objects and define its properties in your primary method.
namespace WannakeyApplication1
{
static class Program
{
[STAThread]
static void Main()
{
WannakeyInfo myWannakeyInfo = new WannakeyInfo();
myWannakeyInfo.ApplicationName = "Wannakey Demonstration";
myWannakeyInfo.ApplicationKey = "XXXXXXXXXXXXXXXX";
myWannakeyInfo.Function =
Wannakey_External.FunctionSelection.ValidateWithDialog;
myWannakeyInfo.Picture = (
Image)Properties.Resources.application_picture;
Wannakey_External myWannakey = new Wannakey_External(myWannakeyInfo);
Create the behaviour for each Wannakey license status
if (myWannakey.Status.Equals(Wannakey_External.StatusCode.None))
{
Application.Exit();
}
else if (myWannakey.Status.Equals(
Wannakey_External.StatusCode.Expired))
{
Application.Exit();
}
else if (myWannakey.Status.Equals(
Wannakey_External.StatusCode.NoValidKey))
{
Application.Exit();
}
else if (
myWannakey.Status.Equals(Wannakey_External.StatusCode.Valid))
{
MessageBox.Show("Hello Wannakey World!");
Application.EnableVisualStyles();
Application.Run(new Form1());
}
}
}
}
Now Wannakey is implemented and you can perform status checks anywhere in your application, and perform any action you wish.
How does it work?
Lets then turn to the functionality of Wannakey. If the Wannakey license proves to be None, Invalid or expired when your application starts � the Wannakey dialog will make sure no unauthorized usage of your application takes place.
The Wannakey agent integrated in the application is activated as soon as the application is activated. This is visible through the license dialog which automatically gives the user the possibility to either buy or try the product.
When the "trial" period for the product expires the Wannakey agent lets the user know and gives the user an option to finally buy the product for continued usage.
Wannakey is currently using PayPal as payment gateway for all applications. When a user wants to buy an application like shown above � the Wannakey dialog transfers the user to the PayPal payment gateway shown below.
Customers can both use a Paypal account a credit card or bank account to buy Wannakey secured products. When using credit card or bank account the steps follow standard procedures.
Implementing Wannakey in an Internet Explorer Plug-in:
- All DLL files from the Wannakey SDK must be registered in the "global assembly cache" on the computer your plug-in is distributed to. Therefore make sure your install kits perform these registration actions.
- It is a good idea to create the Wannakey object as a private object in the main class, to be able to call it deeper within the plug-in.
public class WannakeyDemonstration : BandObject
{
private Wannakey_External wannakey;
.
.
.
}
The Guaranteed sale campaign
Wannakey is a new concept and we are therefore only just getting started. So right now we only have very few programs and just as few distributors. We need to get the ball rolling, so all parties can start making money.
To do this we are hoping you will put your program up for sale at Wannakey, and to further the incentive we are currently guaranteeing 150 $ revenue for 300 developers who upload their program and is selected by our team. Read more at http://www.wannakey.com/p220.asp or register at http://www.wannakey.com/p232.asp.