- 主题:Re: 获取当前文件或目录的路径的DOS命令该怎么写?
【 在 zanzhang 的大作中提到: 】
: 这个只能显示批处理文件当前所在的路径
: 需要的功能是:在Windows窗口中点击任意一个文件夹或任意一个文件,
: 然后执行bat文件时,
: ...................
没交代清楚啊,然后 怎么 执行bat文件 的?
--
FROM 123.112.66.*
【 在 zanzhang 的大作中提到: 】
: windouws窗口中选中任意一个文件后,点击右键出现弹出菜单,由某个菜单项发起执行
: bat 文件的请求。
: 此时需要获取该 被选中文件的绝对路径。
: ...................
修改 注册表,在右键菜单下 传递路径参数给 批处理 即可:
打开注册表的 HKEY_CLASSES_ROOT项;
对*目录进行配置, 可应用到所有的文件类型。如只想配置某个文本文件的右键打开方式, 那可找到.txt目录;
点开*, 右击 shell, 新建->项, 再给个名字;
再在此项下新建项command;
在command项的右边窗口,设定值为:"你的批处理全路径.bat" "%1"
在批处理中用 %1 就可以接受被选中文件的全路径了。
--
FROM 123.112.66.*
点开*, 右击 shell, 新建->项, 再给个名字;
再在此项下新建项command;
==============================
这一步,就是在左侧的那个我自己的新建的项目上点击右键,然后再 选择:新建-项
,然后再将此项目的名称 命名为 command ?
==============================
对的。
1. 点开*, 右击 shell, 新建->项, 改名为 [备份此目录或文件]
2. 在左侧的新建项目 [备份此目录或文件]上点击右键,然后再 选择:新建-项 ,然后再将此项目的名称 命名为 command
3. 点击 2.的command, 双击 右边 的 [默认]项,在 数值数据栏内 输入:
"全路径\批处理程序backupfiles.bat" "%1"
4.在 批处理程序backupfiles里,就可以 通过 %1 获取传递过来的 被选中文件/夹的 全路径
--
FROM 123.112.66.*
【 在 zanzhang 的大作中提到: 】
: 你这个方法确实解决了被选中的文件名的路径作为参数传递到bat 文件中去,
: 但是这个被选中的文件或目录好像是被锁定了
: 我在bat中接下来的行中,
: ...................
有不少方法都可以,不过多是要调用vbscript。
最简单的以管理员权限运行bat文件的方式:
创建该bat的快捷方式,右键快捷方式–>属性–>高级–>选中 用管理员身份运行。
并且,把注册表的该command的 运行路径\bat 改为 bat快捷方式。。。。
--
FROM 123.112.66.*
【 在 zanzhang 的大作中提到: 】
: 同一个文件
: 现在用 copy可以拷贝
: 在用Xcopy 命令之前,先尝试了一下 Xcopy/? 发现是正常的
: ...................
嗯... 可以先确认一下 该命令行是否 正确?
如果是 在批处理中,可以 echo 出来,pause 暂停,看看...
比如 路径 前后少了 "" , /Y 开关等等
--
FROM 123.112.66.*
我在 注册表中的 Command 中设置数值时,已经采用了两对括号把 参数1(也就是被选
中的文件的绝对路径)括起来了,
参数值如下:
"C:\Users\USER\AppData\Roaming\Microsoft\Windows\SendTo\bakupfiles.bat.lnk"
""%1""
================================
试过把 ""%1"" 改成 "%1" 么? 应该用一对括号
--
FROM 123.112.66.*