关于windows:“正确”的方式找到C#编译器的路径?

“Proper” way to find path to C# compiler?

本问题已经有最佳答案,请猛点这里访问。

0

在给定的系统上,有没有找到C编译器路径的"正确"方法?

例如,对于Java,"适当"的方式是使用EDCOX1×0的注册表项来遍历所有不同的JDKs和它们的位置,而不是假设所有的东西都在EDCOX1(1)中。

对于C有类似的方法吗?


您可以在以下位置找到已安装框架的列表:hklmsoftwaremicrosoft.netframework

以及在文件系统%windows%microsoft.netframework上

只需记住,您可以通过.NET类本身访问编译器服务。


我更喜欢不依赖系统的东西:

1
string cscPath = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(typeof(object).Assembly.Location),"csc.exe");