Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
ВнизКак программе переименовать свой *.exe? Найти похожие ветки
← →
Александр из Минска (2003-10-25 16:35) [0]Как программе переименовать свой *.exe? Во время работы программы переименовать свой Setup.exe на Project.exe (мне это нужно для создания своего инсталлятора). Обычное RenameFile не работает.
← →
mOOx_ (2003-10-25 16:37) [1]Через второй файл. Проще - батник.
Удачи.
← →
Александр из Минска (2003-10-25 16:39) [2]А в *.bat что надо писать?
И оно переименует, даже когда моя программа запущена?
← →
хз (2003-10-25 16:47) [3]2 Александр из Минска
> А в *.bat что надо писать?
Почитай книжку Фигурнова. Что-то вроде этого:
ren setup.exe project1.exe
> И оно переименует, даже когда моя программа запущена?
Нет. Не переименует.
А вообще с bat-файлами не очень удобно работать. Старо это. Попробуй придумать другой способ.
← →
Pat (2003-10-25 16:51) [4]CopyFile(PChar(paramstr(0)),"Project.exe",true)
где-то в этом районе
← →
Ihor Osov'yak (2003-10-25 16:57) [5]если для nt - то пройдет такой финт
procedure TForm1.Button1Click(Sender: TObject);
var f: file;
begin //
AssignFile(f, ParamStr(0));
Rename(f, "BlaBla.exe");
end;
← →
хз (2003-10-25 17:09) [6]2 Pat
Ну да. Вроде того:
Procedure Setup2Program;
Var
Reg:TRegistry;
Begin
CopyFile(PChar(paramstr(0)),"Project.exe",true)
ShellExecute(Application.Handle,nil,PChar(ExtractFilePath(ParamStr(0))+"Project.exe"),nil,nil,SW_SHOW);
reg := TRegistry.Create;
with reg do
begin
RootKey := HKEY_LOCAL_MACHINE;
LazyWrite := false;
OpenKey("Software\Microsoft\Windows\CurrentVersion\RunOnce",false);
WriteString("Delete setup","command.com /c del "+PChar(paramstr(0)));
CloseKey;
free;
end;
end;
← →
Ihor Osov'yak (2003-10-25 17:20) [7]Да, используя [5] для н-т ряда, или вариации на тему [6] для w9x получишь то, что нужно.. Даже без RunOncle.. Просто скопировать под новым именем, запустить копию, завершить работу инталятора (или от таймера, или при получении команды от запущенной копии), а потом копия удаляет инсталятор..
зы, но мне, как пользователю, не очень то бы понравилось, что во время инсталяции setup.exe ищезает..
← →
хз (2003-10-25 17:37) [8]> зы, но мне, как пользователю, не очень то бы понравилось, что
> во время инсталяции setup.exe ищезает..
А мне вообще не понятно, откуда пошла мода создавать инсталяторы+программы в одном файле. Неужели нельзя пользоваться генераторами? Тот же NSIS, InstalShield, SetupGenerator, наконец. Ведь есть же простое решение - зачем изобретать велосипед?
← →
Александр из Минска (2003-10-25 20:59) [9]
> Неужели нельзя пользоваться генераторами?
Нет, т.к. мне надо, чтобы при установке компились и регились библиотечки, создавалось и настраивалось соединение удаленного доступа, запускались (параллельно) инсталляторы других программ.
← →
Slavian (2003-10-25 21:06) [10]
if extractfilename<>"Project.exe" then begin
CopyFile("C:\setup.exe,"C:\Project.exe",true)
{далее запускаешь прогу C:\Poject.exe и всё, мне просто не охота писать код запуска, я его не помню!!!}
end else
deletefile("C:\setup.exe");
← →
Ihor Osov'yak (2003-10-25 21:23) [11]2 [10] Slavian © (25.10.03 21:06)
Ты бы, парень, перед тем как сюда писать, проверял бы как оно работает.. И тебе польза бы была..
← →
Slavian (2003-10-25 21:39) [12]
> Ihor Osov"yak © (25.10.03 21:23) [11]
ну если че то не работает, сами перепроверьте, мне лень! Я примерный код написал дальше сами!
← →
хз (2003-10-26 02:31) [13]> Я примерный код написал дальше сами!
Настолько примерный, что даже вроде как и к теме не особо относится ;-)
← →
Плохиш_ (2003-10-26 03:05) [14]
> Александр из Минска © (25.10.03 20:59) [9]
>
> > Неужели нельзя пользоваться генераторами?
>
> Нет, т.к. мне надо, чтобы при установке компились и регились
> библиотечки, создавалось и настраивалось соединение удаленного
> доступа, запускались (параллельно) инсталляторы других программ.
Ну тут только можно повторить хз © (25.10.03 17:37) [8]
В частности InstallShield всё это с успехом делает.
← →
Song (2003-10-26 10:08) [15]Перед выходом из программы запускай batник, в котором делаешь:
************** bat **************
1:
ren старое.имя новое.имя
IF not Exists новое.имя Goto 1
*********************************
Ну вообщем как-то так, потому что давно MS-DOS я занимался :)
← →
DrPass (2003-10-26 11:47) [16]
> > Неужели нельзя пользоваться генераторами?
>
> Нет, т.к. мне надо, чтобы при установке компились и регились
> библиотечки, создавалось и настраивалось соединение удаленного
> доступа, запускались (параллельно) инсталляторы других программ
А как ты думаешь, для чего еще были придуманы генераторы дистрибутивов? Чтобы тупо архив распаковывать? Дык, это ты с WinZip спутал :)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.03 c