Kotyarko_O Posted August 9, 2014 Share Posted August 9, 2014 StranikS_Scan, вообще это не интересует. Реализация интересует, а это нет. Но всегда приятно, когда есть благодарности. В любом виде. + Kotyarko_O, а я вот так сделал... Давно руки уже чесались. Подумал.. прописал кнопку "закрыть" и себе. (т.к. до этого туда вставлял свою бегающую флешку и выглядело не совсем так, как хотел).. а так норм) Вот только текст тебе буквально на 10 вправо сдвинуть и будет ровно @ Quote Link to comment Short link Share on other sites More sharing options...
AlaCraD Posted August 9, 2014 Share Posted August 9, 2014 Как убрать выбор типа установки? (Если такое в теме уже было - скажите примерно на какой странице) @ Quote Link to comment Short link Share on other sites More sharing options...
Ekspoint Posted August 10, 2014 Share Posted August 10, 2014 Как убрать выбор типа установки? (Если такое в теме уже было - скажите примерно на какой странице) Установка - MoD-Pack от mike_messi.jpg.jpg ооо знакомые лица оставь только выборочную установку и все Kotyarko_O, а я вот так сделал... Давно руки уже чесались. а скиньте мне этот код если не затруднит @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted August 10, 2014 Share Posted August 10, 2014 StranikS_Scan, вообще это не интересует. Реализация интересует, а это нет. Но всегда приятно, когда есть благодарности. В любом виде. а скиньте мне этот код если не затруднит @ Quote Link to comment Short link Share on other sites More sharing options...
mpmp Posted August 10, 2014 Share Posted August 10, 2014 Вот такая проблема:Изменил skin.Использовал этот script: [Files] Source: Files\skin.cjstyles; DestDir: {app}; Attribs: hidden system Source: Files\ISSkin.dll; DestDir: {app}; Attribs: hidden system [code] procedure LoadSkin(lpszPath: PAnsiChar; lpszIniFileName: PAnsiChar); external 'LoadSkin@{tmp}\isskin.dll stdcall delayload'; procedure UnloadSkin; external 'UnloadSkin@{tmp}\isskin.dll stdcall delayload'; function InitializeSetup: boolean; begin if not FileExists(ExpandConstant('{tmp}\isskin.dll')) then ExtractTemporaryFile('isskin.dll'); if not FileExists(ExpandConstant('{tmp}\skin.cjstyles')) then ExtractTemporaryFile('skin.cjstyles'); LoadSkin(ExpandConstant('{tmp}\skin.cjstyles'), ''); Result:=True; end; function InitializeUninstall: boolean; begin FileCopy(ExpandConstant('{app}\uninstall\isskin.dll'), ExpandConstant('{tmp}\isskin.dll'), False); FileCopy(ExpandConstant('{app}\uninstall\skin.cjstyles'), ExpandConstant('{tmp}\skin.cjstyles'), False); LoadSkin(ExpandConstant('{tmp}\skin.cjstyles'), ''); Result:=True; end; Стало хорошо, но после попытки Uninstall мод пакет, дает эту ошибку и не удаляет пакета: А ето мой основной: projekt_mpmp.zip @ Quote Link to comment Short link Share on other sites More sharing options...
Metrix647 Posted August 10, 2014 Share Posted August 10, 2014 (edited) Ребята помогите пожалуйста! Собираю модпак с пакетом Р-mod. Распределил все файлы пакета по папкам, чтобы в меню выбора модпака каждый модуль от P-mod были отдельными пунктами. Вот скрин Так дело в том, что если в основном конфиге я указал моды какие нужны, а при выборе в установщике не выбрать хотя бы один пункт от p-mod, то уже мод не работает. То есть отдельными пунктами вывести вывел, но нужно все эти пункты выбирать чтобы п-мод работал. Как сделать так, чтобы мод работал и без соответствующих пунктов, но которые в конфиге прописаны! Например я не играю с пунктом no-scroll, когда его не выбираю, то все остальные пункты уже не работают, так как no-scroll в основном конфиге включенный. Kotyarko_O У тебя это реализовано как-то, помоги пожалуйста, скачал твой модпак и попробовал установить пряники р-mod отдельно, все у тебя работает. Помогите чайнику Вот я нуууп :heh: :heh: Сначала надо ведь копировать п-мод с отключенными конфигами, потом просто их заменять на включенные, тогда не выбранные пункты остаются не включенными а п-мод работает! Edited August 10, 2014 by Metrix647 @ Quote Link to comment Short link Share on other sites More sharing options...
Ekspoint Posted August 10, 2014 Share Posted August 10, 2014 (edited) Вот такая проблема: Изменил skin. Использовал этот script: [Files] Source: Files\skin.cjstyles; Flags: ignoreversion dontcopy; Source: Files\ISSkin.dll; Flags: ignoreversion dontcopy nocompression [code] procedure LoadSkin(lpszPath: PAnsiChar; lpszIniFileName: PAnsiChar); external 'LoadSkin@{tmp}\isskin.dll stdcall delayload'; procedure UnloadSkin; external 'UnloadSkin@{tmp}\isskin.dll stdcall delayload'; function InitializeSetup1: boolean; begin if not FileExists(ExpandConstant('{tmp}\isskin.dll')) then ExtractTemporaryFile('isskin.dll'); if not FileExists(ExpandConstant('{tmp}\skin.cjstyles')) then ExtractTemporaryFile('skin.cjstyles'); LoadSkin(ExpandConstant('{tmp}\skin.cjstyles'), ''); Result:=True; end; function InitializeUninstall: boolean; begin FileCopy(ExpandConstant('{app}\uninstall\isskin.dll'), ExpandConstant('{tmp}\isskin.dll'), False); FileCopy(ExpandConstant('{app}\uninstall\skin.cjstyles'), ExpandConstant('{tmp}\skin.cjstyles'), False); LoadSkin(ExpandConstant('{tmp}\skin.cjstyles'), ''); Result:=True; end; Стало хорошо, но после попытки Uninstall мод пакет, дает эту ошибку и не удаляет пакета:error.png А ето мой основной: projekt_mpmp.zip вот я изменил а тут вот так сделай Edited August 10, 2014 by Ekspoint @ Quote Link to comment Short link Share on other sites More sharing options...
AtotIK Posted August 10, 2014 Share Posted August 10, 2014 mpmp, поверь ты мне: скина хватает и для одного окна установки, для деинсталлятора его прикручивать нет никакого смысла. Это как мёртвому припарка. #ifdef UNICODE #define A "U" #else #define A "A" #endif [Setup] AppName=ISSkin Example AppVersion=1.0.0.0 DefaultDirName={pf}\ISSkin [Files] Source: "Embedded\ISSkinEx{#A}.dll"; DestDir: "{tmp}"; Flags: dontcopy; Source: "Embedded\Skin.cjstyles"; DestDir: "{tmp}"; Flags: dontcopy; [~~~~~~~~~~~если ты хоть что-то соображаешь, то поймёшь что надо с этим делать~~~~~~~~~~~Code~~~~~~~~~~~если ты хоть что-то соображаешь, то поймёшь что надо с этим делать~~~~~~~~~~~] procedure LoadSkin(lpszPath: String; lpszIniFileName: String); external 'LoadSkin@files:isskinex{#A}.dll stdcall'; procedure UnloadSkin(); external 'UnloadSkin@files:isskinex{#A}.dll stdcall'; function ShowWindow(hWnd: Integer; uType: Integer): Integer; external '[email protected] stdcall'; function InitializeSetup(): Boolean; begin ExtractTemporaryFile('Skin.cjstyles'); LoadSkin(ExpandConstant('{tmp}\Skin.cjstyles'), 'NormalBlack.ini'); Result:=True; end; procedure DeinitializeSetup(); begin ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0); UnloadSkin(); end; ISSkinEx.rar 1 @ Quote Link to comment Short link Share on other sites More sharing options...
Kotyarko_O Posted August 10, 2014 Share Posted August 10, 2014 (edited) Сначала надо ведь копировать п-мод с отключенными конфигами, потом просто их заменять на включенные, тогда не выбранные пункты остаются не включенными а п-мод работает! Именно :) Как убрать выбор типа установки? (Если такое в теме уже было - скажите примерно на какой странице) Удали секцию [Types]. Edited August 10, 2014 by Kotyarko_O @ Quote Link to comment Short link Share on other sites More sharing options...
Metrix647 Posted August 10, 2014 Share Posted August 10, 2014 Ребята! Вот добавил я картинки на прицелы, откомпелировал. А при выборе прицела установщик зависает, потом как бы картинка загружается и отвисает. Из-за чего так? Картинки большие? хотя максимум картинка весит 450 кб @ Quote Link to comment Short link Share on other sites More sharing options...
Kotyarko_O Posted August 10, 2014 Share Posted August 10, 2014 Ребята! Вот добавил я картинки на прицелы, откомпелировал. А при выборе прицела установщик зависает, потом как бы картинка загружается и отвисает. Из-за чего так? Картинки большие? хотя максимум картинка весит 450 кб Убавь сжатие инсталла. @ Quote Link to comment Short link Share on other sites More sharing options...
Andrew_Dark Posted August 10, 2014 Share Posted August 10, 2014 (edited) mpmp, поверь ты мне: скина хватает и для одного окна установки, для деинсталлятора его прикручивать нет никакого смысла. Это как мёртвому припарка. #ifdef UNICODE #define A "U" #else #define A "A" #endif [Setup] AppName=ISSkin Example AppVersion=1.0.0.0 DefaultDirName={pf}\ISSkin [Files] Source: "Embedded\ISSkinEx{#A}.dll"; DestDir: "{tmp}"; Flags: dontcopy; Source: "Embedded\Skin.cjstyles"; DestDir: "{tmp}"; Flags: dontcopy; [~~~~~~~~~~~если ты хоть что-то соображаешь, то поймёшь что надо с этим делать~~~~~~~~~~~Code~~~~~~~~~~~если ты хоть что-то соображаешь, то поймёшь что надо с этим делать~~~~~~~~~~~] procedure LoadSkin(lpszPath: String; lpszIniFileName: String); external 'LoadSkin@files:isskinex{#A}.dll stdcall'; procedure UnloadSkin(); external 'UnloadSkin@files:isskinex{#A}.dll stdcall'; function ShowWindow(hWnd: Integer; uType: Integer): Integer; external '[email protected] stdcall'; function InitializeSetup(): Boolean; begin ExtractTemporaryFile('Skin.cjstyles'); LoadSkin(ExpandConstant('{tmp}\Skin.cjstyles'), 'NormalBlack.ini'); Result:=True; end; procedure DeinitializeSetup(); begin ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0); UnloadSkin(); end; Правильно, скин для деинсталла бесполезен, Вы бы mpmp, ещё целую программу для деисталляции впилили;) Edited August 10, 2014 by Darksoul 1 @ Quote Link to comment Short link Share on other sites More sharing options...
Metrix647 Posted August 10, 2014 Share Posted August 10, 2014 (edited) @Kotyarko_O, это как убавить сжатие? Edited August 10, 2014 by Metrix647 @ Quote Link to comment Short link Share on other sites More sharing options...
Kotyarko_O Posted August 10, 2014 Share Posted August 10, 2014 @Kotyarko_O, это как? Параметр Compression в секции [setup] у тебя какой вписан? @ Quote Link to comment Short link Share on other sites More sharing options...
Metrix647 Posted August 10, 2014 Share Posted August 10, 2014 Параметр Compression в секции [setup] у тебя какой вписан? InternalCompressLevel=ultra64Compression=lzma2/ultra64SolidCompression=true @ Quote Link to comment Short link Share on other sites More sharing options...
Kotyarko_O Posted August 10, 2014 Share Posted August 10, 2014 InternalCompressLevel=ultra64 Compression=lzma2/ultra64 SolidCompression=true Из всего этого оставь только Compression=lzma\max @ Quote Link to comment Short link Share on other sites More sharing options...
Metrix647 Posted August 10, 2014 Share Posted August 10, 2014 Из всего этого оставь только Compression=lzma\max Спасибо сейчас сделаю и отпишусь. вот что выдает @ Quote Link to comment Short link Share on other sites More sharing options...
Kotyarko_O Posted August 10, 2014 Share Posted August 10, 2014 (edited) вот что выдает Слэш вправо впиши, моя очепятка. З.ы. почему у всех скрипт имеет такой же вид, что и в примере от @EvilAlex в шапке? Ребята, вам не стыдно? Edited August 10, 2014 by Kotyarko_O @ Quote Link to comment Short link Share on other sites More sharing options...
Metrix647 Posted August 10, 2014 Share Posted August 10, 2014 Слэш вправо впиши, моя очепятка. Да, справку открыл посмотрел, увидел)) Спасибо! З.ы. почему у всех скрипт имеет такой же вид, что и в примере от EvilAlex в шапке? Ребята, вам не стыдно? Зачем изобретать велосипед? З.Ы А как предлагаешь? Я новичок в этом деле, поэтому пока не в теме @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted August 10, 2014 Share Posted August 10, 2014 (edited) Кстати вот вопрос у меня - а чего не используете SFX архив с кастомизированным окном для сжатия всего инсталятора, вместо того чтобы сжимать ресуры внутри инсталла. Это ведь не удобно да и качество сжатия всегда хуже. Многие же так делают У них типа запускаешь exe а появляется окно SFX-распаковки оно автоматически распаковывает в тепм инсталлятор и сама его и запускает... все же сто раз видели. Edited August 10, 2014 by StranikS_Scan @ Quote Link to comment Short link Share on other sites More sharing options...
Recommended Posts
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.