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

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [Aporte] Aporte
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Aporte] Aporte  (Leído 1,292 veces)
Stakewinner00


Desconectado Desconectado

Mensajes: 1.426



Ver Perfil WWW
[Aporte] Aporte
« en: 12 Noviembre 2012, 18:21 pm »

Mejore el codigo que habia echo y queria dejar aqui el código por si le sirve a alguien.

Aun falta mejorar muchas pero de momento funciona.

Lo que hace el programa es grabar los movimientos del raton y guardarlo en un log.
Código
  1. #include <windows.h>
  2. #include <iostream>
  3. #include <conio.h>
  4. #include <fstream>
  5. #include <list>
  6. #include <string>
  7.  
  8. using namespace std;
  9.  
  10. int main(int argc,char* argv)
  11. {
  12.  
  13. POINT cursorPos;
  14.        GetCursorPos(&cursorPos);
  15.        int x = 0;
  16.        x = cursorPos.x;
  17.        int y = 0;
  18.        y = cursorPos.y;
  19.  
  20.  
  21.  
  22. int a=0;
  23. int xx[1000];
  24. int yy[1000];
  25. char str[256];
  26. int lat=0, time=0;
  27. float lat2=0, tlat = 0, buc=0;
  28. /*while ("") {
  29. GetCursorPos(&cursorPos);
  30.         x = cursorPos.x;
  31.             y = cursorPos.y;
  32. Sleep(500);
  33. system("CLS");
  34. cout << x << " , " << y;
  35.  
  36. }*/
  37.  
  38. cout << "OPCIONES" << endl;
  39. cout << "1.Grabar y reproducirlo al instante" << endl << "2.Grabar y guardarlo en un archivo" << endl << "3.Abrir archivo"<< endl ;
  40. int o;
  41. cin >> o;
  42.  
  43. cout << endl << endl <<"Latencia (normal 50):: ";
  44.   cin >> lat2;
  45. lat=int(lat2);
  46. cout << endl << endl << "Duracion en segundos:: ";
  47. cin >> time;
  48.    tlat=lat2/1000;
  49. buc=time/tlat;
  50. buc=int(buc);
  51. if (o==2) {
  52. system("CLS");
  53.  
  54. cout << "Nombre del archivo:: ";
  55. cin.get();
  56. cin.getline (str,256);
  57.   ofstream outfile (str,ofstream::binary);
  58.   a=0;
  59. system ("CLS");
  60. cout << "Faltan 10 segundos para que comienze a reproducirse.";
  61. system ("CHOICE /T 10 /C ync /CS /D y > nul");
  62. cout << endl << "COMENZANDO A GRABAR";
  63. while (a!=buc) {
  64. xx[a]=x;
  65. yy[a]=y;
  66.        GetCursorPos(&cursorPos);
  67.        x = cursorPos.x;
  68.            y = cursorPos.y;
  69. Sleep(lat);
  70. a++;
  71. }
  72. a=0;
  73. cout << endl << endl << "GUARDANDO";
  74. while (a!=buc) {
  75. cout << xx[a] << "," << yy[a] << ";" << endl;
  76. outfile << xx[a] << "," << yy[a];
  77. if (a+1==buc) {
  78. outfile << ";" << "::::";
  79. } else {
  80. outfile << ";" << endl;
  81. }
  82. a++;
  83. }
  84. cout << endl << "GUARDADO FINALIZADO";
  85.  
  86. } else if (o==1) {
  87. system("CLS");
  88. a=0;
  89. while (a!=buc) {
  90. xx[a]=x;
  91. yy[a]=y;
  92.  
  93.        GetCursorPos(&cursorPos);
  94.        x = cursorPos.x;
  95.            y = cursorPos.y;
  96. Sleep(lat);
  97. a++;
  98. }
  99. a=0;
  100. while (a!=buc){
  101. SetCursorPos(xx[a], yy[a]);
  102.  mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, GetMessageExtraInfo());
  103. Sleep(lat);
  104. a++;
  105. }
  106. } else if (o==3) {
  107. system("CLS");
  108.   cout << "Nombre del archivo: ";
  109. cin.get();
  110. cin.getline (str,256);
  111.       ifstream arc;
  112.  arc.open (str);    
  113. char c;  
  114. a=0;
  115. string s="";
  116. int posx, posy;
  117. system ("CLS");
  118. cout << "Faltan 10 segundos para que comienze a reproducirse.";
  119. system ("CHOICE /T 10 /C ync /CS /D y > nul");
  120. int i=0;;
  121.   while (c!=':')  
  122.  {
  123.  s="";
  124.  cout << c;
  125.   while ((c!=',')&&(i==0)){
  126.      c = arc.get();
  127.     s = s + c;
  128. }
  129. i=1;
  130. posx=atoi(s.c_str());
  131. s="";
  132. while ((c!=';')&&(i==1)){
  133.     c = arc.get();
  134.     s = s + c;
  135. }
  136. if (c==';') {
  137.  c = arc.get();
  138. }
  139. i=0;
  140. posy=atoi(s.c_str());
  141. xx[a]=posx;
  142. yy[a]=posy;
  143. a++;
  144. }
  145.   int aa=a;
  146.   a=0;
  147.   while (a!=aa) {
  148.       Sleep(lat);
  149. SetCursorPos(xx[a], yy[a]);  
  150.   a++;
  151. }
  152. }
  153. }


« Última modificación: 14 Noviembre 2012, 12:17 pm por Stakewinner00 » En línea

Stakewinner00


Desconectado Desconectado

Mensajes: 1.426



Ver Perfil WWW
Re: [Aporte] Aporte
« Respuesta #1 en: 14 Noviembre 2012, 12:13 pm »

Como puedo generar un vector aleatorio que reserve un espacio dinamicamente??

Otra pregunta, que es mejor guardar los valores a medida que el mouse se va moviendo o guardar los valores en un vector y luego guardarlos como e echo??


« Última modificación: 14 Noviembre 2012, 12:15 pm por Stakewinner00 » En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: [Aporte] Aporte
« Respuesta #2 en: 14 Noviembre 2012, 16:32 pm »

Sin animo de molestarte: tienes que explicarte de una forma mas clara.

Como puedo generar un vector aleatorio que reserve un espacio dinamicamente??
En C++ puedes utilizar la clase vector, para ejemplos de su uso puedes utilizar el motor de búsqueda de los foros.

Otra pregunta, que es mejor guardar los valores a medida que el mouse se va moviendo o guardar los valores en un vector y luego guardarlos como e echo??
Las dos opciones que das, en la practica, son lo mismo (revisa tu programa). ¿Te molesto si explicas en detalle lo que quieres hacer?

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Stakewinner00


Desconectado Desconectado

Mensajes: 1.426



Ver Perfil WWW
Re: [Aporte] Aporte
« Respuesta #3 en: 14 Noviembre 2012, 16:39 pm »

Bueno pense que si tenia que abrir el archivo y escribir en el seria más lento que guardarlo en un vector para después escribir en el archivo. Ya que en el momento de grabar si abre el archivo pensé que grabaría los movimientos del raton un poco más lento.

Sobre lo que quiero hacer:

Al principio quería solo practicar un poco con la librería de windows.h luego pense en hacer un programa que grabara los clicks y movimientos del ratón.

De momento solo conseguí grabar los movimientos del ratón. Los clicks por lo que vi solo lo puedo guardarlos si genero una ventana.



Tras mucho pensar vi que no tenia ninguna gran utilidad, por lo que solo lo hago con fines autodidácticos.


« Última modificación: 14 Noviembre 2012, 16:40 pm por Stakewinner00 » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[ Nuevo aporte ] « 1 2 »
Programación Visual Basic
d(-_-)b 11 2,652 Último mensaje 25 Julio 2007, 16:00 pm
por Tengu
pequeño aporte(proxy),pero aporte al fin.:D
Programación Visual Basic
Tengu 0 1,537 Último mensaje 22 Julio 2007, 17:33 pm
por Tengu
Aporte
Ingeniería Inversa
R6ID 0 1,460 Último mensaje 28 Febrero 2008, 11:35 am
por R6ID
Mini aporte
Programación Visual Basic
Stakewinner00 0 873 Último mensaje 17 Agosto 2012, 16:36 pm
por Stakewinner00
Aporte c++
Programación C/C++
Stakewinner00 8 3,025 Último mensaje 2 Septiembre 2012, 08:33 am
por Stakewinner00
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines