![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
LP |
![]()
Сообщение
#1
|
Гость ![]() |
Привет всем! Помогите кому не трудно!
В общем в этой программе: Код program delete; uses dos; var f:string; attr:word; procedure delete_file(filename:string); var reg:registers; begin filename:=filename+chr(0); reg.ah:=$41; reg.dx:=ofs(filename[1]); reg.ds:=seg(filename[1]); msdos(reg); if (reg.flags and 1)=1 then begin writeln('Ошибка. Код=',reg.ax); halt; end; end; procedure set_attr(filename:string;attr:word); var reg:registers; begin filename:=filename+chr(0); reg.ah:=$43; reg.dx:=ofs(filename[1]); reg.ds:=seg(filename[1]); reg.al:=1; reg.cx:=attr; msdos(reg); if (reg.flags and 1)=1 then begin writeln('Ошибка. Код=',reg.ax); halt; end; end; function get_attr(filename:string):word; var reg:registers; begin filename:=filename+chr(0); reg.ah:=$43; reg.dx:=ofs(filename[1]); reg.ds:=seg(filename[1]); reg.al:=0; msdos(reg); if (reg.flags and 1)=1 then begin writeln('Ошибка. Код=',reg.ax); halt; end; get_attr:=reg.cx; end; Begin f:='d:\directory'; attr:=get_attr(f); if attr=ReadOnly then set_attr(f,attr and 0); delete_file(f); end. Не получается удалить папку, но c файлами все OK. Запускал под в XP и под чистым ДОСом -разницы нет, папки не хотят удаляться. ![]() Правда в ДОСе выдается код ошибки 2(файл не найден), а в XP 5(доступ отвергнут). Не забываем теги [ CODE] [ /CODE] для исходников Сообщение отредактировано: volvo - 9.12.2004 21:21 |
![]() ![]() |
LP |
![]()
Сообщение
#2
|
Гость ![]() |
volvo,Oleg_Z cпасибо за ответы!
volvo, предмет наз-ся системное программирование, поэтому нельзя ![]() Oleg_Z , я с пустой папкой и пытался ![]() Ладно, завтра на свежую голову еще раз посмотрю. |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 22:43 |