IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Запуск и переименование файла
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 36
Пол: Мужской

Репутация: -  0  +


У меня такой вопрос:
Программа написанная в делфи считывает файл, который перед этим преобразовывается другой программой, эта дополнительная программа запускается по событию через делфи программу. Получается что по нажатию кнопки в прге написанной на делфи запускается дополнительная программа на диске и преобразовывает файл формата 1 (например) в файл формата2, и только затем программа написанная на делфи считывает файл (формата 2). Получается что название файла для подпрограммы должно быть четко фиксированным, а самой прогой которая в делфи написана надо открывать файлы любого названия, но так как она использует перед открытием подпрограмму, этого сделать не получается. Вот что я придумал, при запуске основной программы (делфи) переименовывать файл нужный для открытия в то зафиксированное имя, нужное для работы подпрограммы. Как это можно сделать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Действительно никто не знает как это делается?
нужно чтобы при открытии через opendialog программа переименовывала открываемый файл
Помогите пожалуйста.

 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Профи
****

Группа: Пользователи
Сообщений: 705
Пол: Мужской

Репутация: -  20  +


Цитата(Гость @ 24.07.2006 23:21) *

Действительно никто не знает как это делается?
нужно чтобы при открытии через opendialog программа переименовывала открываемый файл
Помогите пожалуйста.

Насколько я понял из твои объяснений:
Цитата
сделать копию-->переименовать копию в "hex.hex"-->записать на диск в ту же директорию где выполняется программа

Это значит скопировать открываемый файл в "hex.hex". Переименование не знаю для чего ты приплел. И если так, то вот, что тебе надо:
// процедура копирования файла
procedure CopyFile(Source, Destination: string);
var
FromF, ToF: file of byte;
Buffer: array[0..4096] of char;
NumRead: integer;
FileLength: longint;
begin
AssignFile(FromF, Source);
reset(FromF);
AssignFile(ToF, Destination);
rewrite(ToF);
FileLength := FileSize(FromF);
while FileLength > 0 do begin
BlockRead(FromF, Buffer[0], SizeOf(Buffer), NumRead);
FileLength := FileLength - NumRead;
BlockWrite(ToF, Buffer[0], NumRead);
end;
CloseFile(FromF);
CloseFile(ToF);
end;

Использование в твоем случае:
If OpenDialog1.Execute
then begin
Test:=OpenDialog1.FileName;
CopyFile(Test,'hex.hex'); // <--
............
Memo1.Lines.LoadFromFile("pb.txt");
end;
end;
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
AlexSCH   Запуск и переименование файла   20.07.2006 18:27
volvo   AlexSCH, я не понял, в чем проблема? Ты просто не …   20.07.2006 19:22
AlexSCH   не просто переименовать. Ситуация такая, что нажав…   20.07.2006 21:19
volvo   Ну, если ты пользуешься TOpenDialog, то у него ест…   20.07.2006 22:01
AlexSCH   Ну, если ты пользуешься TOpenDialog, то у него ес…   21.07.2006 15:30
mj   а может передавать в запускаемую программу имя фай…   21.07.2006 12:47
Гость   Действительно никто не знает как это делается? нуж…   25.07.2006 2:21
Malice   Действительно никто не знает как это делается? ну…   25.07.2006 12:42
AlexSCH   На строке CopyFile(Test,'hex.hex'); выдае…   25.07.2006 15:06
Malice   На строке CopyFile(Test,'hex.hex'); выда…   25.07.2006 16:15
AlexSCH   Test объявлена как string, с самого начала была. Е…   25.07.2006 18:35
Malice   Test объявлена как string, с самого начала была. …   25.07.2006 19:00
hardcase   Люди, вы чего ерундой откровенной занимаетесь? Зач…   25.07.2006 19:21
AlexSCH   Большое всем спасибо (особенно Malice) за оказанну…   25.07.2006 19:56


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 7.05.2024 13:16
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name