Абсолютный путь к стартовому каталогу исполняемого файла

StackOverflow https://stackoverflow.com/questions/1105968

Вопрос

Я пытаюсь понять, как получить начальный каталог для моей программы.Я использую C и имею доступ к GLib.На стороне Linux это легко: g_get_current_directory при запуске программы и сохранить это значение для дальнейшего использования.Я пробовал использовать тот же метод в Windows, но g_get_current_directory возвращает все, что разрешает %APPDATA%.

Есть идеи, как мне получить начальный каталог с помощью C?

Спасибо,

Это было полезно?

Решение 2

Упс, нашел решение.Если у вас есть доступ к glib, просто используйте:

gchar* g_win32_get_package_installation_directory_of_module(gpointer hmodule);

Если hmodule имеет значение NULL, он вернет каталог для .exe.

Другие советы

Не в стандартном C (если только в C99 нет чего-то нового).Сам C не имеет особого понятия о файловых системах.

Я считаю, что _getcwd() — это то, что вам нужно, посмотрите документацию MSDN:

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top