65.9K
CodeProject 正在变化。 阅读更多。
Home

sdeExtensions:一些使开发者生活更轻松的 Shell 扩展

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.17/5 (5投票s)

2004年11月2日

CPOL

3分钟阅读

viewsIcon

42252

downloadIcon

994

Shell 扩展,用于使文件可读/写,使文件只读,创建新文件夹,清理临时文件和 MP3 分配。

更改文件的读/写属性

Changing a file's Read/Write attribute

好的,您正在开发您的伟大应用程序,并且发现自己一遍又一遍地与 SourceSafe 斗争。您只想更改一个文件来查看您的这个好主意是否可行,但是,您不想检出文件!所以您进入资源管理器,点击“属性”,然后删除只读属性,并在不检出文件的情况下进行更改。我发现自己一遍又一遍地做这件事,但是选择文件的属性并更改只读属性只需多点击一下。所以这是我的第一个扩展,它在资源管理器的右键菜单中添加一个条目,标签为“RW!”,这将使文件可读写。如果需要返回,只需选择“RO!”,它将切换回只读。

快速创建目录

Making a directory

在开发人员一天的工作中,您发现自己不断地创建文件夹,并且我厌倦了资源管理器强迫我这样做的方式。我希望它快速完成!!准备好,这是另一个名为“创建目录”的扩展,它只需要点击一下(并且消耗的资源少得多),然后使用标准的 Windows 资源管理器方式创建文件夹。

删除临时文件

Removing temporary files

经过一周的辛勤工作后,您当然会进行备份,但首先要删除不需要的文件,例如构建的输出、临时文件等。因此搜索您不想包含在备份中的文件,但是您需要开始与 Microsoft 认为应该完成搜索目录的方式进行斗争。我不能使用它:我甚至不能指定我只想找到文件夹,如果它找到了一些东西,并且我想对它执行一些操作,它告诉我它无法打开文件!好吧,那它找到了什么?够了,另一个 shell 扩展会删除在HKCU\Software\SDE\SDE Extensions\RemoveJunk下找到的所有文件/目录。

[HKEY_CURRENT_USER\Software\SDE\SDE Extensions\RemoveJunk]
"Directories"="obj;bin"
"Files"="dlldata.c;*.ncb;*.plg;*.suo;*_i.c;*_p.c"

注册后,将添加这些默认条目。当您调用“删除垃圾”Shell 扩展时,它将删除“Directories”值中指定的所有文件夹,以及“Files”值中找到的所有文件,您应该在回收站中找到它们。

分配 MP3 文件

Removing temporary files

Removing temporary files

Removing temporary files

最后一个扩展可能对您没有特别的用处,但对我来说却很有用。我有一个名为mp3的文件夹,旁边还有几个用于对任何 MP3 进行分类的文件夹。我下载的每个 MP3 文件,我都放在一个名为“Everything”的文件夹中。当我在此文件夹中选择扩展名为“.mp3”的文件时,我的 shell 扩展将枚举除“Everything”目录之外的所有目录,并将它们用作将类别分配给 MP3 文件的选项。如果做出选择,则在该目录中创建一个指向所选文件的硬链接。

我在这里展示的三张图片显示了目录结构,将类别“摇滚”分配给 MP3 文件“Life - Iris.mp3”,以及分配类别后“Rock”目录的目录内容。

背景

这些 shell 扩展基于 Michael Dunn 的优秀文章编写 Shell 扩展的完整傻瓜指南

代码

我在代码本身中记录代码,所以只需查看代码,我希望您在那里找到的注释就足够了。

待续...

我正在考虑实现一些“搜索”实用程序作为 Shell 扩展,你们觉得怎么样?

© . All rights reserved.