Advertisement
fastman92

StartLimitAdjuster

Feb 7th, 2015
295
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.84 KB | None | 0 0
  1. // Starts limit adjuster
  2. void StartLimitAdjuster(HMODULE hModule)
  3. {
  4.     // printf_MessageBox("Attach debugger now!");
  5.     // OutputDebugStringA("Starting limit adjuster");
  6.  
  7.     // check the .exe
  8.     wchar_t gta_sa_path[MAX_PATH];
  9.     GetModuleFileNameW(NULL, gta_sa_path, _countof(gta_sa_path));
  10.  
  11.     __int64 filesize = GetFileSize(gta_sa_path);
  12.  
  13.    
  14.  
  15.     switch(filesize)
  16.     {
  17.        
  18.     case 3088896:
  19.         {
  20.             pLimitAdjuster = new Game_GTAVC::CLimitAdjusterForGame();
  21.             pLimitAdjuster -> InitInstance(hModule, (DWORD)filesize);
  22.  
  23.             CGenericLogStorage::SaveFormattedTextLn("Game detected: GTA VC 1.0 3088896 bytes");
  24.             break;
  25.         }
  26.        
  27.     case 14383616:
  28.         {
  29.            
  30.  
  31.             pLimitAdjuster = new Game_GTASA::CLimitAdjusterForGame();
  32.             pLimitAdjuster -> InitInstance(hModule, (DWORD)filesize);
  33.            
  34.             CGenericLogStorage::SaveFormattedTextLn("Game detected: GTA SA 1.0 HOODLUM 14383616 bytes");
  35.  
  36.            
  37.             break;
  38.         }
  39.     case 15505792:
  40.         {
  41.             pLimitAdjuster = new Game_GTAIV::CLimitAdjusterForGame();
  42.             pLimitAdjuster -> InitInstance(hModule, (DWORD)filesize);
  43.  
  44.             CGenericLogStorage::SaveFormattedTextLn("Game detected: GTA IV 1.7 15505792 bytes");
  45.             break;
  46.         }
  47.     default:
  48.         {
  49.             CGenericLogStorage::SaveFormattedTextLn("Unable to detect the game!");
  50.            
  51.             printf_MessageBox(
  52.                 PROJECT_NAME " requires one of the following EXE files:\n"
  53.                 "\n1. GTA Vice City v1.0 EXE:\n"
  54.                 "   EXE size:  3 088 896 bytes"
  55.  
  56.                 "\n2. GTA San Andreas v1.0 [US] HOODLUM No-CD Fixed EXE:\n"
  57.                 "   EXE size:  14 383 616 bytes"
  58.             );
  59.  
  60.             pLimitAdjuster -> TerminateProcess();
  61.             return;
  62.         }
  63.     }      
  64.  
  65.     pLimitAdjuster -> InitLimitAdjuster();
  66.    
  67.    
  68.     CGenericLogStorage::SaveFormattedTextLn(
  69.         "Number of memory changes made: %d",
  70.         CPatch::GetNumberOfMemoryChanges()
  71.         );
  72.  
  73.     CGenericLogStorage::WriteLineSeparator();
  74.  
  75.     // Flush log file
  76.     CGenericLogStorage::SaveWorkBuffer();
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement