powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / После установки InstallShield постоянно запускается Инсталлер
16 сообщений из 16, страница 1 из 1
После установки InstallShield постоянно запускается Инсталлер
    #33307102
dgalkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проект на VFP9
Собран проект инсталляции на базе InstallShield Express Visual Foxpro Limited Edition Version 5.0
В проект инсталляции добаляется MSCOMCTL.DLL версии 6.0.88.12
(StatusBar, TreeView и т.п.)

1. Запускаю инсталляцию. Приложение нормально ставится.
2. Запускаю приложение.
3. Открываю форму. При открытии формы запускается Windows Installer,который что-то доустанавливает, потом форма открывается нормально.
4. Сразу открываю вторую форму - нормально.
5. Закрываю все формы
6. Открываю форму - см.п.3

При открытии всех форм на форму добавляется объект StatusBar методом AddObject. В этот момент похоже и запускается Installer. Пока хоть одна форма висит, информация об StatusBar остается в памяти, поэтому повторного считывания Installer'ом не происходит.

Вопрос. Как победить данную проблему? Что в проекте инсталляции сделать, чтобы проблем не возникало?
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33307152
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
define class cjProgrBar as container && прогрессбар
visible=.t.

procedure init
lparameters tnLeft,tnTop,tnWidth,tnHeight && левая позиция, верхняя позиция, ширина, высота
with this
.borderwidth=0
.left=tnLeft
.top=tnTop
.width=tnWidth
.height=tnHeight
.resize()
endwith
endproc

procedure refresh
lparameters tnValOfprog
local lnValidHeightOfShape,lnValidCenterDyspPos
tnValOfprog=iif(vartype(tnValOfprog)#'N',0,iif(tnValOfprog>100,100,tnValOfprog))
this.oBody.value=tnValOfprog
lnValidHeightOfShape=this.oBody.width-1
lnValidCenterDyspPos=lnValidHeightOfShape/2-this.display1.width/2
this.display1.left=iif(tnValOfprog=0,26,this.display1.left)
this.display1.caption=transform(tnValOfprog,'999.9 %')
this.display2.caption=this.display1.caption
this.oProgress.width=iif(ceil(lnValidHeightOfShape*tnValOfprog/100)-3<0,0,ceil(lnValidHeightOfShape*tnValOfprog/100)-3)
this.display1.left=iif(this.display1.left>=lnValidCenterDyspPos,;
lnValidCenterDyspPos,;
iif(this.oProgress.left+this.oProgress.width<lnValidCenterDyspPos,this.oProgress.left+this.oProgress.width,lnValidCenterDyspPos))
this.display2.left=this.display1.left
this.display2.width=iif(this.oProgress.left+this.oProgress.width>this.display1.left,;
this.oProgress.width+this.oProgress.left-this.display1.left,;
0)

procedure resize
with this
.oBody.disabledforecolor=this.oBody.disabledbackcolor
.oBody.left=2
.oBody.top=2
.oBody.width=iif(this.width-4>0,this.width-4,this.width)
.oBody.height=iif(this.height-4>0,this.height-4,this.height)
.oProgress.zorder(0)
.oProgress.top=.oBody.top+2
.oProgress.left=.oBody.left+2
.oProgress.height=.oBody.height-4
.oProgress.backcolor=this.oBody.selectedbackcolor &&rgb(0,0,255)
.display1.top=this.oBody.height/2-this.display1.height/2
.display2.top=this.display1.top
.display1.zorder(0)
.display2.zorder(0)
.display1.forecolor=this.oBody.forecolor &&rgb(0,0,0) &&
.display2.forecolor=this.oBody.selectedforecolor &&rgb(255,255,255) &&
.refresh(this.oBody.value)
endwith
endproc

add object oProgress as shape with ;
borderstyle=0 ,;
width=0 ,;
visible=.t. ,;
name= 'oProgress'

add object display1 as label with ;
fontname='Tahoma',;
fontsize=8,;
caption='' ,;
visible=.t. ,;
backstyle=0 ,;
fontbold=.t. ,;
width=50 ,;
height=11,;
name = 'display1'

add object display2 as label with ;
fontname='Tahoma',;
fontsize=8,;
caption='' ,;
visible=.t. ,;
backstyle=0 ,;
fontbold=.t. ,;
width=60 ,;
height=11,;
name = 'display2'

add object oBody as textbox with ;
visible=.t. ,;
specialeffect=0 ,;
themes=.f. ,;
enabled=.f. ,;
visible=.t. ,;
name = 'oBody'
enddefine
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33307173
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
изв, что то в глазках двоится

так же
статусбар сделай
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33307686
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi dgalkov!

> Проект на VFP9
> Собран проект инсталляции на базе InstallShield Express Visual Foxpro
> Limited Edition Version 5.0
> В проект инсталляции добаляется MSCOMCTL.DLL версии 6.0.88.12

Вообще-то надо бы не dll добавлять а соответствующий Merge Module - там
прописано что и куда устанавливать...
Кроме того имеет смысл снять так называемый "Advertising" (извини, точно
названия не помню, и не знаю где он в IS находится, я Wise-ом пользуюсь).
Это конечно крутая штука (типа при "поломках" или "удалениях" файлов она их
восстанавливает из инсталляции) - но жутко кривая :(

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33307752
dgalkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hi dgalkov!

>> Проект на VFP9
>> Собран проект инсталляции на базе InstallShield Express Visual Foxpro
>> Limited Edition Version 5.0
>> В проект инсталляции добаляется MSCOMCTL.DLL версии 6.0.88.12

>Вообще-то надо бы не dll добавлять а соответствующий Merge Module - там
>прописано что и куда устанавливать...
В проект добавлен именно соответствующий Merge Module.

>Кроме того имеет смысл снять так называемый "Advertising" (извини, точно
>названия не помню, и не знаю где он в IS находится, я Wise-ом пользуюсь).
>Это конечно крутая штука (типа при "поломках" или "удалениях" файлов она >их восстанавливает из инсталляции) - но жутко кривая :(

Я нашел эту настройку. В Features.
Advertised - Не помогло.
Там еще есть Remote Installation
Попробовал все возможные сочетания - не помогло.

Я потом на чистой машине попробовал. Похоже OCX настройки не прописываются в реестр, поэтому он в msi файл лезет. И на чистой машине AxtiveX в виде StatusBar не появилось.

Есть конечно путь поменять инсталлятор, но хотелось бы решить проблему, так как должна решаться.
Если проблема не решится, придется
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33308635
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hi dgalkov!
проверьте почту

самое интересное, что проблему, то Вы решите,
на фокса неправильно живет с активиксами
это не бейсик, который под них заточен

у фокс окно не окно
и активикс не пойми как там живет

меня дерево достало так, что есть уже желание
переписать
сил нет активикс живет как ему нравится

в Вашем случае я советую статусбар свой написать
и красивее и надежнее работать будет
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33308735
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да вопрос по теме.

Всех устраивает как дерево живет (блымкает, прорисовывается где ни поподя)
в дебужере не отладишь (ноду может в сет степе не добавлять)
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33308790
dgalkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex11100Hi dgalkov!
проверьте почту

самое интересное, что проблему, то Вы решите,
на фокса неправильно живет с активиксами
это не бейсик, который под них заточен

у фокс окно не окно и активикс не пойми как там живет

меня дерево достало так, что есть уже желание переписать
сил нет активикс живет как ему нравится

в Вашем случае я советую статусбар свой написать
и красивее и надежнее работать будет

Может Fox и неправильно живет с AсtiveX, и окно у него не такое, только я чегой-то этого не замечаю этой его неправильности. И StatusBar у меня не жалуется. Ни на меня, ни на неправильное окошко.

Только в данном случае InstallShield 5.0 не делает того, чего ему положено. Таких проблем на предыдущем InstallShield Express не было. Проблема не в моей форме, ни в StatusBar, а том что он при инсталляции не регистирируется нормально.

Т.е. я в Инсталляции не так что-то сделал (ну или IS кривой, что надеюсь маловероятно:-)
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33308838
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я советую Вам написать свой объект
и потренируетесь и проблем избежите

будет время - заметите еще проблемы с активиксами
ими нужно пользоваться уж когда ничего и нет другого
к примеру драйвера весов касс и т.д.,

а в Вашем случае потренируйтесь и напишите свой объект-контейнер
ничего сложного нет
несколько текстбоксов и бмп

будет надежней и во сто раз красивей
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33313855
dgalkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dgalkovПроект на VFP9
Собран проект инсталляции на базе InstallShield Express Visual Foxpro Limited Edition Version 5.0
...
Вопрос. Как победить данную проблему? Что в проекте инсталляции сделать, чтобы проблем не возникало?

Корень проблемы был в лицензии на MSCOMCTL.OCX
Merge Module ставил OCX, регистрировал ее в реестре. Но лицензию в реестр не прописывал.

Получалось, что при исполнении при добавлении ActiveX на форму, происходила ошибка: Класс не зарегестрирован. Проблема решилась ручной регистрацией объекта. В инсталляции добавил запись в реестр ключика лицензии.

Проблема решилась, но остался вопрос, почему в Merge Module отсутствовала регистрации лицензии. Так и надо? Но зачем тогда Merge Module? Он же предназначен для распространения приложения. Значит MSCOMCTL.OCX предлагается распространять разработчику.
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33313861
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex11100Всех устраивает как дерево живет (блымкает, прорисовывается где ни поподя)в дебужере не отладишь (ноду может в сет степе не добавлять)
Меня очень даже устраивает.
И в дебаг именно из-за него не залезаю.
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33313864
Фотография Владимир СА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dgalkovКорень проблемы был в лицензии на MSCOMCTL.OCX
Merge Module ставил OCX, регистрировал ее в реестре. Но лицензию в реестр не прописывал.
Получалось, что при исполнении при добавлении ActiveX на форму, происходила ошибка: Класс не зарегестрирован. Проблема решилась ручной регистрацией объекта. В инсталляции добавил запись в реестр ключика лицензии. ...
Покажи место, где ты это указал???
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33314781
dgalkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владимир СА dgalkovКорень проблемы был в лицензии на MSCOMCTL.OCX
Merge Module ставил OCX, регистрировал ее в реестре. Но лицензию в реестр не прописывал.
Получалось, что при исполнении при добавлении ActiveX на форму, происходила ошибка: Класс не зарегестрирован. Проблема решилась ручной регистрацией объекта. В инсталляции добавил запись в реестр ключика лицензии. ...
Покажи место, где ты это указал???

В инсталляции добавляю запись в реестр
[HKEY_CLASSES_ROOT\Licenses\ED4B87C4-9F76-11d1-8BF7-0000F8754DA1]
@="knlggnmntgggrninthpgmnngrhqhnnjnslsh"

Она ответственна за лицензирование MSCOMCTL.OCX.
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33314931
Фотография Владимир СА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dgalkovВ инсталляции добавляю запись в реестр
[HKEY_CLASSES_ROOT\Licenses\ED4B87C4-9F76-11d1-8BF7-0000F8754DA1]
@="knlggnmntgggrninthpgmnngrhqhnnjnslsh"
Она ответственна за лицензирование MSCOMCTL.OCX.
Спасибо!!!
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33314977
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dgalkovПроблема решилась, но остался вопрос, почему в Merge Module отсутствовала регистрации лицензии. Так и надо? Но зачем тогда Merge Module? Он же предназначен для распространения приложения. Значит MSCOMCTL.OCX предлагается распространять разработчику.
Да. Так и надо. Это лицензионная политика Microsoft. Можно использовать результат работы продукта, но нельзя использовать сам продукт без лицензии.

Применительно к ActiveX, если бы ты создал собственную библиотеку классов (файл VCX) в которую включил бы нужный ActiveX, то такое использование не потребовало бы наличие лицензии.

А вот если ты напрямую пытаешся обратиться к ActiveX минуя библиотеку классов VCX, то это требует отдельной лицензии.
...
Рейтинг: 0 / 0
После установки InstallShield постоянно запускается Инсталлер
    #33316239
dgalkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ВладимирМ dgalkovПроблема решилась, но остался вопрос, почему в Merge Module отсутствовала регистрации лицензии. Так и надо? Но зачем тогда Merge Module? Он же предназначен для распространения приложения. Значит MSCOMCTL.OCX предлагается распространять разработчику.
Да. Так и надо. Это лицензионная политика Microsoft. Можно использовать результат работы продукта, но нельзя использовать сам продукт без лицензии.

...

А вот если ты напрямую пытаешся обратиться к ActiveX минуя библиотеку классов VCX, то это требует отдельной лицензии.

Я бы не против в классе VCX нужный ActiveX прописывать, только там возникают проблемы с версиями ActiveX. Поэтому пришлось перейти на технологию AddObject во время исполнения. Просто раньше как-то вопрос с лицензированием сам-собой рассасывался без моего участия, а тут, блин,вылез:-)
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / После установки InstallShield постоянно запускается Инсталлер
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]