DWORD InitGameguardAuth(LPSTR szGGAuthName, DWORD nNumberOfUser) { ggGlobal.dwProtocolCount = 0; ggGlobal.nMaxCount = nNumberOfUser; ggGlobal.lpCurrentAuthProtocol = NULL; ggGlobal.szGGAuthName[0] = 0; if ( szGGAuthName != NULL && szGGAuthName[0] != '\0') { if ( szGGAuthName[strlen(szGGAuthName)-1] == '\\' ) { strcpy(szGGAuthName, ggGlobal.szGGAuthName); } else { sprintf(ggGlobal.szGGAuthName,"%s%c", szGGAuthName, '\\'); } } DWORD dwResult = LoadAuthProtocol("ggauth.dll", TRUE); if ( dwResult != 0 ) { CleanupGameguardAuth(); return dwResult; } return 0; }
void CNProtectManager::Release() { CleanupGameguardAuth(); }