mono c#获取应用程序路径
我正在寻找我的应用程序的目录,它似乎不同于常规的c#mono c#获取应用程序路径,c#,mono,C#,Mono,我正在寻找我的应用程序的目录,它似乎不同于常规的c# 与路径相同。GetDirectoryName(Application.ExecutablePath)不起作用。请尝试Assembly.GetExecutiveGassembly()。位置一个正确的跨平台解决方案是 Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) 请注意,Environment.CurrentDirectory和Assembly.getExecutionG
与路径相同。GetDirectoryName(Application.ExecutablePath)不起作用。请尝试
Assembly.GetExecutiveGassembly()。位置
一个正确的跨平台解决方案是
Path.GetDirectoryName(Assembly.GetEntryAssembly().Location)
请注意,Environment.CurrentDirectory
和Assembly.getExecutionGassembly().Location
(更确切地说,其目录)在语义上都是错误的,尽管它们通常(但不总是)是同一个目录:
- 当前目录是“工作目录”,可以在任何时间点更改,就像shell中的“cd”命令一样
- 正在执行的程序集是包含当前正在运行的代码的程序集,它可能与实际应用程序位于同一目录中,也可能不在同一目录中。例如,如果您的应用程序是具有依赖项“B.dll”的“A.exe”,并且B.dll中的某些代码调用了
,则会产生“/path/to/B.dll”Assembly.getExecutionGassembly()