How to get the installation directory in C# after deploying dll's
在从不同文件夹中的应用程序调用的 dll (C#) 中工作时,是否有一些聪明的方法来检索安装路径?
我正在为应用程序开发插件。我的加载项是用 C# 编写的。将使用的应用程序是用 C 编写的,需要在评估期间编译一些东西,所以我有一个 C dll 的中间步骤,它处理与 C# 的互操作业务,并且只向外显示一个 C 可以使用的干净接口。
我部署的是一组 .dll 和一个用于 C 部分的 .lib 和 .h(有时需要静态绑定)。
当尝试设置并从 C# dll 打印出当前目录信息时:
1 | Console.WriteLine(Directory.GetCurrentDirectory()); |
或:
1 | Console.WriteLine(System.Environment.CurrentDirectory); |
我得到了可执行文件的路径。
那么……再一次,我如何获得我的 dll 的安装路径?
编辑:他们都工作!感谢大家的快速回复!
我想你想要的是
以下两种方式之一:
1 2 3 | using System.IO; using System.Windows.Forms; string appPath = Path.GetDirectoryName(Application.ExecutablePath); |
或者:
1 2 3 4 | using System.IO; using System.Reflection; string path = Path.GetDirectoryName( Assembly.GetAssembly(typeof(MyClass)).CodeBase); |
试试这个:
1 |