C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Не удаляется файл
atl
Отправлено: 21.05.2005, 01:16


Ученик-кочегар

Группа: Участник
Сообщений: 5



Не удаляется файл из C:\WINDOWS\SYSTEM32\

Файл создается моей программой, успешно изменяется, но не удаляется!


DeleteFile("C:\WINDOWS\SYSTEM32\iaccs.shd");


Как решить проблему???
Любитель
Отправлено: 21.05.2005, 13:33


Дежурный стрелочник

Группа: Участник
Сообщений: 53



Если ты его сначала открывал, то прежде чем удалять надо его закрыть
atl
  Отправлено: 21.05.2005, 13:51


Ученик-кочегар

Группа: Участник
Сообщений: 5



файл закрыт на момент его удаления!
Любитель
Отправлено: 21.05.2005, 13:59


Дежурный стрелочник

Группа: Участник
Сообщений: 53



Догнал наконец

CODE
DeleteFile("C:\\WINDOWS\\SYSTEM32\\iaccs.shd");


Надо двойной слэш использовать

Отредактировано Любитель — 21/05/2005, 13:59
Sl@Sh
Отправлено: 22.05.2005, 14:08


Мастер участка

Группа: Участник
Сообщений: 383



Только после C:\ можно и без двойного обойтись.

Отредактировано Sl@Sh — 22/05/2005, 14:11
Георгий
Отправлено: 22.05.2005, 21:23


Почетный железнодорожник

Группа: Модератор
Сообщений: 874



QUOTE (Sl@Sh @ 22/05/2005, 15:08)
Только после C:\ можно и без двойного обойтись.

почему это?
Sl@Sh
Отправлено: 23.05.2005, 14:11


Мастер участка

Группа: Участник
Сообщений: 383



Я перед тем как написать попробовал, и файл удалился smile.gif Так зачем писать на один символ больше ?

P.S.: Я имею ввиду, DeleteFile("C:\WINDOWS\\SYSTEM32\\iaccs.shd"); — работает.

Отредактировано Sl@Sh — 23/05/2005, 14:22
Guest
Отправлено: 23.05.2005, 14:22


Не зарегистрирован







Незачем пробовать. Надо знать как пишутся строковые литералы.

QUOTE

The backslash character (\) is used to introduce an escape sequence, which allows the visual representation of certain nongraphic characters. For example, the constant \n is used to the single newline character.

The following table shows the available escape sequences.

Note: You must use \ to represent an ASCII backslash, as used in operating system paths.

Sequence Value Char What it does
\a 0x07 BEL Audible bell
\b 0x08 BS Backspace
\f 0x0C FF Formfeed
\n 0x0A LF Newline (linefeed)
\r 0x0D CR Carriage return
\t 0x09 HT Tab (horizontal)
\v 0x0B VT Vertical tab
\ 0x5c \ Backslash
\' 0x27 ' Single quote (apostrophe)
\" 0x22 " Double quote
\? 0x3F ? Question mark
\O  any O=a string of up to three octal digits
\xH  any H=a string of hex digits
\XH  any H=a string of hex digits
Sl@Sh
Отправлено: 23.05.2005, 14:31


Мастер участка

Группа: Участник
Сообщений: 383



QUOTE
Незачем пробовать. Надо знать как пишутся строковые литералы


Я с вами согласен, но на пробование у меня ушло меньше минуты. Это не так много smile.gif Как они пишутся я знаю, просто я случайно забыл второй слэш после имени диска написать, и всё сработало.
atl
Отправлено: 24.05.2005, 21:40


Ученик-кочегар

Группа: Участник
Сообщений: 5



Всем спасибо, проблема решена.

Вернуться в Вопросы программирования в C++Builder