C# · 1月 15, 2022

c# – 从嵌入式资源加载程序集

我想加载一个DLL文件(Test.dll)作为程序集.我可以使用直接的Visual Studio引用(即加载dll作为对我的C#应用​​程序的引用)以及使用Assembly.LoadFile(filename)方法加载dll.现在,我想将我的dll文件作为嵌入式资源添加到我的Visual Studio应用程序中,并将dll文件作为程序集加载.我知道如何将此资源作为字节数组加载,字节数组和我可以使用的程序集之间是否存在某种关联?此外,我需要能够调用位于dll文件中的方法.请参阅下面的代码 – 它将进一步解释我在做什么. Assembly SampleAssembly = Assembly.LoadFrom(“WindowsFormsApplication2.ThisisaTESTDLL.dll”);Type myType = SampleAssembly.GetTypes()[0];MethodInfo Method = myType.getmethod(“myVoid”);object myInstance = Activator.CreateInstance(myType,null);Method.Invoke(myInstance,new object[] { “param1″,”param1”});

如果我在这里遗漏任何东西,请尊敬地告诉我,我将编辑原始帖子.

解决方法 Assembly.GetExecutingAssembly().GetManifestResourceStream(…)

这应该会得到一个Stream对象.你可以从中读取一个字节数组.

您可以使用Assembly.Load加载它