Ru-Board.club
← Вернуться в раздел «Программы»

» Inno Setup (создание инсталяционных пакетов)

Автор: log1stable
Дата сообщения: 03.12.2013 06:07
tahirg

Код:
[_components]
Name: fuck; Description: lol;
Name: fuck2; Description: lol2;

[_code]
procedure CurPageChanged(CurPageID: Integer);
var i: integer;
begin
if Curpageid=wpWelcome then
if MsgBox('fuck',mbInformation,mb_YesNo)=idyes then
for i:=0 to WizardForm.ComponentsList.ItemCount-1 do
begin
MsgBox(WizardForm.ComponentsList.ItemCaption[i],mbinformation,mb_ok);
if WizardForm.ComponentsList.ItemCaption[i]='lol' then WizardForm.ComponentsList.Checked[i]:=False else WizardForm.ComponentsList.Checked[i]:=True;
end;
end;
Автор: Habib2302
Дата сообщения: 03.12.2013 11:51
доброе время суток.как добавить 2-ой путь к настройкам в скрипт для удаления настроек/сохранений

Код:
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
case CurUninstallStep of
usPostUninstall:
if DirExists(AddBackslash(ExpandConstant('{userdocs}')) + 'Мои игры\The Saboteur™\Сохранения') then
begin
if MsgBoxEx(0, 'Удалить сохранения игры находящиеся по адресу:' + #13#13 + AddQuotes(AddBackslash(ExpandConstant('{userdocs}')) + 'Мои игры\The Saboteur™\Сохранения'), 'Удаление сохранений', $00000004 or $00000020, 0, 0) = IDYES then
DelTree(AddBackslash(ExpandConstant('{userdocs}')) + 'Мои игры\The Saboteur™\Сохранения', True, True, True);
end;
end;
end;
Автор: Tapas77789
Дата сообщения: 03.12.2013 13:16
Habib2302

Цитата:
и как сделать чтобы при выборе компонента "portable" были неактивными компоненты с ярлыками и не создавались ярлыки в пуске

[more=Portable][Icons]
Name: "{group}\{cm:StartMenu0}"; Filename: "{app}\{#AppExeName}"; WorkingDir: "{app}"; Check: Portable;
Name: "{group}\ReadME"; Filename: "{app}\Docs\readme.txt"; Check: Portable;
Name: "{group}\{cm:StartMenu1}"; Filename: "{uninstallexe}"; Check: Portable;
Name: "{userdesktop}\{cm:StartMenu0}"; Filename: "{app}\{#AppExeName}"; WorkingDir: "{app}"; Tasks:"desctopicon"; Check: Portable;

[_Code]
var
isPortable: Boolean;

function Portable(): Boolean;
begin
Resuls:= not isPortable;
end;

Procedure CurPageChanged(CurPageID: Integer);
begin
if RatioBotton2.Checked then
isPortable:=True else
isPortable:=false
end;[/more]
Автор: Habib2302
Дата сообщения: 03.12.2013 18:00
Tapas77789
выдает ошибку
Автор: Tapas77789
Дата сообщения: 03.12.2013 21:49
Habib2302
Это был пример.

Замени Resuls на Result.
Но при компиляции все равно выдаст ошибку! Две процедуры CurPageChanged

В этом примере есть все
Автор: Habib2302
Дата сообщения: 03.12.2013 22:09
Tapas77789
я хотел сделать так.
при выборе компонента "Распаковать AIDA64" были сняты галочки с компонента "Дополнительные значки" и стали не активными.

и чтобы стояла галочка над "Не создавать папку в меню "Пуск""
Автор: Medissn
Дата сообщения: 04.12.2013 08:37
Inno Setup Compiler 5.5.4 (unicode) QSPack
Русская версия
http://medissn.com/ispack-5.5.4-unicode-rus-v.2.0.0.exe

О переводе:
Программа была переведена на основе исходников и отличается своей стабильностью и качеством от других...
Автор: zuster_andrey
Дата сообщения: 04.12.2013 12:17
Inno Setup Scripting 5.1 - Руководство по расширенным возможностям Inno Setup от Kindly

в шапке по ссылке нету уже его, поделитесь ссылкой где его скачать?
Автор: Tapas77789
Дата сообщения: 04.12.2013 20:50
Habib2302
На скрипт можно взглянуть?
Автор: Habib2302
Дата сообщения: 04.12.2013 21:27
Tapas77789
пожалуйста
[more=Скрипт]
; Скрипт создан через Мастер Inno Setup Script.
; ИСПОЛЬЗУЙТЕ ДОКУМЕНТАЦИЮ ДЛЯ ПОДРОБНОСТЕЙ ИСПОЛЬЗОВАНИЯ INNO SETUP!

#define MyAppName "AIDA64"
#define MyAppVersion "4.00.2700"
#define MyAppPublisher "Copyright © 1995-2013 FinalWire Ltd."
#define MyAppURL "http://www.aida64.com/"
#define AIDA641 "AIDA64 Extreme Edition"
#define AIDA642 "AIDA64 Business Edition"
#define AIDA643 "AIDA64 Engineer Edition"
#define AIDA64EXE "aida64.exe"
#include "WinTB.iss"
#include "botva2.iss"

[Setup]
; Примечание: Значение AppId идентифицирует это приложение.
; Не используйте одно и тоже значение в разных установках.
; (Для генерации значения GUID, нажмите Инструменты | Генерация GUID.)
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\FinalWire
DefaultGroupName=FinalWire
AllowNoIcons=true
OutputBaseFilename={#MyAppName} {#MyAppVersion}
SetupIconFile=ico.ico
Compression=lzma/Ultra64
SolidCompression=true
InternalCompressLevel=Ultra64
ShowLanguageDialog=yes
UninstallDisplayIcon={app}\ico.ico
;Авторские права.
VersionInfoCopyright=Xabib © 2013
;Производитель.
AppPublisher={#MyAppPublisher}
RawDataResource=Botva:botva2.dll|b2p:b2p.dll|Logo:logo.png|bPic:bPic.png|LiPic:LiPic.png|aPic:aPic.png
AppCopyright=Xabib © 2013
UninstallDisplayName={#MyAppName}
AppModifyPath={app}
VersionInfoVersion={#MyAppVersion}
VersionInfoProductName={#MyAppName}
VersionInfoProductVersion={#MyAppVersion}
DirExistsWarning=no
AppendDefaultDirName=false
AppendDefaultGroupName=false
DisableReadyPage=true
AppID=TheBestAidaInstallEver
VersionInfoDescription={#MyAppName} RePack by Xabib
DisableProgramGroupPage=true
ComponentsListTVStyle=true
Uninstallable=not IsComponentSelected('AIDA64\Portable')

[Languages]
Name: "Russian"; MessagesFile: "Russian.isl"

[CustomMessages]
Russian.Msg1=Перед установкой необходимо удалить предыдущую версию приложения. Продолжить?

[Types]
Name: full; Description: Полная установка; Flags: iscustom

[Components]
Name: AIDA64; Description: {#MyAppName}; Flags: fixed; Types: full;
Name: AIDA64\instal; Description: Установить {#MyAppName}; Flags: exclusive
Name: AIDA64\instal\1; Description: {#AIDA641}; Flags: exclusive;
Name: AIDA64\instal\2; Description: {#AIDA642}; Flags: exclusive;
Name: AIDA64\instal\3; Description: {#AIDA643}; Flags: exclusive;
Name: AIDA64\Portable; Description: Распаковать {#MyAppName}; Flags: exclusive
Name: AIDA64\Portable\1; Description: {#AIDA641}; Flags: exclusive;
Name: AIDA64\Portable\2; Description: {#AIDA642}; Flags: exclusive;
Name: AIDA64\Portable\3; Description: {#AIDA643}; Flags: exclusive;
Name: icons; Description: {cm:AdditionalIcons}; Types: full;
Name: icons\desktop; Description: {cm:CreateDesktopIcon}; Types: full;
Name: icons\quicklaunchicon; Description: {cm:CreateQuickLaunchIcon}; OnlyBelowVersion: 0,6.1; Types: full;
Name: icons\quicklaunchicon7; Description: {cm:CreateQuickLaunchIcon}; MinVersion: 0,6.1; Types: full;
Name: InterfaceLang; Description: {cm:InterfaceLang}; Flags: fixed; Types: full;
Name: InterfaceLang\en; Description: Английский; Flags: exclusive;
Name: InterfaceLang\ru; Description: Русский; Flags: exclusive;
Name: InterfaceLang\ua; Description: Украинский; Flags: exclusive;

[Ini]
filename: {app}\aida64.ini; Section: Generic; Key: Language; string: en; Components: InterfaceLang\en;
filename: {app}\aida64.ini; Section: Generic; Key: Language; string: ru; Components: InterfaceLang\ru;
filename: {app}\aida64.ini; Section: Generic; Key: Language; string: ua; Components: InterfaceLang\ua;

[Files]
;Файлы распаковываемые в папку с игрой. Необходимы для деинсталлятора;
Source: WinTB.dll; Flags: dontcopy;
Source: ico.ico; DestDir: {app}; Flags: ignoreversion
Source: 1.ico; DestDir: {app}; Flags: ignoreversion; Components: "AIDA64\instal\1 AIDA64\Portable\1";
Source: 2.ico; DestDir: {app}; Flags: ignoreversion; Components: "AIDA64\instal\2 AIDA64\Portable\2";
Source: 3.ico; DestDir: {app}; Flags: ignoreversion; Components: "AIDA64\instal\3 AIDA64\Portable\3";
Source: PinToTasckbar.vbs; DestDir: {tmp}; Components: "AIDA64\instal icons\quicklaunchicon7";

Source: {app}\{#AIDA641}\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "AIDA64\instal\1 AIDA64\Portable\1";
Source: {app}\{#AIDA642}\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "AIDA64\instal\2 AIDA64\Portable\2";
Source: {app}\{#AIDA643}\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "AIDA64\instal\3 AIDA64\Portable\3";
; Примечание: Не используйте "Flags: ignoreversion" для системных файлов

[Icons]
Name: {group}\{#AIDA641}; Filename: {app}\{#AIDA64EXE}; Components: AIDA64\instal\1;
Name: {group}\{#AIDA642}; Filename: {app}\{#AIDA64EXE}; Components: AIDA64\instal\2;
Name: {group}\{#AIDA643}; Filename: {app}\{#AIDA64EXE}; Components: AIDA64\instal\3;

Name: {group}\{cm:UninstallProgram,{#AIDA641}}; Filename: {uninstallexe}; Components: AIDA64\instal\1; IconFilename: {app}\1.ico;
Name: {group}\{cm:UninstallProgram,{#AIDA642}}; Filename: {uninstallexe}; Components: AIDA64\instal\2; IconFilename: {app}\2.ico;
Name: {group}\{cm:UninstallProgram,{#AIDA643}}; Filename: {uninstallexe}; Components: AIDA64\instal\3; IconFilename: {app}\3.ico;

Name: {group}\{cm:ProgramOnTheWeb,{#MyAppName}}; Filename: {#MyAppURL}; Components: AIDA64\instal\1;
Name: {group}\{cm:ProgramOnTheWeb,{#MyAppName}}; Filename: {#MyAppURL}; Components: AIDA64\instal\2;
Name: {group}\{cm:ProgramOnTheWeb,{#MyAppName}}; Filename: {#MyAppURL}; Components: AIDA64\instal\3;

Name: "{group}\Справка {#AIDA641}"; Filename: {app}\aida64.chm; Components: AIDA64\instal\1;
Name: "{group}\Справка {#AIDA642}"; Filename: {app}\aida64.chm; Components: AIDA64\instal\2;
Name: "{group}\Справка {#AIDA643}"; Filename: {app}\aida64.chm; Components: AIDA64\instal\3;

Name: {commondesktop}\{#AIDA641}; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\1 icons\desktop";
Name: {commondesktop}\{#AIDA642}; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\2 icons\desktop";
Name: {commondesktop}\{#AIDA643}; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\3 icons\desktop";

Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#AIDA641}"; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\1 icons\quicklaunchicon";
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#AIDA642}"; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\2 icons\quicklaunchicon";
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#AIDA643}"; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\3 icons\quicklaunchicon";

[Run]
Filename: {app}\{#AIDA64EXE}; Description: "{cm:LaunchProgram,{#StringChange(AIDA641, '&', '&&')}}"; Flags: nowait postinstall skipifsilent Unchecked; Components: "AIDA64\instal\1 AIDA64\Portable\1";
Filename: {tmp}\PinToTasckbar.vbs; Parameters: """{app}\{#AIDA64EXE}"""; Flags: shellexec; Components: "AIDA64\instal\1 icons\quicklaunchicon7";

Filename: {app}\{#AIDA64EXE}; Description: "{cm:LaunchProgram,{#StringChange(AIDA642, '&', '&&')}}"; Flags: nowait postinstall skipifsilent Unchecked; Components: "AIDA64\instal\2 AIDA64\Portable\2";
Filename: {tmp}\PinToTasckbar.vbs; Parameters: """{app}\{#AIDA64EXE}"""; Flags: shellexec; Components: "AIDA64\instal\2 icons\quicklaunchicon7";

Filename: {app}\{#AIDA64EXE}; Description: "{cm:LaunchProgram,{#StringChange(AIDA643, '&', '&&')}}"; Flags: nowait postinstall skipifsilent Unchecked; Components: "AIDA64\instal\3 AIDA64\Portable\3";
Filename: {tmp}\PinToTasckbar.vbs; Parameters: """{app}\{#AIDA64EXE}"""; Flags: shellexec; Components: "AIDA64\instal\3 icons\quicklaunchicon7";

[UninstallDelete]
Type: filesandordirs; Name: {app}\*;

[Code]

#ifdef UNICODE
#define A "W"
#else
#define A "A"
#endif

const
RT_RCDATA = 10;

var
ResultCode: Integer;
lPLogo, bPicHandle, bPicHandle2, lPicHandle: THandle;
BtnImage: TBitmapImage;
iInitialize: Boolean;

function GetFromRes(const ResName, SaveFileName: String): Boolean;
var
lResStream: TResourceStream;
begin
lResStream := TResourceStream.Create(HInstance, ResName, RT_RCDATA);
try
lResStream.SaveToFile(AddBackslash(ExpandConstant('{tmp}')) + SaveFileName);
finally
lResStream.Free;
Result := FileExists(AddBackslash(ExpandConstant('{tmp}')) + SaveFileName);
end;
end;

function OnShouldSkipPage(Sender: TWizardPage): Boolean;
begin
if WizardForm.ComponentsList.Items.Count > 0 then WizardForm.Tag:= 1; // отображаются страницы выбора папки и компонентов
end;

function UninstallMyApp(): Boolean;
var
Buff: String;
i: Integer;
begin
Result := not RegQueryStringValue( HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#SetupSetting("AppID")}_is1', 'UninstallString', Buff );
if not Result then Result := not FileExists(RemoveQuotes(Buff));
if not Result then if MsgBox('Перед установкой необходимо удалить предыдущую версию приложения. Продолжить?', mbError, MB_YESNO) = IDYES then
try
Exec(RemoveQuotes(Buff), '', ExtractFilePath(RemoveQuotes(Buff)), SW_SHOW, ewWaitUntilTerminated, i);
finally
Result := not RegQueryStringValue( HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#SetupSetting("AppID")}_is1', 'UninstallString', Buff );
if not Result then MsgBox('Удаление завершилось неудачей, бывай!', mbError, MB_OK);
end;
end;



function InitializeSetup(): Boolean;
begin
Result := UninstallMyApp();
end;

procedure InitializeWizard;
begin
RedesignWizardForm;
RedesignWizardForm;

WizardForm.DiskSpaceLabel.Top := ScaleY(65);
WizardForm.DirBrowseButton.Top := ScaleY(36);
WizardForm.DirEdit.Top := ScaleY(37);
WizardForm.NoIconsCheck.Parent := WizardForm.SelectDirPage;
WizardForm.SelectDirLabel.Top := ScaleX(09)
WizardForm.SelectDirBitmapImage.Top := ScaleY(0)
WizardForm.SelectDirBrowseLabel.Visible := False
WizardForm.SelectGroupBitmapImage.Top := ScaleY(95);
WizardForm.SelectGroupBitmapImage.Parent := WizardForm.SelectDirPage;
WizardForm.GroupBrowseButton.Parent := WizardForm.SelectDirPage;
WizardForm.GroupBrowseButton.Top := ScaleY(133);
WizardForm.GroupEdit.Parent := WizardForm.SelectDirPage;
WizardForm.GroupEdit.Top := ScaleY(134);
WizardForm.SelectStartMenuFolderBrowseLabel.Parent := WizardForm.SelectDirPage;
WizardForm.SelectStartMenuFolderBrowseLabel.Top := ScaleY(170);
WizardForm.SelectStartMenuFolderLabel.Parent := WizardForm.SelectDirPage;
WizardForm.SelectStartMenuFolderLabel.Top := ScaleY(105);
PageFromID(wpSelectDir).OnShouldSkipPage:= @OnShouldSkipPage;
with WizardForm do
begin
iInitialize := True;
if GetFromRes('_IS_BOTVA', 'botva2.dll') and GetFromRes('_IS_B2P', 'b2p.dll') and GetFromRes('_IS_LOGO', 'logo.png') and GetFromRes('_IS_BPIC', 'bPic.png') and GetFromRes('_IS_LIPIC', 'LiPic.png') and GetFromRes('_IS_APIC', 'aPic.png') then
begin
bPicHandle := ImgLoad(WelcomePage.Handle, ExpandConstant('{tmp}\aPic.png'), WizardBitmapImage.Left, WizardBitmapImage.Top, WizardBitmapImage.Width, WizardBitmapImage.Height, True, True);
WizardBitmapImage.Hide;
ImgSetVisibility(bPicHandle, True);
ImgApplyChanges(WelcomePage.Handle);

bPicHandle := ImgLoad(FinishedPage.Handle, ExpandConstant('{tmp}\bPic.png'), WizardBitmapImage2.Left, WizardBitmapImage2.Top, WizardBitmapImage2.Width, WizardBitmapImage2.Height, True, True);
WizardBitmapImage2.Hide;
ImgSetVisibility(bPicHandle, True);
ImgApplyChanges(FinishedPage.Handle);

lPicHandle := ImgLoad(MainPanel.Handle, ExpandConstant('{tmp}\LiPic.png'), WizardSmallBitmapImage.Left, WizardSmallBitmapImage.Top, WizardSmallBitmapImage.Width, WizardSmallBitmapImage.Height, True, True);
WizardSmallBitmapImage.Hide;
ImgSetVisibility(lPicHandle, True);
ImgApplyChanges(MainPanel.Handle);

lPLogo:= ImgLoad(WizardForm.Handle, ExpandConstant('{tmp}\logo.png'), ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40), True, True);
ImgApplyChanges(WizardForm.Handle);
end;

ExtractTemporaryFile('WinTB.dll');
SetTaskBarProgressValue(0, 60);
SetTaskBarProgressState(0, TBPF_ERROR);
TaskBarV10(MainForm.Handle, WizardForm.Handle, false, false, 0, 0, _m_);

with TLabel.Create(WizardForm) do
begin
Parent:=WizardForm;
AutoSize:=False;
Transparent:= true;
SetBounds(ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40));
end;
end;
end;

Procedure CurPageChanged(CurPageID: Integer);
Begin
Case CurPageID of

wpSelectDir: if WizardForm.Tag = 1 then
begin
WizardForm.SelectDirPage.Notebook.ActivePage:= WizardForm.SelectComponentsPage;
WizardForm.PageNameLabel.Caption:= SetupMessage(msgWizardSelectComponents);
WizardForm.Hint:= WizardForm.PageDescriptionLabel.Caption; // запомнить SetupMessage(msgSelectDirDesc)
WizardForm.PageDescriptionLabel.Caption:= SetupMessage(msgSelectComponentsDesc);
end;
wpSelectComponents: if WizardForm.Tag = 1 then
begin
WizardForm.NextButton.Caption:= SetupMessage(msgButtonInstall);
WizardForm.SelectComponentsPage.Notebook.ActivePage:= WizardForm.SelectDirPage;
WizardForm.DiskSpaceLabel.Caption:= WizardForm.ComponentsDiskSpaceLabel.Caption;
WizardForm.PageNameLabel.Caption:= SetupMessage(msgWizardSelectDir);
WizardForm.PageDescriptionLabel.Caption:= WizardForm.Hint; // иначе вместо названия программы [name]
if IsComponentSelected('AIDA64\instal\1') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA641}';
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA641}';
end else
if IsComponentSelected('AIDA64\instal\2') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA642}'
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA642}'
end else
if IsComponentSelected('AIDA64\instal\3') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA643}'
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA643}'
end else
if IsComponentSelected('AIDA64\Portable\1') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA641}';
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA641}';
end else
if IsComponentSelected('AIDA64\Portable\2') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA642}'
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA642}'
end else
if IsComponentSelected('AIDA64\Portable\3') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA643}'
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA643}'
end;
end;
end;
end;


procedure DeinitializeSetup();
begin
if iInitialize then
begin
gdipShutdown;
TaskBarDestroy;
end;
end;

procedure InitializeUninstallProgressForm;
begin
with UninstallProgressForm do
begin
if GetFromRes('_IS_BOTVA', 'botva2.dll') and GetFromRes('_IS_B2P', 'b2p.dll') and GetFromRes('_IS_LOGO', 'logo.png') and GetFromRes('_IS_LIPIC', 'LIPic.png') then
begin
lPicHandle := ImgLoad(MainPanel.Handle, ExpandConstant('{tmp}\LiPic.png'), WizardSmallBitmapImage.Left, WizardSmallBitmapImage.Top, WizardSmallBitmapImage.Width, WizardSmallBitmapImage.Height, True, True);
WizardSmallBitmapImage.Hide;
ImgSetVisibility(lPicHandle, True);
ImgApplyChanges(MainPanel.Handle);

lPLogo:= ImgLoad(UninstallProgressForm.Handle, ExpandConstant('{tmp}\logo.png'), ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40), True, True);
ImgApplyChanges(UninstallProgressForm.Handle);
end;

with TLabel.Create(nil) do
begin
Parent:=UninstallProgressForm;
AutoSize:=False;
Transparent:= true;
SetBounds(ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40));
end;
end;
end;

procedure DeinitializeUninstall();
begin
gdipShutdown;
end;
[/more]
Автор: sjwrec
Дата сообщения: 05.12.2013 07:57
Здравствуйте. Недавно купил себе видеокарту Nvidia GeForce GT 630 (DX11) 4 ГБ

Проблема в том что библиотеки IsUtils.dll или get_hw_caps.dll или просто из реестра

Показывают память: -1073 МБ

Запускаю DxDiaig там показывает: 4095 МБ

Кто нибудь знает как решить эту проблему?
Автор: Habib2302
Дата сообщения: 05.12.2013 09:01
sjwrec
было такое, но мне только помогла переустановка винды!!
Автор: sjwrec
Дата сообщения: 05.12.2013 13:41
Habib2302
Винда тут не причём на XP также. И на 8 ке также.

Автор: Tapas77789
Дата сообщения: 05.12.2013 18:08
Tapas77789

[more=Скрипт]
; Скрипт создан через Мастер Inno Setup Script.
; ИСПОЛЬЗУЙТЕ ДОКУМЕНТАЦИЮ ДЛЯ ПОДРОБНОСТЕЙ ИСПОЛЬЗОВАНИЯ INNO SETUP!

#define MyAppName "AIDA64"
#define MyAppVersion "4.00.2700"
#define MyAppPublisher "Copyright © 1995-2013 FinalWire Ltd."
#define MyAppURL "http://www.aida64.com/"
#define AIDA641 "AIDA64 Extreme Edition"
#define AIDA642 "AIDA64 Business Edition"
#define AIDA643 "AIDA64 Engineer Edition"
#define AIDA64EXE "aida64.exe"
#include "WinTB.iss"
#include "botva2.iss"

[Setup]
; Примечание: Значение AppId идентифицирует это приложение.
; Не используйте одно и тоже значение в разных установках.
; (Для генерации значения GUID, нажмите Инструменты | Генерация GUID.)
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\FinalWire
DefaultGroupName=FinalWire
AllowNoIcons=true
OutputBaseFilename={#MyAppName} {#MyAppVersion}
SetupIconFile=ico.ico
Compression=lzma/Ultra64
SolidCompression=true
InternalCompressLevel=Ultra64
ShowLanguageDialog=yes
UninstallDisplayIcon={app}\ico.ico
;Авторские права.
VersionInfoCopyright=Xabib © 2013
;Производитель.
AppPublisher={#MyAppPublisher}
RawDataResource=Botva:botva2.dll|b2p:b2p.dll|Logo:logo.png|bPic:bPic.png|LiPic:LiPic.png|aPic:aPic.png
AppCopyright=Xabib © 2013
UninstallDisplayName={#MyAppName}
AppModifyPath={app}
VersionInfoVersion={#MyAppVersion}
VersionInfoProductName={#MyAppName}
VersionInfoProductVersion={#MyAppVersion}
DirExistsWarning=no
AppendDefaultDirName=false
AppendDefaultGroupName=false
DisableReadyPage=true
AppID=TheBestAidaInstallEver
VersionInfoDescription={#MyAppName} RePack by Xabib
DisableProgramGroupPage=true
ComponentsListTVStyle=true
Uninstallable=not IsComponentSelected('AIDA64\Portable')

[Languages]
Name: "Russian"; MessagesFile: "Russian.isl"

[CustomMessages]
Russian.Msg1=Перед установкой необходимо удалить предыдущую версию приложения. Продолжить?

[Types]
Name: full; Description: Полная установка; Flags: iscustom

[Components]
Name: AIDA64; Description: {#MyAppName}; Flags: fixed; Types: full;
Name: AIDA64\instal; Description: Установить {#MyAppName}; Flags: exclusive
Name: AIDA64\instal\1; Description: {#AIDA641}; Flags: exclusive;
Name: AIDA64\instal\2; Description: {#AIDA642}; Flags: exclusive;
Name: AIDA64\instal\3; Description: {#AIDA643}; Flags: exclusive;
Name: AIDA64\Portable; Description: Распаковать {#MyAppName}; Flags: exclusive
Name: AIDA64\Portable\1; Description: {#AIDA641}; Flags: exclusive;
Name: AIDA64\Portable\2; Description: {#AIDA642}; Flags: exclusive;
Name: AIDA64\Portable\3; Description: {#AIDA643}; Flags: exclusive;
Name: icons; Description: {cm:AdditionalIcons}; Types: full;
Name: icons\desktop; Description: {cm:CreateDesktopIcon}; Types: full;
Name: icons\quicklaunchicon; Description: {cm:CreateQuickLaunchIcon}; OnlyBelowVersion: 0,6.1; Types: full;
Name: icons\quicklaunchicon7; Description: {cm:CreateQuickLaunchIcon}; MinVersion: 0,6.1; Types: full;
Name: InterfaceLang; Description: {cm:InterfaceLang}; Flags: fixed; Types: full;
Name: InterfaceLang\en; Description: Английский; Flags: exclusive;
Name: InterfaceLang\ru; Description: Русский; Flags: exclusive;
Name: InterfaceLang\ua; Description: Украинский; Flags: exclusive;

[Ini]
filename: {app}\aida64.ini; Section: Generic; Key: Language; string: en; Components: InterfaceLang\en;
filename: {app}\aida64.ini; Section: Generic; Key: Language; string: ru; Components: InterfaceLang\ru;
filename: {app}\aida64.ini; Section: Generic; Key: Language; string: ua; Components: InterfaceLang\ua;

[Files]
;Файлы распаковываемые в папку с игрой. Необходимы для деинсталлятора;
Source: WinTB.dll; Flags: dontcopy;
Source: ico.ico; DestDir: {app}; Flags: ignoreversion
Source: 1.ico; DestDir: {app}; Flags: ignoreversion; Components: "AIDA64\instal\1 AIDA64\Portable\1";
Source: 2.ico; DestDir: {app}; Flags: ignoreversion; Components: "AIDA64\instal\2 AIDA64\Portable\2";
Source: 3.ico; DestDir: {app}; Flags: ignoreversion; Components: "AIDA64\instal\3 AIDA64\Portable\3";
Source: PinToTasckbar.vbs; DestDir: {tmp}; Components: "AIDA64\instal icons\quicklaunchicon7";

Source: {app}\{#AIDA641}\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "AIDA64\instal\1 AIDA64\Portable\1";
Source: {app}\{#AIDA642}\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "AIDA64\instal\2 AIDA64\Portable\2";
Source: {app}\{#AIDA643}\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "AIDA64\instal\3 AIDA64\Portable\3";
; Примечание: Не используйте "Flags: ignoreversion" для системных файлов

[Icons]
Name: {group}\{#AIDA641}; Filename: {app}\{#AIDA64EXE}; Components: AIDA64\instal\1;
Name: {group}\{#AIDA642}; Filename: {app}\{#AIDA64EXE}; Components: AIDA64\instal\2;
Name: {group}\{#AIDA643}; Filename: {app}\{#AIDA64EXE}; Components: AIDA64\instal\3;

Name: {group}\{cm:UninstallProgram,{#AIDA641}}; Filename: {uninstallexe}; Components: AIDA64\instal\1; IconFilename: {app}\1.ico;
Name: {group}\{cm:UninstallProgram,{#AIDA642}}; Filename: {uninstallexe}; Components: AIDA64\instal\2; IconFilename: {app}\2.ico;
Name: {group}\{cm:UninstallProgram,{#AIDA643}}; Filename: {uninstallexe}; Components: AIDA64\instal\3; IconFilename: {app}\3.ico;

Name: {group}\{cm:ProgramOnTheWeb,{#MyAppName}}; Filename: {#MyAppURL}; Components: AIDA64\instal\1;
Name: {group}\{cm:ProgramOnTheWeb,{#MyAppName}}; Filename: {#MyAppURL}; Components: AIDA64\instal\2;
Name: {group}\{cm:ProgramOnTheWeb,{#MyAppName}}; Filename: {#MyAppURL}; Components: AIDA64\instal\3;

Name: "{group}\Справка {#AIDA641}"; Filename: {app}\aida64.chm; Components: AIDA64\instal\1;
Name: "{group}\Справка {#AIDA642}"; Filename: {app}\aida64.chm; Components: AIDA64\instal\2;
Name: "{group}\Справка {#AIDA643}"; Filename: {app}\aida64.chm; Components: AIDA64\instal\3;

Name: {commondesktop}\{#AIDA641}; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\1 icons\desktop";
Name: {commondesktop}\{#AIDA642}; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\2 icons\desktop";
Name: {commondesktop}\{#AIDA643}; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\3 icons\desktop";

Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#AIDA641}"; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\1 icons\quicklaunchicon";
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#AIDA642}"; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\2 icons\quicklaunchicon";
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#AIDA643}"; Filename: {app}\{#AIDA64EXE}; Components: "AIDA64\instal\3 icons\quicklaunchicon";

[Run]
Filename: {app}\{#AIDA64EXE}; Description: "{cm:LaunchProgram,{#StringChange(AIDA641, '&', '&&')}}"; Flags: nowait postinstall skipifsilent Unchecked; Components: "AIDA64\instal\1 AIDA64\Portable\1";
Filename: {tmp}\PinToTasckbar.vbs; Parameters: """{app}\{#AIDA64EXE}"""; Flags: shellexec; Components: "AIDA64\instal\1 icons\quicklaunchicon7";

Filename: {app}\{#AIDA64EXE}; Description: "{cm:LaunchProgram,{#StringChange(AIDA642, '&', '&&')}}"; Flags: nowait postinstall skipifsilent Unchecked; Components: "AIDA64\instal\2 AIDA64\Portable\2";
Filename: {tmp}\PinToTasckbar.vbs; Parameters: """{app}\{#AIDA64EXE}"""; Flags: shellexec; Components: "AIDA64\instal\2 icons\quicklaunchicon7";

Filename: {app}\{#AIDA64EXE}; Description: "{cm:LaunchProgram,{#StringChange(AIDA643, '&', '&&')}}"; Flags: nowait postinstall skipifsilent Unchecked; Components: "AIDA64\instal\3 AIDA64\Portable\3";
Filename: {tmp}\PinToTasckbar.vbs; Parameters: """{app}\{#AIDA64EXE}"""; Flags: shellexec; Components: "AIDA64\instal\3 icons\quicklaunchicon7";

[UninstallDelete]
Type: filesandordirs; Name: {app}\*;

[Code]

#ifdef UNICODE
#define A "W"
#else
#define A "A"
#endif

const
RT_RCDATA = 10;

var
ResultCode: Integer;
lPLogo, bPicHandle, bPicHandle2, lPicHandle: THandle;
BtnImage: TBitmapImage;
iInitialize: Boolean;

function GetFromRes(const ResName, SaveFileName: String): Boolean;
var
lResStream: TResourceStream;
begin
lResStream := TResourceStream.Create(HInstance, ResName, RT_RCDATA);
try
lResStream.SaveToFile(AddBackslash(ExpandConstant('{tmp}')) + SaveFileName);
finally
lResStream.Free;
Result := FileExists(AddBackslash(ExpandConstant('{tmp}')) + SaveFileName);
end;
end;

function OnShouldSkipPage(Sender: TWizardPage): Boolean;
begin
if WizardForm.ComponentsList.Items.Count > 0 then WizardForm.Tag:= 1; // отображаются страницы выбора папки и компонентов
end;

function UninstallMyApp(): Boolean;
var
Buff: String;
i: Integer;
begin
Result := not RegQueryStringValue( HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#SetupSetting("AppID")}_is1', 'UninstallString', Buff );
if not Result then Result := not FileExists(RemoveQuotes(Buff));
if not Result then if MsgBox('Перед установкой необходимо удалить предыдущую версию приложения. Продолжить?', mbError, MB_YESNO) = IDYES then
try
Exec(RemoveQuotes(Buff), '', ExtractFilePath(RemoveQuotes(Buff)), SW_SHOW, ewWaitUntilTerminated, i);
finally
Result := not RegQueryStringValue( HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#SetupSetting("AppID")}_is1', 'UninstallString', Buff );
if not Result then MsgBox('Удаление завершилось неудачей, бывай!', mbError, MB_OK);
end;
end;



function InitializeSetup(): Boolean;
begin
Result := UninstallMyApp();
end;

procedure InitializeWizard;
begin
RedesignWizardForm;
RedesignWizardForm;

WizardForm.DiskSpaceLabel.Top := ScaleY(65);
WizardForm.DirBrowseButton.Top := ScaleY(36);
WizardForm.DirEdit.Top := ScaleY(37);
WizardForm.NoIconsCheck.Parent := WizardForm.SelectDirPage;
WizardForm.SelectDirLabel.Top := ScaleX(09)
WizardForm.SelectDirBitmapImage.Top := ScaleY(0)
WizardForm.SelectDirBrowseLabel.Visible := False
WizardForm.SelectGroupBitmapImage.Top := ScaleY(95);
WizardForm.SelectGroupBitmapImage.Parent := WizardForm.SelectDirPage;
WizardForm.GroupBrowseButton.Parent := WizardForm.SelectDirPage;
WizardForm.GroupBrowseButton.Top := ScaleY(133);
WizardForm.GroupEdit.Parent := WizardForm.SelectDirPage;
WizardForm.GroupEdit.Top := ScaleY(134);
WizardForm.SelectStartMenuFolderBrowseLabel.Parent := WizardForm.SelectDirPage;
WizardForm.SelectStartMenuFolderBrowseLabel.Top := ScaleY(170);
WizardForm.SelectStartMenuFolderLabel.Parent := WizardForm.SelectDirPage;
WizardForm.SelectStartMenuFolderLabel.Top := ScaleY(105);
PageFromID(wpSelectDir).OnShouldSkipPage:= @OnShouldSkipPage;
with WizardForm do
begin
iInitialize := True;
if GetFromRes('_IS_BOTVA', 'botva2.dll') and GetFromRes('_IS_B2P', 'b2p.dll') and GetFromRes('_IS_LOGO', 'logo.png') and GetFromRes('_IS_BPIC', 'bPic.png') and GetFromRes('_IS_LIPIC', 'LiPic.png') and GetFromRes('_IS_APIC', 'aPic.png') then
begin
bPicHandle := ImgLoad(WelcomePage.Handle, ExpandConstant('{tmp}\aPic.png'), WizardBitmapImage.Left, WizardBitmapImage.Top, WizardBitmapImage.Width, WizardBitmapImage.Height, True, True);
WizardBitmapImage.Hide;
ImgSetVisibility(bPicHandle, True);
ImgApplyChanges(WelcomePage.Handle);

bPicHandle := ImgLoad(FinishedPage.Handle, ExpandConstant('{tmp}\bPic.png'), WizardBitmapImage2.Left, WizardBitmapImage2.Top, WizardBitmapImage2.Width, WizardBitmapImage2.Height, True, True);
WizardBitmapImage2.Hide;
ImgSetVisibility(bPicHandle, True);
ImgApplyChanges(FinishedPage.Handle);

lPicHandle := ImgLoad(MainPanel.Handle, ExpandConstant('{tmp}\LiPic.png'), WizardSmallBitmapImage.Left, WizardSmallBitmapImage.Top, WizardSmallBitmapImage.Width, WizardSmallBitmapImage.Height, True, True);
WizardSmallBitmapImage.Hide;
ImgSetVisibility(lPicHandle, True);
ImgApplyChanges(MainPanel.Handle);

lPLogo:= ImgLoad(WizardForm.Handle, ExpandConstant('{tmp}\logo.png'), ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40), True, True);
ImgApplyChanges(WizardForm.Handle);
end;

ExtractTemporaryFile('WinTB.dll');
SetTaskBarProgressValue(0, 60);
SetTaskBarProgressState(0, TBPF_ERROR);
TaskBarV10(MainForm.Handle, WizardForm.Handle, false, false, 0, 0, _m_);

with TLabel.Create(WizardForm) do
begin
Parent:=WizardForm;
AutoSize:=False;
Transparent:= true;
SetBounds(ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40));
end;
end;
end;

procedure CompLstOnClik(Sender: TObject);
var
i:Integer;
begin
for i:=9 to 11 do begin
if IsComponentSelected('AIDA64\Portable') then
begin
WizardForm.ComponentsList.ItemEnabled[i]:= false;
WizardForm.ComponentsList.Checked[i]:= false;
end else begin
WizardForm.ComponentsList.ItemEnabled[i]:= True;
WizardForm.ComponentsList.Checked[i]:= True;
end;
end;
end;

Procedure CurPageChanged(CurPageID: Integer);
Begin
Case CurPageID of

wpSelectDir: if WizardForm.Tag = 1 then
begin
WizardForm.SelectDirPage.Notebook.ActivePage:= WizardForm.SelectComponentsPage;
WizardForm.PageNameLabel.Caption:= SetupMessage(msgWizardSelectComponents);
WizardForm.Hint:= WizardForm.PageDescriptionLabel.Caption; // запомнить SetupMessage(msgSelectDirDesc)
WizardForm.PageDescriptionLabel.Caption:= SetupMessage(msgSelectComponentsDesc);
end;
wpSelectComponents: if WizardForm.Tag = 1 then
begin
WizardForm.NextButton.Caption:= SetupMessage(msgButtonInstall);
WizardForm.SelectComponentsPage.Notebook.ActivePage:= WizardForm.SelectDirPage;
WizardForm.DiskSpaceLabel.Caption:= WizardForm.ComponentsDiskSpaceLabel.Caption;
WizardForm.PageNameLabel.Caption:= SetupMessage(msgWizardSelectDir);
WizardForm.PageDescriptionLabel.Caption:= WizardForm.Hint; // иначе вместо названия программы [name]
WizardForm.ComponentsList.OnClickCheck:=@CompLstOnClik;
if IsComponentSelected('AIDA64\instal\1') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA641}';
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA641}';
end else
if IsComponentSelected('AIDA64\instal\2') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA642}'
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA642}'
end else
if IsComponentSelected('AIDA64\instal\3') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA643}'
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA643}'
end else
if IsComponentSelected('AIDA64\Portable\1') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA641}';
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA641}';
end else
if IsComponentSelected('AIDA64\Portable\2') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA642}'
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA642}'
end else
if IsComponentSelected('AIDA64\Portable\3') then
begin
WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA643}'
WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA643}'
end;
end;
end;
end;


procedure DeinitializeSetup();
begin
if iInitialize then
begin
gdipShutdown;
TaskBarDestroy;
end;
end;

procedure InitializeUninstallProgressForm;
begin
with UninstallProgressForm do
begin
if GetFromRes('_IS_BOTVA', 'botva2.dll') and GetFromRes('_IS_B2P', 'b2p.dll') and GetFromRes('_IS_LOGO', 'logo.png') and GetFromRes('_IS_LIPIC', 'LIPic.png') then
begin
lPicHandle := ImgLoad(MainPanel.Handle, ExpandConstant('{tmp}\LiPic.png'), WizardSmallBitmapImage.Left, WizardSmallBitmapImage.Top, WizardSmallBitmapImage.Width, WizardSmallBitmapImage.Height, True, True);
WizardSmallBitmapImage.Hide;
ImgSetVisibility(lPicHandle, True);
ImgApplyChanges(MainPanel.Handle);

lPLogo:= ImgLoad(UninstallProgressForm.Handle, ExpandConstant('{tmp}\logo.png'), ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40), True, True);
ImgApplyChanges(UninstallProgressForm.Handle);
end;

with TLabel.Create(nil) do
begin
Parent:=UninstallProgressForm;
AutoSize:=False;
Transparent:= true;
SetBounds(ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40));
end;
end;
end;

procedure DeinitializeUninstall();
begin
gdipShutdown;
end;
[/more]
Автор: Habib2302
Дата сообщения: 05.12.2013 19:15
Tapas77789
и что??скрипт скопировал, как было так и осталось!!!
Автор: sergey3695
Дата сообщения: 05.12.2013 20:37
sjwrec посмотри через модуль HWREQ от Shegorat
если все также,то хз
Автор: sjwrec
Дата сообщения: 05.12.2013 23:59
sergey3695

Ни один пример не сработал

Сетап запускается, а окно WizardForm не видно.
Автор: sjwrec
Дата сообщения: 06.12.2013 07:52
Вот этот пример определения системы у меня работает.
[more= Скрин]

[/more]

[more= Пример]
[Setup]
AppName=AppName
AppVerName=AppVerName
DefaultDirName={pf}\My Program

[Code]
Function InitializeSetup: Boolean;
var
xml, currNode, currNode1, currNode1s1, currNode2, currNode2s1, currNode2s2, currNode2s3, currNode3, currNode4, currNode4s1: Variant;
ResultCode: Integer;

begin

Exec('DXDIAG', '/x '+ExpandConstant('{tmp}')+'\info.xml', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);

xml:= CreateOleObject('MSXML2.DOMDocument');
xml.async:= false;
xml.preserveWhiteSpace:= true;
xml.load(ExpandConstant('{tmp}\info.xml'));

currNode:= xml.selectSingleNode('//Processor'); // Процессор

currNode1:= xml.selectSingleNode('//Memory'); // ОЗУ
currNode1s1:= xml.selectSingleNode('//PageFile'); // Файл подкачки

currNode2:= xml.selectSingleNode('//CardName'); //Видеокарта
currNode2s1:= xml.selectSingleNode('//DisplayMemory'); //Память видео
currNode2s2:= xml.selectSingleNode('//CurrentMode'); //Разрешение
currNode2s3:= xml.selectSingleNode('//DDIVersion'); //DDI

currNode3:= xml.selectSingleNode('//SoundDevice/Description'); //Звуковая карта

currNode4:= xml.selectSingleNode('//OperatingSystem'); //Операционная система
currNode4s1:= xml.selectSingleNode('//DirectXVersion'); //Версия DirectX

MsgBox(

'Процессор: '+currNode.text+#13#13

+'Оперативная память: ~'+currNode1.text+#13
+'Файл подкачки: '+currNode1s1.text+#13#13

+'Видеокарта: '+currNode2.text+' '+currNode2s1.text+' '+currNode2s2.text+' DDI: '+currNode2s3.text+#13#13

+'Звуковая карта: '+currNode3.text+#13#13

+'Операционная система: '+currNode4.text+' Версия DirectX: '+currNode4s1.text
,mbInformation, MB_OK);
End;
[/more]
Автор: Tapas77789
Дата сообщения: 06.12.2013 10:23
Habib2302
Посмотри по внимательней!
Автор: log1stable
Дата сообщения: 06.12.2013 14:07
[Inno Setup Script от log1st]
Ссылка на скачивание: Клик
Скриншоты: [more=Клик] [/more]
Пароль на скачивание: log1st4ruboard
Используемые библиотеки:
Bass (музыка)
Botva2 (картинки, кнопки, трекбар, прогрессбар)
CallbackCtrl (коллбэк процедур)
ISDone+unarc (распаковка)
ISMd5 (проверка системных требований)
Распаковка: ISDone
Фичи:
Измененная страница выбора языка (юзая CustomMessages и Languages)
Измененный месседж-бокс (с прозрачной главной формой на время показа)
"Умный" инсталлятор: если уже установлена игра(проверка через реестр), то на выбор: удалить, играть, закрыть.
Фон, включаемый директивой #define ShowBG
Два стиля прогрессбара: делениями и обычный (включение обычного через директиву #define SimplePB)
Прозрачные границы через Fairy
Страницы (Приветствие, проверка md5, системные требования, компоненты, директории, подготовка, установка, завершение)
Статус-панель и страница с динамической генерацией страниц через свою процедуру AddStatusLabel
Музыка с кнопкой и ползунком
Кнопки через ботву
"Прилипание" к краям экрана
Проверка системных требований через модуль HWREQ (стилизованная таблица)
Включение стандартных границ одной директивой #define ShowBorder
Проверка MD5-хешей (c выводом непрошедших проверку в TLabel)
Компоненты через чекбоксы ботвы (если файл компонента не прошёл проверку md5, то компонент блокируется)
Выбор папки установки через FolderTreeView (в скором времени допишу парсер, и будет выбор через него, т. к. стандартный компонент не подходит под стиль страницы)
Сбор введенной информации (Компоненты, Папка установки)
Прогресс установки (Лейбл файла, лейбл архива, лейбл оставшегося времени, лейбл прошедшего времени, прогрессбар установки)
Завершение установки с выводом папки установки, возможности запуска через ярлыки(исходя из компонентов), прошедшего времени.
Исходники:
Скрипт Inno Setup в .iss
Все изображения Adobe Photoshop в .psd (от кнопок до иконки)
Автор: Habib2302
Дата сообщения: 06.12.2013 16:25
Tapas77789
пожалуйста YouTube
тем более не ставится галочна над Не создавать папку в меню «Пуск»
Автор: Black_Ghost
Дата сообщения: 06.12.2013 19:40
log1stable
видел подобный скрипт на других форумах
Автор: sergey3695
Дата сообщения: 06.12.2013 20:14




Автор: log1stable
Дата сообщения: 07.12.2013 14:04
Black_Ghost, ну, поздравляю c:
Автор: 0Vovan0
Дата сообщения: 07.12.2013 18:07
Ап, как можно извлечь из установщика пароль которым распаковываются ресурсы?
Автор: T2008
Дата сообщения: 08.12.2013 00:01
Подскажите как реализовать выбор видеорежима, который осуществляется установкой параметра в реестре (0 или 1).

Делаю в меню выбора компонентов 2 пункта:
[Components]
Name: VideoMode; Description: Видеорежим; Types: full compact custom; Flags: fixed;
Name: VideoMode\D3D; Description: D3D; Flags: exclusive;
Name: VideoMode\SoftWare; Description: SoftWare; Flags: exclusive;

Теперь мне нужно:

При выбранном VideoMode\D3D нужно установить ключ
Root: HKCU; Subkey: "Software\Valve\Settings"; ValueType: dword; ValueName: "D3D"; ValueData: "1"

При выбранном VideoMode\SoftWare нужно установить ключ
Root: HKCU; Subkey: "Software\Valve\Settings"; ValueType: dword; ValueName: "D3D"; ValueData: "0"

НО В КАКОМ РАЗДЕЛЕ И КАК ЭТО ОПИСАТЬ???
Подскажите примером.
Автор: Habib2302
Дата сообщения: 08.12.2013 07:37
T2008

Код: [Components]
Name: VideoMode; Description: Видеорежим; Types: full compact custom; Flags: fixed;
Name: VideoMode\D3D; Description: D3D; Flags: exclusive;
Name: VideoMode\SoftWare; Description: SoftWare; Flags: exclusive;


[Registry]
Root: HKCU; SubKey: Software\Valve\Settings; ValueType: dword; ValueName: D3D; ValueData: 1; Components: VideoMode\D3D;
Root: HKCU; SubKey: Software\Valve\Settings; ValueType: dword; ValueName: D3D; ValueData: 0; Components: VideoMode\SoftWare;
Автор: T2008
Дата сообщения: 08.12.2013 10:40
Habib2302

Спасибо тебе добрый человек, буду проверять!
Автор: sjwrec
Дата сообщения: 08.12.2013 10:56
Протестируйте инсталл. Ничего устанавливать не надо.
Просто щёлкнуть на значёк трегольник с восклицательным знаком
и поглядеть сколько памяти видео - отображается в строке Видеокарта.
ОЗУ будет гореть красным цветом - так и задумано на время тестирования.

Скачать 1.2 МБ

Инсталл уже проверен в системах:
Windows XP SP3 x86
Windows 8 Pro x86

Результат: Видеокарта 4 ГБ - отображалась как 4095 МБ

Инсталл ещё не проверен в системах:
Windows Vista
Windows 7
Windows 8.1

Внимание если возникнет ошибка при запуске инсталла, пришлите в личку Dxdiag.txt

После завершения тестирования скрипт будет доступен для скачивания.
Автор: Gnom3
Дата сообщения: 08.12.2013 11:01
sjwrec
запуск почти минуту, видеопамять показывает в 4 раза больше, чем есть на самом деле.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758

Предыдущая тема: Только инсталлятор


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.