Пытаюсь подключиться к 1С. Когда 1С локально не запущена — все нормально..Запускаю 1С и пробую снова надеясь что GetActiveObject обнаружит ее (см. код).
string VersiaKey = "V77.Application";
_1CInstance = null;
try
{
_1CInstance = System.Runtime.InteropServices.Marshal.GetActiveObject(VersiaKey);
return;
}
catch(Exception){}
_1CType = Type.GetTypeFromProgID(VersiaKey);
if(_1CType == null)
{
throw new Exception("VersiaKey not found");
}
_1CInstance = System.Activator.CreateInstance(_1CType);
но GetActiveObject выдает исключение, что означает как я понял что объект не найден..но так как 1С действительно запущена то повторная инициализация не проходит..
Попробовал на ворде: VersiaKey = "Word.Application" — все работает на ура..
Облазил весь инет.. везде один и тот же код для Делфи типа такого
http://delphin.xost.ru/?set=content&mc=28&full
соответствует ли мой код таможе самому — незнаю.. чувствую что камень приткновения Marshal.GetActiveObject..
может кто уже решил эту проблему?