问题标签 [windows-explorer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
20437 浏览

icons - 您可以向 Windows 资源管理器发送信号以使其刷新系统托盘图标吗?

这个问题困扰了我很长一段时间,真的很烦人。

每次我在重新启动/电源循环后登录时,资源管理器都需要一些时间才能显示出来。我已经采取了等待所有服务启动然后登录的步骤,但这没有任何区别。结果始终相同:即使应用程序已启动,某些图标也不会显示。

我已经对使一个应用程序“粘贴”图标的代码进行了一些研究,但是是否有一个 API 调用可以执行,以便资源管理器重新读取所有图标信息?像无效或重绘或类似的东西?


显然,看起来 Jon 是对的,而且不可能做到。

我遵循 Bob Dizzle 和 Mark Ransom 代码并构建了这个(Delphi 代码):

但无济于事。

我什至尝试过

然没有出现。

还有其他建议吗?

0 投票
7 回答
6538 浏览

windows - 在不重新启动的情况下清除 Windows“运行”对话框历史记录

我目前正在开发一个程序,以立即清除出现在 Windows开始->运行对话框中的先前运行命令列表。通过删除HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU键清除此列表的过程有据可查;但是,在这些更改生效之前,似乎有必要执行以下操作之一:

  1. 重新启动计算机
  2. 选择开始->关闭,然后选择取消

这些都不是我想要完成的任务的理想选择:#1 对用户极具破坏性,而#2 似乎需要额外的用户交互。

有谁知道如何在不需要任何用户交互的情况下立即(并以编程方式)强制重新加载此信息,同时最大限度地减少对用户其他活动的干扰我希望在执行我的程序后立即清除用户的运行历史记录,而不需要他们采取任何进一步的行动(例如使用上面#2中的“关闭”->“取消”技巧)或强制重新启动.

或者,从不同的角度解决问题:单击Start -> Shut Down -> Cancel时,Windows 资源管理器会重新加载 RunMUI 键。 有没有办法在不让用户选择Shut Down然后Cancel的情况下强制进行类似的重新加载?

我已经尝试过的事情:

  • 使用procmon监视 explorer.exe 状态,同时选择Shutdown然后Cancel。我看到 Explorer 正在写入 RunMRU 键,但无法确定是什么触发了这个。
  • 许多谷歌搜索“重新加载 runmru 而不重新启动”。大多数结果仍然推荐上面的方法#1,尽管少数结果建议#2。
  • 有限的 MSDN API 检查。RegFlushKey调用看起来很有希望,但我以前从未使用过它,所以我不知道它是否适用于不同进程缓存的注册表信息。

任何建议或其他信息将不胜感激。

0 投票
8 回答
56820 浏览

python - 在 Windows 资源管理器中拖放到 Python 脚本

我想将我的数据文件拖放到 Python 脚本上,让它处理文件并生成输出。Python 脚本接受数据文件的名称作为命令行参数,但 Windows 资源管理器不允许该脚本成为放置目标。

这项工作是否需要在某处进行某种配置?

0 投票
2 回答
1992 浏览

windows - 探索包含文件夹而不是打开包含文件夹

我使用 Visual Studio 进行大量编码。我发现打开包含文件夹功能非常有用。但我不希望文件夹被 Windows 资源管理器“打开”,而是我想“探索”文件夹——你知道,得到一个漂亮的小框架,向我展示左侧的所有其他文件夹。有谁知道如何做到这一点?

谢谢你,罗希特

0 投票
1 回答
1505 浏览

namespaces - 如何在 Windows 资源管理器中托管根命名空间扩展

有一种方法可以创建以特定文件夹为根的命名空间扩展。

它涉及创建名称如下的文件夹:

Windows 资源管理器将自动在该位置托管该 clsid 的 NSE。

但是对于我的生活,我再也找不到语法了。它曾经在 MSDN 上的命名空间扩展文档中,它列出了将命名空间放入 Windows 资源管理器的 3 种方法——这是其中之一。

语法是什么 - 它让我发疯!

0 投票
2 回答
5345 浏览

windows - Delphi 中的跨应用程序拖放

我想为 Windows XP 创建一个 Delphi 应用程序,它允许删除从 Windows 资源管理器(桌面或文件夹窗口)或其他支持此操作的应用程序(例如 Total Commander)拖动的文件。反之呢?当用户从我的应用程序中拖动图标时,我应该能够将拖动对象的内容设置为自定义数据。

我的目标是创建一个自定义应用程序工具栏,我可以在其上放置应用程序并显示它们的图标或从中拖动应用程序或其他实体。

如何才能做到这一点?

0 投票
2 回答
9865 浏览

java - 如何将上下文菜单添加到 Java 应用程序的 Windows 资源管理器?

对于 Java 应用程序,如何将子菜单项添加到 Windows 资源管理器上下文菜单(例如 7-Zip)?

0 投票
16 回答
152895 浏览

windows - Windows 资源管理器“此处的命令提示符”

我经常发现自己在 Windows 中打开了一个文件夹,希望用相同的工作目录打开一个命令提示符。

我知道 Power Toys 的“命令提示符”,但它只能作为文件夹上的上下文菜单项使用,如果您已经在那里,则不能从文件夹内部使用。我知道您可以导航到父目录并从那里使用它,但是如果父目录中有数千个目录,这就不那么方便了。我已经尝试了一些与资源管理器中的文件夹操作相关的自制批处理文件,但这些文件遇到了类似的问题。

那么,用当前 Windows 资源管理器文件夹的工作目录打开命令提示符的最快方法是什么?

我目前的做法:(可怕)

  • Alt- D, Ctrl-C (复制路径)
  • Win- R, "cmd",Enter (启动命令提示符)
  • "cd",Space (启动更改目录命令)
  • Alt- Space, e,p(粘贴目录)
  • Enter(执行更改目录)

我知道有更好的东西!它是什么?

0 投票
8 回答
17621 浏览

windows - 如何创建右键单击上下文 shell 快捷方式“使用 Emacs 编辑”?

Notepad++ 会自动添加一个 shell 快捷方式,这样当您在 Windows 资源管理器中时,您可以右键单击文件并选择“使用 Notepad++ 编辑”。我怎样才能对 emacs 做同样的事情?我正在为 Windows 使用 GNU Emacs 22.3。

0 投票
10 回答
15234 浏览

.net - 如何以编程方式重新启动 Windows 资源管理器进程

我正在开发 Windows shell 扩展,不幸的是,在更改 DLL 时,我必须重新启动 Windows 资源管理器(因为它将 DLL 保存在内存中)。

我从 Dino Esposito 找到了这个程序,但它对我不起作用。

有没有人可以分享一些东西来做到这一点?

PS我意识到我可以去任务管理器并杀死资源管理器进程,但我只是想以懒惰的方式来做。此外,这可以实现自动化。

PPS 我使用 .NET 进行开发,但 shell 重新启动功能可能是 C、C++ 或 .NET 语言。它只是一个小的独立可执行文件。