![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 5] |
|
Скрипты Inno Setup. Помощь и советы [часть 5]
|
Ветеран Сообщения: 1274 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Inno Setup [все вопросы] часть 1 Inno Setup [все вопросы] часть 2 Скрипты Inno Setup. Помощь и советы [часть 3] Скрипты Inno Setup. Помощь и советы [часть 4] |
|
Отправлено: 03:49, 21-05-2012 |
Ветеран Сообщения: 649
|
Профиль | Отправить PM | Цитировать El Sanchez, К сожалению имеется серьёзная проблема с кодом распаковки архивов 7зип, вылетают ошибки
раньше думал, что конфликт с таймерами (Вин Апи) и с подменённой оконной процедурой (пару страниц назад показывал), но вот убрал их все для теста и ситуация не улучшилась ![]() вот примеры ошибок: последняя с ошибкой указателя иногда выделяет строку RtlMoveMemory(ei, _lpEis, SizeOf(ei)); также бывает "stack overflow" если раскомментировать PercentsLabel.Caption := FormatFloat('0.#0 %', (dwCurrentSize*100)/ei.dwFileSize); на 4-м скрине всё крутится вокруг каллбэк функции Поймать ошибки трудно. Запускал в цикле - 1 устанока = 1, 2 ошибки ингда в начале цикла иногда к 10 - 20 распаковке (цикл длиной от 1 до 30), пару раз из около 10 тестовых установок бывало без ошибки Признаю: код очень классный и урезать(или даже отказаться от использования) очень трудно Просьба: Если есть шанс исправить положение, то прошу помочь! |
Последний раз редактировалось Johny777, 21-12-2012 в 04:52. Отправлено: 04:45, 21-12-2012 | #1401 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Johny777,
1. Зачем тебе wide string? Передаешь в 7z юникод (кириллицу)? Не выйдет, нужно по-другому: в функциях SevenZipCreateArchive и SevenZipExtractArchive после формирования комстроки s7cmd допиши CharToOemBuff(s7cmd). 2. SevenZipKillOwnerWindowEx(hWnd). К дескриптору какого окна callback привязан? Можешь просто 0 передавать. 3. RtlMoveMemory. Тут по указателю получаем структуру. В момент ошибки _lpEis указывает на невесть что. 4. Встроенный прогресс работает при тех же архивах? |
Отправлено: 15:43, 21-12-2012 | #1402 |
Ветеран Сообщения: 649
|
Профиль | Отправить PM | Цитировать Цитата El Sanchez:
также без wide string не идёт распаковка в темп, а она тоже желательна если сохранять архив, Цитата El Sanchez:
2. нули и стояли 3. Я читал, что функция малость глючная http://www.delphimaster.net/view/4-1086735785 4. работает, на нём и отображаю |
||
Отправлено: 15:53, 21-12-2012 | #1403 |
Старожил Сообщения: 238
|
Профиль | Отправить PM | Цитировать Помогите, пожалуйста. Пост #1455
|
------- Отправлено: 18:41, 21-12-2012 | #1404 |
Ветеран Сообщения: 649
|
Профиль | Отправить PM | Цитировать Dark_Delphin, проблема была в том, что ты скрыл OuterNotebook на котором лежал InnerNotebook, на котором в свою очередь лежал родной прогрессбар
поправил: PS: за каракули в коде меня не пинать ![]() =============================================================================== El Sanchez, добавил CharToOemBuff(s7cmd) убрал для теста AnsiToDos() из s7cmd := 'a "' + AnsiToDos(ArchiveFilename) + '" "' + RemoveQuotes(FileList[0]) + '"'; получил s7cmd := 'a "' + ArchiveFilename + '" "' + RemoveQuotes(FileList[0]) + '"'; всё равно ошибка stack overflow на строке RtlMoveMemory(ei, _lpEis, SizeOf(ei)); ![]() также вчера пробовал заменить функцию RtlMoveMemory на дельфийскую тк инно ассемблер не может убрал в библиотеку код: загрузил из библиотеки процедуру, при распаковке архива опять что-то с указателями но как я понял функции аналогичны, хотя может дело и не в RtlMoveMemory прикладываю на всякий случай библиотеку, скрипт с импортом функций, исходник библиотеки процедуры: procedure MoveMemory(Destination: Pointer; Source: Pointer; Length: DWORD); external 'CopyMemory@files:Memory.dll stdcall'; procedure CopyMemory(Destination: Pointer; Source: Pointer; Length: DWORD); external 'CopyMemory@files:Memory.dll stdcall'; procedure FillMemory(Destination: Pointer; Length: DWORD; Fill: Byte); external 'CopyMemory@files:Memory.dll stdcall'; procedure ZeroMemory(Destination: Pointer; Length: DWORD); external 'CopyMemory@files:Memory.dll stdcall'; |
Последний раз редактировалось Johny777, 26-03-2013 в 15:57. Отправлено: 19:38, 21-12-2012 | #1405 |
Старожил Сообщения: 238
|
Профиль | Отправить PM | Цитировать Johny777, Спасибо.
Ничё страшного, это не проблема) |
------- Отправлено: 20:11, 21-12-2012 | #1406 |
Новый участник Сообщения: 10
|
Профиль | Отправить PM | Цитировать Доброе время суток назрел очень интересный вопрос.
Сделал репак программы в коде прописал что бы в хост блокировался оф сайт ... но вот в чем проблема программа все ровно проверяет файлы каким образом не знаю. Но что интересное нашел когда при выключенном инете в ручной активации на win 7 в директории C:\ProgramData создается папка моей проги и в ней кидается файл с лицензией и далее все работает ..даже с включеным инетом. нужный процесс опишу: win 7 Пункты: 1.Запускаем установку выбираем директорию установки по умолчанию (диск "C:\Program Files (x86)") все программа устанавливается копируются ключи реестра и т.д. создается ярлык. 2.Помимо этого хотелось что бы в пути "C:\ProgramData" в которой создалась предварительно папка по пункту "1" еще установился нужный мне файл для активации программы. (файл присутствует в "скрипте" и в программе ) Нужно так что бы этот файл из установленной программы копировался или переместился в указанную мной директорию. "C:\ProgramData" Я понимаю что это константа для win7 но так же хотелось и узнать код для ХР/Win 8/Vista читал форум наткнулся на код константы для хр {pf} но так и не понял .... надеюсь мысль правильно изложил потому как не знаю как это действие называется красиво. Помогите пожалуйста подскажите код для константы программных файлов для win7/win8/xp/vista |
Отправлено: 20:57, 21-12-2012 | #1407 |
Ветеран Сообщения: 978
|
Профиль | Сайт | Отправить PM | Цитировать C:\ProgramData - {localappdata} Для любой системы. просто в ХР и в системах выше ХР она ведет в разные места. но этот путь всегда будет правильным.
|
------- Отправлено: 21:06, 21-12-2012 | #1408 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата Gnom_aka_Lexander:
Цитата DEZMONDS:
|
||
Отправлено: 21:16, 21-12-2012 | #1409 |
Ветеран Сообщения: 978
|
Профиль | Сайт | Отправить PM | Цитировать El Sanchez, извиняюсь, попутал, имел в виду {commonappdata}...
|
------- Отправлено: 21:19, 21-12-2012 | #1410 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 4] | El Sanchez | Автоматическая установка приложений | 2099 | 22-05-2012 23:16 | |
Скрипты Inno Setup. Помощь и советы [часть 3] | Serega | Автоматическая установка приложений | 3755 | 26-10-2011 17:58 | |
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] | Serega | Автоматическая установка приложений | 2651 | 08-11-2010 18:34 | |
Скрипты Inno Setup Compiler | QAZAK | Автоматическая установка приложений | 7 | 15-01-2007 17:59 | |
Inno Setup | tradeukraine | Вебмастеру | 3 | 13-06-2006 20:39 |
|