Re: Creating machine-specific, licensed IDL software [message #57588] |
Mon, 17 December 2007 04:25  |
devin.white
Messages: 50 Registered: March 2007
|
Member |
|
|
You might be able to use the LMGR function within your program to
retrieve the LMhostID (MAC address) for the machine your program is
currently running on. You program could then compare that returned
string against one that contains an approved MAC address and make a
decision as to whether or not it should continue to run. LMGR returns
an address as a twelve character string with no hyphens (e.g,
123456ABCDEF instead of 12-34-56-AB-CD-EF). If the machine has more
than one network interface card (including wireless), the string
returned from LMGR will contain the addresses for all of the ones that
are currently active. It will look something like this:
"123456ABCDEF 7891011GHIJK"
You'd have to use STRSPLIT or STRMID to extract the addresses to
separate strings prior to comparing them to the approved address.
On Dec 15, 1:59 pm, "M. Katz" <MKatz...@yahoo.com> wrote:
> I'm contemplating creating commercial software that will be licensed
> for use on specific machines. In an effort not to re-invent the wheel,
> can anyone provide a good recommendation for how to implement such a
> system.
>
> I'd like my program to be able to check either a MAC address or
> something similar that's machine-specific. I want to avoid having a
> system where the program needs to 'phone home' on every load to check
> on a license validity using the internet.
>
> Of course, I'd like to be able to do this in a way that's cross-
> platform, but I'd gladly settle for writing different methods for
> different platforms.
>
> If I'm distributing code that will execute on the IDL VM, perhaps
> there's a way to specify a given machine's installation in a non-
> transferrable way?
>
> Thanks!
> M. Katz
|
|
|