C# 排除运行时编译的代码

C# 排除运行时编译的代码,c#,C#,使用(Mono版本的)CodeDOM并从文件中读取(用户制作的)代码进行动态编译, 有可能禁止某些代码吗?例如,任何可能导致操作系统出错、从可执行根目录访问路径、连接到网络等的代码?怎么做 除此之外,还可以检测到某些会破坏当前运行的可执行文件的东西,比如无休止的循环或运行时错误(或者有没有方法可以防止它们发生故障,这样整个事情就不会崩溃,而只是动态编译的部分。我可以想象这种工作方式与异常类似)?破坏当前运行的exe的东西称为bug。谁能阻止这一切,谁就是我的上帝。从技术上讲,在释放“真实”的东西

使用(Mono版本的)CodeDOM并从文件中读取(用户制作的)代码进行动态编译, 有可能禁止某些代码吗?例如,任何可能导致操作系统出错、从可执行根目录访问路径、连接到网络等的代码?怎么做


除此之外,还可以检测到某些会破坏当前运行的可执行文件的东西,比如无休止的循环或运行时错误(或者有没有方法可以防止它们发生故障,这样整个事情就不会崩溃,而只是动态编译的部分。我可以想象这种工作方式与异常类似)?

破坏当前运行的exe的东西称为bug。谁能阻止这一切,谁就是我的上帝。从技术上讲,在释放“真实”的东西之前,在沙箱中预先运行某些东西是可能的(至少对于简单的情况,这需要一些其他限制,比如运行在每一段代码上的测试函数,运行时代码必须具有特定的结构),但对我来说,这似乎太过分了,所以对于我提出的问题的这一部分,我很感兴趣是否有更好的解决方案,对于C,我甚至不知道如何在沙盒应用程序域中运行代码。类似这样的事情应该会为您指明正确的方向: