我想将当前目录设置为解决方案diretory /配置名称。 我怎么做? 我可以用某种方式使用全局变量吗?
编辑:我正在尝试读取文件,当前目录在代码中间发生变化。我想改回来。
答案 0 :(得分:37)
在Visual Studio 2010中:
$(SolutionDir)$(Configuration)\
。答案 1 :(得分:4)
您可以使用posix子系统(<direct.h>
)并访问函数
_getcwd()/_wgetcwd()
获取当前工作目录
_chdir()/_wchdir()
设置当前工作目录
如果您需要跨平台代码,可以执行以下操作:
#ifdef _WIN32
# include <direct.h>
# define getcwd _getcwd
# define chdir _chrdir
#else
# include <unistd.h>
#endif
并使用getcwd
和chdir
(没有前导下划线)。
答案 2 :(得分:3)
答案 3 :(得分:2)
如果您当前的目录正在更改,您可能应该在启动时将您的工作目录保存在稍后可以访问的某个变量中,以便将cwd设置回那里。至少这是我理解你的问题的方式。
要获得cwd,this可能会有所帮助。
答案 4 :(得分:0)
出于Visual Studio的目的(包括标头等),您可以使用此处列出的$(ProjectDir)或$(SolutionDir)之类的宏:VS macro list
< / li>要使用您的应用程序的代码读取文件,请使用Windows API函数GetCurrentDirectory,该函数会检索您的进程目录的路径。编译后的代码可能独立于项目而存在,因此有必要相对于进程(exe)引用数据文件的路径。
问题的作者似乎询问第二项,其他人回答第一项。