Ekspoint 2,122 #271845 Posted May 21, 2015 я тебе уже ответил, в редакторе создай новую стр и на ней делай Quote Share this post Link to post Short link Share on other sites
Hatsan 3 #271848 Posted May 21, 2015 я тебе уже ответил, в редакторе создай новую стр и на ней делай ты имеешь виду сделать страницу в редакторе форм и потом вставить код бекапа в эту страницу? Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #271850 Posted May 21, 2015 (edited) @Hatsan, подскажу: К лейблам нужно применять их же свойство Transparent; Без ботвы с любыми контролами (Button, CheckBox, RadioButton) ничего красивого не сделать - по краям будут такие же обрезки фона, как и у кнопок, которые есть на представленном тобой скрине. Edited May 21, 2015 by Kotyarko_O 1 Quote Share this post Link to post Short link Share on other sites
Ekspoint 2,122 #271853 Posted May 21, 2015 (edited) ты имеешь виду сделать страницу в редакторе форм и потом вставить код бекапа в эту страницу? не весь код а функции на чеки, а текст, чеки и лейблалы рисуй в редакторе на новой стр Edited May 21, 2015 by Dark_Knight_MiX Quote Share this post Link to post Short link Share on other sites
leeuniverse 61 #271906 Posted May 22, 2015 (edited) burp Edited May 25, 2015 by leeuniverse Quote Share this post Link to post Short link Share on other sites
-zav- 188 #272028 Posted May 22, 2015 Каким образом можно считать информацию из файла на сервере, не скачивая его? Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #272029 Posted May 22, 2015 (edited) Каким образом можно считать информацию из файла на сервере, не скачивая его? Текстовик? А хотя что я спрашиваю.. текстовик, вроде, можно спарсить из html страницы (точно - яхз), php\xml точно можно. Но в пределах Inno это большой велосипед. А вообще, для такого уже клиент-серверное делать надо) (и опять же, почти без инно) Edited May 22, 2015 by Kotyarko_O Quote Share this post Link to post Short link Share on other sites
ADBokaT57 17 #272044 Posted May 23, 2015 (edited) Каким образом можно считать информацию из файла на сервере, не скачивая его? Берет текст из файла #define URLFile "http://1337modpack.com/file.txt" [C0de] function DownloadFile(const URL: string; var Response: string): Boolean; var WinHttpRequest: Variant; begin Result := True; try WinHttpRequest := CreateOleObject('WinHttp.WinHttpRequest.5.1'); WinHttpRequest.SetTimeouts(7000, 7000, 7000, 7000); WinHttpRequest.Open('GET', URL, False); WinHttpRequest.Send; Response := WinHttpRequest.ResponseText; except MsgBox('Нет подключения.', mbError, MB_OK); Result := False; Response := GetExceptionMessage; end; end; function InitializeSetup:boolean; var blahblahblah: string; begin Result:=True; begin if DownloadFile(ExpandConstant('{#URLFile}'), blahblahblah) then begin MsgBox(blahblahblah, mbInformation, MB_OK); end; end; end; Edited May 23, 2015 by ADBokaT57 Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #272054 Posted May 23, 2015 Неплохо, сам как-то не подумал про оле. Quote Share this post Link to post Short link Share on other sites
AtotIK 580 #272055 Posted May 23, 2015 Неплохо, сам как-то не подумал про оле. Через него проще всего сделать такие вещи. По такому же принципу можно сделать отправку запроса на сервер (читай количество установок). Но там нужно ещё что бы сервер лог вёл запросов на него и обработать всё это дело правильно. Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #272063 Posted May 23, 2015 (edited) возможно ли HTML код прикрутить на завершение установки? Если ещё актуально.. Порылся в стандартных примерах, сделал вывод: возможно. Есть такой модуль WebCtrl, от китайцев с ResTools (авторов расширенного компилятора). С его помощью, на страницу можно вешать html-скрипты (тянуть рекламку из сети тоже можно). Edited May 23, 2015 by Kotyarko_O Quote Share this post Link to post Short link Share on other sites
voin_123 5 #272069 Posted May 23, 2015 Как изменить Result:=ExpandConstant('C:\Games\World_of_Tanks\'); чтоб при выборе папки не создавало папку. [setup] DefaultDirName={code:GetInstDir} function MyDirName(S:String): String;var InsPath: String; er: boolean; myFile:String;begin Result:=ExpandConstant('C:\Games\World_of_Tanks\'); //если ключа нет то будем ставить сюда er := RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', InsPath); if er and (InsPath<>'') then //если ключ существует и там что-то записано begin Result := InsPath; end;end; Quote Share this post Link to post Short link Share on other sites
Ekspoint 2,122 #272071 Posted May 23, 2015 Как изменить Result:=ExpandConstant('C:\Games\World_of_Tanks\'); чтоб при выборе папки не создавало папку. [Setup] DirExistsWarning=no AppendDefaultDirName=no Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #272073 Posted May 23, 2015 (edited) Как изменить Result:=ExpandConstant('C:\Games\World_of_Tanks\'); чтоб при выборе папки не создавало папку. Хватит этого: [Setup] AppendDefaultDirName=no Edited May 23, 2015 by Kotyarko_O Quote Share this post Link to post Short link Share on other sites
-zav- 188 #272079 Posted May 23, 2015 (edited) Берет текст из файла хм.. а как сделать если файл xml и мне нужны из него определенные значения? Например локально у меня эта байда выглядит так: #include "XML.iss" [C0de] XMLFileReadValue(ExpandConstant('{src}\Test.xml'), 'Settings\Info1', InfoValue); XMLFileReadValue(ExpandConstant('{src}\Test.xml'), 'Settings\Info2', InfoValue2); и тд. Если ещё актуально.. Порылся в стандартных примерах, сделал вывод: возможно. Есть такой модуль WebCtrl, от китайцев с ResTools (авторов расширенного компилятора). С его помощью, на страницу можно вешать html-скрипты (тянуть рекламку из сети тоже можно). Выложи пример и он тут же уйдет в массы =) Edited May 23, 2015 by -zav- Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #272084 Posted May 23, 2015 хм.. а как сделать если файл xml и мне нужны из него определенные значения? 'Легко:' #include "XML.iss" #define URLFile "http://chto-to.tam/file.xml" [Code] Var XMLS: XMLString; Response, InfoValue: String; function DownloadFile(const URL: string): Boolean; var WinHttpRequest: Variant; begin Result := True; try WinHttpRequest := CreateOleObject('WinHttp.WinHttpRequest.5.1'); WinHttpRequest.SetTimeouts(7000, 7000, 7000, 7000); WinHttpRequest.Open('GET', URL, False); WinHttpRequest.Send; Response := WinHttpRequest.ResponseText; except MsgBox('Нет подключения.', mbError, MB_OK); Result := False; Response := GetExceptionMessage; end; end; Function InitializeSetup(): Boolean; begin if DownloadFile(ExpandConstant('{#URLFile}')) then begin XMLStringReadValue(Response, 'Settings\Info', InfoValue); MsgBox(InfoValue, mbInformation, MB_OK); end; Result := True; end; Выложи пример и он тут же уйдет в массы =) Inno WebCtrl v2.1.rar Quote Share this post Link to post Short link Share on other sites
-zav- 188 #272137 Posted May 24, 2015 Легко: И действительно. Работает.Но вот решил я вывести информацию русскими символами и тут пришла проблема.Сам xml файл на сервере в utf-8 кодировке, и даже заголовок имеет <?xml version="1.0" encoding="utf-8" standalone="yes"?>как я не пытался сменить ему кодировку один фиг программа выводит кракозябры.Вопрос знатокам, как победить это? Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,212 #272138 Posted May 24, 2015 И действительно. Работает. Но вот решил я вывести информацию русскими символами и тут пришла проблема. Сам xml файл на сервере в utf-8 кодировке, и даже заголовок имеет <?xml version="1.0" encoding="utf-8" standalone="yes"?> как я не пытался сменить ему кодировку один фиг программа выводит кракозябры. Вопрос знатокам, как победить это? Не надо ему кодировку менять. Он на сервере и должен в универсальной кодировке хранится. Нуно после того как считаел его с сервера перекодировать содержимое в ANSI и усе. Тыц. Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #272140 Posted May 24, 2015 (edited) @StranikS_Scan, а там и так перекодировка есть. Function MultiByteToWideChar(CodePage: UINT; dwFlags: DWORD; lpMultiByteStr: PAnsiChar; cbMultiByte: integer; lpWideCharStr: PAnsiChar; cchWideChar: integer): longint; external '[email protected] stdcall'; Function WideCharToMultiByte(CodePage: UINT; dwFlags: DWORD; lpWideCharStr: PAnsiChar; cchWideChar: integer; lpMultiByteStr: PAnsiChar; cbMultiByte: integer; lpDefaultChar: integer; lpUsedDefaultChar: integer): longint; external '[email protected] stdcall'; Function Utf8ToAnsi(strSource: String): string; var nRet2, len: integer; WideCharBuf, MultiByteBuf: AnsiString; begin Len:= Length(strSource); SetLength(WideCharBuf, Len*2); SetLength(MultiByteBuf, Len*2); MultiByteToWideChar(CP_UTF8, 0, PAnsiChar(strSource), -1, WideCharBuf, Length(WideCharBuf)); nRet2:= WideCharToMultiByte(CP_ACP, 0, PAnsiChar(WideCharBuf), -1, MultiByteBuf, Length(MultiByteBuf), 0, 0); Result:= Trim(Copy(MultiByteBuf, 1, nRet2)); end; @-zav-, а у тебя не юникодовская версия разве? Edited May 24, 2015 by Kotyarko_O Quote Share this post Link to post Short link Share on other sites
-zav- 188 #272142 Posted May 24, 2015 -zav-, а у тебя не юникодовская версия разве? Юникодовская расширенная Quote Share this post Link to post Short link Share on other sites