Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

billybob

working directory constantly changing?

This topic is 5317 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have been having serious trouble with file management throughout all the time working on my game. what seems to be happening is files are loaded/saved into a directory, then all files attempting to use relative directories use that has their working directory. for example, I open/save my Config.ini file without any directory information. because of this, my ini file gets deposited anywhere a file has been opened/saved last. surely, there is a way to prevent the working directory from changing like this?

Share this post


Link to post
Share on other sites
Advertisement
I use std::fstream/ifstream/ofstream, usually I just let it go out of scope, but there are a few places where I .close it. I don't do anything strange with opening or closing files, and I've checked the filenames EVERY SINGLE open call makes with my log, all seem perfectly fine.

[edited by - billybob on January 22, 2004 9:57:50 PM]

Share this post


Link to post
Share on other sites
// set current directory to exe's root
wchar_t applicationDir[MAX_PATH];
::GetModuleFileName(instance, applicationDir, MAX_PATH);
wchar_t* endPath = wcsrchr(applicationDir, L'\\');
if(endPath)
*endPath = 0;

::SetCurrentDirectory(applicationDir);



[edited by - antareus on January 22, 2004 10:28:26 PM]

Share this post


Link to post
Share on other sites
I already do that antareus, but in order to fix my problem I''d have to do that every time I open a file (the SetCurrentDirectory part, at least)

Share this post


Link to post
Share on other sites
I don''t understand what you mean. first of all, how would you know, second, what would I do when I''m NOT in the application''s directory (as it seems to be after I open a file that isn''t in there)

Share this post


Link to post
Share on other sites
use all but the last line of antareus'' sample code, and save it in a char array somewhere. then, when you want to open a file, copy this saved path before the filename. you can even write an inline function to do it.

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!