BlackWizard |
31-08-2011 09:56 PM |
لتقليل ضغط Sroking على الرام
السلام عليكم ورحمة الله وبركاته
النهاردة لقيت الموضوع دا بالصدفة لتقليل الضغط على الرام وكان مكتوب فى موقع Sroking وموقع Rev6
دا للمعالج x64
كود:
While 1
$v_SroProcesses = ProcessList("sro_client.exe")
For $i = 1 To $v_SroProcesses[0][0]
$v_ProcInfo = ProcessGetStats($v_SroProcesses[$i][1])
If IsArray($v_ProcInfo) Then
If ($v_ProcInfo[0] / 1024 >= 100000) Then _SM_CleanRam($v_SroProcesses[$i][1])
EndIf
Next
Sleep(5*60000) ;It will release ram once every 5 minutes you can change this to whatever you like
WEnd
Func _SM_CleanRam($v_ProcessPID)
If @OSArch <> "X86" Then
Local $h_ProcHandle = DllCall("kernel32.dll", 'int', 'OpenProcess', 'int', BitOR(0x0400, 0x0100), 'int', False, 'int', $v_ProcessPID)
$v_Return = DllCall("psapi.dll", 'int', 'EmptyWorkingSet', 'long', $h_ProcHandle[0])
DllCall('kernel32.dll', 'int', 'CloseHandle', 'int', $h_ProcHandle[0])
Return $v_Return
EndIf
Return 0
EndFunc
ودا للمعالج X32 (86bit
كود:
While 1
$v_SroProcesses = ProcessList("sro_client.exe")
For $i = 1 To $v_SroProcesses[0][0]
$v_ProcInfo = ProcessGetStats($v_SroProcesses[$i][1])
If IsArray($v_ProcInfo) Then
If ($v_ProcInfo[0] / 1024 >= 100000) Then _SM_CleanRam($v_SroProcesses[$i][1])
EndIf
Next
Sleep(5*60000) ;It will release ram once every 5 minutes you can change this to whatever you like
WEnd
Func _SM_CleanRam($iPID = -1)
If $iPID <> -1 Then
Local $hHandle = DllCall("kernel32.dll", 'int', 'OpenProcess', 'int', 0x1f0fff, 'int', False, 'int', $iPID)
Local $hReturn = DllCall("psapi.dll", 'int', 'EmptyWorkingSet', 'long', $hHandle[0])
DllCall('kernel32.dll', 'int', 'CloseHandle', 'int', $hHandle[0])
Else
$hReturn = DllCall("psapi.dll", 'int', 'EmptyWorkingSet', 'long', -1)
EndIf
Return $hReturn[0]
EndFunc ;==>_SM_CleanRam
والطريقة اننا نعمله سكريبت ببرنامج Auto It
http://www.autoitscript.com/site/autoit/
ودول سكريبتات انا جربت اعملهم دلوقتى
x64
http://www.mediafire.com/?ierwewu1bx68kqo
x32
http://www.mediafire.com/?7q2bfhu144d4lkh
المصدرين
http://www.sroking.com/ipb/index.php?showtopic=33971
http://www.rev6.com/forum/showthread...ther-Processes
وارجو من مشرف الفحص التاكد من الطريقة اذا كانت سليمة ام لا؟ وارجو التاكد من الملفات التى رفعتها
تحياتى
|