ちょっと遊んだ後、レジストリを編集するだけで、基本バージョンを追加する方法を見つけました。これは、名前の入力を要求していません(それはちょうど基本的なDD.MM.YYYY HHを使用し、MM、SS形式)と、エクスプローラの名前変更モードに入りません。
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Classes\.NewDirectoryBasedOnDate]
@="NewDirectoryBasedOnDate"
[HKEY_CURRENT_USER\Software\Classes\.NewDirectoryBasedOnDate\ShellNew]
"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_USER\Software\Classes\NewDirectoryBasedOnDate]
"FriendlyTypeName"="Directory Based On Date"
[HKEY_CURRENT_USER\Software\Classes\NewDirectoryBasedOnDate\DefaultIcon]
@="shell32.dll,3"
[HKEY_CURRENT_USER\Software\Classes\NewDirectoryBasedOnDate\Shell\open]
"LegacyDisable"=hex:
[HKEY_CURRENT_USER\Software\Classes\NewDirectoryBasedOnDate\Shell\open\command]
@="."
私だけでこれをテストWinXPの、それはハックのビットですwscript.exe //nologo "C:\path\to\NewDateDir.wsf" "%1"
にコマンドを変更し、あなたがで終わるNewDateDir.wsfに次のコードを保存することにより
(私は、新しいメニュー項目が表示されるまでのために偽のShell\open\command
キーを追加する必要がありました)これは:
<?xml version="1.0" ?><job><script language="VBScript"><![CDATA[
if WScript.Arguments.Count < 1 then
MsgBox("Bad parameter!")
WScript.Quit(1)
end if
Set FSO=CreateObject("Scripting.FileSystemObject")
Function StrFilter(s,ch,rep)
StrFilter=Join(Split(s,ch,-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>
あなたが部分的に選択したい場合は特に、私は活性化探検モードがハードになるだろうと思います名前を変更シェル拡張を書くことにした場合であっても。あなたはまた、他のプログラムがシェルのコンテキストメニューを実装するかもしれないので、ドキュメント化されていないあらゆる種類のエクスプローラを使うことができないことを覚えておく必要があります。
素晴らしいですね!ありがとう! – lejon
ハックのビットですが、まだかなり印象的です。ニース。 – Luke
+1努力のために。いいよ! – chacham15