IndeksSelamat DatangPendaftaranLogin
Forum
Similar topics
December 2017
MonTueWedThuFriSatSun
    123
45678910
11121314151617
18192021222324
25262728293031
CalendarCalendar
Clock

Share | 
 

 membuat dll dengan c++

Topik sebelumnya Topik selanjutnya Go down 
PengirimMessage
subma
Moderator
Moderator
avatar

Jumlah posting : 141
Join date : 01.11.10
Age : 27
Lokasi : medan

PostSubyek: membuat dll dengan c++   Mon Nov 08, 2010 12:49 am

1. Jalankan Visual C++ 2008 Express Edition, buat sebuah project dengan cara akses menu File - New - Project atau dengan menekan tombol CTRL + SHIFT + N.
nih ssnya gambar ke 1
http://adf.ly/AagU

2. Pada jendela New Project, pilih Empty Project (1) pada bagian Templates, kemudian pada kolom Name masukkan nama project (2) dan klik tombol OK (3)
nih ss gambar ke 2
http://adf.ly/Aagh

3. Project telah berhasil dibuat. Pada bagian Solution Explorer, klik kanan pada nama project (1), kemudian pilih menu Properties (2).
nih ss gamar ke 3
http://adf.ly/Aagr

4. Jendela project properties akan tampil. Pada tree menu sebelah kiri, pilih Configuration Properties (1), kemudian bagian opsi Project Defaults, ubah opsi Configuration Type menjadi Dynamic Library (.dll) (2), kemudian tekan tombol OK (3) untuk melakukan perubahan.
nih ss gambar ke 4
http://adf.ly/AahD

5. Pada jendela Add New Item yang tampil, pada bagian templates pilih C++ File (.cpp) (1), beri nama 'Main.cpp' (2) pada bagian kolom Name, kemudian tekan tombol OK (3).
nih ss gambar ke 5
http://adf.ly/AahV

6. Sebuah file bernama 'Main.cpp' berhasil dibuat. Silakan masukkan kode-kode di bawah ini pada file tersebut, kemudian simpan (save).
nih ss gambar ke 6
http://adf.ly/Aahl

7. Berikutnya adalah membuat sebuah file bernama Main.cpp untuk memasukkan kode-kode utama, dengan cara pilih direktori Source Files (1) pada bagian Solution Explorer, kemudian klik menu Project - Add New Item (2) atau dengan menekan tombol CTRL + SHIFT + A.
masukan kode nih contoh misi mayor yang saya buat sendiri dan sudah di coba
#define _CRT_SECURE_NO_WARNINGS
#include
#include

// definisikan variable dengan 'window title', 'window classname' dan modul
char *pProcessWindowTitle = "Point Blank";
char *pProcessWindowClass = "I3VIEWER";
char *pProcessModuleName = "PointBlank.i3Exec";

// etc...
UINT_PTR uipUserRankValue = 35; // major? Very Happy
UINT_PTR uipUserPointsValue = 999999; // OMG!

UINT_PTR uiptrFinalRank, uiptrFinalPoints;

bool isInitMmhMemory = true;

DWORD dwProcessID;
UINT_PTR uipMmhBaseAddress;
HANDLE hProcess;

DWORD GetModuleBase(LPSTR lpModuleName, DWORD dwProcessId)
{
MODULEENTRY32 lpModuleEntry = {0};
HANDLE hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, dwProcessId);

if(!hSnapShot)
return NULL;
lpModuleEntry.dwSize = sizeof(lpModuleEntry);
BOOL bModule = Module32First( hSnapShot, &lpModuleEntry );
while(bModule)
{
if(!strcmp( lpModuleEntry.szModule, lpModuleName ) )
{
CloseHandle(hSnapShot);
return (DWORD)lpModuleEntry.modBaseAddr;
}
bModule = Module32Next( hSnapShot, &lpModuleEntry );
}
CloseHandle( hSnapShot );
return NULL;
}

// DeRef() = credit L. Spiro (MHS)
UINT_PTR DeRef( UINT_PTR _uiptrPointer ) {
UINT_PTR uiptrRet;
if (!::ReadProcessMemory(hProcess, reinterpret_cast(_uiptrPointer), &uiptrRet, sizeof(uiptrRet), NULL)) { return 0UL; }
return uiptrRet;
}

// inisialisasi proses
void InitApplicationProcess()
{
bool isFindWindow = true;
HWND hWnd = NULL;

while(isFindWindow)
{
if((hWnd = FindWindowA(pProcessWindowClass, pProcessWindowTitle)) != NULL) // jika window ditemukan
{
isFindWindow = false;
}
Sleep(500);
}

GetWindowThreadProcessId(hWnd, &dwProcessID);
hProcess = OpenProcess(PROCESS_ALL_ACCESS|PROCESS_VM_OPERATION|PROCESS_VM_READ|PROCESS_VM_WRITE|PROCESS_QUERY_INFORMATION, FALSE, dwProcessID);
}

void MajorMissionHack()
{
if(isInitMmhMemory)
{
uipMmhBaseAddress = GetModuleBase(pProcessModuleName, dwProcessID);

// misal: pointer yang didapat = PointBlank.i3Exec+00471234 dengan offset 0xA12, tuliskan seperti di bawah!
uiptrFinalRank = DeRef(uipMmhBaseAddress + 0x4XXXXX) + 0xXXX; // User rank pointer - masked, sorry!
uiptrFinalPoints = DeRef(uipMmhBaseAddress + 0x4XXXXX) + 0xXXX; // User points pointer - masked, sorry!

isInitMmhMemory = false;
}

// WriteProcessMemory pada pointer 'rank', berikan nilai uipUserRankValue (35)
::WriteProcessMemory(hProcess, reinterpret_cast(uiptrFinalRank), &uipUserRankValue, sizeof(uipUserRankValue), NULL);

// WriteProcessMemory pada pointer 'points', berikan nilai uipUserPointsValue (999999) LOL!
::WriteProcessMemory(hProcess, reinterpret_cast(uiptrFinalPoints), &uipUserPointsValue, sizeof(uipUserPointsValue), NULL);
}

void LovelyLoopy()
{
// ok, berikan salam dulu! Very Happy
MessageBox(0, "DLL berhasil di-inject. Lanjutkan!", "Hello World", MB_OK + MB_ICONASTERISK);

InitApplicationProcess();

while(1) // loop selamanya Very Happy
{
if(GetAsyncKeyState(VK_F12)&1) // jika F12 ditekan
{
MajorMissionHack(); // panggil fungsi 'MajorMissionHack()'
Sleep(500);
}

Sleep(1);
}
}

BOOL WINAPI DllMain(HMODULE hDll, DWORD dwReason, LPVOID lpReserved)
{
DisableThreadLibraryCalls(hDll);

if(dwReason == DLL_PROCESS_ATTACH)
{
CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)LovelyLoopy, NULL, NULL, NULL);
}
else if(dwReason == DLL_PROCESS_DETACH)
{
CloseHandle(hProcess);
}

return TRUE;
}


nih ss nya gambarnya ke 7
http://adf.ly/AaiE

8. Jika kode sudah disimpan (save), langkah berikutnya adalah membentuk file DLL-nya dengan cara klik menu Build - Build Solution atau dengan menekan tombol F7.
nih ss gamabar ke 8
http://adf.ly/Aaix

9. Setelah proses build solution, pada jendela Output akan menampilkan hasil dari proses compile/build tersebut, jika tidak ada kesalahan (error) berarti kode-kode sudah benar dan file DLL sudah terbentuk. Jika ternyata ada kesalahan (error), silakan periksa langkah-langkah sebelumnya jika ada yang terlewatkan.
nih ss gambar ke 9
http://adf.ly/Aajf

10. Kemudian buka direktori tempat project anda disimpan, dalam tutorial ini ane simpan di direktori D:\!PROJECTS!\SukaSukaEnte dan buka direktori yang bernama Debug di dalamnya (sesuaikan letak direktori anda).
nih ss gambar ke 10
http://adf.ly/Aak1
Bisa kita lihat ada beberapa file yang terbentuk, namun yang kita perlukan hanyalah file yang berekstensi .dll, karena file tersebut yang akan kita injeksikan ke proses program/game. Agar tidak membingungkan, sekaligus ane copy-kan file injector-nya (x1nject.exe) ke direktori tersebut.

11. Kemudian jalankan injector (x1nject.exe), ubah pada kolom 'What to inject' dengan nama proses program/game, (contoh: PointBlank.exe), pada bagian 'Add to injection list' tambahkan file .dll yang telah kita buat dengan menekan tombol Browse dan cari pada direktori Debug project kita.
Kembali Ke Atas Go down
http://juliyantie.blogspot.com
 
membuat dll dengan c++
Topik sebelumnya Topik selanjutnya Kembali Ke Atas 
Halaman 1 dari 1
 Similar topics
-
» Cara Membuat Aplikasi Facebook
» Taktik Memutuskan Hubungan dengan Kekasih
» 10 Negara dengan Jumlah Perokok TerTinggi di Dunia
» Membuat Payudara Jadi Indah
» membuat pembicaraan/obrolan dengan pacar selalu hangat

Permissions in this forum:Anda tidak dapat menjawab topik
 :: F.K.B | Tips,Trick :: Tips teknologi-
Navigasi: