DLL Help

 

Hi

I m helping a trader to develop an indicator and we don't want the end user distribute the indicator to other people who is not paying for it. So we have a basic idea to lock the hard disk serial no from the client machine and then this information will be sending back to our server side to cross check with our database whenever the indicator is launched.

Does any one know what Windows DLL can be used in MQL4 to reterive the hardware information (such as harddisk no.)

Many thanks

tom

 

TT

This should get you started http://software.techrepublic.com.com/abstract.aspx?docid=332476

You could go for the network card MAC ID instead..?

But with both there is the problem when a legitimate user migrates to a.n.other PC...

Why not just use https://docs.mql4.com/account/AccountNumber to check the live account number is licensed?

-BB-

 
BarrowBoy wrote >>

TT

This should get you started http://software.techrepublic.com.com/abstract.aspx?docid=332476

You could go for the network card MAC ID instead..?

But with both there is the problem when a legitimate user migrates to a.n.other PC...

Why not just use https://docs.mql4.com/account/AccountNumber to check the live account number is licensed?

-BB-

Thanks BB

We are think of using both. Some registered user who paid for the trial and then open many demo accounts for others who are never pay for it, and it is tedious to keep track how many demo/or live account they are going to open, so we want to license to one PC for 1 indicator. I don't really bother how many times they migrate the HD to other machine so long the indicator only ties with that HD.

And I found this windows DLL can do the job and is free. http://msdn.microsoft.com/en-us/library/aa364993(VS.85).aspx. Just not so sure how to call it from MQL4

Anyone who uses it before. Maybe can share with me

Many Thanks

Tom

 
TT_FX1:

Thanks BB

We are think of using both. Some registered user who paid for the trial and then open many demo accounts for others who are never pay for it, and it is tedious to keep track how many demo/or live account they are going to open, so we want to license to one PC for 1 indicator. I don't really bother how many times they migrate the HD to other machine so long the indicator only ties with that HD.

And I found this windows DLL can do the job and is free. http://msdn.microsoft.com/en-us/library/aa364993(VS.85).aspx. Just not so sure how to call it from MQL4

Anyone who uses it before. Maybe can share with me

Many Thanks

Tom


All this is possible for a programmer and really wouldn't take alot of time. There are things you need to consider however.

a) What if the user doesn't want to migrate their hard drive to another machine?

b) If their hard drive crashes how are you going to validate they are actually a registered user so that you may provide a new key in your database?


The API function inside kernel32.dll you reference looks like it can pull the Volume Serial Number for the HDD.

Once obtaining this.. you could hardcode in a server url(that would check if its registered) and return a value back to your dll. If registered the dll would continue, if not it would break out of its code execution.

ie: http://www.myserver.com/checkifregistered.php?hdd_id=xxxxxxxxxxxx

checkifregistered.php would connect to your database, run a SQL statement, and then return a result which would be returned back to the dll.


I can discuss this further in email or chat if needed.

Reason: