从zip运行exe文件及其附加文件而不提取

时间:2012-09-09 18:48:33

标签: c# zip memorystream

我有一个视频文件和一个exe文件,只有当它们都在同一目录下时才会运行。视频和exe文件都是压缩压缩的(.zip),我必须编写一个程序,它可以正确运行exe文件(以及它需要的视频文件),不用将它们提取到硬盘驱动器。

我知道如何将zip文件的内容转换为流(使用dotNetZip)并通过该流运行exe文件而不用硬提取(使用 Assembly.Load()),但是我不知道如何将流式视频文件提供给exe文件。 注意: 我无法访问exe文件源代码。

2 个答案:

答案 0 :(得分:0)

你可以将2个文件解压缩到内存中但是你的exe仍然无法找到电影文件,你可以尝试使用反射注入不同的代码

答案 1 :(得分:0)

假设exe将接受视频流作为输入而不仅仅是视频文件 - 将视频流录制到exe的进程的StandardInput属性中。

如果exe没有此功能,您可能必须使用反射并深入探测已加载的程序集,以找到接收流而不是文件名的接口。