Абсолютный путь к стартовому каталогу исполняемого файла
-
12-09-2019 - |
Вопрос
Я пытаюсь понять, как получить начальный каталог для моей программы.Я использую 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: