Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.20;
Скачать: CL | DM;

Вниз

Как сгенерировать уникальное имя файла?   Найти похожие ветки 

 
Sergp ©   (2003-10-08 13:48) [0]

Вобщем смысл в следующем:
Имеется папка с файлами. Нужно сгенерировать уникальное имя для нового файла. Напримет в диапазоне от "00000000.dat" до "99999999.dat".
В принципе "вручную" я могу и сам это написать, просто меня интересует есть ли для этого уже готовые функции/процедуры?


 
Skier ©   (2003-10-08 13:49) [1]


> есть ли для этого уже готовые функции/процедуры?

Есть.
API GetTempFileName(...)


 
Sergp ©   (2003-10-08 18:42) [2]

Ага. Есть такое...
Но проблема: не могу разобраться с параметрами...

Нашел описание:
Описание:
function GetTempFileName(DriveLetter: Char; PrefixString: PChar; Unique: Word; TempFileName: PChar): Integer;

Считывает уникальное имя вpеменного файла, именем маpшpута для котоpого является либо коpневой каталог или имя, опpеделенное пеpеменной сpеды TEMP.

Паpаметpы:
DriveLetter: Пpедлагаемый накопитель или tf_ForceDrive, побитово сложенная с пpедлагаемым накопителем, или нуль для накопителя, пpинимаемого по умолчанию.

PrefixString: Тpехсимвольный пpефикс имени файла (заканчивающийся пустым симвлом).
Unique: Численное значение базового имени файла или нуль для значения, выбpанного системой.
TempFileName: Буфеp пpинимающего маpшpута (длиной не менее 144 байта).

Возвpащаемое значение:
Уникальное численное значение имени файла

Но пока ничего не получается.
Кто может приведите примерчик.
Например у меня есть путь где нужно создавать нужные файлы. Как его использовать?
И еще вопрос: генерит действительно уникальное имя или берет его "от балды", типа на основе тек. времени?


 
me   (2003-10-08 21:16) [3]

var
strMyDir : string;
strTempFile : array[0..MAX_PATH-1] of char;
nTempNumber : integer;
...
nTempNumber := GetTempFileName(PChar(strMyDir), "my_mame_prefix", 0, strTempFile);



Страницы: 1 вся ветка

Текущий архив: 2003.10.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
14-65619
Сатир
2003-10-02 16:49
2003.10.20
ГРЯЗНЫЕ ТЕХНОЛОГИИ


4-65667
NVjed
2003-08-14 12:53
2003.10.20
блокировка системы


6-65564
SergP
2003-08-24 15:22
2003.10.20
TServerSocket. Что это за странные хенделы -1 ?


1-65504
qwe
2003-10-08 15:04
2003.10.20
Как в программе добавить пункт в главное меню


1-65488
denis24
2003-10-08 17:44
2003.10.20
Componentcount