Ru-Board.club
← Вернуться в раздел «Программы»

» Inno Setup (создание инсталяционных пакетов)

Автор: putes
Дата сообщения: 01.08.2007 16:13
пожалуйста подскажите люди добрые
Каким скриптом отправить папку с содержимым, в путь...например F:\Documents and Settings\All Users\Application Data
перепробовал все команды типо {userdocs} {commondocs} всё мимо, а нужно именно по адресу что выше.
Спасибо
Автор: serg_aka_lain
Дата сообщения: 01.08.2007 17:16
putes

{userdocs}-Доаументы пользователя
{commondocs} -Общие документы
{localappdata}- Application Data
{commonappdata} - All Users\Application Data
В Help все константы есть.
Автор: Shaman2
Дата сообщения: 02.08.2007 02:32
Вот у меня такой вопрос: каким образом можно в инсталляшку добавить цифровую подпись, чтобы потом инсталлятор сравнивал ее со своим блеклистом и после его прохождения записывал в файл или запускал какую нибудь прогу (передавая в качестве параметра подпись) ? Подпись надо поставить на уже готовый экзешник, не в процессе создания.
Автор: Victor_Dobrov
Дата сообщения: 02.08.2007 05:39
Для тех, кто использует Corona Skin. Обновите скрипт до версии 3.9 (ссылка в шапке). В старом подсчёт объёма файлов выполнялся при распаковке каждого файла! (чем больше файлов, тем дольше шла установка).
Автор: Genri
Дата сообщения: 02.08.2007 09:35
vshersh
Цитата:
файлы пользователя "B" затирают файлы пользователя "А".
--
[Setup]
UsePreviousAppDir=no
UsePreviousGroup=no
UsePreviousSetupType=no
UsePreviousTasks=no
UsePreviousUserInfo=no

другими словами - посмотреть в хелпе в описание всех директив UsePrevious...

SpoinT
Цитата:
Почему при настройках градиента не сохраняются цвета?! (Inno Script Generator)
-- очевидно данная фича разработчиком не доделана. Я им не пользуюсь, так что более причину назвать не могу.


Автор: Kindly
Дата сообщения: 02.08.2007 11:12
Shaman2

Цитата:
каким образом можно в инсталляшку добавить цифровую подпись
Свою подпись не сделаешь однозначно, сертификат покупать надо. И вряд ли что получится с проверкой подписи, в общем не занимайся ерундой.
Автор: rupo
Дата сообщения: 02.08.2007 12:58
Вот вопрос
что надо прописать чтоб создавалась отдельная папка и туда устанавливался файл?
Автор: Genri
Дата сообщения: 02.08.2007 19:31
rupo
Цитата:
что надо прописать чтоб создавалась отдельная папка и туда устанавливался файл?
-- хм, я даже не знаю, что ответить. Могу конечно привести пример :
[Files]
Source: "MyProg.exe"; DestDir: "C:\Data"

... но вероятно имелось ввиду что-то другое ?
Автор: rupo
Дата сообщения: 02.08.2007 20:12
Genri
хм надо будет папробовать
Спасибо
Автор: Shaman2
Дата сообщения: 02.08.2007 23:31

Цитата:
Свою подпись не сделаешь однозначно, сертификат покупать надо. И вряд ли что получится с проверкой подписи, в общем не занимайся ерундой.


нужен признак какой-то, что файл из инсталла это утечка от конкретного человека. Самое оно это что-то, что цепляет идентификатор этого человека при скачивании инсталла и потом при установке к экзешнику прицепляется этот идентификатор. Разве не реально?
Автор: SpoinT
Дата сообщения: 03.08.2007 09:13
Genri
Где выставляется подпись своя? Т.е. та которая на одной линии с кнопками Назад, Отмена и т.п. Обычнор серого цвета. Там иногда сайт пишут или название компании.
Автор: Genri
Дата сообщения: 03.08.2007 09:52
SpoinT

[Messages]
BeveledLabel=Inno Setup

-- Inno Setup Help -> Setup Script Sections -> [Messages] section
Автор: Kindly
Дата сообщения: 03.08.2007 11:00
Shaman2

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

Сорри за оффтоп.

Shaman2 - тебе по этому вопросу на другой форум надо.
Автор: SpoinT
Дата сообщения: 03.08.2007 12:47
Genri
Спасибо
Shaman2
Это уже какой-то трой получается
Пишешь прогу, которая будет идти вместе с инсталлом. Её задача в установленный EXE писать ID компа и т.п. EXE-то модифицированный уже стал, соответственно если он его запакует в другой инсталл, то там уже будет его ID или что-то в этом духе.
Автор: Genri
Дата сообщения: 03.08.2007 13:40
Shaman2 -- не совсем понятны условия задачи. Если я правильно понял, требуется в какой-то отдельный инсталлируемый файл (не в сам инсталлятор) встроить идентификатор пользователя. Так как сам инсталлятор скачивается, пересборка инсталлятора не требуется. С другой стороны, требуется, "чтобы потом инсталлятор сравнивал ее со своим блеклистом". Но наличие блеклиста подразумевает его обновление. Или блеклист скачивает сам инсталлятор при установке ? Обязательно ли его наличие, или блеклиста может не быть ?
Далее - что из себя представляет файл, который требуется защитить ? Его создаешь ты или это стронняя программа ? Есть ли возможность внести изменения в логику его работы ?
Далее - кто и когда генерит идентификаторы ? На каком этапе осуществляется привязка идентификатора к конкретному пользователю ? Другими словами, как узнать, что файл с идентификатором 0258ZZ5 принадлежит Васе Пупкину ?

И самое главное - каков механизм распространения инсталлятора ? Свободно скачиваешь и ставишь или должен оплатить и получить какой-то код, дающий возможность скачать ? Или код дающий возможность установить ? А на каком этапе и куда этот код надо вводить ?

А еще, интересно узнать, как оно работает сейчас. Или все эти размышления из области "А хорошо было бы, если бы...." ?

И каково прогнозируемое кол-во инсталляций ? Если в пределах пары сотен, то имхо лучше использовать уайтлист. Работа по блеклисту имеет смысл, когда счет идет на десятки тысяч
Автор: Ohotnic
Дата сообщения: 03.08.2007 13:44
Помогите написать и нсталлятор для сборки Тотала.
Подробности на сайте http://ohotnic-tc.ucoz.ru/

Признателен за внимание.
Автор: SpoinT
Дата сообщения: 03.08.2007 14:33
Ohotnic
Просьба-просьбой, но не нужно рекламировать везде свой сайт

Shaman2
Да. Мне тоже интересно. Поподробнее по-поводу цифр подписи.
Автор: Victor_Dobrov
Дата сообщения: 03.08.2007 15:59
У меня тоже проблемка с цифрами, но не сертифицированная:
Не могу перевести бинарную строку в число, такт как ORD не принимает String.
В скрипте получения сведений о видеокарте RegQueryBinaryValue возвращает строку, которая состоит из 4 байт: 00 00 00 08.

[Setup]
AppName=GetVideo
AppVerName=GetVideo
CreateAppDir=false

[Code]
Function InitializeSetup: Boolean;
    var DeviceKey, VidMem, VidName: string; VidMemory: Array [0..3] of Char; n: Integer;
Begin
    RegQueryStringValue(HKLM, 'Hardware\Devicemap\Video', '\Device\Video0', DeviceKey)
    StringChange(DeviceKey, '\Registry\Machine\', '')
    RegQueryStringValue(HKLM, DeviceKey, 'Device Description', VidName)
    RegQueryBinaryValue(HKLM, DeviceKey, 'HardwareInformation.MemorySize', VidMem)

    MsgBox('Class: ' + DeviceKey + #13#10 + 'Name: ' + VidName + #13#10 + 'RAM: ' + VidMem, mbInformation, mb_Ok)
End;
Автор: Genri
Дата сообщения: 03.08.2007 16:31
Victor_Dobrov

for i:= 1 to Length(VidMem) do
str:= str + IntToStr(Ord(VidMem[i]))

Автор: Victor_Dobrov
Дата сообщения: 03.08.2007 17:08
Считывание информации о видеокарте из реестра:

[Setup]
AppName=GetVideo
AppVerName=GetVideo
CreateAppDir=false

[Code]
Function InitializeSetup: Boolean;
    var DeviceKey, VidMem, VidName: String; VidMemory, ier, n: Integer;
Begin
    RegQueryStringValue(HKLM, 'Hardware\Devicemap\Video', '\Device\Video0', DeviceKey)
    StringChange(DeviceKey, '\Registry\Machine\', '');
    RegQueryStringValue(HKLM, DeviceKey, 'Device Description', VidName)
    RegQueryBinaryValue(HKLM, DeviceKey, 'HardwareInformation.MemorySize', VidMem)
    ier:= 1
    for n:= ier to Length(VidMem) do begin
VidMemory:= VidMemory + Ord(VidMem[n]) * ier
        ier:= ier * $100
    end;
    MsgBox('Class: ' + DeviceKey + #13#10 + 'Name: ' + VidName + #13#10 + 'RAM: ' + IntToStr(VidMemory/(1024*1024)) + ' MB', mbInformation, mb_Ok);
End;
Автор: Shaman2
Дата сообщения: 04.08.2007 01:15

Цитата:
Встраивай в каждый проданный дистрибутив WaterMark-и, причем в инсталл и в исполняемый EXE, если хочешь знать, от кого распространяется полная версия, хотя, если скардят, то ты ничего не сделаешь.

Сорри за оффтоп.

Shaman2 - тебе по этому вопросу на другой форум надо.


В какой?

Добавлено:

Цитата:
Shaman2 -- не совсем понятны условия задачи. Если я правильно понял, требуется в какой-то отдельный инсталлируемый файл (не в сам инсталлятор) встроить идентификатор пользователя. Так как сам инсталлятор скачивается, пересборка инсталлятора не требуется. С другой стороны, требуется, "чтобы потом инсталлятор сравнивал ее со своим блеклистом". Но наличие блеклиста подразумевает его обновление. Или блеклист скачивает сам инсталлятор при установке ? Обязательно ли его наличие, или блеклиста может не быть ?

И самое главное - каков механизм распространения инсталлятора ? Свободно скачиваешь и ставишь или должен оплатить и получить какой-то код, дающий возможность скачать ? Или код дающий возможность установить ? А на каком этапе и куда этот код надо вводить ?

И каково прогнозируемое кол-во инсталляций ? Если в пределах пары сотен, то имхо лучше использовать уайтлист. Работа по блеклисту имеет смысл, когда счет идет на десятки тысяч


уайтлист это белый список? А чем он лучше?


Значит так, что и как оно работает сейчас и что необходимо сделать по поставленной задаче:

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

Надо: при скачивании помечать инсталл, данные для этого есть на сайте, на котором клиент залогинился. При установке инсталла копировать метку в устанавливаемый экзешник.

Кроме того мне эта идея так понравилась, что я хочу ее реализовать в другой, теперь уже коммерческой программе.

PS подскажите форум или метод как вообще подписать экзешник меткой и потом ее прочитать (например на дельфи)


Автор: Ohotnic
Дата сообщения: 04.08.2007 08:04
Да если помочь с инсталлятором, никто не хочет. Скажите есть где-нибудь полное руководство или учебник с нуля, для начинающих на РУССКОМ.
Автор: Turkish88
Дата сообщения: 04.08.2007 09:21
Как можно улучшить сжатие при исользовании 7-zip метода lzma может какуюто библиотеку заменить если у кого есть выложите пожалуйста
Автор: Kindly
Дата сообщения: 04.08.2007 11:15
Shaman2, "рекламить" тут не буду - проверь личку.
Автор: Victor_Dobrov
Дата сообщения: 04.08.2007 14:07
Господа! Проверьте скрипт, определяющий видео и звуковые карты. У всех работает?

[Setup]
AppName=GetDeviceInfo
AppVerName=GetDeviceInfo
CreateAppDir=false

[Code]
Function InitializeSetup: Boolean;
    var n, ier, DeviceID: Integer; Info, DeviceKey, DeviceData, DeviceName: String; Keys: TArrayOfString;
Begin
    RegQueryStringValue(HKLM,'Hardware\Devicemap\Video','\Device\Video0', DeviceKey); StringChange(DeviceKey,'\Registry\Machine\','')
    RegQueryStringValue(HKLM, DeviceKey, 'Device Description', DeviceName)
    RegQueryBinaryValue(HKLM, DeviceKey, 'HardwareInformation.MemorySize', DeviceData)
ier:= 1; for n:= ier to Length(DeviceData) do begin
    DeviceID:= DeviceID + Ord(DeviceData[n]) * ier; ier:= ier * $100
end;
    RegQueryStringValue(HKLM,'System\CurrentControlSet\Enum\Root\Media\MS_MMDRV','ClassGUID', DeviceKey)
    RegGetSubkeyNames(HKLM, 'System\CurrentControlSet\Control\Class\' + DeviceKey, Keys)
ier:= 0;
for n:= 0 to GetArrayLength(Keys)-1 do
    if RegQueryStringValue(HKLM, 'System\CurrentControlSet\Control\Class\' + DeviceKey +'\'+ Keys[n]+'\Drivers\mixer\wdmaud.drv', 'Description', Keys[ier])
        then ier:= ier +1
SetArrayLength(Keys, ier)
for n:= 0 to GetArrayLength(Keys)-1 do Info:= Info + 'Sound Device: '+ Keys[n] +#13#10
    MsgBox('Video Card: '+ DeviceName +', '+ IntToStr(DeviceID/(1024*1024)) +' MB'#13#10 + Info, mbInformation, mb_Ok)
End;
Автор: Chanka
Дата сообщения: 04.08.2007 14:29
Victor_Dobrov,
У меня работает
Автор: serg_aka_lain
Дата сообщения: 04.08.2007 15:11
Victor_Dobrov

Под Vista 64bit
Msg (Video Card: ,0 MB)
Автор: Victor_Dobrov
Дата сообщения: 04.08.2007 17:45
Висты для проверок у меня пока нет, но структура реестра должна совпадать с 2К/ХР.
Автор: serg_aka_lain
Дата сообщения: 04.08.2007 18:14
Структура таже,но ключи немного другие, вернее ValueData.
Инсталлер Сталкера определяет всё правильно на Vista x64, и размер памяти и
аудио и всё прочее.
Автор: Chuvakstepan
Дата сообщения: 04.08.2007 23:10
Подскажите пожалуйста, как узнать идентификатор (ID) созданной вручную страницы мастера? (через CreateCustomPage)

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Mail.ru агент - вход не выполнен


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.