Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

длинные имена Fat32 C++Borland 3.1

74K
03 октября 2011 года
soad33
3 / / 03.10.2011
Прошу помощи,подсказки в решении такой вот задачки(С++Borland3.1)

поиск объектов с максимальным количеством символов в имени среди объектов с длинными именами

для FAT максимальное к-во-255 символов,это 20 дескрипторов по 13 симв
неясно вот к примеру код LFN-0х0F,а какой код max LFN или его надо просчитывать,может кто сталкивался с подобной задачкой
14
03 октября 2011 года
Phodopus
3.3K / / 19.06.2008
что вы понимаете под Max LFN кодом вообще? изложите связно мысль, лучше с табличками\рисунками
и это вопрос скорее в операционные системы, язык тут не при чем
260
04 октября 2011 года
Ramon
1.1K / / 16.08.2003
RTFM: FAT Long Directory Entries
74K
04 октября 2011 года
soad33
3 / / 03.10.2011
Цитата: Phodopus
что вы понимаете под Max LFN кодом вообще? изложите связно мысль, лучше с табличками\рисунками
и это вопрос скорее в операционные системы, язык тут не при чем



LFN-long file name(длинное имя),максимально оно может быть в 255 символов(можно проверить -создать папку с таким длинным именем)мне по заданию надо создать программу которая обращается к объекту(файл или папка)
считает его имя,если оно=255 символов-выводит

14
05 октября 2011 года
Phodopus
3.3K / / 19.06.2008
Каким механизмом это надо сделать, прямым обращением к диску или используя расширенные ф-ии MSDOS?
74K
05 октября 2011 года
soad33
3 / / 03.10.2011
Цитата: Phodopus
Каким механизмом это надо сделать, прямым обращением к диску или используя расширенные ф-ии MSDOS?



вот привожу кусок проги для поиска дл имен

void ShowLongName()
{
char s[37]="", "";

NewPtr=CurPtr->PrevPtr;
while (NewPtr->attrib==0x0F)
{
movedata(FP_SEG(NewPtr->Data), FP_OFF(NewPtr->Data),
FP_SEG(s), FP_OFF(s), 37);
strcat(rez,s);
NewPtr=NewPtr->PrevPtr;
}
setfillstyle(SOLID_FILL, FON);
bar(110,319,632,329);
setcolor(LIGHTCYAN);
if (strlen(rez)>65) rez[68]=0x0;
outtextxy(112,321,rez);
}
если не ошибаюсь то rez[100] то что мне надо только поменять 100 на 255
и (strlen(rez)>65)........ на (strlen(rez)=255)

и сделать вывод

14
05 октября 2011 года
Phodopus
3.3K / / 19.06.2008
так а что мешает попробовать то?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог