Delphi 7,带UNC的SelectDirectory

时间:2012-12-03 15:44:44

标签: delphi delphi-7

我在Windows 7上使用Delphi 7,我需要打开一个允许选择目录的对话框。 我使用SelectDirectory(来自单元FileCtrl)。 问题是我想浏览一个“未映射”的网络目录,如"\\10.0.0.1\Mickey"

是否可以这样做?

2 个答案:

答案 0 :(得分:2)

你对旧式的SelectDirectory感到不满,这是一个过时的,已弃用的功能。

在Vista及以上版本中,您应该在文件夹选择模式下使用IFileDialog。对于Vista之前的操作系统,您可以做的最好的事情是SHBrowseForFolder

调用SelectDirectory的{​​{1}}超载。这是5个参数的过载。我不知道它何时推出。也许它甚至存在于Delphi 7中。我也无法确定SHBrowseForFolder是否会提供您正在寻找的目录。

由于您还使用了过时且已弃用的Delphi版本,因此调用SHBrowseForFolder需要做更多工作。您需要自己声明接口,并使用IFileDialog创建它的实例。

答案 1 :(得分:2)

Win32 SHBrowseForFolder()函数以及RTL的重载SelectDirectory()函数确实支持网络路径。只需将Root参数设置为空字符串,即可在对话框中显示网络共享。