Сборка инсталятора или регистрация СОМ

0 голосов
спросил 27 Июнь, 11 от Dido_kz1 (11,020 баллов) в категории Программные продукты Esri
привет всем, сделал СОМ(VS2010 C#) и работает на ура, только на моем компе, на других компах пробовал запустить, как СОМ регистрировать, все равно при вызове СОМ выходит ошибка

Automation error
The system cannot find the file specified.

как вы с этим боритесь ? пробовал через RegAsm.exe
в реестре HKEY_CLASSES_ROOT\ в списке СОМ-в есть
Дело в чем Smile

6 Ответы

0 голосов
ответил 28 Июнь, 11 от Dido_kz1 (11,020 баллов)
дело в том что, раньше свои библиотеки регистрировали как СОМ с помощью Setup Factory,Install Shield и т.д. а тут эти инсталяторы ругаются, говорит, что не возможно регистрировать как СОМ
Дело в чем Жорик? а если в аркмапе добавить эти библиотеки, то они автоматом становится зарегистрированными, говорят у ESRI своя какая то утилитка есть для регистриаций...
0 голосов
ответил 28 Июнь, 11 от Victor_user (2,660 баллов)
Как-то давно делал инсталяцию для ArcMapa 9.3.1.
Правда VS 2005 был, но думаю сейчас такая же ситуация.
Инсталяцию делал при помощи Sepup Project на Vs2005.
Там действительно хитрость была. Нужно в свой проект Instaler класс добавлять.
0 голосов
ответил 28 Июнь, 11 от Victor_user (2,660 баллов)
Если правильно помню
Add New Item
Visual c# Projects Items
Installer Class

И у меня в проекте такой код

[RunInstaller(true)]
    public partial class Installer1 : Installer
    {
        public Installer1()
        {
            InitializeComponent();
        }
        public override void Install(System.Collections.IDictionary stateSaver)
        {
            base.Install(stateSaver);
            RegistrationServices regSrv = new RegistrationServices();
            regSrv.RegisterAssembly(base.GetType().Assembly,
              AssemblyRegistrationFlags.SetCodeBase);
        }

        public override void Uninstall(System.Collections.IDictionary savedState)
        {
            base.Uninstall(savedState);
            RegistrationServices regSrv = new RegistrationServices();
            regSrv.UnregisterAssembly(base.GetType().Assembly);

        }
    }

0 голосов
ответил 28 Июнь, 11 от Mitrich (13,680 баллов)
0 голосов
ответил 28 Июнь, 11 от Victor_user (2,660 баллов)
Вот-вот именно эта ссылка ))
0 голосов
ответил 13 Июль, 11 от Dorofeev1 (6,460 баллов)
В десятке изменили процедуру установки, теперь модуль должен быть зарегистрирован через EsriRegAsm.
http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/How_to_deploy_a_custom_component_using_a_setup_project/00010000016r000000/
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...