Нужно вызвать функцию очистки файлового кеша (EmptyWorkingSet). Ей нужно передать хендел процесса. Но видимо что-то делаю не так, потому что функция всегда возвращает 0 (что по документации означает ошибку). Код ошибки я тоже не могу получить, наверное не правильно вызываю GetLastError.
В EmptyWorkingSet пробовал передавать значения из функций getmypid, GetCurrentProcessId (
Kernel32.lib) и GetActiveWindow (user32.dll).
Я лошара по части работы с WinApi, может чего то не понимаю?
Документация по функции EmptyWorkingSet:
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx
В EmptyWorkingSet пробовал передавать значения из функций getmypid, GetCurrentProcessId (
Kernel32.lib) и GetActiveWindow (user32.dll).
Я лошара по части работы с WinApi, может чего то не понимаю?
PHP код:
function EmptyWorkingSet( $Handle ){
$FFI = new FFI( "[lib='Psapi.dll'] int EmptyWorkingSet ( int hProcess ); ");
$res = $FFI->EmptyWorkingSet( $Handle );
return $res;
}
function GetLastError(){
$FFI = new FFI( "[lib='Kernel32.dll'] int GetLastError (); ");
$res = $FFI->GetLastError();
return $res;
}
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx