Почему у меня ? У всех. И я не говорил, что не работает. Я говорил что существенно изменилось в худшую сторону.
Отправлено
Тумблер (194.190.167.185,194.190.160.201) 29 июня 2011, г. 12:29
В ответ на: че конкретно в апи у тебя не работает? отправлено
колян безпарольный 28 июня 2011, г. 18:48
Например, в системах начиная с WIN98 - до WINXP в случае асинхронного чтения любого файла (и порта) всё работает "корректно". У WIN7 может возникнуть тупиковая ситуация. А именно: Возникает проблема в случае закрытия файла при не завершённой операции асинхронного чтения. У WIN98 - WINXP в этом случае асинхронная операция немедленно завешиться с кодом ERROR_OPERATION_ABORTED. Что правильно и интуитивно понятно. У WIN7 этого не будет никогда. Если при этом попытаться снова открыть порт, ничего не выйдет. Порт будет не доступен. Единственный вариант - отменять асинхронную IO-операцию вручную, но это и на XP можно.(В этом случае ERROR_OPERATION_ABORTED не возникает). Это явная ошибка где-то в ядре. Причём для чтения файлов такая ошибка возможна, но маловероятна. Что подкладывает гнусный баг под все проги с асинхронными операциями с файлами. А вот при работе с портом эта ошибка проявляется сразу ввиду принципиальной разницы между портом и дисковым файлом.
В результате WIN7 не совместима со всеми предыдущими версиями Виндус самым отвратительным образом.