如何在另一个DLL中使用dll

时间:2013-09-11 19:51:40

标签: c# .net dll embed

我正在制作一个DLL,我必须使用另一个DLL。例如在我的DLL中我想使用“Ionic.Zip”组件来解压缩文件。 怎么办?

我发现一些代码使用了来自参考资料的DLL,但我不知道如何在我的代码中使用: 这是功能:

private System.Reflection.Assembly ResolveAssemblies(object sender, System.ResolveEventArgs e)
{
   dynamic desiredAssembly = new System.Reflection.AssemblyName(e.Name);

        if (desiredAssembly.Name == "Ionic_Zip") 
        {
            return System.Reflection.Assembly.Load(Properties.Resources.Ionic_Zip);
        } 
        else {return null; }

}

并在form_load上:

AppDomain.CurrentDomain.AssemblyResolve += ResolveAssemblies;

但是当我想使用它时,Ionic_Zip会出错。 例如,在我的WinForm应用程序中,我有一个类似下面的函数来解压缩使用Ionic_Zip组件的文件:

private void UnzipUpdtFile()
{
   // extract all files in an existing zip that uses encryption
        using (var zip = Ionic.Zip.ZipFile.Read(UpdFilePCAdrss + @"\" + spl[spl.Length - 1]))
        {
            zip.Password = ZipPassword;
            zip.ExtractAll(UpdFilePCAdrss);
        }
}

如何在此功能中使用它?

0 个答案:

没有答案