IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

 
 Ответить  Открыть новую тему 
> Получение размера файла
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Как получить размер файла в байтах, не открывая его? И еще плиз напомните, как там удаляются файлы?
А, и еще - как задать в паскале параметр, ну шоб, например, я ввел program.exe -abc из cmd, и шоб юзать в проге это строку abc???
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






1) FindFirst с именем файла, и в структуре SearchRec будет записана вся информация о файле, включая его размер...

2) процедура Erase

3) ParamCount вернет количество переданных параметров, а ParamStr(i) - сами параметры (в виде строки)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Сорри за тупость, но надо ли закрывать стертый файл? То есть не будет каких-либо конфликтов при обращении приложений к "почти удаленному" файлу?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Нет такого понятия "почти удаленный"... До вызова Erase (кстати, перед вызовом Erase файл нужно закрыть, и об этом написано в хелпе) - файл существует, после вызова уже нет... У тебя же не возникает вопрос, не будет ли конфликтов, после того, как ты нажал "Очистить корзину", но перед тем, как корзина очистится?

Об этом заботится ОС, вот и оставь это для нее...

Добавлено через 3 мин.
А если файл занят каким-то приложением, то он не будет удален... IOresult вернет 5 (File access denied) ...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Во-во, я хотел сказать, что надо ли закрывать удаляемый файл. Просто люблю, когда все работает по правилам.
Кстати erase'ом удаляется и незакрытый файл... Во встроенном хелпе не рылся, но в справочнике моем про закрытие ничего не сказано. Хотя справочник датируется 92-м годом... Пора менять.
Кстати, можно ли (возможно я наглею...) заставить pas читать файлы не формата 8.3?
И вконец вопросик: я пытался взять размер файлы как ты сказал (то бишь FindFirst'ом), в хелпе такое описание структуры SearchRec:

type
{тип SearchRec, использующийся в процедурах FindFirst и FindNext}
SearchRec = record
Fill : array[1..2] of byte;
Attr : byte;
Time : longint;
Size : longint;
Name : string[12];
end;

А мне pas при использовании FindFirst говорит, что тип SearchRec неправильный. Пришлось юзать FileSize с открытием.
Это из-за тупого windos.tpu?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Помощник капитана
****

Группа: Пользователи
Сообщений: 601
Пол: Мужской
Реальное имя: Артем

Репутация: -  2  +


А ты в uses Dos пооставил?


--------------------
Dum spiro spero!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






Цитата
Кстати, можно ли (возможно я наглею...) заставить pas читать файлы не формата 8.3?
Можно. Если речь про Турбо Паскаль - то была тема про длинные имена, поищи по форуму, там модуль для этого дела выкладывался, а если FPC, например (ну, или другой современный компилятор) - то он это умеет по определению, без всяких доп. средств...

Цитата
Это из-за тупого windos.tpu?
Чего бы WinDos использовать, если можно просто DOS? В WinDos этот тип называется TSearchRec, соответственно, и названия констант там другие...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Хм... Опять ступил.
volvo, спасибо, благодаря (во многом) тебе был написан чудо батник по перепаковке rar -> 7z, с удалением архива большего размера, то есть теперь свободного пространства на винте поприбавится...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 0:30
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name