elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


  Mostrar Mensajes
Páginas: 1 2 3 [4] 5 6 7 8 9 10 11
31  Programación / Programación C/C++ / Re: Bucle incremental con secuencia de valores ajustados en: 12 Mayo 2012, 02:23 am
lo de la pausa podés hacerlo con Sleep obviamente o con un contador también.
lo de los valores no lo miré realmente

una idea que hice recién sobre el contador puede ser así:
Código:
#include <windows.h>
#include <stdio.h>
#pragma comment (lib, "winmm.lib")
int rampa(int canal, int valor_a, int valor_b, float duracion){


double b_time = timeGetTime();
double n_time = 0;

if ((canal<1) || (canal>512) || (valor_a<0) || (valor_b>255) ||
(valor_b<valor_a) || (valor_b>255) || (duracion<1.0))
    {
return -1;
    }

else
{

//n_time = timeGetTime();

unsigned int ciclos=0;

while( ((n_time-b_time)) <= 40){

ciclos++;
printf("diff: %f\n",((n_time-b_time)));
printf("b_time: %f\n",b_time);
printf("n_time: %f\n",n_time);
printf("ciclos: %d\n",ciclos);
printf("======================\n");

for(unsigned int i=0; i<25; i++){

n_time = timeGetTime();
}

n_time = timeGetTime();
}
}

return 0;
}

int main(){


if(!rampa(2,2,2,2)) {

printf("Salida..\n");
return 0;
}

printf("...............\n");
while(getchar()!='\n');
return 0;
}

32  Programación / Programación C/C++ / Re: Fps de un juego, aporte en: 11 Mayo 2012, 00:49 am
http://www.etalking.com.ar/showthread.php?127-calcular-FPS

Como para Counter-Strike por ejemplo

33  Programación / Programación C/C++ / STL: Uso de list y string en: 9 Mayo 2012, 00:39 am
Esto es una muestra de código que demuestra como se usa una list para guardar elementos de tipo struct 'ScheduledCommand', que hace referencia a comandos que se van guardando y ejecutándose, dado que este código estaba aplicado a un sistema con consola de comandos. Lo que hice fue aislar el código referente al uso de list y demostrarlo con un ejemplo. Créditos para el proyecto OGC.

Descarga: http://www.mediafire.com/?pujccy7douubkgo

Código:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
//
// UTN FRGP TSP
// BS
// mail: david_bs@live.com
// web: Etalking.Com.Ar
// 2012
//
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////

#include <windows.h>
#include <stdio.h>
#include <fstream.h>
#include <list>
#include <string>

using namespace std;

struct ScheduledCommand
{
string comando;
int prioridad;
};

typedef list<ScheduledCommand> ScheduleList;
ScheduleList scheduleList;

Las funciones de agregar, listar y borrar
Código:
void IngresarComando(){

string cmd;
char comando[21];
memset(comando,0,sizeof(comando));
cout << "Ingrese un comando" << endl;
cin.getline(comando,20,'\n');
cmd.assign(comando);

// cout << const_cast<char*>(cmd.c_str()) << endl;
// system("pause");

if(cmd.empty()) // Si se ingresa una línea en blanco procede a mostrar los comandos en lista
{
list<ScheduledCommand>::iterator pos;
for(pos=scheduleList.begin();pos!=scheduleList.end();++pos)
{
printf("pri:%d -- cmd:\"%s\"\n", (*pos).prioridad, (*pos).comando.c_str() );
}
return;
}

ScheduledCommand tmp;
tmp.comando=cmd;
tmp.prioridad=1;
if(scheduleList.size()<32){
scheduleList.push_back(tmp);
}
}

void BorrarComandos(){

scheduleList.erase(scheduleList.begin(),scheduleList.end());
}

void VerificarComandos(){

cout << "\n";

int cantidad=0;
for( ScheduleList::iterator pos = scheduleList.begin(); pos != scheduleList.end(); ++pos)
{
// cantidad++;
if( (*pos).prioridad == 1 )
{
cantidad++;
cout << "Comando: " << const_cast<char*>((*pos).comando.c_str()) << endl;
scheduleList.erase(pos); // lo borra luego de verificarlo
break;
}
}

if(cantidad==0)
cout << "No hay comandos !" << endl;
}

La función main para realizar las pruebas..
Código:
int main(){

IngresarComando();
IngresarComando();
IngresarComando();

VerificarComandos();
VerificarComandos();
VerificarComandos();

BorrarComandos();

VerificarComandos();

cin.get();
return 0;
}
34  Programación / Programación C/C++ / STL: Uso de vector para manejo de una entidad en: 8 Mayo 2012, 02:44 am
Hola de nuevo.
Voy a mostrar un ejemplo del uso de un vector para manejar una especie de lista de entidades. Una entidad en este caso, se representa mediante una struct. Para este ejemplo, la struct va a tener algunos miembros de tipo entero solamente, con el fin de simplificar.

Es un código básico en el cual se permite mediante funciones, agregar y borrar entidades, y listar datos de entidades.

Se trata de mostrar un uso básico de 'vector' de la STL

Créditos al proyecto OGC por su aplicación original.

El proyecto en MSVC++ se puede descargar a continuación:
http://www.mediafire.com/?jq1tfjylz5qj8js

Código:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
//
// UTN FRGP TSP
// BS
// mail: david_bs@live.com
// web: Etalking.Com.Ar
// 2012
//
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////

#include <windows.h>
#include <stdio.h>

#include <fstream.h>
#include <string>
#include <vector>

using namespace std;

typedef struct estructura_s{
int a;
int b;
int c;
}estructura_t;

struct ent_info{
estructura_s* ent;
};

vector<ent_info> vEntidad;

Las estructuras representativas de una entidad ya fueron mostradas, luego se crea un vector de entidades.

Agregar y borrar entidades; listar items de una entidad.
Código:
void AgregarEntidad(struct estructura_s* ent)
{
ent_info dummy;
dummy.ent = ent;
if(vEntidad.size()<64)
vEntidad.push_back(dummy);
}

void BorrarVectorDeEntidades()
{
vEntidad.clear();
}

void ListarItemsDeEntidades(){

for(unsigned int ab=0; ab<vEntidad.size(); ab++){

cout << "La entidad: " << ab << endl;
cout << "Item 1: " << vEntidad[ab].ent->a << endl;
cout << "Item 2: " << vEntidad[ab].ent->b << endl;
cout << "Item 3: " << vEntidad[ab].ent->c << endl;
}
}

Código:
int main(){

BorrarVectorDeEntidades();

struct estructura_s ent1;
struct estructura_s ent2;
struct estructura_s ent3;
ent1.a=111;
ent1.b=222;
ent1.c=333;
ent2.a=444;
ent2.b=555;
ent2.c=666;
ent3.a=777;
ent3.b=888;
ent3.c=999;

AgregarEntidad(&ent1);
AgregarEntidad(&ent2);
AgregarEntidad(&ent3);

ListarItemsDeEntidades();

cin.get();
return 0;
}
35  Programación / Programación C/C++ / STL: Combinando uso de map, string y vector en: 8 Mayo 2012, 02:26 am
Hola, voy a postear un ejemplo en el que se muestra el uso de map y vector, para lograr un manejo de datos, en este caso, de nombres de elementos almacenados y obtener su número de identificador. Para el vector se usa una struct con dos miembros, uno el nombre del elemento y otro el identificador. También se usa un puntero a un registro de tipo struct 'PrivateData', con el cual podemos hacer uso de los métodos de map y string. La idea de este código pertenece al proyecto OGC pero lo que he tratado de hacer es "aislar" el método para demostrar su uso con un ejemplo.

Dejo el proyecto para descargar:
http://www.mediafire.com/?4sawtvs9czbd17s

En este ejemplo no se usan los defines pero están para mayor comodidad
Código:
#define INDEXFIND_BY_ID   (((PrivateData*)my_data)->findByID)
#define INDEXFIND_BY_NAME (((PrivateData*)my_data)->findByName)

Código:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
//
// UTN FRGP TSP
// BS
// mail: david_bs@live.com
// web: Etalking.Com.Ar
// 2012
//
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////

#include <windows.h>
#include <stdio.h>

#include <fstream.h>
#include <map>
#include <string>
#include <vector>

using namespace std;

typedef map<int,int> MapIntInt;

struct PrivateData{
MapIntInt findByID;
string findByName;
};

void* my_data;

#define INDEXFIND_BY_ID   (((PrivateData*)my_data)->findByID)
#define INDEXFIND_BY_NAME (((PrivateData*)my_data)->findByName)

struct Info
{
char szName[36];
int iId;
};

vector<Info> infoList;

void Constructor()
{
my_data = new PrivateData;
}

void Destructor()
{
    delete (PrivateData*)my_data;
}

Código:
void Completa(int id, const char* name){

Info newElemento;

strcpy( newElemento.szName, name );
newElemento.iId = id;

// find: retorna un iterator
MapIntInt::iterator foundpos = (((PrivateData*)my_data)->findByID).find( newElemento.iId );

typedef MapIntInt::value_type Entry;

if(foundpos==((((PrivateData*)my_data)->findByID).end())) // al final (luego del último elemento)
{
int index = infoList.size();
infoList.push_back(newElemento);
(((PrivateData*)my_data)->findByID).insert(Entry(newElemento.iId,index)); // inserta elemento nuevo
(((PrivateData*)my_data)->findByName).assign(newElemento.szName);
}
else //repite
{
int index = foundpos->second; // un par tiene un segundo elemento..
infoList[index]=newElemento;
}
}

Con esta función accedemos a los nombres almacenados en el vector
Código:
const char* getNamebyId(int id)
{
MapIntInt::iterator foundpos = (((PrivateData*)my_data)->findByID).find( id );
if(foundpos==((((PrivateData*)my_data)->findByID).end())) { return "ninguna"; }
int index = foundpos->second;
return infoList[index].szName;
}

Código:
int main(){

Constructor();
Completa(0, "AK");
Completa(0, "SCOUT");
Completa(1, "AP");
Completa(2, "DESERT");

Completa(1, "M4");
Completa(1, "M4");
Completa(1, "M4");

cout << "La id 0 contiene: " << getNamebyId(0) << endl;
cout << "La id 1 contiene: " << getNamebyId(1) << endl;
cout << "La id 2 contiene: " << getNamebyId(2) << endl;


cin.get();
Destructor();
return 0;
}
36  Programación / Programación C/C++ / Hurricane, Línea I, II y III en: 7 Mayo 2012, 00:25 am
Hola, quiero publicar en este foro de C/C++ mi hook para Counter-Strike que había empezado a desarrollar hace tiempo atrás (2007-2008).

En realidad yo empecé a trabajar sobre un proyecto existente que empezó mucho antes (2004-2005) y se llamaba "El camino del huracán" o "Camino del tornado".
Este proyecto era de unos chinos programadores de cheats (007, TJC911, y otros nombres numéricos que se ponen los chinos XD ).
Los chinos, de la misma forma, se había basado en proyectos existentes hasta el momento (Kyros, NK, OGC).
Entonces empecé a desarrollar por mi cuenta el nuevo "Huracán" y el proyecto se divide en 3 líneas. La línea 1 incluye las primeras versiones full, la línea 2 incluye la versión Final y otras versiones más modernas. La línea 3 incluye algunos cambios con respecto a las anteriores líneas.

Mi proyecto estubo en mantenimiento desde el 2007 al 2011, y luego publiqué todos los proyectos para que cualquiera pueda verlos.
Se trata de un multihack para Counter-Strike , y la intención de publicar el código fuente es sólo para fines educativos , como lo fue para mí.

Es decir la idea es verlo desde el punto de vista de la programación, y no de hackear los juegos online , inclusive mi código en sí no sirve para hackear en servidores con sistema anticheat, por lo tanto se trata de algo 100% con fines educacionales.

Estos (huracanes) fueron los primeros hacks que salieron con waypoints, osea con rutas para navegar el mapa.

El tema es que se puede aprender mucho de estos códigos, entre otras cosas:

- Inyección DLL
- Hooking
- OpenGL (cosas básicas)
- Clases
- STL
- mucho más ...

Descargas
Línea I
Línea II
Línea III

Los proyectos fueron creados para Visual C++ 6.0 y también para VC++ 7.1

fotito
http://img339.imageshack.us/img339/8397/dedust20002tj.png

p.s no me digan chitero, no juego al CS :/

37  Foros Generales / Foro Libre / Re: ¿A que le tienes miedo? en: 6 Mayo 2012, 23:31 pm
claro te entiendo lo que decís
38  Foros Generales / Foro Libre / Re: Premios,rimas en: 6 Mayo 2012, 23:28 pm
AJAJAJA una típica

viste la foto?

la de tu culo y mi ch0to



p.s.

preguntar a Belén Franchese que sabe de rimas XD
39  Foros Generales / Foro Libre / Re: UN COMENTARIO Y/O DUDA ACERCA DE LOS PSEUDOHACKERS... en: 6 Mayo 2012, 23:26 pm
tanto para que te desanime así?
si sabe tanto es porque debió haber dedicado su tiempito a aprender lo que sabe.
aparte ni ahí para que lo consideres hacker, yo jugaba al CS y a los chiteros les dicen "hackers", osea te quiero decir que se le dice hacker en un sentido amplio. incluso por mandar un troyano se le dice "hacker" , pero no es un hacker con todas las letras en sí.
40  Foros Generales / Foro Libre / Re: ¿A que le tienes miedo? en: 6 Mayo 2012, 23:13 pm
todo el mundo le tiene miedo a morir. en el momento en el que están por morir ahí tienen miedo. debe ser porque no se sabe lo que viene después.

se puede alinear con lo que se llama miedo a lo desconocido.
Páginas: 1 2 3 [4] 5 6 7 8 9 10 11
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines