【发布时间】:2012-12-04 03:37:27
【问题描述】:
我的应用程序中有一个第三方非托管程序。我还有一个托管 C# 应用程序,它是系统的“入口点”。保证非托管程序只有在满足一定条件的情况下才能正常运行。
我想让 C# 应用程序在沙盒中运行非托管程序,这样特定文件就不会直接从硬盘读取或写入硬盘;相反,C# 应用程序需要对其进行处理,然后将文件提供给 3rd 方应用程序或将其保存到磁盘。
我研究过使用 C# 的 AppDomain 类,但我相信它只能运行托管代码。对于我想要完成的工作,是否有替代系统?
【问题讨论】:
-
您需要一个虚拟机管理程序/VM。一旦启动,C# 就无法控制 .EXE。
-
这种功能需要操作系统挂钩/扩展,并且会花费很多时间;你也可能无法在 C# 中做到这一点。
标签: c# unmanaged sandbox appdomain managed