我经常使用当前的date和时间来命名新的文件夹,我已经做了一个程序,这样做(即它需要一个参数,然后根据当前的date和时间和参数创build一个新的文件夹)。
我想知道如何才能使它在Windows资源pipe理器的下一级菜单中显示“New DateTime Folder”(在“New Folder”下方),并且它会自动添加date和时间,并允许用户input名称。 这实际上很像标准的“新文件夹”,除了默认名称是“新文件夹”,它应该是“date时间”,文本不应默认被标记。
有任何想法吗? 谢谢。
如何通过windows右键单击上下文菜单将多个p@R_502_6460@meter passing给python程序
dynamic添加项目到Windows资源pipe理器的上下文菜单
C#Windows'Open With>'上下文菜单行为
我怎样才能得到上下文菜单select的path?
Shell与setuptools的集成
右键单击并在Windows中使用Rubyselect一个上下文菜单选项
在Windows中,如何将上下文菜单关联到文件名(而不是扩展名)?
记事本++右键单击以在新窗口中打开文件
玩了一段时间后,我想通过编辑注册表来想办法添加这个基本版本。 它不会提示输入名称(它只是使用基本的DD.MM.YYYY HH; MM; SS格式),并且不会进入资源管理器重命名模式:
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USERSoftwareClasses.NewDirectoryBasedOnDate] @="NewDirectoryBasedOnDate" [HKEY_CURRENT_USERSoftwareClasses.NewDirectoryBasedOnDateShellNew] "Command"=""CMD" /D /E:ON /c for /F "tokens=1-9 delims=.,\:/" %%A IN ("%%date%%.%%time%%") DO for /F "tokens=*" %%a IN ("%1") do md "%%~dpa\%%A.%%B.%%C %%D;%%E;%%F"" "nullfile"=hex: [HKEY_CURRENT_USERSoftwareClassesNewDirectoryBasedOnDate] "FriendlyTypeName"="Directory Based On Date" [HKEY_CURRENT_USERSoftwareClassesNewDirectoryBasedOnDateDefaultIcon] @="shell32.dll,3" [HKEY_CURRENT_USERSoftwareClassesNewDirectoryBasedOnDateShellopen] "Legacydisable"=hex: [HKEY_CURRENT_USERSoftwareClassesNewDirectoryBasedOnDateShellopencommand] @="."
我只在WinXP上测试过,这是一个黑客(我不得不添加假的Shellopencommand键为新菜单项显示)
通过将命令更改为wscript.exe //nologo "C:pathtoNewDateDir.wsf" "%1"并将以下代码保存在NewDateDir.wsf中,您将得到以下结果:
<?xml version="1.0" ?><job><script language="VBScript"><![CDATA[ if WScript.Arguments.Count < 1 then MsgBox("Bad p@R_502_6460@meter!") WScript.Quit(1) end if Set FSO=CreateObject("Scripting.FileSystemObject") Function StrFilter(s,ch,rep) StrFilter=Join(Split(s,-1),rep) End Function basedir=FSO.GetParentFolderName(WScript.Arguments(0)) defname=Date&" "&Time defname=StrFilter(defname,"/",".") defname=StrFilter(defname,":",";") name=InputBox("New folder in "&basedir,"New folder",defname) if not IsEmpty(name) and Len(name) > 0 then FSO.CreateFolder(FSO.Buildpath(basedir,name)) end if ]]></script></job>
即使你决定编写一个shell扩展,我认为激活探索者重命名模式将会很困难,特别是如果你想部分选择。 你还必须记住,其他程序可能会实现shell上下文菜单,所以你不能使用各种无证的资源管理器的东西。
你必须实现一个外壳扩展,特别是上下文菜单。 这是一个很好的步骤,如何做到这一点。 这里还有一些关于MSDN的底层文档(特别是上下文菜单)和这里 (一般的shell扩展)。 对于你的具体情况,我想你会在“Directory Background”键下注册你的shell扩展。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。