licenseServer WritePlugInfo

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

On 05/02/2009 at 02:38, xxxxxxxx wrote:

User Information:
Cinema 4D Version:   R11 
Platform:   Windows  ; Mac  ;  Mac OSX  ; 
Language(s) :     C++  ;

---------
   Hi,

another quick question about the LicenseServer.

I can get the seriaInfo no problem, after validation i save the serial with WritePluginInfo.
On next call of my plugin, ReadPluginInfo returns nothing so the serial Dialog is invoked again.

Do i have to save and read serials differently when a License Server is used ?
If there is no License Server my SerialCode works fine.

I noticed some new Functions: Read/WriteRegInfo, should i use these instead with the LicenseServer ?
The API sais its about Login Data though..

EDIT2:
i just noticed in the linked thread below, the op mentioned the customer uses vista. Its the same for my customer, so might this be a permission issue, writing stuff to the filesystem with Vista?
Does te user maybe have to have admin rights so that it will work?

thanks,
Daniel

EDIT:
i noticed theres another thread with just the same question, but it doesnt answer it, so i have to bring it up again..

http://www.plugincafe.com/forum/display_topic_threads.asp?ForumID=4&TopicID;=3887

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

On 05/02/2009 at 07:45, xxxxxxxx wrote:

It seems down to the license server and not Vista. I can confirm this here on my Windows XP system running the license server. I will report this to the developers.

cheers,
Matthias

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

On 07/02/2009 at 05:03, xxxxxxxx wrote:

I'm thinking about a quick solution for my customer: How about using a txt file containing the c4dsn and plugin sn saved in the plugin's directory?

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

On 07/02/2009 at 10:21, xxxxxxxx wrote:

That's pretty much what I do, but not into the plugin directory
("not allowed") rather in the User Pref folder.

Cheers
Lennart

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

On 07/02/2009 at 10:58, xxxxxxxx wrote:

Btw. since Cinema 4D version 11.021 you can install plugins within Cinema's user pref folder. See also:

CINEMA 4D R11.021 Update

cheers,
Matthias

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

On 07/02/2009 at 11:32, xxxxxxxx wrote:

why is it "not allowed" to have files within the plugin directory? I don't want to write it, just copying during installation. It's not practical, to let the user search a special user pref directory just to place a simple txt file in it.

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

On 07/02/2009 at 13:01, xxxxxxxx wrote:

Because Vista and Leopard both forbid write access to the Applications folder (where the Cinema 4D install is and the subsequence plugins folder and your plugins). You can do OS filesystem stuff - like installation, copying files, editing files there. But you cannot write files programmatically into it. The Users folder is where they expect you to write application data.

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

On 07/02/2009 at 13:05, xxxxxxxx wrote:

I'm sure you can have files there, but reading the r11 guide, we are not
supposed to write anything into it.
I can't tell if that includes start up of Cinema.

Regarding the user finding where to place my license file I've made it
so upon starting Cinema and the plugin is not yet registered, Cinema
writes it to the correct place in the User prefs (Creating any needed
folder hierarchy after the user register input box).
This way the user can have more than one registered copy of my plugs.
Usually one or more Server licenses as well as a private local one.

Cheers
Lennart

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

On 08/02/2009 at 03:28, xxxxxxxx wrote:

OK, once again: I don't want to write any files! Just reading. But it seems, that reading also doesn't work. I just got some feedback from a customer. This should have been a temporary solution until the MAXON developers fix the WritePluginInfo bug. I prefer the crypted way to store such data, because this way you can store time periods for demos etc. If you write such data to normal files, the user just can delete it and gets a new demo period.

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

On 09/02/2009 at 07:14, xxxxxxxx wrote:

Got an answer from the developers.

**
Bool ReadRegInfo(LONG pluginid, void* buffer, LONG size)
Bool WriteRegInfo(LONG pluginid, void* buffer, LONG size)
**

These two functions were specifically introduced with R11 to write the plugin info to the local registry. Please use them in a license server enviroment.

cheers,
Matthias

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

On 09/02/2009 at 09:28, xxxxxxxx wrote:

thanks for the info, i'll check it out.

greetings,
Daniel

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

On 10/02/2009 at 10:38, xxxxxxxx wrote:

Hi,

has anybody got it working under a license-server environment using Read-/WriteRegInfo ?

For me it still does not work..

Using a non-License-Server setup Read-/Write RegInfo seems to work fine though..

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

On 11/02/2009 at 01:32, xxxxxxxx wrote:

This code is working fine here, contrary to Read-/WritePluginInfo:

> \> Bool MenuTest::Execute(BaseDocument \*doc) \> { \>      CHAR text1[] = "hello world, abcdefghijklmnopqrstuvwxyz"; \>       \>      GePrint(String(text1, St8bit)); \> \>      const LONG len = sizeof(text1); \> \>      CHAR text2[len]; \> \>      if(WriteRegInfo(1000956, text1, len)) GePrint("w success"); \> \>      if(ReadRegInfo(1000956, text2, len)) GePrint("r success"); \> \>      GePrint(String(text2, St8bit)); \> \>      return TRUE; \> } \>

cheers,
Matthias

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

On 11/02/2009 at 02:44, xxxxxxxx wrote:

I don't have a license server available. I have stressed the patience of my customers enough, I think. So by now I have implemented the solution reading/writing the license data from/to the user pref dir. This works fine and it's easier to manage several licenses. One customer has three different multi licenses(!).

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

On 11/02/2009 at 03:29, xxxxxxxx wrote:

Hey guys,

I am using my plugins folder here for everything (without problems so far). The dev kitchen is also a bit unclear concerning the modification of the plugins folder. on page 2 it says explicitly

"C4D application folder can't be modified
anymore (with the exception of "plugins") "

But on page 5 it says:

"Data can't be written into your plugin
directory anymore"

Hä? So, this is not very clear! As I said, I didn´t encounter any problems so far and no customer of mine did either.

Just wanted to mention this, though it seems to be save to use the prefs folder now.
MultiLicense also seems to be a pain currently, an easy interface class would surely make sense for future releases of the API.

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

On 11/02/2009 at 03:58, xxxxxxxx wrote:

Quote: Originally posted by Matthias Bober on 11 February 2009
>
> * * *
>
> This code is working fine here, contrary to Read-/WritePluginInfo:
> .
> .
>
> cheers,
> Matthias
>
>
> * * *

Hello Matthias,

did you test it with the license-server running, or without it ?

When i test it at home without the license server runing,
using Read-/WritePluginInfo works fine.
When my customer uses it with the license server, it doesnt work for him..

I know this sounds strange and would mean that Read-/WritePluginInfo only works faulty when a license server is running..

Maybe the error is somewhere else in my code, but thats why i need to confirm that you also tested it successfully with the license server running..

thanks!

Daniel

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

On 11/02/2009 at 04:03, xxxxxxxx wrote:

I tested it with the license server running. To summarize, use Read-/WriteRegInfo in a license server enviroment, use Read-/WritePluginInfo for single licenses.

cheers,
Matthias

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

On 12/02/2009 at 00:50, xxxxxxxx wrote:

Hi,

just to confirm this, everything is working fine now.
The problem i had in my last post was due to something else.

So as far as i can see, there's no bugs with registerung a plugin under a licenseServer environment, and its actually quite easy too.

thanks all.
Daniel