Я пытаюсь вызвать сборку .net, которая оборачивает несколько COM-вызовов (сторонним dll) с Sql Server. Сборка регистрируется нормально (я пытался зарегистрироваться с небезопасным и внешним доступом), но когда я запускаю процедуру, я получаю эту ошибку:
Ошибка .NET Framework произошла во время выполнения пользовательской подпрограммы или агрегата "ManagedCodeCallTest":
System.UriFormatException: неверный URI: URI пуст.
System.UriFormatException:
в System.Uri.CreateThis (строка URI, логическое значение dontEscape, UriKind uriKind)
в System.Uri..ctor (String uriString)
в System.ComponentModel.Design.RuntimeLicenseContext.GetLocalPath (String fileName)
в System.ComponentModel.Design.RuntimeLicenseContext.GetSavedLicenseKey (тип Type, сборка resourceAssembly)
в System.ComponentModel.LicenseManager.LicenseInteropHelper.GetCurrentContextInfo (Int32 & fDesignTime, IntPtr & bstrKey, RuntimeTypeHandle rth)
в ManagedCode.MyClass.ArielComponentCall ()
Есть идеи? Что я пытаюсь сделать, даже возможно? Я читал кое-что о лицензированных dll, но информация была очень расплывчатой.
РЕДАКТИРОВАТЬ: код CLR, если это помогает:
[SqlProcedure]
public static void ArielComponentCall()
{
Ariel.ApplicationClass application = new Ariel.ApplicationClass();
object arielDoc = application.OpenDocument(@"P:\Projects\COAT\Ariel1.run");
}
Проект, который содержит этот класс, имеет ссылку на объект com.