** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Captura Fotografia
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Captura Fotografia

 Responder Responder
Autor
Mensaje
gerardo Ver desplegable
Nuevo
Nuevo
Avatar

Unido: 09/Septiembre/2004
Localización: Colombia
Estado: Sin conexión
Puntos: 25
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita gerardo Cita  ResponderRespuesta Enlace directo a este mensaje Tema: Captura Fotografia
    Enviado: 04/Abril/2019 a las 00:09
Buenas tardes, agradecería infinitamente a quien pueda orientarme o suministrarme una base de datos en access 2013 de 64 bits que me permita capturar fotos desde una Webcam, hasta ahora solo encuentro encuentro ejemplos para access de 32 bits, venia trabajando con un modelo que obtuve de: Jefferson Jimenes (JJJT), pero no e encontrado la manera adaptarla a la versión de 64 bits.

Muchísimas gracias 
Cordial saludo
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 11924
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Abril/2019 a las 13:09
Hola,

¿Cual es el problema concreto que te has encontrado para realizar la adaptación?

Un saludo
Xavi, un minyó de Terrassa

Mi web
Arriba
gerardo Ver desplegable
Nuevo
Nuevo
Avatar

Unido: 09/Septiembre/2004
Localización: Colombia
Estado: Sin conexión
Puntos: 25
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita gerardo Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Abril/2019 a las 17:54
 Xavi, gracias por responder, te copio el código con el que tengo el problema, en un equipo con Office de 32 bits funciona perfecto, pero en un equipo con Office 2013 de 64 bits no genera error pero tampoco muestra la imagen de la cámara  en el monitor  

jjjt = capCreateCaptureWindow("CapWindow", ws_child Or ws_visible, _
                                 0, 0, 320, 240, BoxPicture.hwnd, 0)

  If (jjjt <> 0) Then
    temp = SendMessage(jjjt, wm_cap_driver_connect, 0, 0)     '
    temp = SendMessage(jjjt, wm_cap_set_preview, 1, 0)
    temp = SendMessage(jjjt, WM_CAP_SET_PREVIEWRATE, 30, 0)
    temp = SendMessage(jjjt, WM_CAP_SET_SCALE, True, 0)
    DoEvents
    startcap = True
  End If

Gracias
Cordial saludo
Arriba
gerardo Ver desplegable
Nuevo
Nuevo
Avatar

Unido: 09/Septiembre/2004
Localización: Colombia
Estado: Sin conexión
Puntos: 25
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita gerardo Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Abril/2019 a las 17:59
La Api la tengo declarada asi:

Private Declare PtrSafe Function SendMessage Lib "user32" Alias "SendMessageA" _
    (ByVal hwnd As Long, ByVal wMsg As Long, _
    ByVal wParam As Long, lParam As Any) As Long
Cordial saludo
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 11924
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Abril/2019 a las 18:13
Por lo que parece, te has limitado a cambiar la API añadiendo unicamente PtrSafe. Hay que tener en cuenta que algún tipo de variable también cambia (te lo marco en rojo)

Public Declare PtrSafe Function SendMessageA Lib "user32" (ByVal hWnd As LongPtr, ByVal wMsg As Long, ByVal wParam As LongPtr, lParam As Any) As LongPtr

Dejo un enlace interesante para compara declaraciones 32 vs 64 bits. La página es de Excel pero el artículo se refiere a Office en general:

Un saludo
Xavi, un minyó de Terrassa

Mi web
Arriba
gerardo Ver desplegable
Nuevo
Nuevo
Avatar

Unido: 09/Septiembre/2004
Localización: Colombia
Estado: Sin conexión
Puntos: 25
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita gerardo Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Abril/2019 a las 20:54
Realice las modificaciones como me las propones pero sigue igual, pero me encontré con una información que dice que  "avicap32.dll"  no existe para 64 Bits, de ser asi como lo puedo resolver?.

En mi código la utilizo asi:

Public Declare PtrSafe Function capCreateCaptureWindow Lib "avicap32.dll" Alias "capCreateCaptureWindowA" (ByVal lpszWindowName As String, ByVal dwStyle As LongPtr, ByVal x As LongPtr, ByVal Y As LongPtr, ByVal nWidth As LongPtr, ByVal nHeight As LongPtr, ByVal hwndParent As LongPtr, ByVal nID As LongPtr) As LongPtr.

Cordial saludo
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 11924
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Abril/2019 a las 21:06
Pues si no existe para 64 bits la cosa esta complicada.

Las preguntas que yo me hago son: ¿porque utilizas la versión de 64 bits? ¿puedes instalar la versión de 32 bits?

Según el propio Microsoft, la versión de 64 bits no está recomendada para instalar en PC's. Si que leí en algún sitio que lo recomendaban para servidores (aunque opino que el problema simplemente se traslada de máquina. 
Por mi experiencia, todos mis clientes que, al cambiar de Office, instalaron la versión 64 bits, volvieron a la de 32 en cuanto vieron que les generaba problemas con aplicaciones ya desarrolladas y que les costaba más dinero la reprogramación que el beneficio de trabajar con 64 bits.

Un saludo
Xavi, un minyó de Terrassa

Mi web
Arriba
gerardo Ver desplegable
Nuevo
Nuevo
Avatar

Unido: 09/Septiembre/2004
Localización: Colombia
Estado: Sin conexión
Puntos: 25
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita gerardo Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 04/Abril/2019 a las 21:26
La realidad es que son equipos que adquirió la empresa para la que trabajo y por el manejo que le dan a estos cambios ya no es fácil cambiar la versión. De todas maneras muchas gracias por tus recomendaciones y sigo esperando encontrar alguna solución o encontrar otro método para lograrlo.
Gracias
Cordial saludo
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable