On-line: Andrey, гостей 0. Всего: 1 [подробнее..]
АвторСообщение
постоянный участник




Пост N: 6037
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 17.09.18 15:36. Заголовок: Временный файл с уникальным именем ?


Ищу функцию GetTempFileNameA в Харборе.
https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-gettempfilenamea
Есть такая или нет ?
Давным давно в Клипере была такая функция....

P.S. Нашёл в Harbour\lib\hbrtl.lib - а параметр не знаю nUnique....
// GetTempFileName(cPath,cPrefix,nUnique) -> cFileName

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 5 [только новые]


постоянный участник




Пост N: 6040
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 17.09.18 16:12. Заголовок: Не пашет... Borland ..


Не пашет...
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
demo.c:
Turbo Incremental Link 5.66 Copyright (c) 1997-2002 Borland
Error: Unresolved external '_HB_FUN_GETTEMPFILENAME' referenced from W:\HB_PROJECT\TSB_LINEDRAG\DEMO.OBJ
Link error.


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1474
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 17.09.18 16:36. Заголовок: Andrey пишет: P.S. ..


Andrey пишет:

 цитата:
P.S. Нашёл в Harbour\lib\hbrtl.lib - а параметр не знаю nUnique....
// GetTempFileName(cPath,cPrefix,nUnique) -> cFileName


В исходниках я такую не нашел. Откуда ты это взял?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 6042
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 17.09.18 16:36. Заголовок: Нашел клиперную функ..


Нашел клиперную функцию TEMPFILE( GetStartUpFolder()+"\", "cdx", 0), вроде пашет.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 6043
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 17.09.18 16:38. Заголовок: PSP пишет: В исходн..


PSP пишет:

 цитата:
В исходниках я такую не нашел. Откуда ты это взял?


Брал в папке с МиниГуи, там есть в папке Harbour\lib\hbrtl.lib

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 39
Зарегистрирован: 02.12.18
ссылка на сообщение  Отправлено: 31.01.19 13:46. Заголовок: Мой вариант еще с Clippera


Function TmpName()
// генерировать имя для временного файла
Return "TMP"+Ltrim(str(random()))
//-
Function random(ld)
Local x:=rand(),nSet:=SET(_SET_DECIMALS,16)
//------------------------------------------
if ld=nil ; ld:=.f. ; endif // по умолчанию
x := Int( x * (65535 + 1) )
if ld ; x := x - 32768 ; endif
SET(_SET_DECIMALS,nSet)
Return x
//-
Function rand( s )
Static seed := 0
Local nSet:=SET(_SET_DECIMALS,16)
local a := 16807 // This is just a lucky prime number
// you can hardcode these as constants for better speed
local m := ( 2 ^ 31 ) - 1
local q := int( m / a )
local r := int( m % a )
//--------------------------
if valtype( s ) == 'N'
seed := s
Else
if seed = 0 ; Seed:=Seconds() ; endif
endif
seed := a * ( seed % q ) - r * ( seed / q )
IF seed <= 0 ; seed += m ; endif
SET(_SET_DECIMALS,nSet)
Return ( seed - 1 ) / ( m - 2 )

/* Other Prime Numbers are:
38833 ,37171 ,11903,18233 ,31337 ,23339,27481,31063
34543 // an anagram prime!
36299,13691 ,17659 ,29411
*/

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 8
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет