R11 License Server & SNHookClass

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 17/04/2009 at 09:18, xxxxxxxx wrote:

BTW,  there are basically two different ways to implement license key validation in Cinema 4D...
1. Using the SNHookClass (which is what's described above) and...
2. Using some combination of Read-/WritePluginInfo() (in stand-alone mode) and Read-/WriteRegInfo() when in License Server mode.
...the first method uses the "Personalize" dialog for your plugin's license key entry in stand-alone mode and lets your plugin's license keys be served by the License Server along with everything else (the user just pastes the appropriate multi-license key(s) you sell them into the License Server dialog).
I haven't used the second method myself, but as far as I can tell, this would be a more brute-force and/or more loosely connected method of doing it.  ie. this method stores all licenses locally (on each machine), so the (each) user would have to enter a license key on each machine.
If that's indeed the case, then you'll also be limiting the user to a single "serial package" unless you implement some method of storing/validating multiple 'potential' license keys (using the first method, they can register multiple license keys - one for each "serial package" - with the License Server and the server sends your plugin the one that matches the package in use).
Again, if you're not familiar with the License Server, you should go watch those videos on Cineversity to see how it is (can be) used.  A large company could potentially have multiple different serial packages set up, for different departments or laptops vs workstations or... whatever.

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 17/04/2009 at 16:45, xxxxxxxx wrote:

Wow, you really did a good job in summing up all this multilicense stuff! Well done, thank you!

Greetings,
Jack

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 17/04/2009 at 23:10, xxxxxxxx wrote:

Thanks Jack - I'm glad someone found it useful :).  I think many/most developers are using the Read-/WritePluginInfo() method and this thread is mostly geared towards having your plugin's license key "served" by the License Server when using the SNHookClass method, but there's a fair bit that applies to either.

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 21/04/2009 at 03:05, xxxxxxxx wrote:

Keith, thanks a lot for your efforts. This thread should answer most questions regarding CINEMA 4D R11 plugin serialization.

cheers,
Matthias

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 08/02/2010 at 10:04, xxxxxxxx wrote:

Originally posted by xxxxxxxx

   
   
     
     Mod: Hair :                           **[11-0-1017643]**       <<40300012345-AAAA-BBBB-CCCC-DDDD>>  
   

...the next part (enclosed in square brackets) is important.  The '11' is the C4D version, the '0' is the platform (Mac or PC, but generally no longer used - I think this can always be '0') and finally, the PluginID of the plugin being registered (ie. you need to insert your plugin's ID here).

First of all thanks for this overview! Very helpful. However, shouldn´t this rather say that this is a unique ID passed to the serial hook object´s Register() function? Otherwise it would seem impossible to register several plugins within one library (.cdl) for a license server environment. Can somebody confirm this just to make sure?

Btw. is there ANY way to test this? Is there a license server demo? I wouldn´t want to see myself giving out a plugin demo untested (I probably wouldn´t in the end).

Also I´d like to know something else (as regdate is invalid). WriteRegInfo(), on which machine is this written to (assuming it is called from within SNCheck())? On the individual client machines or on the machine the license server is installed? I assume the former but I´d like to make sure I get this correctly.

thanks in advance

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 08/02/2010 at 10:12, xxxxxxxx wrote:

Ah and another question, although that has already been answered I guess but if regdate is invalid and WriteRegInfo is not suitable to be used in conjunction with the SNHook class, then it seems that it´s impossible to provide customers with a demo. So the customer would require a seperate single c4d license to test a plugin before he can buy a license for a license server environment right?

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 09/02/2010 at 03:44, xxxxxxxx wrote:

However, shouldn´t this rather say that this is a unique ID passed to the serial hook object´s Register() function? Otherwise it would seem impossible to register several plugins within one library (.cdl) for a license server environment. Can somebody confirm this just to make sure?

Yes, a unique ID has to be passed because all SNHookClass is doing is to establish a hook into the Personalize dialog.

Btw. is there ANY way to test this? Is there a license server demo?

We are currently thinking about ways to provide developers with license server NFR versions.

Also I´d like to know something else (as regdate is invalid). WriteRegInfo(), on which machine is this written to (assuming it is called from within SNCheck())? On the individual client machines or on the machine the license server is installed? I assume the former but I´d like to make sure I get this correctly.

Yes, it's written to the client machine.

cheers,
Matthias

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 09/02/2010 at 03:46, xxxxxxxx wrote:

Originally posted by xxxxxxxx

Ah and another question, although that has already been answered I guess but if regdate is invalid and WriteRegInfo is not suitable to be used in conjunction with the SNHook class, then it seems that it´s impossible to provide customers with a demo. So the customer would require a seperate single c4d license to test a plugin before he can buy a license for a license server environment right?

This seems to be an oversight on our side. I forwarded this as feature request / bug report.

cheers,
Matthias

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 09/02/2010 at 05:47, xxxxxxxx wrote:

thanks Matthias for clearing this. An NFR version would definetly be super helpful.
Ok, for now I´ll tell my LS customers that there´s no demo possible. Maybe they wait. 🙂

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 10/02/2010 at 08:19, xxxxxxxx wrote:

Note that 11.5 and up now allow you to manually enter a serial number for a plugin using SNCheck if it's not provided by the License Server.

I'm happy to test license server compatibility here at MAXON USA for anyone who can't get their hands on it. Just send me a PM.

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 10/02/2010 at 09:16, xxxxxxxx wrote:

Originally posted by xxxxxxxx

Note that 11.5 and up now allow you to manually enter a serial number for a plugin using SNCheck if it's not provided by the License Server.

Hi Rick,

could you elaborate on this? I am not sure I fully understand this. Thanks

Originally posted by xxxxxxxx

I'm happy to test license server compatibility here at MAXON USA for anyone who can't get their hands on it. Just send me a PM.

Superb. Thanks for the support. I´ll probably get in touch with you on this directly next week then.

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 20/02/2010 at 06:54, xxxxxxxx wrote:

Originally posted by xxxxxxxx

Riptide Pro [11-0-1022532] _<__>
...the XOXO partwould be replaced by a 16 character generated license key

Just to make sure, the XOXO part does not explicitly need to be 16 characters in length right? It could also be more or less and may contain digits and characters right?

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 23/02/2010 at 02:25, xxxxxxxx wrote:

Originally posted by xxxxxxxx

Originally posted by xxxxxxxx

Riptide Pro [11-0-1022532] <<RipPro12345-XOXOXOXOXOXOXOXO>>

...the XOXO partwould be replaced by a 16 character generated license key

Just to make sure, the XOXO part does not explicitly need to be 16 characters in length right? It could also be more or less and may contain digits and characters right?

As far as I know, your statement above is correct (within reason)... my license keys just happen to be 16 characters. I'm not sure if there's a fixed / practical upper limit on the length though.

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 07/07/2010 at 08:30, xxxxxxxx wrote:

Originally posted by xxxxxxxx

Originally posted by xxxxxxxx

Ah and another question, although that has already been answered I guess but if regdate is invalid and WriteRegInfo is not suitable to be used in conjunction with the SNHook class, then it seems that it´s impossible to provide customers with a demo. So the customer would require a seperate single c4d license to test a plugin before he can buy a license for a license server environment right?

This seems to be an oversight on our side. I forwarded this as feature request / bug report.cheers,Matthias

Hi Matthias,

Do you know if this issue (can't provide evaluation/demo plugins for License Server use) was ever addressed? I am currently working with a client and trying to determine some means of them purchasing a single test/evaluation copy, before they make the big purchase.

Thanks,

Keith

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 08/07/2010 at 03:06, xxxxxxxx wrote:

I am not aware of any changes regarding this issue I am afraid. In any case I am not allowed to speak about future development, sorry.

cheers,
Matthias