我的 .NET 库中有一个嵌入文件 - xsd.exe
。
如何在不从 byte[]
重建嵌入文件的情况下使用它?
exe 在命令行上运行,因此我需要能够进行如下调用:xsd/o:..
或其他。
我读过一些关于 ManifestResourceStream
的内容,但我似乎在框架中找不到它,而且我不知道如何使用它。
有什么想法吗?
最佳答案
如果您可以将其写入临时文件 (File.WriteAllBytes
),则可以创建一个新的 AppDomain
,并使用 yourAppDomain.ExecuteAssembly(.. .)
;但是,要从 byte[]
手动执行此操作,我希望您需要使用 Assembly.Load(byte[],...)
手动加载它,看看在 loadedAssembly.EntryPoint
处,并使用反射来调用它。 ExecuteAssembly
方法要简单得多...
当然,如果您可以将其写入文件,您也可以只使用Process.Start
,这甚至更简单;p
您可能还想仔细检查 xsd.exe
的 redist/部署权限。
关于c# - 如何在 C# 库中使用嵌入式 .NET exe,而不从其 byte[] 重建文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3932114/