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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17 18 19 20 21 22
91  Programación / Programación C/C++ / Re: Ayuda Erroir error LNK2005 already defined en: 24 Julio 2011, 10:41 am
Citar
Linking....

complejos.dll error(s) 0 warnin(s) 0
Lo que ocurre es que has generado una dll que no es ejecutable directamente. Las dll son cargadas por otros programas para usar sus funciones. Para que se ejecutara tendrías que cargarla con otro programa o cambiar el proyecto para que te genere un exe, una aplicacion win32

Saludos
92  Programación / Programación C/C++ / Re: Ayuda Erroir error LNK2005 already defined en: 24 Julio 2011, 00:51 am
Amigo la verdad no te entendi bien.

Es que en esto somos noob, hasta ahora estamos empezando.
este error:
StdAfx.obj : error LNK2005: "public: __thiscall complejo::complejo(void)" (??0complejo@@QAE@XZ) already defined in complejo.obj
Te esta diciendo que a encontrado 2 veces la implementacion del metodo complejo de la clase complejo
Esto pasa porque:
complejo::complejo(){

}
lo colocaste en un archivo de extension .h que se inclulle en varios archivos. Por lo que se lo encuentra varias veces
93  Programación / Programación C/C++ / Re: Ayuda Erroir error LNK2005 already defined en: 23 Julio 2011, 21:43 pm
Funciones duplicadas a causa de que defines la implementacion de los metodos de la clase en un fichero .h que se inclulle varias veces. Tienes que declarar la definicion de la clase en un .h y la implementacion de sus metodos la haces en un fichero .cpp a parte que se compila y linkea con los otros

Saludos
94  Programación / Programación C/C++ / Re: Keep Alive Sockets en: 21 Julio 2011, 17:43 pm
No se porque sera, pero si la conexión se cerrara bien, send devolvería 0 en vez de SOCKET_ERROR
95  Seguridad Informática / Análisis y Diseño de Malware / Re: ¿Hay manera de mantener un programa al inicio aunke se formatee? en: 30 Junio 2011, 14:15 pm
Las bios EFI al menos las que yo he visto, se parecian bastante al menos en la interface....
96  Programación / ASM / Re: Una pequeña curiosidad en: 20 Junio 2011, 13:32 pm
Viste alguna pc en la cual entrando al setup de la bios puedas usar el raton? Si ves alguna, entonces en esa si vas a poder... yo no he encontrado.

la interupciones del raton son de DOS
eso no significa que no tengan un servicio para detectarlo, la apariencia de las bios no a cambiado en decadas. Las bios EFI si te dejan usar el raton para manejarlas

La interrupcion 0x16 tiene un servicio para manejar mostrar el cursor
http://www.ctyme.com/intr/int-16.htm
97  Programación / ASM / Re: Gas Inline con Síntaxis Intel en: 20 Junio 2011, 13:22 pm
si en c usas asm inline, el compilador no tocara ese codigo
y si usas c va a generar asm con sintaxis at&t
98  Programación / ASM / Re: Direccion Hrdware en: 29 Abril 2011, 20:17 pm
yo solo se lo del PCI, que te servira para la mayorria del hardware.

Al hardware se le suelen asignar unas direcciones de I/O o tambin de memria. pueden ser estáticas o variar.

Se enumeran asi:
Código
  1. #define outb(port,value) \
  2. __asm__ __volatile__("outb %%al,%%dx"::"a" (value),"d" (port))
  3.  
  4. #define inb(port) ({\
  5. unsigned char _v; \
  6. __asm__ __volatile__ ("inb %%dx,%%al":"=a" (_v):"d" (port)); \
  7. _v; \
  8. })
  9. #define outw(port,value) \
  10. __asm__ __volatile__("outw %%ax,%%dx"::"a" (value),"d" (port))
  11.  
  12. #define inw(port) ({\
  13. unsigned short _v; \
  14. __asm__ __volatile__ ("inw %%dx,%%ax":"=a" (_v):"d" (port)); \
  15. _v; \
  16. })
  17. #define outd(port,value) \
  18. __asm__ __volatile__("outl %%eax,%%dx"::"a" (value),"d" (port))
  19.  
  20. #define ind(port) ({\
  21. unsigned long _v; \
  22. __asm__ __volatile__ ("inl %%dx,%%eax":"=a" (_v):"d" (port)); \
  23. _v; \
  24. })
  25.  
  26. #define PCI_CONFIG_ADDRESS 0xCF8
  27. #define PCI_CONFIG_DATA 0xCFC
  28. //Las direcciones del espacio PCI estan compuestas de esta manera
  29. typedef struct PCI_ADDRESS{
  30. union {
  31. struct {
  32. unsigned long zero:2;
  33. unsigned long Registro:6;//Numero de registro del espacio PCI de un dispositivo
  34. unsigned long Funtion:3;
  35. unsigned long Device:5;
  36. unsigned long Bus:8;
  37. unsigned long Reserved:7;
  38. unsigned long Enable:1;
  39. }flag;
  40. unsigned long ADDRESS;
  41. };
  42. }PCI_ADDRESS;
  43. typedef struct HARDWARE_ID{
  44. union{
  45. struct {
  46. unsigned long vendor;
  47. unsigned long device;
  48. };
  49. unsigned long id;
  50. };
  51. }HARDWARE_ID;
  52.  
  53.  
  54. void PCI_Enum(){
  55. PCI_ADDRESS Addr;
  56. HARDWARE_ID ID;
  57. Addr.ADDRESS = 0;
  58. ID.id = 0;
  59. Addr.flag.Enable = 1;
  60.  
  61. for(short bus = 0;bus<256;bus++){//Busca en un numero de bus los dispositivos, hay 256 posibles
  62. //Cada bus tiene al menos un dispositivo y 32 de maximo
  63. for(short dev = 0;dev<32;dev++){//Busca en un bus los dispositivos
  64. //Cada dispositivo puede tener una o hasta 8 funciones diferentes
  65. for(int fun = 0;fun<8;fun++){//La funcion 0 siempre estara disponible, sino el dispositivo no esta
  66. Addr.flag.Funtion = fun;
  67. Addr.flag.Device = dev;
  68. Addr.flag.Bus = bus;
  69.  
  70. outd(PCI_CONFIG_ADDRESS,Addr.ADDRESS);
  71. ID.id = ind(PCI_CONFIG_DATA);
  72. if(!(ID.vendor+1)){//Si el vendor es 0xFFFF significa que esa funcion no esta presente
  73. if(!fun)break;
  74. }else{
  75. printf("Detected: PCI\VEND_%X04&DEV_%X04\n",ID.vendor, ID.device);
  76. };
  77. }
  78. };
  79. }
  80.  
  81. };
  82.  
  83.  
busca en esta pagina lo que necesites: http://wiki.osdev.org/PCI#Configuration_Space
99  Programación / ASM / Re: Direccion Hrdware en: 29 Abril 2011, 14:32 pm
puedes hacerlo de 2 maneras, preguntándole al SO o enumerando los dispositivos conectados al bus-PCI y USB

La primera depende del SO en el que estés, con la otra es cuestion de usar las instrucciones in out para comunicarte con el Hardware
100  Programación / Programación C/C++ / Re: Ayuda con archivo binario, por favor. en: 25 Abril 2011, 13:53 pm
ese code que pones yo no lo veo dar problemas, lo que dudo es que no los invierta si es Big-endian. Para invertirlos segun sea Big-endian o no yo averiguaría si estas en un PC big-endian o litte-endian
Pon el code completo porque sino me parece que no vamos a encontrar nada

Lo que me muestras, tienen en común el bit de signo, el numero 8 si manejas bytes o el 31 en caso de grupos de 4 bytes, pero como lo inviertes se queda en el numero 8.
Páginas: 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17 18 19 20 21 22
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines