PDA

Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 5]


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 [22] 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100

Johny777
16-07-2012, 17:37
AndreY33_80,
из твоего кода видно что строке в секции значков и так не присвоена задача, те по любому значок создастся вне зависимости
от того поставишь ты там (напротив надписи " Создать значёк на рабочем столе ") галку или нет
секцию задач ([Tasks]) или задачу сотри

t16bz,
не совсем понимаю что именно ты хочешь свернуть
у тебя развёрнуто то, что в строке жирным шрифтом прописано в качестве примера

AndreY33_80
16-07-2012, 18:28
Если стереть секцию задач или сами задачи в ней, то при компиляции выскакивает ошибка.

У меня сейчас при запуске Setup появляется только вот это окно, в котором уже стоит галочука, остаётся только нажать далее...

Нельзя ли как нибудь иммитировать нажатие этой кнопки ?

Johny777
16-07-2012, 19:15
Если стереть секцию задач или сами задачи в ней, то при компиляции выскакивает ошибка. »
у меня не выскакивает

у тебя страница приветствия скрывается так:

procedure CurPageChanged(CurPageID: Integer);
begin
If CurPageID=wpWelcome then
begin
SendMessage(WizardForm.NEXTBUTTON.Handle, 513, 0, 0)
SendMessage(WizardForm.NEXTBUTTON.Handle, 514, 0, 0)
end;
end;

проще будет через встроенную функцию ShouldSkipPage
а ещё проще через дерективу в секции [Setup]
DisableWelcomePage=yes

Нельзя ли как нибудь иммитировать нажатие этой кнопки ? »
дополнил пример из шапки "Спрятать окно инсталлятора" примером South "скрыть с панели задач"

вот тебе полностью тихая установка :) (ты ведь её хотел?)

[Setup]
AppId={{639F03DD-4D24-4F21-9960-58D7944DAE91}
AppName=CCleaner
AppVersion=3.16
;AppVerName=CCleaner 3.16
DefaultDirName={pf}\CCleaner
DefaultGroupName=CCleaner
DisableDirPage=yes
DisableProgramGroupPage=yes
ShowLanguageDialog=no
DisableWelcomePage=yes
DisableReadyPage=yes
DisableFinishedPage=yes
OutputBaseFilename=CCleaner
Compression=lzma/ultra
SolidCompression=yes

[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"

[Files]
;Source: "C:\Program Files\CCleaner\CCleaner.exe"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
;Source: "C:\Program Files\CCleaner\CCleaner.exe"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
;Source: "C:\Program Files\CCleaner\ccleaner.ini"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
;Source: "C:\Program Files\CCleaner\uninst.exe"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
;Source: "C:\Program Files\CCleaner\winapp2.ini"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs

[Icons]
Name: "{group}\CCleaner"; Filename: "{app}\CCleaner.exe"



[Code]
{ отобpажает или пpячет окно обpазом, указанным паpаметpом в nCmdShow }
function ShowWindow(hWnd: HWND; nCmdShow: Integer): BOOL; external 'ShowWindow@user32.dll stdcall';

const
{ обычный клик }
BM_CLICK = $00F5;

procedure CurPageChanged(CurPageID: Integer);
{ на старых версиях IS достаточно было указать
WizardForm.NextButton.OnClick(WizardForm.NextButton);
сейчас же стопориться на странице wpReady, обходится это таким образом }
begin
{ использую для скрытия окна мастера, в противном случае видно страницу wpInstalling }
ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), SW_HIDE);
{ здесь нажимаем кнопку... }
PostMessage(WizardForm.NextButton.Handle, BM_CLICK, 0, 0);
end;

////// прячем с панели задач /// начало
function GetWindowLong(Wnd: HWnd; Index: Integer): Longint;external 'GetWindowLongA@user32.dll stdcall';
function SetWindowLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint;external 'SetWindowLongA@user32.dll stdcall';
//function ShowWindow(hWnd: HWND; nCmdShow: Integer): BOOL; external 'ShowWindow@user32.dll stdcall'; // есть сверху

procedure InitializeWizard;
var
TAppHandle: HWND;
begin
TAppHandle:=GetWindowLong(MainForm.Handle,-8); //получаем хэндл Application'a
// *** убираем окно с экрана
WizardForm.BorderStyle:=bsNone;
WizardForm.Width:=0;
WizardForm.Height:=0;
// ****
ShowWindow(TAppHandle,0); //скрываем с панели задач
SetWindowLong(TAppHandle,-20,GetWindowLong(TAppHandle,-20) or $80); //скрываем от Alt+Tab
end;

/// конец

не забудь раскомментировать строки в секции файлов (удали толчки с запятыми перед каждой строкой)

И убери пожалуйста свой код выше в твой код ,чтобы было компактнее

AndreY33_80
16-07-2012, 21:16
В принципе всё срабатывает, единственное что, ярлык на рабочем столе не создаётся и при попытке деинсталяции пишет "Внутренняя ошибка: Cannot find utCompiledCode record for this version of the uninstalller"

El Sanchez
16-07-2012, 21:49
ярлык на рабочем столе не создаётся »
AndreY33_80, добавьте в секцию [Icons]:

;ярлык для пользователя, запустившего инсталлятор
Name: {userdesktop}\CCleaner; Filename: {app}\CCleaner.exe

;...или для всех пользователей
Name: {commondesktop}\CCleaner; Filename: {app}\CCleaner.exe


при попытке деинсталяции пишет "Внутренняя ошибка: Cannot find utCompiledCode record for this version of the uninstalller" »
AndreY33_80, удалите из папки установки лог-файл деинсталлятора unins000.dat, установите программу поверх существующей установки (будет создан новый лог), пробуйте удалять.

AndreY33_80
16-07-2012, 22:20
С ярлыком разобрался, работает. По деинсталятору получается только как вы сказали... Возможно, не надо добавлять лог-файл деинсталлятора unins000.dat в мастер Inno Setup ?

AndreY33_80
17-07-2012, 00:11
С деинсталятором тоже разобрался, достаточно не брать unins000.dat и unins000.exe.

Но теперь другая проблемма. Программа после установки только на английском языке.

AndreY33_80
17-07-2012, 01:45
Всётаки въехал как все надо делать :yahoo:

я взял правда другую программу - CDBurnerXP

после долгих поисков у меняя получился следующий скрипт:


[Setup]

AppId={{82E2DCFD-0A2B-4114-BBD7-65636084DB3F}
AppName=CDBurnerXP
AppVersion=4.1.1
;AppVerName=CDBurnerXP 4.1.1
DefaultDirName={pf}\CDBurnerXP
DefaultGroupName=CDBurnerXP
DisableDirPage=yes
DisableProgramGroupPage=yes
ShowLanguageDialog=no
DisableReadyPage=yes
DisableFinishedPage=yes
OutputDir=C:\Users\ANDREY\Desktop\Output
OutputBaseFilename=CDBurnerXP
Compression=lzma/ultra64
SolidCompression=true
InternalCompressLevel=ultra64

[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked

[Files]
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\cdbxpp.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\audio.ico"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\bass.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\Bass.Net.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\bass_ape.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\bass_mpc.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\basscd.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\bassflac.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\bassmix.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\basswma.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\basswv.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\CDBXP.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\cdbxpcmd.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\cdbxpcmd.exe.config"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\cdbxpcmd.exe.manifest"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\cdbxpp.exe.config"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\cdbxpp.exe.manifest"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\CsLib.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\data.ico"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\Interop.NMSDVDXLib.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\Interop.RocketDivision.StarBurnX.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\iso.ico"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\LogicNP.FileView.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\LogicNP.FolderView.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\LogicNP.ShComboBox.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\Native.CDBXP.manifest"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\Native.CsLib.manifest"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\NMSDVDXU.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\ogg.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\StarBurn.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\StarBurnX12.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\updater.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\updater.exe.config"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\vorbis.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\vorbisfile.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\Resources\*"; DestDir: "{app}\Resources"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "C:\Users\ANDREY\Desktop\Output\CDBurnerXP\ru-RU\*"; DestDir: "{app}\ru-RU"; Flags: ignoreversion recursesubdirs createallsubdirs


[Icons]
Name: "{group}\CDBurnerXP"; Filename: "{app}\cdbxpp.exe"
Name: "{group}\{cm:UninstallProgram,CDBurnerXP}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\CDBurnerXP"; Filename: "{app}\cdbxpp.exe";

[Registry]
Root: HKCU; SubKey: Software\Canneverbe Limited\CDBurnerXP; ValueType: string; ValueName: AppPath; ValueData: C:\Program Files\CDBurnerXP
Root: HKCU; SubKey: Software\Canneverbe Limited\CDBurnerXP; ValueType: string; ValueName: LastAutoUpdateCheck; ValueData: AAEAAAD/////AQAAAAAAAAAEAQAAAA9TeXN0ZW0uRGF0ZVRpbWUCAAAABXRpY2tzCGRhdGVEYXRhAAAJEM3/eLSxMc8Izf94tLExz4gL
Root: HKCU; SubKey: Software\Canneverbe Limited\CDBurnerXP\frmSelectProject; ValueType: string; ValueName: Size; ValueData: System.Drawing.Size:504,410
Root: HKCU; SubKey: Software\Canneverbe Limited\CDBurnerXP\frmSelectProject; ValueType: string; ValueName: Location; ValueData: System.Drawing.Point:260,164
Root: HKCU; SubKey: Software\Canneverbe Limited\CDBurnerXP\frmSelectProject; ValueType: string; ValueName: WindowState; ValueData: System.Int32:0

[Code]
function ShowWindow(hWnd: HWND; nCmdShow: Integer): BOOL; external 'ShowWindow@user32.dll stdcall';

const
BM_CLICK = $00F5;

procedure CurPageChanged(CurPageID: Integer);
begin
ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), SW_HIDE);
PostMessage(WizardForm.NextButton.Handle, BM_CLICK, 0, 0);
end;

function GetWindowLong(Wnd: HWnd; Index: Integer): Longint;external 'GetWindowLongA@user32.dll stdcall';
function SetWindowLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint;external 'SetWindowLongA@user32.dll stdcall';
//function ShowWindow(hWnd: HWND; nCmdShow: Integer): BOOL; external 'ShowWindow@user32.dll stdcall';

procedure InitializeWizard;
var
TAppHandle: HWND;
begin
TAppHandle:=GetWindowLong(MainForm.Handle,-8);
WizardForm.BorderStyle:=bsNone;
WizardForm.Width:=0;
WizardForm.Height:=0;
ShowWindow(TAppHandle,0);
SetWindowLong(TAppHandle,-20,GetWindowLong(TAppHandle,-20) or $80);
end;

t16bz
17-07-2012, 05:28
не совсем понимаю что именно ты хочешь свернуть
у тебя развёрнуто то, что в строке жирным шрифтом прописано в качестве примера »
Есть окно, на нем TFolderTreeView и кнопка "OK" и "Отмена", если в TFolderTreeView разверну какую-нибудь директорию и нажму на кнопку "Отмена", то при повторном открытии эта директория будет открыта, а мне нужно сделать так, чтобы только была открыта директория указанная в WizardForm.DirEdit.

Johny777
17-07-2012, 10:23
t16bz,
держи:

[Setup]
AppName=DisksInfo
VersionInfoVersion=5.0
AppVerName=DisksInfo
DefaultDirName={pf}\My program
DefaultGroupName=New_Folder
AllowNoIcons=yes

[Icons]
Name: {group}\Тествый значок; Filename: calc.exe Check: not No_Start_Icons

[code]
var
StartMenuTreeView : TStartMenuFolderTreeView;

function No_Start_Icons: Boolean;
begin
Result := WizardForm.NoIconsCheck.Checked;
end;

procedure GrpEditOnChange(Sender: TObject);
begin
if WizardForm.GroupEdit.Text <> '{#SetupSetting("DefaultGroupName")}' then StartMenuTreeView.ChangeDirectory(ExpandConstant(WizardForm.GroupEdit.Text), True);
end;

procedure ObjectOnClick(Sender: TObject);
begin
case Sender of

StartMenuTreeView: if StartMenuTreeView.Directory <> '' then WizardForm.GroupEdit.Text := StartMenuTreeView.Directory

WizardForm.NoIconsCheck:
begin
with WizardForm do
begin
GroupEdit.Enabled := not NoIconsCheck.Checked;
StartMenuTreeView.Enabled := not NoIconsCheck.Checked;
GroupBrowseButton.Enabled := not NoIconsCheck.Checked;
end;
end;

end;
end;


Procedure InitializeWizard;
begin
with WizardForm do
begin
with NoIconsCheck do
begin
SetBounds(WizardForm.DiskSpaceLabel.Left + 96, WizardForm.DiskSpaceLabel.Top + 1, WizardForm.NoIconsCheck.Width, WizardForm.NoIconsCheck.Height
OnClick:= @ObjectOnClick
end;

GroupEdit.OnChange := @GrpEditOnChange;
end;

StartMenuTreeView := TStartMenuFolderTreeView.Create(WizardForm)
with StartMenuTreeView do
begin
SetPaths(ExpandConstant('{userprograms}'), ExpandConstant('{commonprograms}'), ExpandConstant('{userstartup}'), ExpandConstant('{commonstartup}'));
SetBounds(ScaleX(0), ScaleY(110), ScaleX(400), ScaleY(100))
Parent:= WizardForm.SelectProgramGroupPage
Cursor:= crHand
Directory := '{#SetupSetting("DefaultGroupName")}'
OnChange:=@ObjectOnClick
end;

StartMenuTreeView.ChangeDirectory(ExpandConstant(WizardForm.GroupEdit.Text), True);
end;

при изменении эдита папки меню пуск меняется директория TFolderTreeView в и наоборот

Это глючный пример. Не использовать!
При редактировании эдита обновляется TStartMenuFolderTreeView и наоборот. Получается порочный круг жутких багов
(пробовал исправить по всякому в пределах своих ничтожных знаний и возможностей)
Кто допилит, тот будет удостоен похвалы, всеобщего признания и звания героя труда! :)
)

t16bz
17-07-2012, 13:16
Johny777, все равно не выбранные директории не сворачиваются

L1nk3R
17-07-2012, 18:03
t16bz, вот простой пример

#define MyAppName "МояПрограмма"
#define MyAppVersion "1.5"
#define MyAppExeName "MyProg.exe"

[Setup]
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
DefaultDirName={pf}\{#MyAppName}
DefaultGroupName={#MyAppName}
AllowNoIcons=yes
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes

[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"


[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"

[ Code]
var
TFV: TStartMenuFolderTreeView;


procedure TFVOnChange(Sender: TObject);
begin
WizardForm.GroupEdit.Text:= AddBackslash(TFV.Directory)+'{#MyAppName}';
end;

procedure InitializeWizard;

begin
TFV:= TStartMenuFolderTreeView.Create(WizardForm);
TFV.Top:= WizardForm.GroupEdit.Top+28;
TFV.Width:= 417;
TFV.Height:= 100;
TFV.SetPaths(ExpandConstant('{userprograms}'),ExpandConstant('{commonprograms}'),ExpandConstant('{us erstartup}'),ExpandConstant('{commonstartup}'));
TFV.OnChange:= @TFVOnChange;
TFV.Parent:= WizardForm.SelectProgramGroupPage;
end;

L1nk3R
17-07-2012, 18:22
если кому надо то вот пример на папку установки

#define MyAppName "МояПрограмма"
#define MyAppVersion "1.5"
#define MyAppExeName "MyProg.exe"

[Setup]
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
DefaultDirName={pf}\{#MyAppName}
DefaultGroupName={#MyAppName}
AllowNoIcons=yes
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes

[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"


[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"

[ Code]

var
TDV: TFolderTreeView;


procedure TDVOnChange(Sender: TObject);
begin
WizardForm.DirEdit.Text:= AddBackslash(TDV.Directory)+'{#MyAppName}';
end;


procedure InitializeWizard;

begin
TDV:= TFolderTreeView.Create(WizardForm);
TDV.Top:= WizardForm.DirEdit.Top+28;
TDV.Width:= 417;
TDV.Height:= 100;
TDV.OnChange:= @TDVOnChange;
TDV.Parent:= WizardForm.SelectDirPage;
end;

Ivan_009
18-07-2012, 14:39
Как сделать так чтобы при нажатии на кнопку музыки выезжала такая форма :search: заранее спасибо.

Johny777
18-07-2012, 18:47
Вот те Ваня:

http://forum.oszone.net/post-1917570-2069.html
http://forum.oszone.net/post-1917597-2071.html
http://forum.oszone.net/post-1917798-2074.html

какая ссылка на тебя смотрит ту и открывай! :)

AndreY33_80
18-07-2012, 19:28
Скажите, а возможно сделать так, чтобы при нажатии ярлыка деинсталяция, само удаление программы проходило без вмешательства пользователя ? через inno setup можно так переделать uninstall.exe ?

alert30
18-07-2012, 19:49
AndreY33_80, типо чтоб не было "Вы хотите удалить..."?

Gnom_aka_Lexander
18-07-2012, 19:58
AndreY33_80,
В параметрах ярлыка можно указать ключ тихого удаления:
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application

[Icons]
Name: {group}\{cm:UninstallProgram, My Application}; Filename: {uninstallexe}; Parameters: /SILENT;

По поводу спасибо - там внизу есть такая кнопочка - Полезное сообщение - мне жутко нравится, когда ее жмут.

AndreY33_80
18-07-2012, 20:12
:) :up Спасибо

AndreY33_80
18-07-2012, 20:32
если делать так :

Name: "{group}\{cm:UninstallProgram,CDBurnerXP}"; Filename: "{uninstallexe}" Parameters: /SILENT;

то выдаётся ошибка :

mismatched or misplaced quotes on parameter "Filename"




© OSzone.net 2001-2012