以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]请问如何判断【文件夹】是否已经打开?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=87106)

--  作者:hui986
--  发布时间:2016/7/3 20:01:00
--  [求助]请问如何判断【文件夹】是否已经打开?
如题!
--  作者:大红袍
--  发布时间:2016/7/3 23:11:00
--  

 基本是判断判断不了的。取巧这样

 

If ShowAppWindow("Program Files",1) Then
    msgbox("打开了")
Else
    msgbox("没打开")
End If


--  作者:hui986
--  发布时间:2016/7/3 23:30:00
--  
感谢袍哥的回复,经测试,这种方法行不通,我打开上层目录,测试也是【打开】,在多个软件打开时,狐表的程序窗口会变成退到最后一层~~~
我上网搜了一下,好像是用API来做的~~
我 不太懂这个图片点击可在新窗口打开查看

--  作者:hui986
--  发布时间:2016/7/3 23:34:00
--  
C#
private void EnumOpenedFolder()
{
    this.OpenedFolder.Clear();
    Shell shell = new ShellClass();
    IShellWindows windows = shell.Windows() as IShellWindows;
    foreach (IWebBrowserApp app in windows)
    {
        if (app.LocationURL.StartsWith("file://"))
        {
            this.OpenedFolder.Add(app.LocationURL);
        }
    }
}
不过看不懂图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2016/7/3 23:35:00
--  

 只要找到标题是红色的字符的,就会返回true

 

 没有方法判断路径的,只能判断标题。

 

If ShowAppWindow("Program Files",3) Then
    msgbox("打开了")
Else
    msgbox("没打开")
End If


--  作者:hui986
--  发布时间:2016/7/4 0:21:00
--  
明白了,谢谢袍哥的指导!
辛苦您了,谢谢!