Application.StartupPath在GAC中的DLL中调用,它将在哪里解析?

时间:2015-05-01 07:09:52

标签: c# gac

我创建了一个EXE(让我们称之为a.exe),它调用一个DLL(让我们称之为b.dll)。在b.dll里面有这个方法

public string GetStartupPath()
{
  return Application.StartupPath;
}

我将a.exe放在C:\Program Files\My Company\My App文件夹中。我在GAC中安装了b.dll

现在我的问题是,如果我启动C:\Program Files\My Company\My App\a.exeGetStartupPath()中的方法b.dll会返回什么?

我可以做一个简单的样本来测试,但我仍然决定在这里发布这个问题。有两个原因:

  1. 我怀疑在不同的机器上会有不同的答案。
  2. 为了其他开发人员的利益,基于StackOverflow上提供的官方文档的规范响应非常有用。

1 个答案:

答案 0 :(得分:2)

来自官方文档:

  

获取启动应用程序的可执行文件的路径,   不包括可执行文件名。

https://msdn.microsoft.com/en-us/library/system.windows.forms.application.startuppath(v=vs.110).aspx

所以这对我意味着它将为你提供exe所在的道路。