我有一个需要在Mono下运行的.NET库,为了正常工作,我需要确定Mono安装的路径。Mono文档提到了一个MONO_HOME环境变量,但是在安装Mono for Windows之后,这个变量没有被设置,所以它看起来并不可靠。它在Linux上可靠吗?除了要求我的库的用户手动正确地设置MONO_HOME之外,我在Windows上还有其他选择吗?
我需要一种方法来确定框架程序集的所有Mono版本在哪里,因为我的库基本上做了Visual Studio所做的事情(根据指定的目标框架版本加载解决方案和项目,从框架程序集加载元数据,等等)。
发布于 2012-10-13 08:30:49
这应该在两个平台上都有效:
var corlibDir = new DirectoryInfo (Path.GetDirectoryName (typeof (int).Assembly.Location)).Parent.Parent.Parent.FullName;另请参阅Environment.cs中的私有GacPath属性,这就是它在Windows上的计算方式。我也只是在我的Mac上尝试了一下,它返回了正确的安装目录。
https://stackoverflow.com/questions/12854013
复制相似问题