open comport autre problème
Bonjour,
Alors moi j'ai exatement le même problème
Citation:
le seul problème : si je tente d'ouvrir un port qui possède déjà sa carte, le programme me renvoie une exception de type EComPort (pour tester, tentez d'ouvrir le port COM auquel est branché votre modem interne par exemple).
A part que moi j'ai pas une carte mais j'aimerais quand même tester que le port ne soit pas déjà utiliser.
En + moi j'ai une finesse :
Alors j'utilise BDS 2006 et j'ai fait une DLL en C++ que je dois appeler avec un programme fait en Delphi.
C'est dans la DLL que j'ai la gestion du port série. Dans la DLL je met mon try .....catch comme indiqué.
Citation:
try
{
ComPort1->Connected = true;
}
catch(EComPort &e)
{
switch(e.Code)
{
case CError_OpenFailed : e.Message = "Votre port série est déjà ouvert" ; break;
// voir l'aide de TComPort sur "Error codes" pour continuer la gestion des erreurs
}
throw;
}
Le problème qu'il y a c'est que que aprés l'erreur "Unable to open port...." j'ai une autre erreur :
Erreur d'application
Exception EComPort dans le module madll.dll dans 000
Cette erreur viendrait de l'application hôte faite en Delphi et je n'arrive pas à la "catcher" dans ma DLL.
Mais je n'arrive pad non plus à la catcher dans l'applic hôte car c'est une erreur indiquant que des Exceptin se produisent dans la DLL.
Est ce que quelqu'un a déjà essayer de faire ce genre de chose ?
Est ce que c'est possible de "catcher" cette erreur ou de la désactiver ?
Merci.