Board logo

标题: [注册表类] [已解决]求助代码查错:添加注册表项实现创建右键菜单项获取当前目录文件列表 [打印本页]

作者: 网上邻居    时间: 2016-4-14 10:20     标题: [已解决]求助代码查错:添加注册表项实现创建右键菜单项获取当前目录文件列表

本帖最后由 网上邻居 于 2016-4-20 12:53 编辑
  1. Windows Registry Editor Version 5.00
  2. ;copy file list
  3. [HKEY_CLASSES_ROOT\Directory\shell\copyfileslist]
  4. @="获取文件列表"
  5. [HKEY_CLASSES_ROOT\Directory\shell\copyfileslist\command]
  6. @="cmd.exe /c dir \"%1\" /b /a:-d /o:n | clip"
  7. [HKEY_CLASSES_ROOT\Directory\Background\shell]
  8. [HKEY_CLASSES_ROOT\Directory\Background\shell\copyfileslist]
  9. @="获取文件列表"
  10. [HKEY_CLASSES_ROOT\Directory\Background\shell\copyfileslist\command]
  11. @="cmd.exe /c dir \"%1\" /b /a:-d /o:n | clip"
复制代码
Windows 7:
如果只在目录上右键,是能实现效果的,
如果在空白处上右键,就报下面的错误:
Explorer.EXE,该文件没有与之关联的程序来执行该操作,请安装一个程序,或者,如果已安装程序,请在“默认程序”控制面板中创建关联。

Windows 10 没有问题。
作者: 522235677    时间: 2016-4-14 21:06

上面你用文件夹这个是因为有个传递关系,把文件夹路径传给%1,所以才正常。
但是空白处右键没有这层关系啊,所以得用%cd%
作者: 网上邻居    时间: 2016-4-19 13:30

回复 2# 522235677


    如果是要传递%1和%cd%到一个.bat文件怎么破?
作者: 网上邻居    时间: 2016-4-19 16:10     标题: [已解决] 文件夹空白处单击鼠标右键,如何获取其路径传递到一个批处理中?

本帖最后由 网上邻居 于 2016-4-20 12:52 编辑

file.reg
  1. [HKEY_CLASSES_ROOT\Directory\Background\shell]
  2. [HKEY_CLASSES_ROOT\Directory\Background\shell\xfiles]
  3. @="文件命名操作"
  4. [HKEY_CLASSES_ROOT\Directory\Background\shell\xfiles\command]
  5. @="cmd.exe /c C:\\bat\\file.bat %1 \"%V\""
复制代码
file.bat
  1. set HandleDir=%1
  2. ……
复制代码
网友有说用%cd%,测试了一下,是不行的,
作者: Nsqs    时间: 2016-4-19 18:03

本帖最后由 Nsqs 于 2016-4-19 18:09 编辑

  1. %~dp0
复制代码

作者: happy886rr    时间: 2016-4-19 20:52

回复 4# 网上邻居
%~f1
作者: 网上邻居    时间: 2016-4-20 12:51

  1. [HKEY_CLASSES_ROOT\Directory\Background\shell]
  2. [HKEY_CLASSES_ROOT\Directory\Background\shell\xfiles]
  3. @="文件命名操作(&A)"
  4. [HKEY_CLASSES_ROOT\Directory\Background\shell\xfiles\command]
  5. @="cmd.exe /c C:\\bat\\file-bg.bat %cd% \"%V\""
复制代码
搞定,未按版规发帖,扣了我好多好多分。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2