private void CheckSelectedFolder(Interop.IFileDialog pfd, Interop.IShellItem psiFolder)
        {
            //
            NativeMethods.SFGAOF fileSystemFlags = 0;
            psiFolder.GetAttributes(NativeMethods.SFGAOF.SFGAO_FILESYSTEM, out fileSystemFlags);
            if (fileSystemFlags != 0)
            {
                // A filesystem folder, but is it valid?
                string path;
                psiFolder.GetDisplayName(NativeMethods.SIGDN.SIGDN_FILESYSPATH, out path);

                if (IsShortcut(path))
                {
                    path = ResolveShortcut(path);
                }

                //Console.WriteLine("filesyspath path: {0}", path);
                _dialog.DoFolderSelected(path);
            }
            else
            {
                // Not a filesystem, let the user know
                _dialog.DoFolderSelected("");
            }
        }