Информационный сервер для программистов: Исходники со всего света. Паскальные исходники со всего света
  Powered by Поисковый сервер Яndex: Найдется ВСЁ!
На Главную Pascal Форум Информер Страны мира
   Окружение OS    >>    longname
   
 
 DOS session LONG-FILENAME functions for BP7   Denis Kaganovich 09.09.1996

Модуль для работы с длинными именами файлов в DOS сессии под Windows95/NT.



2k 
 

(***********************************************************************) (* DOS session Windows95/NT LONG-FILENAME functions unit for BP 7 *) (* *) (* (c) Denis Kaganovich, Minsk, 06.09.1996 *) (* E-mail: mahatma@ped.belpak.minsk.by *) (* mahatma@aete.belpak.minsk.by *) (* 2:450/39.242@fidonet *) (* *) (* Based on information from Ralf Braun's INTERLIST v4.6 *) (* *) (* Minimal needed realisation: *) (* - SHORT<->LONG names transformation *) (* - long-filename Move/Rename *) (* - volume info (maximum size of name/path, type of file system) *) (* Additional: *) (* - Win95 FindFirst/FindNext/FindClose (may be faster) *) (* Win95/DOS session supports more long-filename functions, but that *) (* not needed. *) (* Tested - working in real & protected modes *) (***********************************************************************) procedure LFNGetName(SubFn:word; Src,Dst:PChar); procedure LFNRename(NameFrom,NameTo:PChar); procedure LFNGetVolInfo(RootName,Buf:PChar; BufSize:word; var Flags,NameSize,PathSize); {================ Standard pascal STRING versions: ===================} {!!!WARNING! MAY BE BUGS - "STRING" SIZE=255 BUT LONG NAME UP TO 261! } function sLFNGetName(SubFn:word; Src:string):string; procedure sLFNRename(NameFrom,NameTo:string); function sLFNGetVolInfo(RootName:string; var Flags,NameSize,PathSize): string; function LFNFindFirst(Path:PChar; Attr:word; var S:TLFNSearchRec):word; procedure LFNFindNext(Handle:word; var S:TLFNSearchRec); procedure LFNFindClose(Handle:word);