Jump to content
Korean Random
EvilAlex

Создание инсталляторов для модпаков на базе Inno Setup

Recommended Posts

1 minute ago, ЛОМ said:

Ну так я уже пробовал... не выходит..

И не выйдет... так.

Во-первых, не то свойство указываешь.

Во-вторых, эту часть логичнее будет оформить рядом с самим созданием этого чекбокса. Тем более, что переменная объявлена ниже этой части кода.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
1 минуту назад, Kotyarko_O сказал:

И не выйдет... так.

Во-первых, не то свойство указываешь.

Во-вторых, эту часть логичнее будет оформить рядом с самим созданием этого чекбокса. Тем более, что переменная объявлена ниже этой части кода.

аааа..ну да. там же у чекбокса и так своих свойств хватает.  чуток примера можно исходя из моего кода? )) 

Share this post


Link to post

Short link
Share on other sites
17 минут назад, ЛОМ сказал:

 

вот это пробуй 


WizardForm.DirEdit.AutoSelect := False;

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

  • Upvote 1
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites
Just now, ЛОМ said:

чуток примера можно исходя из моего кода?

Procedure RadioButtonOnMouseMove(Sender: TObject; ShiftState: TShiftState; X, Y: Integer);
begin
 ...
end;

Procedure RadioButtonOnMouseLeave(Sender: TObject);
begin
 ...
end;

...

DeleteRadioButton.OnMouseMove := @RadioButtonOnMouseMove;
DeleteRadioButton.OnMouseLeave := @RadioButtonOnMouseLeave;

 

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
1 час назад, Kotyarko_O сказал:

Procedure RadioButtonOnMouseMove(Sender: TObject; ShiftState: TShiftState; X, Y: Integer);
begin

end;
DeleteRadioButton.OnMouseMove := @RadioButtonOnMouseMove;
DeleteRadioButton.OnMouseLeave := @RadioButtonOnMouseLeave;

 

 

а чисто теоретически разве не должно заработать если я просто впишу это в свой код? DeleteRadioButton.OnMouseMove := @RadioButtonOnMouseMove;

хотя сразу выдает ошибку...

 

sK8EjuZMRy20PKcPrnjTJA.png

 

 

Edited by ЛОМ

Share this post


Link to post

Short link
Share on other sites
38 минут назад, ЛОМ сказал:

 

а чисто теоретически разве не должно заработать если я просто впишу это в свой код? DeleteRadioButton.OnMouseMove := @RadioButtonOnMouseMove;

хотя сразу выдает ошибку...

 

sK8EjuZMRy20PKcPrnjTJA.png

 

посмотри выше на процедуры

Procedure RadioButtonOnMouseMove(Sender: TObject; ShiftState: TShiftState; X, Y: Integer);
begin
 ...
end;

Procedure RadioButtonOnMouseLeave(Sender: TObject);
begin
 ...
end;

на твоём скрине не заметно чтоб ты их переиминовал

  • Upvote 1
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites
7 hours ago, ЛОМ said:

хотя сразу выдает ошибку

Потому что:

9 hours ago, Kotyarko_O said:

Во-вторых, эту часть логичнее будет оформить рядом с самим созданием этого чекбокса. Тем более, что переменная объявлена ниже этой части кода.

 

Share this post


Link to post

Short link
Share on other sites
Procedure RadioButtonOnMouseMove(Sender: TObject; ShiftState: TShiftState; X, Y: Integer);
begin
 ...
end;

Procedure RadioButtonOnMouseLeave(Sender: TObject);
begin
 ...
end;

...

DeleteRadioButton.OnMouseMove := @RadioButtonOnMouseMove;
DeleteRadioButton.OnMouseLeave := @RadioButtonOnMouseLeave;

 

короче забуксовало )))) моих знаний тут точно не хватит)) Серый подключайся)))

Share this post


Link to post

Short link
Share on other sites
В 25.09.2017 в 23:16, ЛОМ сказал:

а вот это всё таки как завести? ))) понимаю что достаю но всё же ))) 

NEolXkAdTJegn2sdWqIGcg.png

Там ещё криво сделано, мерцает при перемещении курсора.

Share this post


Link to post

Short link
Share on other sites
Только что, AtotIK сказал:

Там ещё криво сделано, мерцает при перемещении курсора.

 

кажись это мерцание с картинками везде есть. мало заметное так что не помеха.  AtotIK это ведь твоя работа?)))  может поделишься этим кодом? )))  то что Kotyarko_O   написал  это конечно  всё правильно, но  я не осилю это по любому)))  конечно если не жалко и конечно если есть масть так сказать))) 

Share this post


Link to post

Short link
Share on other sites

 

перестал работать срипт, всё равно продолжает установку 

подскажите в чём может быть причина

 

 


function FileVersion(const FilePath: AnsiString): AnsiString;
var
  oFS: Variant;
begin
  oFS:=CreateOleObject('Scripting.FileSystemObject');
    try
      Result:=oFS.GetFileVersion(FilePath);
    except
  end;
end;

function NextButtonClick(CurPageID: Integer): Boolean;
begin
    Result:= true;
    case CurPageID of
      wpSelectDir:
      begin
        if FileExists(ExpandConstant('{app}')+'\WorldOfTanks.exe') then begin
          if FileVersion(ExpandConstant('{app}')+'\WorldOfTanks.exe') < '0.9.19.0' then begin
            MsgBoxEx(WizardForm.Handle, 'МодПак не предназначен для данной версии игры, невозможно продолжить установку!', 'Не актуальная версия игры', MB_OK or MB_ICONWARNING, 0, 0);
            Abort;
          end;
        end;
      end;
    end;
end;

 

 

Edited by sergy2010
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

@sergy2010 

function FileVersion(const FilePath: String): String;
var
  oFS: Variant;
begin
  oFS:= CreateOleObject('Scripting.FileSystemObject');
    try
      Result:= oFS.GetFileVersion(FilePath);
    except
  end;
end;

function FileVersionMsgBox(const FilePath: String): String;
begin
   GetVersionNumbersString(FilePath, Result)
   Result := Copy(Result,1,6);
end;

//"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""//
Function NextButtonClick(CurPageID: Integer): Boolean;
begin
 Result := True;
 case CurPageID of
 wpSelectDir:
  begin
   if not FileExists(ExpandConstant('{app}\WorldOfTanks.exe')) then begin
    MsgBoxEx(0, 'Установка модов невозможна, так как по выбранному пути отсутствует клиент игры World of Tanks. Выберите правильный путь и продолжайте установку!','Внимание!',MB_OK or MB_ICONERROR, 0, 0);
    Result := False;
   end;
   if FileExists(ExpandConstant('{app}\WorldOfTanks.exe')) then begin
    if FileVersion(ExpandConstant('{app}\WorldOfTanks.exe')) < '{#Patch}.0' then begin
     MsgBoxEx(WizardForm.Handle, 'Моды не будут работать на данной версии игры [' + FileVersionMsgBox(ExpandConstant('{app}\WorldOfTanks.exe')) + '] ! Моды предназначены для версии патча [{#Patch}] ', 'Моды не подходят к данному патчу World of Tanks', MB_OK or MB_ICONWARNING, 0, 0);
     Result:= false;
    end;
    if FileVersion(ExpandConstant('{app}\WorldOfTanks.exe')) > '{#Patch}.0' then begin
     MsgBoxEx(WizardForm.Handle, 'Моды не будут работать на данной версии игры [' + FileVersionMsgBox(ExpandConstant('{app}\WorldOfTanks.exe')) + '] ! Моды предназначены для версии патча [{#Patch}] ', 'Моды не подходят к данному патчу World of Tanks', MB_OK or MB_ICONWARNING, 0, 0);
     Result:= false;
    end;
   end;
  end;
 end;
end;

 

Share this post


Link to post

Short link
Share on other sites

в чем может быть причина? думал может вдруг из за тех программ ( проверка пинга - программа танцуля ) что у меня в установщике стало срабатывать. но нет... вообще без модов сделал установщик закинул на яндекс и всё равно показывает что вирус. у кого так же? вроде неделю назад этот же пак нормально было. 

djHgt_TTSX64lbPZr39XmQ.png

 

 

Edited by ЛОМ

Share this post


Link to post

Short link
Share on other sites
2 часа назад, ЛОМ сказал:

в чем может быть причина?

 

Возможно в DLL-ках подключаемых в Inno Setup, проверь каждую на virustotal-ле.

Share this post


Link to post

Short link
Share on other sites
1 час назад, night_dragon_on сказал:

 

Возможно в DLL-ках подключаемых в Inno Setup, проверь каждую на virustotal-ле.

 

у меня есть две bass.dll, одна 2014  другая 2017 г.  так вот первая на вирустотале чистая а вот 2017г там один вирусняк. хотя ерунда судя по самому антивирусу. https://www.virustotal.com/ru/file/9ac13f9bc5564fd8a1eab5f7c945dce1c27940dd63a913108eac64481ddde6af/analysis/1506864148/

но... проблема в том что сама dll 2014 года вроде глючная а то так заменил бы.

 

 54UFvR_RRQCf8-Z64fgTyg.png

 

к тому же я и не подключал никаких новых dll чтобы вдруг показало на яндексе  вирусню.  короче хз. не понимаю...

Share this post


Link to post

Short link
Share on other sites
1 час назад, ЛОМ сказал:

но... проблема в том что сама dll 2014 года вроде глючная а то так заменил бы

 

Не обязательно использовать настолько старую версию.

До версии библиотеки BASS v. 2.4.10.0 включительно dll-ки проходят проверку антивирусами.

Версии старше - только 64-х разрядные версии библиотек проходят проверку.

 

1 час назад, ЛОМ сказал:

к тому же я и не подключал никаких новых dll

 

Так неважно подключал новые или нет. Если обновятся базы одного из антивирусов, который в дальнейшем станет ругаться на какой нибудь файл (который использовал уже N-ое кол-во лет), на обменник вскоре придут новые данные о проверке (по новым базам) и будет выведено уведомление о возможном заражении файла.

 

Edited by night_dragon_on
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
6 hours ago, ЛОМ said:

в чем может быть причина? думал может вдруг из за тех программ ( проверка пинга - программа танцуля ) что у меня в установщике стало срабатывать. но нет... вообще без модов сделал установщик закинул на яндекс и всё равно показывает что вирус.

Нажимай "сообщить об ошибке" и разбирайся с тех.поддержкой.

Edited by Kotyarko_O

Share this post


Link to post

Short link
Share on other sites
В 28.04.2014 в 23:12, liked сказал:

Да и в обще кто бы выложил готовый скрипт хорошего инсталятора, по примеру проще делать. меня например заинтересовал вот такой вот инсталятор

 

post-6639-0-75039600-1398715793_thumb.jpg

 

Шас сижу леплю простенький как на 1 варианте который дали, но хотело бы вариант такой как на скрине выше

 

еще нужен пример такого варианта скрипта

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...