THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 12/12/2007 at 08:15, xxxxxxxx wrote:
Cinema 4D Version: 9.6+
Platform: Windows ; Mac ; Mac OSX ;
Language(s) : C++ ;
I noticed the IP functions in the 9.6 sdk documentation, but there are no examples showing how you'd use them. It looks like they could be used to maybe set up an online version checker, so that a plugin could go online and check for an update, and then notify the user that a new version is available for download.
Is that possible? And if so how would you go about setting that up?
On 12/12/2007 at 16:44, xxxxxxxx wrote:
I also noticed them and would be interested to know how to set up. I have no time to check myself currently, so I definetly would appreciate an example. :)
On 13/12/2007 at 13:01, xxxxxxxx wrote:
Just subscribing - I'd really like an example too.
On 18/12/2007 at 16:57, xxxxxxxx wrote:
No info on these?
On 18/12/2007 at 18:10, xxxxxxxx wrote:
Can you be more specific about the IP functions involved?
Oh, I see these under c4d_general as "GeIP....()". I tried the SendMailAvailable() and SendMail() without any success (say, for a quick means of sending me logs). SendMailAvailable() always returned FALSE.
class IpConnection is not shown in the SDK documentation. As a matter of fact, it is not defined anywhere in the R9.6 or R10 SDK (Resource folder). These methods are probably 'not-ready-for-us' methods.
On 18/12/2007 at 18:55, xxxxxxxx wrote:
Well, for what I wanted to do, it may not even be necessary to know what's in the IpConnection class. It may only be necessary to pass it to the other functions, like the GeIpReadBytes() function.
Here's a wild guess as to what might need to be done:
\> IpConnection* ipc = GeIpOpenOutgoing(hostname, thread, ferr);
\> LONG size = GeIpBytesInInputBuffer( ipc);
\> GeIpReadBytes(ipc, buf, size)
Then somehow compare the version number retrieved from the connection and stored in the buffer, to the version number stored in the plugin.
But there are still a lot of questions as to how those functions are actually used. A big question would be which thread to safely do it in (most likely a thread that is running when Cinema 4D is idle), and how would you go about getting a pointer to that thread so it could be passed to the GeIpOpenOutgoing() function?
I really don't know anything about online programming, so there's probably a lot more to it than the simple guess above, but it would be nice if plugins could do an online check, so that users who change their email address and then don't notify the plugin developer, can still be informed of updates. ;)
On 19/12/2007 at 02:51, xxxxxxxx wrote:
This is also something I have to look into. I try to get an example. Will let you know if I have something working ready.
On 03/01/2008 at 17:12, xxxxxxxx wrote:
Any word on this?
On 04/01/2008 at 06:19, xxxxxxxx wrote:
i need these infos too ;)
On 22/01/2008 at 08:43, xxxxxxxx wrote:
Just a little friendly reminder and bump. Anything yet?
On 21/02/2008 at 15:42, xxxxxxxx wrote:
Still no info?
On 21/02/2008 at 16:18, xxxxxxxx wrote:
Sorry for the delay but this IP stuff is complete new territory for me so I have to wrap my head around it first. As soon as I have something working I will post it here.
On 21/02/2008 at 16:43, xxxxxxxx wrote:
No Problem. I was just bumping the thread to keep it active.
I think a lot of us plugin developers would love to be able to implement an online live update notification in our plugins. ;o)
On 28/03/2008 at 18:20, xxxxxxxx wrote:
Just bumping this thread up again. ;o)
On 28/03/2008 at 18:21, xxxxxxxx wrote:
On 31/03/2008 at 03:06, xxxxxxxx wrote:
ipconnection* ipc = GeIpOpenOutgoing(hostname, thread, ferr);?
How do you initialize the thread and ferr? Thanks :)
I try to catch the Bytes via WireShark Network Protocol, perhaps I get a little overview, how to control it.
On 31/03/2008 at 03:31, xxxxxxxx wrote:
I'll try to sort this out this week and to provide an example how to use these functions.
On 31/03/2008 at 05:10, xxxxxxxx wrote:
Great announcement :)
On 31/03/2008 at 07:07, xxxxxxxx wrote:
In the meantime if we can't get a working example, an alternative might be to create a button named "Check for Updates" and then use the GeOpenHTML() function to open a web page in the default browser when the button is clicked. ;o)
On 04/04/2008 at 02:39, xxxxxxxx wrote:
Unfortunatly I still can't provide you with an example. I have to do some more background reading about this subject (TCP/IP and all).