Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - ivancea96

#751
Si ADD2 ahora es un tipo, entonces:
Código (cpp) [Seleccionar]
ADD2 func = (ADD2) GetProcAddress(...)

Lo d ela doble declaración, pues es que no puedes declarar 2 variables o tipos con el mismo nombre.
#752
¿Y los mensajes de error?

En cualquier caso, esas que te puse son 2 alternativas, no las uses ambas. O usas la una o la otra (para no mezclar).

"using" existe desde el estándar de C++11. No sé qué compilador, así que prueba con typedef solo.

De todos modos, sin mensajes de error, poco más puedo hacer.


EDITO: Olvida lo que dije (o no, segun los errores).

ADD1 y ADD2 ahora son tipos, no variables. Fíjate exactamente en cómo lo puse yo en mi ejemplo.

EDITO2: Y, nuevamente, pregunto. Qué es PAnsiChar.
#753
¿Qué es PAnsiChar en el código C++?

GetProcAddress retorna un puntero a función.

Los punteros a función se declaran en C/C++ así:
tipo_retorno(*nombre_variable)(parámetros);
Código (cpp) [Seleccionar]
void(*func)(int, char) = (void(*)(int, char)) GetProcAddress(...);

Aunque se suele poner el tipo en un using o un typedef:

Código (cpp) [Seleccionar]
using Funcion = void(*)(int, char);
typedef void(*Funcion2)(int, char);

Funcion f = (Funcion) GetProcAddress(...);
Funcion2 f2 = (Funcion2) GetProcAddress(...);
#754
No pongas títulos en mayúsculas.


¿Cuál es tu problema al pasarlo?
#755
Solo tiene 2 detalles con 2 condiciones:

1) Línea 31:
Código (cpp) [Seleccionar]
for(unsigned cont=cont2+1;cont<(vect.num_elem)-1;cont++)
Tiene que llegar hasta el final. cont < num_elem - 1 no llega hasta el último, sinó hasta el penúltimo. 2 opciones: o cambiar "<" por "<=" o, mejor, poner cont < vect.num_elem

2) Línea 39:
Código (cpp) [Seleccionar]
while((cont<vect.num_elem-2)&&!existe)
Nuevamente, lo mismo. cont < num_elem - 2 no llega ahsta el penúltimo, sinó hasta el antepenúltimo. Nuevamente, las mismas 2 opciones de antes: o cambiar "<" por "<=", o poner "num_elem-1". Recomiendo el segundo.

Sobre este tema, tras ver el código, te recomendaría "normalizar" tu forma d eponer condiciones.

Código (cpp) [Seleccionar]
for(int cont=0;cont<=(cont2)-1;cont++)

for(unsigned cont=cont2+1;cont<(vect.num_elem);cont++)

¿Por qué uno <= y el otro <? Eso es lo que dbeerías normalizar.
#756
Con ese código, como Run ya existe, solo abrirá la clave.
Para agragar, sí, añadiría la clave luego.
Y para añadir valores, RegSetValueEx.
#757
No tiene nada que ver inyección de DLL con C++Builder y formularios de Windows.
¿Cuál es exactamente el problema que tienes?
¿No sabes utilizar C++ Builder? Entonces consigue algún tutorial o manual sobre el programa. Teniendo interfaz gráfica, será bastante intuitivo. También puedes bsucar ejemplos de proyectos hechos con él para ver cómo trabaja. No sé si el programa en sí ya viene con algún ejemplo.
Esto sale en Google: http://www.programacionfacil.com/cpp_builder/start.html

Luego, si tu problema es el inyector, entonces los proyectos que encontraste en consola te servirán perfectamente. La única diferencia entre un programa con ventana y uno en consola, es la interacción con el usuario.
#758
Cita de: Ragaza en  1 Febrero 2017, 20:13 PM
totalmente de acuerdo programa cosas que te deviertan creo que cuando uno se divierte aprende mil veces mas :D. y lo mas dificil en mi en la programacion es saber donde esta el fallo o donde me equivoque o como corregir el programa para que funcione como yo quiero. al menos en mi caso.

A mi me divierte hacer challenges :D!
Cuanto más complicado un programa, mayor satisfacción al completarlo :X
#759
Programación C/C++ / Re: Hilos en c++
1 Febrero 2017, 20:45 PM
Escribiré posts de inglés ;D ;D ;D!
#760
Java / Re: Jcheckbox con clases y subventanas
1 Febrero 2017, 11:53 AM
Si se te aparecen tras inicializarlas, será que aparecen al crear el objeto con new.
Puedes hacer el new después:
Código (java) [Seleccionar]
Pintor P;

// ...

if(/* ... */){
    P = new Pintor();
}