汇编到字节

Pus*_*kar 5 .net c# assemblies

我的方案 - 我正在尝试从服务器向客户端发送程序集文件(通过直接TCP连接).但主要问题是 - 如何将此程序集转换为字节,以便可以轻松转移?我用过以下 -

byte[] dllAsArray;
using (MemoryStream stream = new MemoryStream())
{
    BinaryFormatter formatter = new BinaryFormatter();
    formatter.Serialize(stream,loCompiled.CompiledAssembly);
    dllAsArray = stream.ToArray();
}
Run Code Online (Sandbox Code Playgroud)

但是当我使用 -

Assembly assembly = Assembly.Load(dllAsArray);
Run Code Online (Sandbox Code Playgroud)

我得到一个例外 -

无法加载从代码生成器服务器加载的文件或程序集'165字节,版本= 1.0.0.0,Culture = neutral,PublicKeyToken = null'或其依赖项之一.尝试加载格式不正确的程序.请帮忙!!!

Mar*_*ell 6

这不就是原始的dll内容,就像你把它保存到磁盘一样?即相当于File.ReadAllBytes

这听起来像是生成了dll - 你能把它保存在任何地方吗?(临时区域,内存流等)?

编辑因为看起来你正在使用code-dom,尝试使用PathToAssembly(在编译器结果上)和File.ReadAllBytes(或类似的流机制).