0

I am trying to figure out how to grab the start directory for my program. I am using C and have access to GLib. On the Linux side it is easy, g_get_current_directory as soon as the program is launched, and store this value for later use. I tried using the same method on windows but g_get_current_directory returns whatever %APPDATA% resolves to.

Any ideas on how I can grab the starting directory using C?

Thanks,

James
  • 3,682
  • 3
  • 22
  • 21

3 Answers3

1

Not in standard C (unless there's something new in C99). C itself doesn't have much of a concept of file systems.

David Thornley
  • 56,304
  • 9
  • 91
  • 158
0

Oops, found the solution. If you have access to glib, simply use:

gchar* g_win32_get_package_installation_directory_of_module(gpointer hmodule);

If hmodule is NULL then it will return the dir for the .exe

James
  • 3,682
  • 3
  • 22
  • 21
0

I believe _getcwd() is what you need, have a look here at the MSDN documentation:

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

DeusAduro
  • 5,971
  • 5
  • 29
  • 36