powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / TABCTL32.OCX: саморегистрация?
4 сообщений из 4, страница 1 из 1
TABCTL32.OCX: саморегистрация?
    #32731740
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем

Есть приложение на VB6, которое использует ActiveX TABCTL32.OCX производства Microsoft. Так вот какая странность: если взять приложение и этот самый ActiveX, положить в один каталог на "чистую" машину (Windows 2000), где нет TABCTL32.OCX в помине (т.е. нет в файловой системе и в реестре не зарегистрировано), то запустить приложение удастся и более того - после первого запуска в реестре будет зарегистрирован TABCTL32.OCX! В коде приложения нет никакой регистрации. Для теста можно просто создать пустой проект на VB6 и сделать Reference на TABCTL32.OCX.

Как бы это объяснить?

Удачи
...
Рейтинг: 0 / 0
TABCTL32.OCX: саморегистрация?
    #32732231
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет jimmers,
на новую машину как ставишь? PDW? Другой инсталлер? Или просто копируешь?

PDW и некоторые другие инсталлеры регистрят сразу же, при установке.

Magnus
...
Рейтинг: 0 / 0
TABCTL32.OCX: саморегистрация?
    #32732373
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Magnus23Привет jimmers,
на новую машину как ставишь? PDW? Другой инсталлер? Или просто копируешь?

PDW и некоторые другие инсталлеры регистрят сразу же, при установке.


Просто копирую.
...
Рейтинг: 0 / 0
TABCTL32.OCX: саморегистрация?
    #32732390
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выясняется, что любой OCX так. По крайней мере, любой OCX, который используется из проекта на VB6. Что я сделал: создал проект “ActiveX Control” в VB6, создал проект “Standard EXE”, который использует контрол из первого проекта. Скопировал на чистую машину (в один каталог) и запустил EXE. Все заработало, не смотря на то, что контрол не регистрировался в системе. Ну и после запуска regedit показал, что контрол уже зареген. Так что не знаю, что и думать.

Ловил RegMon’ом: сначала действительно ищется по GUID (CLSID) этот OCX, он не находится (что понятно – машина чистая), потом, как я вижу по FileMon, прога ищет OCX в текущей директории и в системной (точнее, в %PATH%). Ищет по имени, которое зашито в EXE средой VB при компиляции. Находит – регистрирует в системе… Просто пипец какой-то.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / TABCTL32.OCX: саморегистрация?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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