可执行启动目录的绝对路径

时间:2009-07-09 19:25:57

标签: c windows directory filesystems glib

我试图找出如何获取程序的起始目录。我正在使用C并可以访问GLib。在Linux方面,只要程序启动就很容易,g_get_current_directory,并存储该值以供以后使用。我尝试在Windows上使用相同的方法,但g_get_current_directory返回%APPDATA%解析的内容。

关于如何使用C获取起始目录的任何想法?

谢谢,

3 个答案:

答案 0 :(得分:1)

不在标准C中(除非C99中有新内容)。 C本身没有太多的文件系统概念。

答案 1 :(得分:0)

糟糕,找到了解决方案。如果您可以访问glib,只需使用:

gchar * g_win32_get_package_installation_directory_of_module(gpointer hmodule);

如果hmodule为NULL,则它将返回.exe

的目录

答案 2 :(得分:0)

我相信_getcwd()是您所需要的,请查看MSDN文档:

http://msdn.microsoft.com/en-us/library/sf98bd4y.aspx