Crachlow
Старожил
Да, но у меня что то пошло не так, ошибку выдало, когда вводил более 5 ключей.
Вложения
-
1.1 KB Просмотры: 4
Да, но у меня что то пошло не так, ошибку выдало, когда вводил более 5 ключей.
там progressbar забыл
ExtractTemporaryFile('MyCursor.cur')
PathToCursorFile := ExpandConstant('{tmp}\MyCursor.cur');
Cursor := LoadCursorFromFile(PathToCursorFile);
SetClassLong(WizardForm.NextButton.Handle, GCL_HCURSOR, Cursor);
@Socolino. Если ты хочешь взяться за создание репаков, тебе лучше, наверное начать со справки по Inno и почитать про сжатие. А так же научится пользоваться поиском по форуму, на многие вопросы уже есть ответы грамотных специалистов. Если ты берешь ответы с форума stackoverflow то нужно же читать до конца)))Подскажите как сделать свой курсор, но чтобы он был активен на всех окнах инсталлятора, а то у меня только на кнопках?
Код:ExtractTemporaryFile('MyCursor.cur') PathToCursorFile := ExpandConstant('{tmp}\MyCursor.cur'); Cursor := LoadCursorFromFile(PathToCursorFile); SetClassLong(WizardForm.NextButton.Handle, GCL_HCURSOR, Cursor);
[Setup]
AppVersion=1.5
AppName=My Prog
DefaultDirName=My Prog
ChangesAssociations=false
SolidCompression=no
OutputDir=.
[Files]
Source: cursor.ani; DestDir:{tmp};
[Code]
#define AW = (Defined UNICODE) ? "W" : "A"
const
GCL_HCURSOR = (-12);
function LoadCursorFromFile(FileName: String): Cardinal; external 'LoadCursorFromFile{#AW}@user32 stdcall';
function SetClassLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint; external 'SetClassLong{#AW}@user32.dll stdcall';
procedure SetControlsCursor(Control: TWinControl; Cursor: LongWord);
var
I: Integer;
begin
SetClassLong(Control.Handle, GCL_HCURSOR, Cursor);
for I := 0 to Control.ControlCount - 1 do
begin
if Control.Controls[I] is TWinControl then
begin
SetControlsCursor(TWinControl(Control.Controls[I]), Cursor);
end;
end;
end;
procedure InitializeWizard();
var
PathToCursorFile: string;
Cursor: LongWord;
begin
ExtractTemporaryFile('cursor.ani')
PathToCursorFile := ExpandConstant('{tmp}\cursor.ani');
Cursor := LoadCursorFromFile(PathToCursorFile);
SetClassLong(WizardForm.NextButton.Handle, GCL_HCURSOR, Cursor);
SetControlsCursor(WizardForm, Cursor);
end;
Спасибо , да я изучаю, и всё же не на всё окно курсор@Socolino. Если ты хочешь взяться за создание репаков, тебе лучше, наверное начать со справки по Inno и почитать про сжатие. А так же научится пользоваться поиском по форуму, на многие вопросы уже есть ответы грамотных специалистов. Если ты берешь ответы с форума stackoverflow то нужно же читать до конца)))
Код:[Setup] AppVersion=1.5 AppName=My Prog DefaultDirName=My Prog ChangesAssociations=false SolidCompression=no OutputDir=. [Files] Source: cursor.ani; DestDir:{tmp}; [Code] #define AW = (Defined UNICODE) ? "W" : "A" const GCL_HCURSOR = (-12); function LoadCursorFromFile(FileName: String): Cardinal; external 'LoadCursorFromFile{#AW}@user32 stdcall'; function SetClassLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint; external 'SetClassLong{#AW}@user32.dll stdcall'; procedure SetControlsCursor(Control: TWinControl; Cursor: LongWord); var I: Integer; begin SetClassLong(Control.Handle, GCL_HCURSOR, Cursor); for I := 0 to Control.ControlCount - 1 do begin if Control.Controls[I] is TWinControl then begin SetControlsCursor(TWinControl(Control.Controls[I]), Cursor); end; end; end; procedure InitializeWizard(); var PathToCursorFile: string; Cursor: LongWord; begin ExtractTemporaryFile('cursor.ani') PathToCursorFile := ExpandConstant('{tmp}\cursor.ani'); Cursor := LoadCursorFromFile(PathToCursorFile); SetClassLong(WizardForm.NextButton.Handle, GCL_HCURSOR, Cursor); SetControlsCursor(WizardForm, Cursor); end;
хз как тут и на системное меню сделать и на форме. Разве что GetSystemMenu и процедуру окнаСпасибо , да я изучаю, и всё же не на всё окно курсор Посмотреть вложение 9261
С ботвой не работал, я не знаю где инструкцию найти@Socolino,есть редактор форм в самом Inno setup. Может на каждой странице увеличить,как вам удобно, если нужно чтобы все расстянуть полностью,то использовать botva и прочее.
use this for design the installer.Для начала саму фоновую картинку добавить в инсталлятор , затем растянуть
Любые примеры бы мне, главное прикрутить фоновую картинку.
Посмотреть вложение 9262
На форуме есть утилита InstallDesigner для создания кастомных форм, как и в наборе FMXInno (innosetup_v5.6.1+restools_ide.exe и innosetup_v6.0.5+restools_ide.exe). Правда они служат немного для другой цели (экономят время и ничего более). Если хотите познать дзен, то лучше нарисовать пустую форму в Page := CreateCustomPage с нуля через скрипт. Методом проб и ошибок придёт понимание. В Inno Setup есть простой скрипт CodeClasses.iss с демонстрацией основных элементов. Как правило надо начинать с самого простого и не лезть сразу в дебри.С ботвой не работал, я не знаю где инструкцию найти
Есть только в Enchanced и некоторых специально отредактированных версиях.есть редактор форм в самом Inno setup