Hola, un saludo a TODOS! como el topic lo indica. Quisiera Inyectar un DLL a un proceso. El src lo encontré en la red, hice algunas modificaciones a mis necesidades y lo tengo ya casi completo ejemplo "inyeccion.exe" el DLL es aparte.. La función del DLL, es que después de la Inyeccion al proceso indicado, abra una ventana con una lista de configuraciones (on/off, menu etc...)
Al abrir el "inyeccion.exe" queda en espera del proceso que voy a inyectar.. Abro la aplicación, "inyeccion.exe" ve el proceso y Inyecta el DLL. En el momento de la Inyeccion el DLL muestra su ventana de configuración, sin embargo al terminar de abrir la aplicación esta ventana de configuración se cierra al igual que el "inyeccion.exe".
He revisado el code varias veces, pero no doy. aqui dejo la función de la inyeccion a ver que faltara
"PrOCeSo" es variable. Espero me puedan ayudar! De ante mano Muchas Gracias!
Al abrir el "inyeccion.exe" queda en espera del proceso que voy a inyectar.. Abro la aplicación, "inyeccion.exe" ve el proceso y Inyecta el DLL. En el momento de la Inyeccion el DLL muestra su ventana de configuración, sin embargo al terminar de abrir la aplicación esta ventana de configuración se cierra al igual que el "inyeccion.exe".
He revisado el code varias veces, pero no doy. aqui dejo la función de la inyeccion a ver que faltara
Código (vbnet) [Seleccionar]
Private Sub InjectAr()
On Error GoTo 1
Timer1.Stop()
Dim TargetProcess As Process() = Process.GetProcessesByName(PrOCeSo)
TargetProcessHandle = OpenProcess(PROCESS_CREATE_THREAD Or PROCESS_VM_OPERATION Or PROCESS_VM_WRITE, False, TargetProcess(0).Id)
pszLibFileRemote = dllproc
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)
End
'CloseHandle(TargetProcessHandle)
1: ListBox1.Items.Add("Error en la Injeccion")
End Sub
"PrOCeSo" es variable. Espero me puedan ayudar! De ante mano Muchas Gracias!