Jump to content
Korean Random
EvilAlex

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

Recommended Posts

18 минут назад, night_dragon_on сказал:

@ЛОМ , в китайке добавлено множество своих функций, кторых нет в стандарте. От этого ошибки лезут ввиду их отстутствия.

 

короче видно не судьба нам))) 

Share this post


Link to post

Short link
Share on other sites

@D_MAN_1987 не совсем понятно, что вы сделать в этой строчке:

Result:=ExpandConstant(Buffer);

попробуйте заменить ее на:

Result := Copy(Buffer,0,Pos(#0, Buffer));

 

Share this post


Link to post

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

не совсем понятно, что вы сделать в этой строчке

Я тоже не понимаю что творю)

2 минуты назад, ktulho сказал:

попробуйте заменить ее на:


Result := Copy(Buffer,0,Pos(#0, Buffer));

тот же результат - пустая строка адреса

Share this post


Link to post

Short link
Share on other sites

@D_MAN_1987 измените

for Index:=1 to ClientsCount do

на

for Index:=0 to ClientsCount - 1 do

 

@D_MAN_1987 А вообще это я туплю. Что должна вернуть функция WotDir?

Edited by ktulho

Share this post


Link to post

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

ну по идее строку с результатом WOT_GetClientPathW 

Какую? Путь к релизу WOT?

Share this post


Link to post

Short link
Share on other sites

@ktulho ну мне это нужно) Но результата никакого не могу добиться. Если есть готовый пример, как получить путь к релизу, одарите, если возможно) Вариант с реестром не всегда подходит, просто...

Share this post


Link to post

Short link
Share on other sites

@D_MAN_1987 Попробуйте, могу ошибиться в синтаксисе, не имею опыта написания на InnoSetup:

function WotDir (Path: String): String;
var
  ClientsCount, Index: Integer;
begin
  ClientsCount:= WOT_GetClientsCount();
  if ClientsCount > 0 then
    begin
      Result:= 'Not found';
      for Index:=0 to ClientsCount - 1 do 
      begin
        WOT_GetClientVersionW(Buffer, Length(Buffer)-1, Index);
        if WOT_GetClientBranch(Index) = 1 then   
          begin
            WOT_GetClientPathW(Buffer, Length(Buffer)-1, Index);
            Result:=Copy(Buffer, 0, Pos(#0, Buffer));
            Exit;
          end;
      end;
    end; 
end;

 

Edited by ktulho

Share this post


Link to post

Short link
Share on other sites

Всех с праздниками ребят! Сейчас работаю вот с этим кодом: 02_CheckListBox.iss 

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

Share this post


Link to post

Short link
Share on other sites

@ktulho ничего не понимаю... DefaultDirName={code:WotDir} указано, вызов функции есть, ошибок нет, а результат все равно такой:

2018-01-06_205612.png.caa28a6177a06cb41177f52406edda23.png

Задача то пустяковая. Найти нужную папку и закинуть в неё другую папку, а вожусь уже третьи сутки...

Share this post


Link to post

Short link
Share on other sites

@ktulho ну етижипасатижи! Нормально определил! А у меня дичь выдает... 

5,5,9(а) версия

2018-01-06_221141.png.a401e0de25a3febf7ca13b0a81cb2433.png

у вас какая?

 

Share this post


Link to post

Short link
Share on other sites

image.png.e4adc55d87acd408f6eefa4e4d7f8653.png

@D_MAN_1987 надо unicod версию ставить.

Или использовать функции заканчивающиеся на А. Например WGC_GetInstallPathA

Edited by ktulho

Share this post


Link to post

Short link
Share on other sites

@ktulho я думаю здесь описаны все имеющиеся в библиотеке процедуры.

В общем спасибо всем, кто тратил время и нервы) Поставил юникод версию и заработало)

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...