AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / computer / 问题 / 1788453
Accepted
Kalamalka Kid
Kalamalka Kid
Asked: 2023-06-11 16:17:24 +0800 CST2023-06-11 16:17:24 +0800 CST 2023-06-11 16:17:24 +0800 CST

为什么 Windows 应用程序在保存到最近访问的目录时会有不同的行为?

  • 772

我想知道为什么某些应用程序在其 Windows“另存为”对话框中显示最近访问的目录时会有不同的行为。例如,当我使用 Adob​​e Photoshop CC 时,我可以选择地址栏右侧的下拉箭头:

在此处输入图像描述

将出现一个目录列表,但它不是按最近排列的。它显示的目录几乎是随机的。事实上,有些目录我什至从未从应用程序中保存过,这让我相信不是应用程序在管理列表,而是一些 Windows 功能。

与此相反,其他应用程序(例如 3dsMax)会根据实际访问的目录填充列表,并按照上次访问的时间顺序列出它们:

在此处输入图像描述

由于“另存为”窗口的行为方式,我知道这些程序以不同的方式实现“另存为”。在 Photoshop 中,用户可以在地址栏中选择目录路径并从剪贴板粘贴路径(或手动输入)。

相比之下,3dsMax 允许这样做的方式略有不同(顶部的地址栏实际上是应用程序实现的历史记录栏,但用户可以通过下拉式菜单导航目录,或在文件名中粘贴目录名称场地。

这些只是示例(每个示例都有自己的优点和缺点),但是它们表明,在“另存为”窗口中,并不存在适用于所有应用程序的通用行为。

我对所有这些感到困惑,因为当调用“另存为”功能时,似乎所有应用程序都在使用某种形式的 Explorer 外壳。我相信它们使用的是 Explorer shell,因为我们仍然可以在这些窗口中执行复制文件、创建新文件夹、删除文件和撤消操作等资源管理器功能。

这让我想到了我的问题:

当 Windows 应用程序都使用某种形式的 Explorer shell 时,为什么它们在保存到最近访问的目录时会有不同的行为?

windows-10
  • 1 1 个回答
  • 31 Views

1 个回答

  • Voted
  1. Best Answer
    user1686
    2023-06-11T16:58:55+08:002023-06-11T16:58:55+08:00

    我对所有这些感到困惑,因为当调用“另存为”功能时,似乎所有应用程序都在使用某种形式的 Explorer 外壳。我相信它们使用的是 Explorer shell,因为我们仍然可以在这些窗口中执行复制文件、创建新文件夹、删除文件和撤消操作等资源管理器功能。

    这两件事并不相互排斥——可以只嵌入“ShellFolderView”控件(Explorer 使用的图标/列表视图),同时仍然围绕它构建一个完全自定义的对话框,这正是 3dsMax 最有可能做到的。它与嵌入标准“按钮”或“下拉列表框”控件非常相似。

    真的,这也是标准的打开/保存对话框的作用。标准对话框也不是资源管理器窗口——它只是被建模为看起来有点像,但实际上它只是一个嵌入了 ShellFolderView 的对话框窗口。(最初在 Windows 95 中,它甚至没有可用的常用“资源管理器”功能;在 Windows 98 中添加了从“打开/保存”对话框中管理文件的功能。)

    (这个项目让我想起了一个具体的例子,Office 2000 也带来了它自己的文件打开/保存对话框,具有独特的外观(侧边栏和预览窗格,标准 Windows 对话框当时都没有);整个对话框是自定义构建的,除了具有类似的布局和嵌入标准文件夹视图。)

    也可以构建提供几乎相同功能的自定义图标/列表视图控件。任何程序都可以创建新文件夹,但 Explorer 本身提供对其许多功能的编程访问 - 例如,任何程序都可以导致弹出 Explorer 样式的右键单击菜单(带有扩展名),并且任何程序都可以请求删除文件通过资源管理器来完成。

    (第三方文件管理器,如 Total Commander 经常这样做;文件列表是自定义的,但如果需要,可以通过 shell 直接进行交互。Total Commander 自行处理文件移动/重命名,因为任何程序都可以重命名文件,但它允许通过资源管理器进行删除,以便文件进入回收站。)

    • 1

相关问题

  • VMware Workstation USB 仲裁服务无法自动启动

  • 如何在域和 Linux 活动目录中启用指纹传感器

  • 资源管理器侧面板中的桌面外壳快捷方式

  • 为什么我不能将文件从 Android 发送到 Windows 10?

  • 在多个文件上打开方式?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Vickel Firefox 不再允许粘贴到 WhatsApp 网页中? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve