Здравствуйте господа. У меня проблема. После создания репака, и установки с него игры, я ее не могу удалить не с "установка и удаление программ", не с меню "Пуск".
Только физическое удаление папки игры. Скрипт создавался Inno Setup GameScript Generator 1.1.0.62 для Inno Setup Compiler 5-2-2.
Если создаю скрипт самим Inno Setup Compiler и правлю его istool, то все работает.
Пишет при попытке удаления что : Файл протокола для инстализации не распознан данной верией программы - деинстализатора.
Прошу помочь, и подсказать где проблема.
Вот скрипт:
Код:
![Выделить весь код](images/misc/selectcode.png)
; Скрипт создан с помощью
; IS GameScript Generator by South
; специально для www.csmania.ru
[Setup]
SourceDir=.
OutputDir=D:\
AppName=Две сорваные башни.
AppVerName=Две сорваные башни.
AppVersion=Две сорваные башни.
AppPublisher=Necromant SOFT
AppCopyright=Necromant SOFT
AppPublisherURL=www.norcom.ru
AppSupportURL=www.norcom.ru
AppUpdatesURL=www.norcom.ru
DefaultDirName={pf}\Две сорваные башни.
DefaultGroupName=Две сорваные башни.
AllowNoIcons=yes
OutputBaseFilename=setup
WizardImageFile=C:\Program Files (x86)\Smart Install Maker\Bitmaps\Import\Bmp002.bmp
WizardSmallImageFile=C:\Program Files (x86)\Smart Install Maker\Bitmaps\Import\Bmp013.bmp
WindowVisible=no
WindowShowCaption=no
WindowResizable=no
Compression=lzma/ultra
SolidCompression=yes
DiskSpanning=yes
DiskSliceSize=314572800
SlicesPerDisk=1
[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"
[Files]
Source: "C:\Fraps\Screenshots\towers 2010-10-11 04-00-08-61.bmp"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "C:\Fraps\Screenshots\kmplayer 2010-10-11 21-18-45-61.bmp"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "C:\Fraps\Screenshots\kmplayer 2010-10-11 21-24-14-22.bmp"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "C:\Fraps\Screenshots\kmplayer 2010-10-11 21-25-34-98.bmp"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "C:\Fraps\Screenshots\towers 2010-10-11 03-59-56-43.bmp"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "G:\образы игр\2Bashni\2bashni\dve_sorvannye_bashni-1243956405.jpg"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "G:\образы игр\2Bashni\2bashni\dve_sorvannye_bashni-1243956406.jpg"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "G:\образы игр\2Bashni\2bashni\dve_sorvannye_bashni-1243956407.jpg"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "G:\образы игр\2Bashni\2bashni\dve_sorvannye_bashni-1243956409.jpg"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "G:\образы игр\2Bashni\2bashni\091095d.jpg"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: "isgsg.dll"; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression solidbreak
Source: C:\Users\necromantster\Desktop\ппкрпрку.reg; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression
Source: "D:\Games\Две сорванные башни\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension
[Icons]
Name: "{group}\2bachni"; Filename: "{app}\towers.exe"; WorkingDir: "{app}"; Parameters: autorun;
Name: "{userdesktop}\2bachni"; Filename: "{app}\towers.exe"; WorkingDir: "{app}"; Tasks: desktopicon; Parameters: autorun;
Name: "{group}\launcher"; Filename: "{app}\launcher.exe"; WorkingDir: "{app}"; Parameters: launcher;
Name: "{userdesktop}\launcher"; Filename: "{app}\launcher.exe"; WorkingDir: "{app}"; Tasks: desktopicon; Parameters: launcher;
Name: "{group}\{cm:UninstallProgram,Две сорваные башни.}"; Filename: "{uninstallexe}"
[Run]
Description: "{cm:LaunchProgram, 2bachni}"; Filename: "{app}\towers.exe"; WorkingDir: "{app}"; Parameters: autorun; Flags: nowait postinstall skipifsilent unchecked
Description: "{cm:LaunchProgram, launcher}"; Filename: "{app}\launcher.exe"; WorkingDir: "{app}"; Parameters: launcher; Flags: nowait postinstall skipifsilent unchecked
Filename: {win}\regedit.exe; Parameters: /s {tmp}\ппкрпрку.reg; StatusMsg: "Вносим изменения в реестр ..."; Flags: waituntilterminated runasoriginaluser
[UninstallDelete]
Type: filesandordirs; Name: "{app}"
[_code]
const
Indent=25;
dURL=2;
var
URLLabel,URLLabelShadow:TLabel;
function GetWindowLong(hWnd: HWND; nIndex: Integer): Longint; external 'GetWindowLongA@user32.dll stdcall delayload';
function ssInitialize(hParent:HWND;ssTimeShow:integer;FadeOut:boolean;StretchMode:integer;BkgColor:DWORD):boolean; external 'ssInitialize@files:isgsg.dll stdcall delayload';
procedure ssDeInitialize; external 'ssDeInitialize@files:isgsg.dll stdcall delayload';
procedure ssSetBkgImage(FileName:PChar); external 'ssSetBkgImage@files:isgsg.dll stdcall delayload';
procedure ssAddImage(FileName:PChar); external 'ssAddImage@files:isgsg.dll stdcall delayload';
procedure ssStartShow; external 'ssStartShow@files:isgsg.dll stdcall delayload';
procedure ssStopShow; external 'ssStopShow@files:isgsg.dll stdcall delayload';
procedure ShowSplashScreen(p1:HWND;p2:string;p3,p4,p5,p6,p7:integer;p8:boolean;p9:Cardinal;p10:integer); external 'ShowSplashScreen@files:isgsg.dll stdcall delayload';
function GetSystemMetrics(nIndex:Integer):integer; external 'GetSystemMetrics@user32.dll stdcall delayload';
procedure URLLabelClick(Sender: TObject);
var
ErrorCode:integer;
begin
ShellExec('open','www.norcom.ru','','',SW_SHOWNORMAL,ewNoWait,ErrorCode);
end;
procedure URLLabelMouseDown(Sender:TObject;Button:TMouseButton;Shift:TShiftState;X,Y:Integer);
begin
URLLabel.Top:=URLLabel.Top+dURL;
URLLabel.Left:=URLLabel.Left+dURL;
URLLabel.Font.Style:=URLLabel.Font.Style+[fsUnderline];
URLLabel.Font.Color:=clBlue;
URLLabelShadow.Visible:=False;
end;
procedure URLLabelMouseUp(Sender:TObject;Button:TMouseButton;Shift:TShiftState;X,Y:Integer);
begin
URLLabel.Top:=URLLabel.Top-dURL;
URLLabel.Left:=URLLabel.Left-dURL;
URLLabel.Font.Style:=URLLabel.Font.Style-[fsUnderline];
URLLabel.Font.Color:=clMaroon;
URLLabelShadow.Visible:=True;
end;
procedure RunListClickCheck(Sender: TObject);
var
i:integer;
begin
if WizardForm.RunList.Checked[WizardForm.RunList.ItemIndex] then begin
for i:=0 to WizardForm.RunList.Items.Count-1 do
WizardForm.RunList.Checked[i]:=False;
WizardForm.RunList.Checked[WizardForm.RunList.ItemIndex]:=True;
end;
end;
function InitializeSetup:boolean;
begin
ExtractTemporaryFile('ппкрпрку.reg');
Result:=True;
end;
procedure InitializeWizard;
begin
WizardForm.RunList.OnClickCheck:=@RunListClickCheck;
URLLabelShadow:=TLabel.Create(WizardForm);
with URLLabelShadow do begin
Top:=ScaleY(331);
Left:=ScaleX(25);
Caption:='www.norcom.ru';
AutoSize:=True;
Parent:=WizardForm;
Transparent:=True;
Font.Color:=$969696;
Font.Size:=9;
Font.Style:=Font.Style+[fsBold];
end;
URLLabel:=TLabel.Create(WizardForm);
with URLLabel do begin
Top:=ScaleY(331)-dURL;
Left:=ScaleX(25)-dURL;
Caption:='www.norcom.ru';
AutoSize:=True;
Parent:=WizardForm;
Cursor:=crHand;
Transparent:=True;
Font.Color:=clMaroon;
Font.Size:=9;
Font.Style:=Font.Style+[fsBold];
BringToFront;
OnClick:=@URLLabelClick;
OnMouseDown:=@URLLabelMouseDown;
OnMouseUp:=@URLLabelMouseUp;
end;
ExtractTemporaryFile('091095d.jpg');
ShowSplashScreen(WizardForm.Handle,ExpandConstant('{tmp}')+'\091095d.jpg',1000,7000,3000,0,255,False,$FFFFFF,10);
ssInitialize(GetWindowLong(MainForm.Handle,-8),10,False,1,$FF000000);
ExtractTemporaryFile('towers 2010-10-11 04-00-08-61.bmp');
ssSetBkgImage(ExpandConstant('{tmp}')+'\towers 2010-10-11 04-00-08-61.bmp');
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep=ssInstall then begin
ExtractTemporaryFile('dve_sorvannye_bashni-1243956405.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\dve_sorvannye_bashni-1243956405.jpg');
ExtractTemporaryFile('dve_sorvannye_bashni-1243956406.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\dve_sorvannye_bashni-1243956406.jpg');
ExtractTemporaryFile('dve_sorvannye_bashni-1243956407.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\dve_sorvannye_bashni-1243956407.jpg');
ExtractTemporaryFile('dve_sorvannye_bashni-1243956409.jpg');
ssAddImage(ExpandConstant('{tmp}')+'\dve_sorvannye_bashni-1243956409.jpg');
ExtractTemporaryFile('kmplayer 2010-10-11 21-24-14-22.bmp');
ssAddImage(ExpandConstant('{tmp}')+'\kmplayer 2010-10-11 21-24-14-22.bmp');
ExtractTemporaryFile('kmplayer 2010-10-11 21-18-45-61.bmp');
ssAddImage(ExpandConstant('{tmp}')+'\kmplayer 2010-10-11 21-18-45-61.bmp');
ExtractTemporaryFile('towers 2010-10-11 03-59-56-43.bmp');
ssAddImage(ExpandConstant('{tmp}')+'\towers 2010-10-11 03-59-56-43.bmp');
ExtractTemporaryFile('kmplayer 2010-10-11 21-25-34-98.bmp');
ssAddImage(ExpandConstant('{tmp}')+'\kmplayer 2010-10-11 21-25-34-98.bmp');
ssStartShow;
end;
if CurStep=ssPostInstall then ssStopShow;
end;
procedure CurPageChanged(CurPageID: Integer);
begin
if CurPageID=wpInstalling then begin
WizardForm.MainPanel.Visible:=False;
WizardForm.Bevel1.Visible:=False;
WizardForm.Width:=ScaleX(395);
WizardForm.Height:=ScaleY(142);
WizardForm.Left:=ScaleX(GetSystemMetrics(0)-WizardForm.Width-Indent);
WizardForm.Top:=ScaleY(GetSystemMetrics(1)-WizardForm.Height-Indent);
WizardForm.InnerNotebook.Left:=ScaleX(10);
WizardForm.InnerNotebook.Top:=ScaleY(10);
WizardForm.InnerNotebook.Width:=ScaleX(370);
WizardForm.StatusLabel.Left:=ScaleX(0);
WizardForm.StatusLabel.Top:=ScaleY(0);
WizardForm.StatusLabel.Width:=WizardForm.InnerNotebook.Width;
WizardForm.FileNameLabel.Left:=ScaleX(0);
WizardForm.FileNameLabel.Top:=ScaleY(20);
WizardForm.FileNameLabel.Width:=WizardForm.InnerNotebook.Width;
WizardForm.ProgressGauge.Top:=ScaleY(40);
WizardForm.ProgressGauge.Width:=WizardForm.InnerNotebook.Width;
WizardForm.CancelButton.Left:=ScaleX(154);
WizardForm.CancelButton.Top:=ScaleY(80);
end;
if (CurPageID=wpFinished) or (CurPageID=wpInfoAfter) then begin
WizardForm.RunList.Checked[0]:=True;
if WizardForm.Width<>502 then begin
WizardForm.Visible:=False;
WizardForm.Width:=ScaleX(502);
WizardForm.Height:=ScaleY(392);
WizardForm.Left:=(GetSystemMetrics(0)-WizardForm.Width) div 2;
WizardForm.Top:=(GetSystemMetrics(1)-WizardForm.Height) div 2;
WizardForm.MainPanel.Visible:=True;
WizardForm.Bevel1.Visible:=True;
WizardForm.InnerNotebook.Left:=ScaleX(40);
WizardForm.InnerNotebook.Top:=ScaleY(72);
WizardForm.InnerNotebook.Width:=ScaleX(417);
WizardForm.Visible:=True;
end;
end;
end;
procedure DeinitializeSetup;
begin
ssDeInitialize;
end;