Witam, widzialem kiedys kod zrodlowy komponentu do delphi, ktory umozliwial zalozenie hook'a na proces, uniemozliwiajac jego zabicie przez obcy program. Da sie takie cos napisac w BCB?
P.S. Szukam tego kodu na delphi, jak znajde to go dodam tutaj
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
namespace Windows // zwracam uwagę na ten fragment włączający biblioteki do projektu
{
#include "Aclapi.h"
#include "psapi.h"
}
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
DWORD SetPermissions(int PID)
{
DWORD dwErr;
HANDLE hpWriteDAC = OpenProcess(WRITE_DAC, FALSE, pid);
dwErr = GetLastError();
SID security = { SID_REVISION, 1, SECURITY_WORLD_SID_AUTHORITY, 0 };
EXPLICIT_ACCESS ea =
{
PROCESS_TERMINATE,
DENY_ACCESS,
NO_INHERITANCE,
{
0, NO_MULTIPLE_TRUSTEE, TRUSTEE_IS_SID, TRUSTEE_IS_USER,
reinterpret_cast<char* >( &security )
}
};
ACL* pdACL = 0;
dwErr = SetEntriesInAcl(1, &ea, 0, &pdACL);
dwErr = SetSecurityInfo(hpWriteDAC, SE_KERNEL_OBJECT,
DACL_SECURITY_INFORMATION, 0, 0, pdACL, 0);
LocalFree(pdACL);
return dwErr;
}
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
SetPermissions(GetCurrentProcessId()); // numer procesu programu
}
Powrót do Ogólne problemy z programowaniem
Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 52 gości