Usually when I build an application in C# which can digest command line parameters, if these parameters are file paths strings, I could choose to use relative paths as well as absolute paths to refer to a specific file on my computer and use it in the program.
In my last project, my application does not work if I give it a relative path from the command prompt. But in debug mode in VS 2010, it digests relative paths. From the command prompt it requires an absolute path to work.
You need to set the working directory. See: Directory.SetCurrentDirectory Method
Example:
System.IO.Directory.SetCurrentDirectory( System.AppDomain.CurrentDomain.BaseDirectory );In a debug build the Current Directory is set to debug\bin by default.
Specifies the working directory of the program being debugged. In Visual C#, the working directory is the directory the application is launched from \bin\debug by default.
http://msdn.microsoft.com/en-us/library/2kf0yb05.aspx
You can also retrieve the assembly’s path using Assembly.GetEntryAssembly() or Assembly.GetExecutingAssembly() and then using either the Location property or the CodeBase property.