Как сделать DLL необязательной в приложении .Net - PullRequest
1 голос
/ 13 июня 2011

У нас есть приложение, которое требует полного доверия из-за Chilkat .NET 3.5 DLL Это не было большой проблемой, однако мы хотели бы представить наше приложение в: Галерее веб-приложений Windows, и оно должно быть Среднее доверие .

Итак, чтобы сделать его средним доверием, все, что нам нужно сделать, это

  • удалить ссылку на DLL
  • закомментируйте методы, которые связаны с этим кодом

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

спасибо!

1 Ответ

1 голос
/ 13 июня 2011

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

static class Program
{
    static void Main(string[] args)
    {
        Assembly asm = Assembly.Load("ExampleAssembly, Version=1.0.0.0, Culture=en, PublicKeyToken=a5d015c7d5a0b012");
        IFullTrustAddin addin = asm.CreateInstance("Namespace.MyChilkatWrapper") as IFullTrustAddin;

        if (addin == null)
            return;

        addin.DoSomething();
    }
}

interface IFullTrustAddin
{
    void DoSomething();
}
...