可靠地获取Linux上捆绑可执行文件的位置。
可靠地获取Linux上捆绑可执行文件的位置。
这个问题已经在这里有了答案:
我正在编写一个使用Mono的mkbundle
编译和打包的C#应用程序,然后运行。
我尝试访问可执行文件运行的文件夹,当我从相同目录下使用./example
来运行应用程序时,它可以正常工作。但是,当相对于另一个目录像../Builds/example
这样运行时,它返回错误的目录,而不是实际的目录。
所有这些在Windows上都运作良好,但我也需要它在Linux上工作。
我之前尝试过的方法包括:
AppDomain.Current.BaseDirectory
Path.GetDirectoryName(Assembly.ExecutingAssembly().Location)
(也尝试了EntryAssembly
)
所有这些都返回错误的目录,而不是实际可执行文件的位置。
admin 更改状态以发布 2023年5月21日