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

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  SRCs de Hacker_Zero
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: SRCs de Hacker_Zero  (Leído 6,787 veces)
[Zero]
Wiki

Desconectado Desconectado

Mensajes: 1.082


CALL DWORD PTR DS:[0]


Ver Perfil WWW
SRCs de Hacker_Zero
« en: 18 Abril 2009, 11:51 am »

Bueno, lo primero no sé si esto debe ir aquí o en análisis y diseño de malware, sino no va a aquí que alguien lo mueva  :).

Código
  1. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
  2. ;\\\///\\\///\\\///\\\///\\\Inyección de Código en Memoria //\\\///\\\///\\\///\\\
  3. ;\\\///\\\///\\\///\\\///\\\          By Hacker_Zero       //\\\///\\\///\\\///\\\
  4. ;\\\///\\\///\\\///\\\///\\\      http://www.eduhack.es    //\\\///\\\///\\\///\\\
  5. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
  6.  
  7. Format PE GUI 4.0
  8. entry start
  9. include 'win32a.inc'
  10.  
  11. Proceso                 db 'explorer.exe',0
  12. nUser32                 db 'USER32.DLL',0
  13. nMessageBox             db 'MessageBoxA',0
  14. hProceso                dd ?
  15. DirFuncion              dd ?
  16. TamañoDatos             dd ?
  17. pInfo                   PROCESS_INFORMATION
  18. sInfo                   STARTUPINFO
  19.  
  20. start:
  21. ;Cargamos la USER32.DLL
  22. invoke LoadLibrary,nUser32
  23.  
  24. ;Obtenemos la dirección de MessageBoxA
  25. invoke GetProcAddress,eax,nMessageBox
  26. mov [mMessageBoxA],eax
  27.  
  28. ;Obtenemos la dirección de ExitProcess
  29. push    [ExitProcess]
  30. pop     [mExitProcess]
  31.  
  32. ;Creamos el Proceso
  33. invoke CreateProcessA,0,Proceso,0,0,0,CREATE_SUSPENDED,0,0,sInfo,pInfo
  34.  
  35. ;Guardamos el Handle
  36. push [pInfo.hProcess]
  37. pop [hProceso]
  38.  
  39. ;Obtenemos el tamaño e la función a inyectar
  40. mov ebx,FIN
  41. sub ebx,FuncionInyectada
  42. mov [TamañoDatos],ebx
  43.  
  44. ;Reservamos espacio en memoria para la función a inyectar
  45. invoke VirtualAllocEx,[hProceso],0,[TamañoDatos],MEM_COMMIT+MEM_RESERVE,PAGE_EXECUTE_READWRITE
  46. mov [DirFuncion],eax
  47.  
  48. ;Escribimos en memoria los datos
  49. invoke WriteProcessMemory,[hProceso],[DirFuncion],FuncionInyectada,[TamañoDatos],0
  50.  
  51. ;Creamos el hilo en el proceso
  52. invoke CreateRemoteThread,[hProceso],0,0,[DirFuncion],0,0,0
  53.  
  54. ;Salimos
  55. invoke ExitProcess,0
  56.  
  57. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///
  58. ;\\\///\\\///\\\///\\\///\  Función Que se Inyecta  ///\\\///\\\///\\\///
  59. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///
  60. proc FuncionInyectada
  61. ;Obtenemos la dirección de memoria donde nos estamos ejecutando
  62. pushad
  63. call delta
  64. delta:
  65. pop ebp
  66. sub ebp,delta
  67. push ebp ebp
  68. pop ebx ecx
  69.  
  70. ;Obtenemos la dirección donde se cargó el Mensaje y el Título
  71. add ebx,Mensaje
  72. add ecx,Titulo
  73.  
  74. ;Llamamos a MessageboxA
  75. push 0
  76. push ebx
  77. push ecx
  78. push 0
  79. call [ebp+mMessageBoxA]
  80.  
  81. ;Llamamos a ExitProcess
  82. push 0
  83. call [ebp+mExitProcess]
  84.  
  85. Titulo           db 'Code Inyectado!',0
  86. Mensaje          db 'xD',0
  87.  
  88. ;Las direcciones en memoria de las apis
  89. mMessageBoxA     dd ?
  90. mExitProcess     dd ?
  91. endp
  92. FIN:
  93. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///
  94. ;\\\///\\\///\\\///\\\/// Fin Función Que se Inyecta //\\\///\\\///\\\///
  95. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///
  96.  
  97. data import
  98.    library KERNEL32,'KERNEL32.DLL'
  99.    import  KERNEL32,\
  100.            CreateProcessA,'CreateProcessA',\
  101.            CreateRemoteThread,'CreateRemoteThread',\
  102.            WriteProcessMemory,'WriteProcessMemory',\
  103.            VirtualAllocEx,'VirtualAllocEx',\
  104.            ExitProcess,'ExitProcess',\
  105.            LoadLibrary,'LoadLibraryA',\
  106.            GetProcAddress,'GetProcAddress'
  107. end data    

Está comentado e intenté escribirlo de forma clara para que sea fácil de comprender.

Saludos


« Última modificación: 18 Abril 2009, 11:55 am por Hacker_Zero » En línea


“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza.”
Nietzsche
[Zero]
Wiki

Desconectado Desconectado

Mensajes: 1.082


CALL DWORD PTR DS:[0]


Ver Perfil WWW
[SRC] [FASM] Controlar WebCam
« Respuesta #1 en: 18 Abril 2009, 12:04 pm »

Bueno, pues hice esto para explorar lo que ofrece la AVICAP32.DLL y me sorprendió mucho, igual me animo a hacer un reproductor de música y/o vídeo  ;D. Bueno el programa tiene algunos fallos como que aveces se freezea al empezar a grabar (igual creando un nuevo hilo se soluciona o igual estoy haciendo algo mal  :P) y que probando con mi webcam un vídeo de 40 segundos me ocupó 350mb de disco  :o. Ésto creo que es porque no tiene soporte para compresión, igual con otras webcams no pasa, no sé.

EDITO: Pulsar ESC para detener la grabación!  ;D

Os dejo el source:

Código
  1. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
  2. ;\\\///\\\///\\\///\\\///\\\ Ejemplo Controlador de WebCam //\\\///\\\///\\\///\\\
  3. ;\\\///\\\///\\\///\\\///\\\          By Hacker_Zero       //\\\///\\\///\\\///\\\
  4. ;\\\///\\\///\\\///\\\///\\\      http://www.eduhack.es    //\\\///\\\///\\\///\\\
  5. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
  6.  
  7. Format PE GUI 4.0
  8. entry start
  9. include 'C:\fasm\include\win32ax.inc'
  10. include 'C:\fasm\include\api\comdlg32.inc'
  11. include 'C:\fasm\include\api\kernel32.inc'
  12. include 'C:\fasm\include\api\user32.inc'
  13.  
  14. ;Constantes para los botones
  15. ID_COMENZAR                  = 101
  16. ID_PARAR                     = 102
  17. ID_FOTO                      = 103
  18. ID_GUARDAR                   = 104
  19. ID_GRABAR                    = 105
  20. ID_COMPRESION                = 107
  21. ID_VIDEO                     = 108
  22.  
  23. ;Constantes para controlar el driver
  24. WM_CAP_DRIVER_CONNECT        = 1034
  25. WM_CAP_DRIVER_DISCONNECT     = 1035
  26. WM_CAP_FILE_SAVEAS           = 1047
  27. WM_CAP_FILE_SAVEDIB          = 1049
  28. WM_CAP_DLG_VIDEOCOMPRESSION  = 1070
  29. WM_CAP_SET_PREVIEW           = 1074
  30. WM_CAP_SET_PREVIEWRATE       = 1076
  31. WM_CAP_SET_SCALE             = 1077
  32. WM_CAP_GRAB_FRAME            = 1084
  33. WM_CAP_SEQUENCE              = 1086
  34. WM_CAP_DLG_VIDEOFORMAT       = 1065
  35.  
  36. section '.data' data readable writeable
  37.  
  38.        nArchivo         rb 256
  39.        hWebcam          dd ?
  40.        Filtro           db 'Bitmap (*.bmp)',0,'*.bmp',0
  41.        Filtro2          db 'AVI (*.avi)',0,'*.avi',0
  42.        CD               OPENFILENAME ?
  43.  
  44. section '.code' code readable executable
  45. start:
  46.  
  47.        xor ebx,ebx       ;ebx=0
  48.        invoke GetModuleHandle,ebx
  49.        invoke  DialogBoxParam,eax,37,HWND_DESKTOP,DialogProc,ebx
  50.        invoke  ExitProcess,ebx
  51.  
  52. ;Ciclo de eventos de la ventana
  53. proc DialogProc hwnddlg,msg,wparam,lparam
  54.        push    ebx esi edi
  55.        cmp     [msg],WM_CLOSE
  56.        je      wmclose
  57.        cmp     [msg],WM_COMMAND
  58.        je      wmcommand
  59.        cmp     [msg],WM_INITDIALOG
  60.        je      wminitdialog
  61.        xor     eax,eax
  62.        jmp     finish
  63.  
  64.  wminitdialog:
  65.        invoke capCreateCaptureWindowA,ebx,WS_VISIBLE or WS_CHILD,10,10,350,270,[hwnddlg],ebx
  66.        mov [hWebcam],eax
  67.        jmp processed
  68.  wmcommand:
  69.        cmp [wparam],BN_CLICKED shl 16 + ID_COMENZAR
  70.        je Comenzar_Click
  71.        cmp [wparam],BN_CLICKED shl 16 + ID_PARAR
  72.        je Parar_Click
  73.        cmp [wparam],BN_CLICKED shl 16 + ID_FOTO
  74.        je Foto_Click
  75.        cmp [wparam],BN_CLICKED shl 16 + ID_GUARDAR
  76.        je Guardar_Click
  77.        cmp [wparam],BN_CLICKED shl 16 + ID_GRABAR
  78.        je Grabar_Click
  79.        cmp [wparam],BN_CLICKED shl 16 + ID_COMPRESION
  80.        je Compresion_Click
  81.        cmp [wparam],BN_CLICKED shl 16 + ID_VIDEO
  82.        je Video_Click
  83.        jmp finish
  84.  
  85.  wmclose:
  86.        invoke  SendMessage,[hWebcam],WM_CAP_DRIVER_DISCONNECT,ebx,ebx
  87.        invoke  DestroyWindow,[hWebcam]
  88.        invoke  EndDialog,[hwnddlg],ebx
  89.  processed:
  90.        mov     eax,1
  91.  finish:
  92.        pop     edi esi ebx
  93.        ret
  94. endp
  95.  
  96. ;Empezamos a capturar
  97. proc Comenzar_Click
  98.     invoke  SendMessage,[hWebcam],WM_CAP_DRIVER_CONNECT,ebx,ebx        ;Conectamos el driver
  99.     invoke  SendMessage,[hWebcam],WM_CAP_SET_SCALE,TRUE,ebx            ;Escalamos la imagen al tamaño de la ventana
  100.     invoke  SendMessage, [hWebcam], WM_CAP_SET_PREVIEWRATE,100,ebx     ;Fotos por segundo que se muestran
  101.     invoke  SendMessage,[hWebcam],WM_CAP_SET_PREVIEW,TRUE,ebx          ;Habilitamos el preview en la ventana
  102.                                                                        ;(que se vea video en la ventana)
  103.     jmp finish
  104. endp
  105.  
  106. ;Paramos de capturar
  107. proc Parar_Click
  108.     invoke SendMessage,[hWebcam],WM_CAP_DRIVER_DISCONNECT,ebx,ebx      ;Desconectamos el driver
  109.     jmp finish
  110. endp
  111.  
  112. ;Guardar imagen en archivo
  113. proc Guardar_Click
  114.     mov [CD.lStructSize],76
  115.     mov [CD.lpstrFilter],Filtro
  116.     mov [CD.lpstrFile],nArchivo
  117.     mov [CD.nMaxFile],256
  118.     invoke GetSaveFileName,CD                                          ;Mostramos el Common Dialog
  119.     invoke lstrcat,nArchivo,'.bmp'                                     ;Añadimos la extensión al archivo
  120.     invoke SendMessage,[hWebcam],WM_CAP_FILE_SAVEDIB,ebx,nArchivo      ;Guardamos la imagen en el archivo.bmp
  121.     jmp finish
  122. endp
  123.  
  124. ;Hacemos una foto
  125. proc Foto_Click
  126.     invoke SendMessage,[hWebcam],WM_CAP_GRAB_FRAME,ebx,ebx             ;Hacemos la foto
  127.     jmp finish
  128. endp
  129.  
  130. ;Empezamos a grabar (pulsar ESC para detener)
  131. proc Grabar_Click
  132.     mov [CD.lStructSize],76
  133.     mov [CD.lpstrFilter],Filtro2
  134.     mov [CD.lpstrFile],nArchivo
  135.     mov [CD.nMaxFile],256
  136.     invoke GetSaveFileName,CD                                         ;Mostramos el Common Dialog
  137.     invoke lstrcat,nArchivo,'.avi'                                    ;Añadimos la extensión al archivo
  138.     invoke SendMessage,[hWebcam],WM_CAP_SEQUENCE,ebx,ebx              ;Empezamos a grabar la secuencia
  139.     invoke SendMessage,[hWebcam],WM_CAP_FILE_SAVEAS,ebx,nArchivo      ;Guardamos la secuencia en el archivo al terminar
  140.     jmp finish
  141. endp
  142.  
  143. proc Video_Click
  144.     invoke SendMessage,[hWebcam],WM_CAP_DLG_VIDEOFORMAT,ebx,ebx       ;Mostramos la ventana de configuración de
  145.                                                                       ;vídeo (varía según el dispositivo)
  146.     jmp finish
  147. endp
  148.  
  149. proc Compresion_Click
  150.     invoke SendMessage,[hWebcam],WM_CAP_DLG_VIDEOCOMPRESSION,ebx,ebx  ;Mostramos la ventana de configuración de
  151.                                                                       ;compresión (varía según el dispositivo)
  152.     jmp finish
  153. endp
  154.  
  155. section '.idata' import data readable writeable
  156.  
  157.  library kernel32,'KERNEL32.DLL',\
  158.          user32,'USER32.DLL',\
  159.          comdlg32,'COMDLG32.DLL',\
  160.          avicap32,'AVICAP32.DLL'
  161.  
  162.  import  avicap32,capCreateCaptureWindowA,'capCreateCaptureWindowA'
  163.  
  164. section '.rsrc' resource data readable
  165.  
  166.  directory RT_DIALOG,dialogs
  167.  
  168.  resource dialogs,37,LANG_ENGLISH+SUBLANG_DEFAULT,Principal
  169.  
  170.  dialog Principal,'WebCam Capturer',330,100,250,220,WS_CAPTION+WS_POPUP+WS_SYSMENU+DS_MODALFRAME
  171.    dialogitem 'BUTTON','Comenzar',ID_COMENZAR,20,180,45,14,WS_VISIBLE
  172.    dialogitem 'BUTTON','Parar',ID_PARAR,70,180,45,15,WS_VISIBLE
  173.    dialogitem 'BUTTON','Foto',ID_FOTO,120,180,45,15,WS_VISIBLE
  174.    dialogitem 'BUTTON','Guardar',ID_GUARDAR,170,180,45,15,WS_VISIBLE
  175.    dialogitem 'BUTTON','Grabar',ID_GRABAR,20,200,45,15,WS_VISIBLE
  176.    dialogitem 'BUTTON','Compresión',ID_COMPRESION,120,200,45,15,WS_VISIBLE
  177.    dialogitem 'BUTTON','Video',ID_VIDEO,170,200,45,15,WS_VISIBLE
  178.  enddialog

Os dejo una captura para los que no quieren compilar ¬¬'  ;D:



Saludos


En línea


“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza.”
Nietzsche
Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: [SRC] [FASM] Inyección de Código en Memoria
« Respuesta #2 en: 18 Abril 2009, 12:45 pm »

Muy buen code ;D

Cuando lo vi en CM me encanto ;D

Saludos ;)

PD: Porque haces PUSH/POP envez de MOV? :xD
« Última modificación: 18 Abril 2009, 13:07 pm por Karcrack » En línea

[Zero]
Wiki

Desconectado Desconectado

Mensajes: 1.082


CALL DWORD PTR DS:[0]


Ver Perfil WWW
Re: [SRC] [FASM] Inyección de Código en Memoria
« Respuesta #3 en: 18 Abril 2009, 13:22 pm »

Porque no se puede hacer un mov entre dos variables, o lo haces con push y pop o usas un registro como hueco temporal y así lo haces con mov.

Saludos  ;)
En línea


“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza.”
Nietzsche
Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: [SRC] [FASM] Inyección de Código en Memoria
« Respuesta #4 en: 18 Abril 2009, 13:27 pm »

Porque no se puede hacer un mov entre dos variables, o lo haces con push y pop o usas un registro como hueco temporal y así lo haces con mov.

Saludos  ;)
Cierto :xD

Por cierto, he estado testeando tu code y no inyecta, crea un proceso nuevo, habria que hacerlo asi para inyectar:
Código
  1. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
  2. ;\\\///\\\///\\\///\\\///\\\Inyección de Código en Memoria //\\\///\\\///\\\///\\\
  3. ;\\\///\\\///\\\///\\\///\\\          By Hacker_Zero       //\\\///\\\///\\\///\\\
  4. ;\\\///\\\///\\\///\\\///\\\      http://www.eduhack.es    //\\\///\\\///\\\///\\\
  5. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
  6.  
  7. Format PE GUI 4.0
  8. entry start
  9. include 'win32a.inc'
  10.  
  11. ;Proceso                 db 'explorer.exe',0
  12. Proceso                 dd  1172d ;PID del proceso a inyectar
  13. nUser32                 db 'USER32.DLL',0
  14. nMessageBox             db 'MessageBoxA',0
  15. hProceso                dd ?
  16. DirFuncion              dd ?
  17. TamañoDatos             dd ?
  18. pInfo                   PROCESS_INFORMATION
  19. sInfo                   STARTUPINFO
  20.  
  21. start:
  22. ;Cargamos la USER32.DLL
  23. invoke LoadLibrary,nUser32
  24.  
  25. ;Obtenemos la dirección de MessageBoxA
  26. invoke GetProcAddress,eax,nMessageBox
  27. mov [mMessageBoxA],eax
  28.  
  29. ;Obtenemos la dirección de ExitProcess
  30. push    [ExitProcess]
  31. pop     [mExitProcess]
  32.  
  33. ;Creamos el Proceso
  34. ;invoke CreateProcessA,0,Proceso,0,0,0,CREATE_SUSPENDED,0,0,sInfo,pInfo
  35. invoke OpenProcess, PROCESS_CREATE_THREAD + PROCESS_VM_OPERATION + PROCESS_VM_WRITE, FALSE, [Proceso]
  36. ;Guardamos el Handle
  37. ;push [pInfo.hProcess]
  38. ;pop [hProceso]
  39. mov [hProceso], eax
  40.  
  41. ;Obtenemos el tamaño e la función a inyectar
  42. mov ebx,FIN
  43. sub ebx,FuncionInyectada
  44. mov [TamañoDatos],ebx
  45.  
  46. ;Reservamos espacio en memoria para la función a inyectar
  47. invoke VirtualAllocEx,[hProceso],0,[TamañoDatos],MEM_COMMIT+MEM_RESERVE,PAGE_EXECUTE_READWRITE
  48. mov [DirFuncion],eax
  49.  
  50. ;Escribimos en memoria los datos
  51. invoke WriteProcessMemory,[hProceso],[DirFuncion],FuncionInyectada,[TamañoDatos],0
  52.  
  53. ;Creamos el hilo en el proceso
  54. invoke CreateRemoteThread,[hProceso],0,0,[DirFuncion],0,0,0
  55.  
  56. ;Salimos
  57. invoke ExitProcess,0
  58.  
  59. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///
  60. ;\\\///\\\///\\\///\\\///\  Función Que se Inyecta  ///\\\///\\\///\\\///
  61. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///
  62. proc FuncionInyectada
  63. ;Obtenemos la dirección de memoria donde nos estamos ejecutando
  64. pushad
  65. call delta
  66. delta:
  67. pop ebp
  68. sub ebp,delta
  69. push ebp ebp
  70. pop ebx ecx
  71.  
  72. ;Obtenemos la dirección donde se cargó el Mensaje y el Título
  73. add ebx,Mensaje
  74. add ecx,Titulo
  75.  
  76. ;Llamamos a MessageboxA
  77. push 0
  78. push ebx
  79. push ecx
  80. push 0
  81. call [ebp+mMessageBoxA]
  82.  
  83. ;Llamamos a ExitProcess
  84. ;push 0
  85. ;call [ebp+mExitProcess]
  86.  
  87. Titulo           db 'Code Inyectado!',0
  88. Mensaje          db 'xD',0
  89.  
  90. ;Las direcciones en memoria de las apis
  91. mMessageBoxA     dd ?
  92. mExitProcess     dd ?
  93. endp
  94. FIN:
  95. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///
  96. ;\\\///\\\///\\\///\\\/// Fin Función Que se Inyecta //\\\///\\\///\\\///
  97. ;\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///
  98.  
  99. data import
  100.    library KERNEL32,'KERNEL32.DLL'
  101.    import  KERNEL32,\
  102.            OpenProcess,'OpenProcess',\;CreateProcessA,'CreateProcessA',\
  103.            CreateRemoteThread,'CreateRemoteThread',\
  104.            WriteProcessMemory,'WriteProcessMemory',\
  105.            VirtualAllocEx,'VirtualAllocEx',\
  106.            ExitProcess,'ExitProcess',\
  107.            LoadLibrary,'LoadLibraryA',\
  108.            GetProcAddress,'GetProcAddress'
  109. end data

Haciendo esto no seria recomendable usar ExitProcess... sino te cargas el Explorer :xD :xD ;-)
En línea

[Zero]
Wiki

Desconectado Desconectado

Mensajes: 1.082


CALL DWORD PTR DS:[0]


Ver Perfil WWW
Re: [SRC] [FASM] Inyección de Código en Memoria
« Respuesta #5 en: 18 Abril 2009, 13:29 pm »

Si, osea es un código de inyección en memoria, no de inyección en proceso, crea una nueva instancia del exe e inyecta el código, para inyectar el proceso sería lo mismo casi pero con OpenProcess, como bien dijiste jeje.

Saludos
En línea


“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza.”
Nietzsche
Arkangel_0x7C5


Desconectado Desconectado

Mensajes: 361



Ver Perfil
Re: [SRC] [FASM] Controlar WebCam
« Respuesta #6 en: 18 Abril 2009, 21:32 pm »

interesante codigo, ya podre hacer un chat con WebCam.
Gracias man. ;D

saludos
En línea

[Zero]
Wiki

Desconectado Desconectado

Mensajes: 1.082


CALL DWORD PTR DS:[0]


Ver Perfil WWW
Re: [SRC] [FASM] Controlar WebCam
« Respuesta #7 en: 18 Abril 2009, 22:05 pm »

Jaja, perfecto luego pones el código eh?  ;D. Lo que yo no conseguí fue comprimir la salida en vídeo, no se si es que mi cam no vale, aunque seguro hay otras formas, tampoco busqué mucho la verdad. Me alegro de que te haya servido.

Saludos
En línea


“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza.”
Nietzsche
Arkangel_0x7C5


Desconectado Desconectado

Mensajes: 361



Ver Perfil
Re: [SRC] [FASM] Controlar WebCam
« Respuesta #8 en: 18 Abril 2009, 22:38 pm »

de momento es muy básico, recién empiezo con la programación con redes. Pero si quieres lo posteo.

Saludos
En línea

c4st0r

Desconectado Desconectado

Mensajes: 33



Ver Perfil
Re: [SRC] [FASM] Controlar WebCam
« Respuesta #9 en: 19 Abril 2009, 02:41 am »

Muy bueno el code se agradece, para hacer las fotos mas livianas puede usar la compresion BMP RLE8 las fotos pesan casi como JPG
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines