|
Инсталляция программ
|
|||
---|---|---|---|
#18+
Есть две вечные проблемы, касающиеся установки программ (Использую Inno Setup): 1. Как и где красивее прописать путь к виртуальной машине? Прописывать в Path - не красиво, там и так обычно много всего сидит, иногда даже не помещается всё. Можно ещё в реестре прописать в HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\, но тогда настройка будет привязана к имени exe-шника. 2. Как при инсталляции создать БД для приложения (MS SQL)? В данный момент написал свою прогу, которая этим занимается, но хотелось бы найти готовые компоненты. К тому же при апдейте приложения, должна автоматически обновиться БД. Вроде как Install Shield может такое делать, но он денег больших стоит... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2004, 18:14 |
|
Инсталляция программ
|
|||
---|---|---|---|
#18+
2 Louder: 1. Ну, уж если сам РВ при установке, пути к своим шаредам в PATH пишет, то туда ему, наверное, и дорога, всетаки? Вы не находите? :) А на счет... иногда даже не помещается всё ...можно поподробнее? 2. У нас для этих целей написан свой инсталятор (еще на 6.5.1). Он и сервер ставит (в MSDE версии), и базы создает, и апдейтит их если требуется... Хотя на Install Shield, в свое время, компания всеж потратилась... --- С уважением, IKAR ikarhomecenter@narod.ru IkarHomeCenter ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2004, 08:31 |
|
Инсталляция программ
|
|||
---|---|---|---|
#18+
TO Ikar: Можно и на ты, мы ж вроде как вместе раньше работали :) 1. Насчет Path: насколько я знаю, размер переменной path ограничен, по крайне мере в Win98. Не нравится мне всё-же это... 2. Про инсталятор: Жаль мне в руки этот инсталятор не попадался :) Я тоже вот свой написал и уже давненько его использую, но нём многого не хватает, а наворачивать его не хочу - это же всё потом поддерживать придётся, а у меня 2000 пользователей за спиной... Кстати, сколько Install Shield хоть примерно стоит? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2004, 10:57 |
|
Инсталляция программ
|
|||
---|---|---|---|
#18+
2 Louder: Хех, не признал! :)) Да и имя свое ты не светишь, так что и повода признать не было... :) На чсет ограничения длины PATH - когда то слышал, но видимо максимум на столько велик, что я на него никогда не натыкался... Жаль мне в руки этот инсталятор не попадался :) Не так долго ты у нас проработал, чтобы он тебе попался... :) Я и сам, чесно говоря, до него добрался только в конце декабря прошлого года, когда нужно было его под одну специфическую задачу переделать. ... а наворачивать его не хочу - это же всё потом поддерживать придётся ... Дык ежели один раз написать его целиком и полностью, заложившись на все возможные, то зачем его поддерживать? Вот наш инсталятор DK написал уже лет 6 назад, и если бы моя проблема не оказалась оччень специфичной, то я и не коснулся бы его. Кстати, сколько Install Shield хоть примерно стоит? А вот это не скажу... Залезь на сайт разработчика, там наверняка есь инфа по этому поводу... Удачи! :) --- С уважением, IKAR ikarhomecenter@narod.ru IkarHomeCenter ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2004, 11:51 |
|
Инсталляция программ
|
|||
---|---|---|---|
#18+
Как при инсталляции создать БД для приложения (MS SQL)? В inno setup есть возможность работы с OLE Объектами. Таким образом? при установленном SQL Server можно через SQL-DMO сделать все что угодно вот пример attach базы и установки dts (код записывается в процедурку и выполняется после копирования файлов): var SQLServer, Database, DBFile, LogFile, objPkg: Variant; begin try SQLServer := CreateOleObject('SQLDMO.SQLServer'); except RaiseException(ExceptionType, Необходимо сначала установить SQL server Microsoft SQL Server .'#13#13'(Error '''+ExceptionParam+''' occured)'); end; SQLServer.LoginSecure := True; SQLServer.Connect(server_name); //server_name - имя сервера try SQLServer.DetachDB(base_name,True) //base_name - имя базы except end; SQLServer.AttachDB(base_name,'['+ExpandConstant('{app}')+'\basedata +'] , ['+ExpandConstant('{app}')+'\baselog+']') //basedata - имя файла mdf; baselog- имя файла ldf //Далее идет установка и настройка dts пакета objPkg := CreateOleObject('DTS.Package'); objPkg.LoadFromStorageFile(ExpandConstant('{app}')+'\DTS\exportdb.dts','','','',''); objPkg.GlobalVariables.item('dbsource').value := base_name; objPkg.GlobalVariables.item('sourceserver').value := server_name; objPkg.GlobalVariables.item('destserver').value := server_name; objPkg.SavetoSQLServer(server_name,'','',256,'','','',false); ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 11:49 |
|
Инсталляция программ
|
|||
---|---|---|---|
#18+
Спасибо большое! Только вот не понял пока как формы рисовать в Inno Setup. Тут стандартной формой не обойтись, как мне кажется. Ну и конечно хотелось бы всё-таки с помощью SQL-команд базу создавать, а не атачить, т.к. прога в нескольких странах стоит (Россия, Чехия, Хорватия, США) и пользователей разных полно и оборудование у всех разное. Короче у всех разный колэйшн, расположения файлов и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 20:58 |
|
|
start [/forum/topic.php?fid=15&fpage=107&tid=1339195]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
68ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 177ms |
0 / 0 |