C/Visual C - api's windows 2000

 
Vista:

api's windows 2000

Publicado por Ramiro (1 intervención) el 05/05/2003 14:05:18
Hola!

Tengo un problema con las API's de comunicaciones, cuando trabajo con Windows 2000.
Mi aplicación la he desarrollado para Windows95, cuando cambio la plataforma, y paso a trabajar en Windows2000, funciones como WaitCommEvent se me quedan bloqueadas y no terminan de ejecutarse, no se si hay alguna opción dentro de mi proyecto que debo modificar al cambiar de plataforma.
Si alguno me podeis hechar un cable, os lo agradecería.

Un cordial Saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Problemas con WaitCommEvent en Windows 2000

Publicado por Alejandro (1153 intervenciones) el 22/05/2025 18:20:48
¡Hola, Ramiro!

El problema que estás experimentando con la función `WaitCommEvent` al migrar de Windows 95 a Windows 2000 puede deberse a varios factores relacionados con las diferencias en la gestión de las API de comunicaciones entre estas versiones de Windows. Aquí hay algunas sugerencias que podrían ayudarte a resolver el problema:

1. Verifica la configuración de la comunicación:
- Asegúrate de que la configuración del puerto serie (baud rate, paridad, bits de datos, etc.) sea correcta y compatible con Windows 2000. Puedes utilizar la estructura `DCB` (Device Control Block) para configurar estos parámetros adecuadamente.

2. Manejo de eventos:
- En Windows 2000, es importante asegurarse de que los eventos de comunicación estén correctamente configurados. Asegúrate de que estás utilizando la función `SetCommMask` para establecer la máscara de eventos que deseas monitorear antes de llamar a `WaitCommEvent`.

3. Uso de overlapped I/O:
- Considera utilizar operaciones de E/S superpuestas (overlapped I/O) si no lo has hecho ya. Esto puede ayudar a evitar bloqueos en la función `WaitCommEvent`. Asegúrate de que tu aplicación esté diseñada para manejar correctamente las operaciones asíncronas.

4. Revisar el código de bloqueo:
- Asegúrate de que no haya condiciones de carrera o bloqueos en tu código que puedan estar causando que `WaitCommEvent` no se complete. Revisa el flujo de tu aplicación y asegúrate de que no haya otros hilos o procesos que interfieran con la comunicación.

5. Depuración:
- Utiliza herramientas de depuración para rastrear el estado de tu aplicación y ver en qué punto se está bloqueando. Esto puede darte pistas sobre lo que está sucediendo.

6. Documentación y ejemplos:
- Revisa la documentación de Microsoft sobre `WaitCommEvent` y otros relacionados con la comunicación en Windows 2000. También puedes buscar ejemplos de código que funcionen en esta plataforma para comparar con tu implementación.

Si después de seguir estos pasos sigues teniendo problemas, considera compartir fragmentos de tu código o detalles adicionales sobre cómo estás configurando y utilizando las API de comunicaciones. Esto podría ayudar a identificar el problema más específicamente.

¡Espero que estas sugerencias te sean útiles!

Un cordial saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar