How to make Injector - Visual basic 2008
This is tutorial how to make Warrock Injector in Visual basic 2008..
What you need if you want to make it:
- Microsoft Visual basic 2008
- Know the basics..
So let's make your first Injector =)
First, open Visual basic 2008, and click on "File" --> "New Project"
And choose your project's name..
Then press "OK"

Now you'll see a new form..
You need: 1 Label & 1 Timer..
So add them, it's should to be like this:

If you did it, now you can to write the code
So double click on the form, and you will see some words..
Remove the words, it's should to be like this:

Now add this code:
After you add the code, click on the "Debug" button..
And this is the result:

It's work!
Stop the "Debug", and save your project =)
If you don't know how, i made for you screen:

Go to the folder (where you saved your project) and find the injector
You made your first injector =)
If you like my tutorial, don't forget to press thanks!
Btw, i made the injector without design..
Try to add design yourself /
What you need if you want to make it:
- Microsoft Visual basic 2008
- Know the basics..
So let's make your first Injector =)
First, open Visual basic 2008, and click on "File" --> "New Project"
And choose your project's name..
Then press "OK"

Now you'll see a new form..
You need: 1 Label & 1 Timer..
So add them, it's should to be like this:

If you did it, now you can to write the code

So double click on the form, and you will see some words..
Remove the words, it's should to be like this:

Now add this code:
Code:
Public Class Form1
Private TargetProcessHandle As Integer
Private pfnStartAddr As Integer
Private pszLibFileRemote As String
Private TargetBufferSize As Integer
Public Const PROCESS_VM_READ = &H10
Public Const TH32CS_SNAPPROCESS = &H2
Public Const MEM_COMMIT = 4096
Public Const PAGE_READWRITE = 4
Public Const PROCESS_CREATE_THREAD = (&H2)
Public Const PROCESS_VM_OPERATION = (&H8)
Public Const PROCESS_VM_WRITE = (&H20)
Public Declare Function ReadProcessMemory Lib "kernel32" ( _
ByVal hProcess As Integer, _
ByVal lpBaseAddress As Integer, _
ByVal lpBuffer As String, _
ByVal nSize As Integer, _
ByRef lpNumberOfBytesWritten As Integer) As Integer
Public Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" ( _
ByVal lpLibFileName As String) As Integer
Public Declare Function VirtualAllocEx Lib "kernel32" ( _
ByVal hProcess As Integer, _
ByVal lpAddress As Integer, _
ByVal dwSize As Integer, _
ByVal flAllocationType As Integer, _
ByVal flProtect As Integer) As Integer
Public Declare Function WriteProcessMemory Lib "kernel32" ( _
ByVal hProcess As Integer, _
ByVal lpBaseAddress As Integer, _
ByVal lpBuffer As String, _
ByVal nSize As Integer, _
ByRef lpNumberOfBytesWritten As Integer) As Integer
Public Declare Function GetProcAddress Lib "kernel32" ( _
ByVal hModule As Integer, ByVal lpProcName As String) As Integer
Private Declare Function GetModuleHandle Lib "Kernel32" Alias "GetModuleHandleA" ( _
ByVal lpModuleName As String) As Integer
Public Declare Function CreateRemoteThread Lib "kernel32" ( _
ByVal hProcess As Integer, _
ByVal lpThreadAttributes As Integer, _
ByVal dwStackSize As Integer, _
ByVal lpStartAddress As Integer, _
ByVal lpParameter As Integer, _
ByVal dwCreationFlags As Integer, _
ByRef lpThreadId As Integer) As Integer
Public Declare Function OpenProcess Lib "kernel32" ( _
ByVal dwDesiredAccess As Integer, _
ByVal bInheritHandle As Integer, _
ByVal dwProcessId As Integer) As Integer
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String) As Integer
Private Declare Function CloseHandle Lib "kernel32" Alias "CloseHandleA" ( _
ByVal hObject As Integer) As Integer
Dim ExeName As String = IO.Path.GetFileNameWithoutExtension(Application.ExecutablePath)
Private Sub Inject()
On Error GoTo 1
Timer1.Stop()
Dim TargetProcess As Process() = Process.GetProcessesByName("WarRock")
TargetProcessHandle = OpenProcess(PROCESS_CREATE_THREAD Or PROCESS_VM_OPERATION Or PROCESS_VM_WRITE, False, TargetProcess(0).Id)
pszLibFileRemote = Application.StartupPath & "\" + ExeName + ".dll"
pfnStartAddr = GetProcAddress(GetModuleHandle("Kernel32"), "LoadLibraryA")
TargetBufferSize = 1 + Len(pszLibFileRemote)
Dim Rtn As Integer
Dim LoadLibParamAdr As Integer
LoadLibParamAdr = VirtualAllocEx(TargetProcessHandle, 0, TargetBufferSize, MEM_COMMIT, PAGE_READWRITE)
Rtn = WriteProcessMemory(TargetProcessHandle, LoadLibParamAdr, pszLibFileRemote, TargetBufferSize, 0)
CreateRemoteThread(TargetProcessHandle, 0, 0, pfnStartAddr, LoadLibParamAdr, 0, 0)
CloseHandle(TargetProcessHandle)
1: Me.Close()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If IO.File.Exists(Application.StartupPath & "\" + ExeName + ".dll") Then
Dim TargetProcess As Process() = Process.GetProcessesByName("HSUpdate")
If TargetProcess.Length = 0 Then
Me.Label1.Text = ("Waiting for Warrock.exe")
Else
Timer1.Stop()
Me.Label1.Text = "Done..."
Call Inject()
End If
Else
Me.Label1.Text = ("" + ExeName + ".dll not found")
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Timer1.Interval = 50
Timer1.Start()
End Sub
End Class
And this is the result:

It's work!

Stop the "Debug", and save your project =)
If you don't know how, i made for you screen:

Go to the folder (where you saved your project) and find the injector

You made your first injector =)
If you like my tutorial, don't forget to press thanks!
Btw, i made the injector without design..
Try to add design yourself /








