Re: Ошибка открытия СОМ порта на Win7 x64
От: 5er Россия  
Дата: 03.05.12 12:57
Оценка:
Здравствуйте, Temnikov, Вы писали:

T>Преамбула:

T>ПО переопределяет виндовый шелл на себя.
T>При загрузке машины грузится сначала стандартный диалог входа в винду, после входа запускается софт.
T>В софте после внутренней авторизации начинается инициализация работы с оборудованием.

T>Собственно проблема:

T>Периодически, не всегда (~30-40%+- не мерил) происходит ошибка открытия СОМ порта.

T>Открывается так:


T>
T>    m_hPortHandle = CreateFile(szBuff,GENERIC_READ | GENERIC_WRITE,0,NULL,
T> OPEN_EXISTING,FILE_FLAG_OVERLAPPED,NULL);
T>


T>Результат работы CreateFile INVALID_HANDLE_VALUE. GetLastError возвращает "доступ запрещен".

T>СОМ порты пробовали и на материнке, и PCI. Не влияет.
T>Перезапуск программы почти всегда помогает, но бывает что нет.

T>Под другими ОС такого не наблюдалось.

T>Куда копать?

Ошибка, скорее всего, возникает из-за того, что порт уже кто-то открыл до вас.
Сервис, например, опрашивает порты, свое устройство ищет или что-то в этом роде.
Нужно найти что-нибудь аналогичное Portmon'у для x64 и посмотреть.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.