(09-06-2020, 04:19 PM)kOuD3LkA كتب : int CreateRemoteThreadInject(unsigned long ID, const char* dll)
{
//Declare the handle of the process.
void *Process;
//Declare the memory we will be allocating
void *Memory;
//Declare LoadLibrary
void *LoadLibraryA;
void *thread=NULL;
unsigned long threadID;
//If there's no process ID we return false.
if (!ID)
{
return false;
}
هناك بعض الملاحظات:
1. نوع القيمة المرجعة CreateRemoteThreadInject
ينبغي أن نستخدم return 0; بدلاً من return false; لأن الدالة تُرجِع قيمة من النوع int.
2. استخدام void * ليس الأمثل دائمًا . ينبغي أن نستخدم الأنواع المناسبة مثل HANDLE في حالة Process و FARPROC في حالة LoadLibraryA.
3.عند تخصيص الذاكرة في عملية أخرى ، يجب استخدام دالة VirtualAllocEx
والله أعلم
" اللهم أحسن خاتمتنا وأخرجنا من الدنيا علي خير"