是否有一种方法可以设置或获取Vista文件打开对话框中使用的初始目录,而无需在“ File Open”对话框上设置InitiaLdirectory属性?

我希望我的wpf(在启动)设置一次默认文件夹,用于所有打开/保存对话框。如果您在Vista中注意到,只要机器运行,它将继续从任何“打开”/“另存为对话框”中默认/跟踪用户的最后一个选定目录。记事本或任何计划以这种方式采取行动。

我之所以要这样做,是因为我不想在应用程序中跟踪它,设置和保存文件夹。我只想设置默认设置,然后让Vista跟踪它。

Directory.SetCurrentDirectory不执行此操作。

有帮助吗?

解决方案

您排除了解决问题所要做的确切事情。如果您不设置InitiaLdirectory,则对话框使用最后使用的目录。此信息存储在注册表中,按过程名称索引。您不能选择性地关闭此行为。

使用的注册表密钥在Windows版本之间发生了变化。我认为在win7上,现在是hkey_current_user software Microsoft Windows currentversion explorer comdlg32 lastVisitedpidlmru。它不再像以前在较早版本上那样在clearText中。如果您想冒险尝试解析那里列出的钥匙值,请确保验证Windows版本。坦白说,这不值得您必须编写的简单代码来初始化InitiaLdirectory属性。

其他提示

如果您不想编写代码来继续加载并保存openfiledialog目录,请编写一个包装功能,然后调用您的包装器函数...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top