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

 

 


Tema destacado: Estamos en la red social de Mastodon


+  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 2,500 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
pequeño aporte
Programación Visual Basic
demon_cry 0 1,183 Último mensaje 12 Junio 2006, 09:38 am
por demon_cry
Mi aporte :USBCnfg
Programación Visual Basic
Anteros 1 1,494 Último mensaje 15 Noviembre 2006, 04:07 am
por satan69
pequeño aporte(proxy),pero aporte al fin.:D
Programación Visual Basic
Tengu 0 2,408 Último mensaje 22 Julio 2007, 17:33 pm
por Tengu
Aporte
Ingeniería Inversa
R6ID 0 2,193 Último mensaje 28 Febrero 2008, 11:35 am
por R6ID
Aporte c++
Programación C/C++
Stakewinner00 8 4,757 Último mensaje 2 Septiembre 2012, 08:33 am
por Stakewinner00
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines