Цитата semiono:
так как часто бывает по инсталлеру обсуждают сугубо конкретные инсталерные дела. »
|
Так ведь это и есть инсталерные дела...
Цитата semiono:
Самое главное чтоб разговор был конструктивным, чтобы можно было больше узнать. »
|
Это всё зависит от собеседников.
Цитата semiono:
Для того чтобы удалить возможно имеющиеся файлы от предыдущей версии, (для установки поверх и поверх себя) »
|
Из приведённого вами кода этого не видно, т.е. в скрипте нет обращений к данной ветке реестра для проверки значений и на основании этого выполнения каких-либо действий инсталлятором.
Цитата semiono:
из чего понятно что шел его не даст так просто удалить, поэтому я сначало его переименовываю
в секции [code] а потом удаляю как pwrisosh.o »
|
Интересное решение.
Цитата semiono:
инсталятор должен сам решать и принимать решения, при условии что он грамотно сконструирован. »
|
Это верное замечание, но не в обиду вам сказано, я бы не хотел использовать ваши инсталляторы на своей системе. Хотя подход к реализации некоторых вещей, интересен, но всё же объясняю почему - нет:
У пользователя всегда должно быть право удалить установленную программу, всегда должен быть выбор, при этом о виртуозности и профессионализме человека, который делал инсталлятор, говорит то, что после удаления не остаётся никаких хвостов, т.е. удаляются все установленные службы в системе и записи в реестре, сделанные этой программой.
Цитата semiono:
Если не поленитесь проверьте? Я уверен что файлы не будут удалены. »
|
т.е. мне в ручную создать эти файлы и попытаться удалить их инсталлятором в процессе установки?
если да, то использовал скрипт и всё нормально удалилось:
Скрипт
Код:
[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
OutputDir=.
Compression=lzma/ultra
InternalCompressLevel=ultra
SolidCompression=yes
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Files]
Source: compiler:Examples\MyProg.exe; DestDir: {app}; Flags: ignoreversion
[_Code]
procedure CurPageChanged(CurPageID: Integer);
var
file1, file2: string;
begin
If CurPageID = wpInstalling then
begin
file1:= ExpandConstant('{sd}\New Text Document.txt');
file2:= ExpandConstant('{sd}\New Text Document(2).txt');
if FileExists(file1) then
if DeleteFile(file1) then
MsgBox('Файл: ' + ExtractFileName(file1) + ' успешно удалён!', mbInformation, MB_OK)
else MsgBox(ExtractFileName(file1) + ' - облом!', mbInformation, MB_OK);
if FileExists(file2) then
if DeleteFile(file2) then
MsgBox('Файл: ' + ExtractFileName(file2) + ' успешно удалён!', mbInformation, MB_OK)
else
MsgBox(ExtractFileName(file2) + ' - облом!', mbInformation, MB_OK);
end;
end;
Цитата semiono:
Вот страничка какраз нашлась File Names, Paths, and Namespaces »
|
Спасибо, я этого не знал...