If you ever looked for a solution to add license key and online activation support to your software product, you have probably found hundreds of tools. Most of them are powerful and feature rich, yet making it complex and expensive. So I decided to roll up the market a little by publishing my own solution. Lictivate
What's really amazing is how many tools claim to have best software protection, quickest integration and widest platform support. In my opinion, "protecting" your software is a waste of time. First, software that has been protected by a third party tool is easier to crack because the cracker only has to crack one software to crack all software protected by that protection tool. Second, the better the protection the more crackers may want to crack it - not because your software is so valuable but because cracking the protection gets the cracker reputation in the cracker's scene. And third, protecting your software is a costly action and will continue to cost you after it has been cracked. It'll end in a game of cat-and-mouse.
Lictivate does not protect your software from cracking but it manages license usage and simply integrates "activation" to lock a license down to the end user's hardware. Lictivate is a hosted service, so online activations run from our server lictivate.com. You (the developer) only have to register on www.lictivate.com, download the LictivateClient package, add a reference to LictivateClient in your .NET project, copy & paste some code, change some consts and you're done. The LictivateClient package contains full source code and a sample application to guide you through the integration very quickly.
Lictivate supports activations using the web service or by e-mail (phone & fax to come). It also supports "product editions" or "features" associated with a license key.
Pricing: You can try Lictivate with no commitment required. To go live after the trial, the monthly fee is $8.95 (or $94.95 per year). Compare that to the competitors.
Also, development on Lictivate continues. Next on the todo list is to put up a standalone Activation Server product, support phone and fax activations, integrate sales processing companies, create a ready-to-use DLL for non .NET developers and a lot more...
Sebastian Brand
About productivity, business and software development.
Friday, March 26, 2010
Wednesday, March 10, 2010
The Notes Add-in for Outlook
Another week, another product!
My lovely wife had the requirement to put notes to her appointments in the Outlook calendar that only she would see. I took a round of Google and decided to write an add-in for Outlook :-)
A couple of days later, the Notes Add-in for Outlook was done. It adds a button in the command bar of messages and appointments. The button opens a note item and links the message/appointment to that note item. When re-opening the message/appointment to note item is displayed as well. I also made the note item to appear fixed to the right side of the window.
Here's some video:
If you are interested in the add-in, get the download from product website http://www.instyler.com/outlooknotes
If you have an idea that makes it into the add-in I'll be happy to give you a free license.
My lovely wife had the requirement to put notes to her appointments in the Outlook calendar that only she would see. I took a round of Google and decided to write an add-in for Outlook :-)
A couple of days later, the Notes Add-in for Outlook was done. It adds a button in the command bar of messages and appointments. The button opens a note item and links the message/appointment to that note item. When re-opening the message/appointment to note item is displayed as well. I also made the note item to appear fixed to the right side of the window.
Here's some video:
If you are interested in the add-in, get the download from product website http://www.instyler.com/outlooknotes
If you have an idea that makes it into the add-in I'll be happy to give you a free license.
VSTO: Using .NET multi-language support in Office add-ins
Visual Studio and the .NET framework offer a nice option to localize Windows Forms, Office Ribbons or resources in general. For example, to localize a form, open the form, set Localizable=True from the properties, choose a language from the Language property and start changing anything on the form. You'll notice an additional .xx.resx file is being created for each language.
During InitializeComponent(); the ResourceManager class is used to localize the form to the current language. To be exact, by current language I mean the current thread's culture. You can change the language of your application or module by changing the Thread.CurrentThread.CurrentUICulture property to another culture.
So far so good. When developing Office add-ins you will notice that this does not use the current language of Office, but the Windows system language. The trick is to set the CurrentUICulture to the Office language:
Voila, all dialogs appear in the Office language now, except ribbons. Ribbons are created before ThisAddin_Startup happens, so you'll have to set the language in the ribbon's constructor, before InitializeComponent(); of those ribbons. Unfortunally, there is no Globals.ThisAddin.Application available yet, so you'll have to get the Office object another way.
With the help of genius Helmut Obertanner from outlooksharp.de I found a rather simple solution: Create a new Outlook.Application()
Here's the code of my ribbon's constructor:
That's it.
During InitializeComponent(); the ResourceManager class is used to localize the form to the current language. To be exact, by current language I mean the current thread's culture. You can change the language of your application or module by changing the Thread.CurrentThread.CurrentUICulture property to another culture.
So far so good. When developing Office add-ins you will notice that this does not use the current language of Office, but the Windows system language. The trick is to set the CurrentUICulture to the Office language:
private void ThisAddIn_Startup(object sender, System.EventArgs e) {
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo(this.Application.LanguageSettings.get_LanguageID(Microsoft.Office.Core.MsoAppLanguageID.msoLanguageIDUI));
}
}
Voila, all dialogs appear in the Office language now, except ribbons. Ribbons are created before ThisAddin_Startup happens, so you'll have to set the language in the ribbon's constructor, before InitializeComponent(); of those ribbons. Unfortunally, there is no Globals.ThisAddin.Application available yet, so you'll have to get the Office object another way.
With the help of genius Helmut Obertanner from outlooksharp.de I found a rather simple solution: Create a new Outlook.Application()
Here's the code of my ribbon's constructor:
public MyRibbon() {
Outlook.Application app = new Outlook.Application();
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo(app.LanguageSettings.get_LanguageID(Microsoft.Office.Core.MsoAppLanguageID.msoLanguageIDUI));
Outlook.Application app = new Outlook.Application();
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo(app.LanguageSettings.get_LanguageID(Microsoft.Office.Core.MsoAppLanguageID.msoLanguageIDUI));
InitializeComponent();
}
}
That's it.
Thursday, February 18, 2010
Switch off your monitor
I often have a situation at my workplace where I'm leaving my computer without shutting it down or putting it in standby mode because something important is still running or because I'm just to lazy. Instead I'm just leaving it on. With all monitors.
Modern workplaces often feature more than one monitor and often they are large and therefor power consuming. Wouldn't it be great to have a "Switch off monitors" function?
The tool for that is Wizmo from Gibson Research. It allows you to switch off all monitors via command line. Best of all it's free and comes as just one exe file.
I created a shortcut on my desktop to call
wizmo.exe monoff
That's it. Now I'm saving a few watts of power ;-)
Modern workplaces often feature more than one monitor and often they are large and therefor power consuming. Wouldn't it be great to have a "Switch off monitors" function?
The tool for that is Wizmo from Gibson Research. It allows you to switch off all monitors via command line. Best of all it's free and comes as just one exe file.
I created a shortcut on my desktop to call
wizmo.exe monoff
That's it. Now I'm saving a few watts of power ;-)
Subscribe to:
Posts (Atom)

