Metodi di protezione Mq4.. - pagina 3

 
kum01049:

lettura del registro non così aiuto pieno

/ / + ----------------------------------------------- ------------------- +


/ / | Readreg.mq4 | 
/ / + -------------------- ---------------------------------------------- + 
# property  copyright  " "
# Property  Link       "  "
 
//————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————— 
// LIBRARY WORK WITH РЕЕСТРОМ 
//————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————— 
#import  " advapi32.dll "
    int  RegOpenKeyA ( int  hkey , string  lpSubKey , int  phkResult []) ;
     int  RegCloseKey ( int  hkey ) ;
     int  RegQueryValueExA ( int  hkey , string  lpValueName , int  lpReserved , int  lpType [] , string  lpData , int  lpcbData []) ;
     int  RegSetValueExA ( int  hkey , string  lpValueName , int  Reserved , int  dwType , string  lpData , int  cbData ) ;

poiché le stringhe B600 > sono UNICUDE dovete adattare il codice per esempio RegOpenKeyW e non RegOpenKeyA
 
https://www.mql5.com/en/articles/1572
 
Che ne dite di codificare un hash del file e poi codificarlo per controllarlo a runtime.
 
SDC:
Che ne dite di codificare un hash del file e poi codificarlo per controllarlo a runtime.
Metterà fuori uso il sistema, qualche esempio?
 
szgy74:
https://www.mql5.com/en/articles/1572

Questi sono superati!
 
Poi, devi chiedere a qualcuno di codificarlo per te.
 
se siete interessati, posso farlo
 
ozod0309:
se siete interessati, posso farlo
Allora fallo e pubblica qui il risultato. La pubblicità non è permessa su questo forum.
 
kum01049:
#importare "Kernel32.dll"
bool GetVolumeInformationA(string RootPathName,
string VolumeNameBuffer, int VolumeNameSize,
int& VolumeSerialNumber[], int MaximumComponentLength,
int FileSystemFlags, string FileSystemNameBuffer,
int FileSystemNameSize);
#importare
//+------------------------------------------------------------------+*/
stringa SystemDriveSerialNumber(stringa sDrive) {
int iVolumeSerialNumber[1]={0};
stringa sVolumeSerialNumber="Lxxxx";
if(GetVolumeInformationA(sDrive+":\\", " ", 15, iVolumeSerialNumber, 0, 0, " ", 15))
{
sVolumeSerialNumber=IntegerToHexString(iVolumeSerialNumber[0]);
sVolumeSerialNumber=StringConcatenate(StringSubstr(sVolumeSerialNumber,0,4), "-", StringSubstr(sVolumeSerialNumber,4));
}
return(sVolumeSerialNumber);

questo non funziona


GetVolumeInformationA =============>GetVolumeInformationW

sei il benvenuto :)

 
appleparty:

GetVolumeInformationA =============>GetVolumeInformationW

sei il benvenuto :)

A meno che non vi dispiaccia che questa funzione restituisca zero su ogni Mac.
Motivazione: