据我了解,当使用文件打开对话框(例如GetOpenFileName)时,Windows将自动记住程序打开的最后一个文件的位置,并且Windows会分别为每个文件记住这些位置程序。有没有办法直接改变它,以便使程序X的文件选择对话框在C:\ Example \ Directory中启动?
我正在尝试自动化程序,该程序已被编程为仅通过GUI工作,并且我无法访问此程序的内部(例如能够更改它调用文件选择器的方式) 。相反,我正在使用鼠标宏(通过AutoHotkey)。如果我可以完全确定文件选择器将在特定位置启动,我应该能够通过鼠标点击自动执行其余操作。
答案 0 :(得分:3)
如果您有权访问源代码,我建议您只更改传递给lpstrInitialDir
的{{1}}的{{1}}属性。
除此之外,您还需要更改MRU的注册表项:
OPENFILENAME
可能更有意义,并且可能解决您遇到的问题,也正在更改工作目录,以便默认位置不是“我的文档”,如果您遇到这种情况。
根据操作系统的不同,结果会有所不同: http://msdn.microsoft.com/en-us/library/windows/desktop/ms646839%28v=vs.85%29.aspx