Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2013, 17:35   #11
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А причем здесь GetTempFileName? Нужно смотреть какое расширение
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 09.12.2013, 17:39   #12
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,451
По умолчанию

расширение GIF

что- то здесь не верно наверное, или где ошибка?
Код:
procedure TMainForm.FormCreate(Sender: TObject);
begin
  Caption := 'ICQ-Checker';
  FImageFileName := TPath.GetTempFileName() + '.gif'; // это не понимает Delphi7 чем это заменить?
end;
код всей программы
beegl вне форума Ответить с цитированием
Старый 09.12.2013, 18:06   #13
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
var fn:array[1..255] of char;
begin
  windows.GetTempFileName(pchar('d:\1'),PChar('pref'),10,@fn[1]);
  Caption:=fn;
end;
Выдало d:\1\prefA.tmp
Вроде все правильно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.12.2013, 18:06   #14
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Здесь неверно вообще использование GetTempFileName для имен файлов с расширением отличным от tmp. Заменить его можно, например функцией ChangeFileExt, но после этого не факт, что файл с новым расширением не будет существовать. Нужно в цикле генерировать имя файла с нужным расширением и проверять, есть ли такой в заданном каталоге
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 09.12.2013, 18:10   #15
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,451
По умолчанию

оформте пример. и отправте на какой-то обменник исходник
beegl вне форума Ответить с цитированием
Старый 09.12.2013, 18:15   #16
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А вы, что цикл не в состоянии написать для динамического формирования строки? Типа такого. Для обменника этому исходнику слишком много чести

Код:
i:=0;
while True do begin
  Inc(i);
  s:=Format('%s\Prefix%d.gif',[MyCatalog,i]);
  if not FileExists(s) then Break;
end;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 09.12.2013, 18:25   #17
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,434
По умолчанию

//offtop
наглость некоторых людей пугающе-завораживает.
Человек_Борща вне форума Ответить с цитированием
Старый 09.12.2013, 19:38   #18
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,451
По умолчанию

а как это записать
Цитата:
Сообщение от Аватар Посмотреть сообщение
Код:
i:=0;
while True do begin
  Inc(i);
  s:=Format('%s\Prefix%d.gif',[MyCatalog,i]);
  if not FileExists(s) then Break;
end;
и подставить заместить этой строчки?
Код:
FImageFileName:=GetTempFileName('D:\'+'.gif',0,0,PAnsiChar(Buf));
beegl вне форума Ответить с цитированием
Старый 09.12.2013, 19:45   #19
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

s это и есть ваш сформированній FImageFileName. Ну я надеюсь, что не в лоб мой код будете использовать, по крайней мере значения для i рандомно можно да и нужно создавать, иначе могут задержки, если этих файлов слишком много. Да и в префикс не мешало бы засунуть например дату создания
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чем заменить функцию? kity Помощь студентам 8 29.06.2010 16:08
нужно заменить круг на треугольник(delphi7) Dimitrius_92 Помощь студентам 0 27.05.2010 18:23
чем заменить goto? Agronom Общие вопросы C/C++ 3 19.12.2009 19:43
Чем заменить GetFreeSystemResources? rocky7 Компоненты Delphi 0 23.08.2009 20:20