C# WPF 动态程序集添加资源 - 详细指南和示例代码
"C# WPF 创建动态程序集后 如何添加资源"\n\n要添加资源到动态程序集,可以使用AssemblyBuilder类和EmbeddedResource类。\n\n首先,创建一个AssemblyBuilder对象来定义动态程序集的属性和内容。然后,使用AddResourceFile方法将资源文件添加到程序集中。\n\n以下是一个示例代码:\n\ncsharp\nusing System;\nusing System.IO;\nusing System.Reflection;\nusing System.Reflection.Emit;\n\nclass Program\n{\n static void Main(string[] args)\n {\n // 创建动态程序集\n AssemblyName assemblyName = new AssemblyName(\"MyDynamicAssembly\");\n AssemblyBuilder assemblyBuilder = AppDomain.CurrentDomain.DefineDynamicAssembly(\n assemblyName, AssemblyBuilderAccess.RunAndSave);\n\n // 定义模块\n ModuleBuilder moduleBuilder = assemblyBuilder.DefineDynamicModule(\n assemblyName.Name, assemblyName.Name + \".dll\");\n\n // 添加资源文件\n string resourcePath = \"path/to/resource.txt\";\n byte[] resourceData = File.ReadAllBytes(resourcePath);\n EmbeddedResource embeddedResource = moduleBuilder.DefineResource(\n \"MyResource\", \"MyResource.txt\", ResourceAttributes.Public);\n\n using (Stream resourceStream = embeddedResource.GetStream())\n {\n resourceStream.Write(resourceData, 0, resourceData.Length);\n }\n\n // 构建动态程序集并保存到磁盘\n assemblyBuilder.Save(assemblyName.Name + \".dll\");\n }\n}\n\n\n上述代码中,我们创建了一个名为"MyDynamicAssembly"的动态程序集,并定义了一个名为"MyResource"的资源文件。资源文件的内容是从指定路径的文件加载的。\n\n最后,我们使用Save方法将动态程序集保存到磁盘。保存后,你可以在磁盘上找到动态程序集和资源文件。\n\n注意:在运行代码之前,确保替换resourcePath变量的值为你的实际资源文件路径。
原文地址: https://www.cveoy.top/t/topic/pwrN 著作权归作者所有。请勿转载和采集!