CreateFile renvoie l'erreur INVALID_HANDLE_VALUE (port COM), et GetLastError renvoie “ne peut pas trouver le fichier spécifié”

Je suis de l'ouverture d'un port pour communiquer avec un périphérique et le contrôle de l'appareil, mais la CreateFile() fonction renvoie INVALID_HANDLE_VALUE.

GetLastError() retourne 2 ce qui signifie qu'il ne peut pas trouver le fichier spécifié.

Mon code est indiqué ci-dessous:

wsprintf( szPort, "COM%d", nPort );
m_hIDComDev = CreateFile(szPort,
                         GENERIC_READ | GENERIC_WRITE, 
                         0, 
                         NULL, 
                         OPEN_EXISTING, 
                         FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, 
                         NULL);
if (m_hIDComDev == INVALID_HANDLE_VALUE)
{
    DWORD err=GetLastError();
}

Pourquoi ce problème se produit?

S'il vous plaît montrer le code.
J'ai modifié à ma question.
Je soupçonne HOWTO: Spécifier les Ports Série de Plus de COM9 c'est le problème.
merci beaucoup! Je trouve qu'il n'y a pas de port COM2 sur mon ordinateur. Donc, ce que je peux faire maintenant est de modifier de manière aléatoire à l'un des ports que mon ordinateur a ou j'ai besoin de choisir un spécifique?
Eh bien, n'est-ce pas dépend de ce que vous voulez faire? Ouvrez le gestionnaire de périphériques pour afficher une liste de ports.

OriginalL'auteur user1964417 | 2013-01-31