| @echo off | | call :cf2cb "%comspec%" | | exit /b | | | | ::CopyFile2ClipBoard | | :cf2cb | | setlocal | | set "f=%~1" | | set "f=%f:\=/%" | | mshta "javascript:'<script language="vbscript">moveto screen.width,0:document.write "^<img"+chr(32)+"src=""%f%""^>":with document.body.createControlRange:.add document.getElementsByTagName("img")(0):.execCommand "Copy":end with:close</script>'" | | goto :eofCOPY |
————————————————————————————————————
Update 2009-4-20 17:45
修正路径中含空格不能复制的bug;
发现也可复制文件夹(包括里面的文件(夹))。 | @echo off | | call :c2cb "c:\a\a a" | | exit /b | | ::Copy2ClipBoard | | :c2cb | | setlocal | | set "f=%~1" | | set "f=%f:\=/%" | | set "f=%f: =r%" | | mshta "javascript:'<script language="vbscript">moveto screen.width,0:document.write Replace("^<imgrid=""x""rsrc=""%f%""^>","r",chr(32)):with document.body.createControlRange:.add x:.execCommand "Copy":end with:close</script>'" | | goto :eofCOPY |
——————————————————————————————————
Update 2009-4-24 14:20
优化了代码(参考7L代码) | @echo off | | call :c2cb "%ProgramFiles%\microsoft frontpage" | | exit /b | | | | ::Copy2ClipBoard | | :c2cb | | setlocal | | set "f=%~1" | | set "f=%f:\\=\%" | | set "f=%f:\=\\%" | | mshta "javascript:moveTo(screen.width,0);document.write('<img id=\'x\' src=\'%f%\'>');i=document.body.createControlRange();i.add(x);i.execCommand('copy');close()" | | goto :eofCOPY |
|