FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Convertir C++ a Delphi
Hola Compañeros de ClubDelphi,
Por este medio quisiera expresarme y pedir una mano de ayuda, pasa que estoy trabajando en un codigo fuente que esta hecho en C++ y ando tratando de trasladarlo / convertirlo a Delph, La version del codigo que tengo es en C++, para mi es facil de entender porque he trabajado mas con C++ que con el mismo Delphi, ahora, ya que llevo poco tiempo aprendiendo y desarrollandome en Delphi pues se me hace un poco dificil convertir solo una parte del codigo, y aqui es donde me he quedado. Aqui les voy a dejar el codigo fuente en cuestion el cual estoy tratando de trasladar. Código:
#include "stdafx.h" #include "windows.h" #include "stdio.h" #define MemorySectionName 0x2 #define MemoryBasicVlmInformation 0x3 struct UNICODE_S { unsigned short len; unsigned short man_len; wchar_t* pStr; }; struct MEMORY_BASIC_VLM_INFORMATION { unsigned long ImageBase; unsigned long blah[0x2]; unsigned long SizeOfImage; }; extern "C" { int __stdcall ZwQueryVirtualMemory(HANDLE,void*,int,void*,int,unsigned long*); } int main(int argc, char* argv[]) { SYSTEM_INFO SI={0}; GetSystemInfo(&SI); unsigned long min_addr=(unsigned long)(SI.lpMinimumApplicationAddress); unsigned long max_addr=(unsigned long)(SI.lpMaximumApplicationAddress); UNICODE_S* p = (UNICODE_S*) LocalAlloc(LMEM_ZEROINIT, 0x1000); //allocate one page, to receive image file name for(unsigned long i = min_addr; i <= max_addr; i += (SI.dwPageSize)) { MEMORY_BASIC_INFORMATION MBI={0}; if(VirtualQuery((void*)i,&MBI,sizeof(MBI))) { if(MBI.Type==MEM_IMAGE) { ZwQueryVirtualMemory(GetCurrentProcess(),(void*)i,MemorySectionName,p,0x1000,0); wprintf(L"Module: %s\r\n",p->pStr); unsigned long out=0; MEMORY_BASIC_VLM_INFORMATION MBVI={0}; ZwQueryVirtualMemory(GetCurrentProcess(),(void*)i,MemoryBasicVlmInformation,&MBVI,sizeof(MBVI),&out); unsigned long IB=MBVI.ImageBase; wprintf(L" at:%X",IB); unsigned long szImage=MBVI.SizeOfImage; wprintf(L" size:%X\r\n",szImage); i+=szImage; } } } return 0; }
bueno hasta aqui mi peticion, quiero aclarar para que nadie se ofenda, no pretendo que me den todo en la boca con una cuchara ("spoonfeeding") o digan "vino aqui para que le hagamos el codigo", nada de eso, si ven la gran parte del codigo ya lo tengo bastante dominado (a mi parecer) lo que quisiera es una mano, en como podria implementar la siguiente parte que me resta. Bueno hasta aqui los dejo. Saludos, 0x90 |
#2
|
|||
|
|||
No sé exactamente qué quieres ni tengo mucha práctica con C++ pero te dejo una base mas limpia para que puedas continuar haciendo pruebas. (Basandome en el código de C++)
|
#3
|
|||
|
|||
Cita:
Muchas gracias por darme una mano Lo que me diste funciona perfectamente (compila y no tengo errores), pues ahora toca finalizar el codigo y ver que mas puedo hacer, el codigo es inofensivo y lo que hace es enumerar los modulos (dlls) dentro de un proceso incluyendo aun los que este escondidos. Ahora a la hora de ejecutar el proceso, y usar la funcion, no se que estoy haciendo mal, puede que si este haciendo algo mal, pero el proceso se cuelga, he aqui lo que estoy tratando de hacer... Asi va la estructura `UNICODE_S`
Asi va lo que tengo gracias a tu ayuda.
Saludos, Espero que estes bien |
#4
|
|||
|
|||
Ah, querías enumerar las DLL cargadas...
Para saber si están ocultas o no, tendras que profundizar un poco más, pero puedes guiarte con esa base. Igualmente más vale prevenir que curar, invierte mas en métodos de anti-dll_injection y anti-hooking
Fuente: http://stackoverflow.com/questions/2...t-of-used-dlls Última edición por Reasen fecha: 16-03-2017 a las 04:29:29. |
#5
|
|||
|
|||
Cita:
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Convertir hilo de c++ a Delphi | Philip.ISR | Varios | 2 | 18-08-2012 20:13:28 |
Convertir cabecera de C a Delphi | LoPiTaL | Varios | 1 | 18-05-2012 08:52:46 |
Convertir aplicacion Delphi en Web | Luis Cuenca | .NET | 2 | 20-04-2009 08:56:41 |
Convertir de C++ a Delphi | Alliance | Varios | 4 | 10-11-2008 23:24:06 |
AnyNET-Delphi Beta2: Una herramienta para convertir de .NET a Delphi.NET | mamcx | Noticias | 3 | 01-10-2005 01:27:09 |
|