批量~dp0不能与管理员权限一起使用?

时间:2013-04-30 13:37:52

标签: windows-7 batch-file cmd admin-rights

我有一个批处理文件,如下所示:

set OWNPATH = %~dp0

for /r %OWNPATH% %%F in (*.ocx) do ( echo %%F )

当我启动它时,它正确地列出了同一文件夹中的所有OCX文件,但是列出了

中的OCX文件
  

C:\ Windows \ System32下

当我右键单击它并选择“以管理员身份运行”时。

我该如何解决?该脚本通常需要管理员权限。

1 个答案:

答案 0 :(得分:3)

您的set设置了%OWNPATH %(请注意OWNPATH=之间的空格)。因此,%OWNPATH%(没有空格)未定义,for /r %OWNPATH% %%F ...扩展为for /r %%Ffor循环最终查找当前目录(即C: \ Windows \ System32以管理员身份运行时。)

养成做这样的作业的习惯,以避免这个常见的错误:

set "OWNPATH=%~dp0"