Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.07.26;
Скачать: [xml.tar.bz2];

Вниз

DriverComboBox   Найти похожие ветки 

 
сергей   (2009-05-29 08:29) [0]

На форме используется DriverComboBox.
Проблема в том, что после попытки обращения к дисководу (или CD) без диска возникает ошибка при последующем открытии файла на дисе С.
Assign(...
Rewrite(...
Никак не могу от этого избавиться.
С уважением, Сергей.


 
Сергей М. ©   (2009-05-29 08:32) [1]


> возникает ошибка при последующем открытии файла на дисе
> С


Вот так вот дословно и говорит, мол, я, ошибка, возникаю ?)
И никаких комментариев по поводу своего возникновения не оставляет ?


 
Сергей   (2009-05-29 08:47) [2]

Ошибка I/O error 21.


 
Сергей М. ©   (2009-05-29 08:54) [3]


> I/O error 21


Значит при Assign() ты осуществляешь обращение отнюдь не HD-, а к флоппи- или CD-драйву, ни в один из которых не вставлен носитель.


 
Dennis I. Komarov ©   (2009-05-29 09:00) [4]


> сергей   (29.05.09 08:29)  

Assign(f, "filename.ext");
Поткуда по твоему программа будет брать filename.exe файл?


 
Сергей   (2009-05-29 09:10) [5]

Уточняю.
Обращение к файлу на диске С.
Assign(FE, DirExe+"temp.txt");
Rewrite(FE);
Writeln(FE, ...
Разумеется все работает. Но после попытки обращения к пустому дисководу в DriverComboBox возникает ошибка. Причем Rewrite() выполняется (файл обнуляется) и выдается ошибка error 21. Такое ощущение, что после неудачной попытки надо принудительно перейти на диск С по типу ChDir, но не знаю как это сделать.


 
Сергей М. ©   (2009-05-29 09:16) [6]


> Обращение к файлу на диске С

Где в приведенном коде фигурирует хоть что-либо, на основании чего можно убедиться, что в переменной DirExe содержится путь относительно именно устройства C: и никакого другого ?


> Причем Rewrite() выполняется.. и выдается
> ошибка error 21


Так не бывает.
Возникновение ошибки противоречит утверждению об успешном выполнении процедуры.


 
Smile   (2009-05-29 09:25) [7]

А почему бы не использовать директивы:

{$I-}
...
Rewrite(...
...
{$I+}


и анализировать IOResult?


 
Сергей М. ©   (2009-05-29 09:32) [8]


> Smile   (29.05.09 09:25) [7]


А какая принципиальная разница ?
Ошибка при выполнении Rewrite либо есть либо ее нет.
А уж в каком виде осуществляется обнаружение факта ошибки - в виде исключения или в виде кода отказа - то дело второе и не суть какое важное.


 
Dennis I. Komarov ©   (2009-05-29 10:40) [9]

Что показывает отладчик по поводу значения DirExe?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.07.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.006 c
15-1242935407
Эстет
2009-05-21 23:50
2009.07.26
Чему равно 2*2,222


15-1242846791
Anatoly Podgoretsky
2009-05-20 23:13
2009.07.26
Поговорим об ForeFront Client Security


2-1243356130
rect
2009-05-26 20:42
2009.07.26
Проблемы с transparent


15-1242737676
Игорь
2009-05-19 16:54
2009.07.26
Протестируйте программу пожалуйста


2-1243738366
Нет имени
2009-05-31 06:52
2009.07.26
GDI и GDI+





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский