cmd 找不到文件路径 ?



cmd 找不到文件路径 ?

首页 系统管理脚本 cmd 找不到 文件 路径
问题描述:
在win2kpro的 client 上,执行.bat和.cmd,提示“找不到文件路径”,检查regedit 中cmdfile open,也是 "%1" %* 。
其实这样的问题,在其他一些文件类型上也发生过,比如office的文档,autocad文档。一旦出现这样的问题,双击响应的文件类型,就提示“找不到文件路径”,但先启动程序,再打开就可以,是哪里出错导致了这样的问题呢?
分析:
一般来说,右键点击当前CMD文件默认动作或者双击事件是“打开”。执行regedit.exe,打开注册表编辑器确定cmdfile 子键下,open /command 都是对应的的执行命令,对比cmdfile 子键下的子键和键值是否和其它工作正常的机器上的内容完全一样。把open的命令改成REG_EXPAND_SZ类型且值为%SystemRoot%System32NOTEPAD.EXE %1看看双击是否可以用Notepad打开。 但这些步骤仍然没有能够找到问题所在。
我尝试用 Filemon和Regmon 来监控批处理的执行过程,看看双击CMD文件时系统访问了哪些注册表键和系统文件。这样,我们就可以跟踪查找问题。
(注:这两个工具,可以在这里获得 http://www.sysinternals.com/ntw2k/utilities.shtml
解决:
用filemon监控批处理的执行过程中,看到它居然首先寻找域用户 home folder上的cmd.exe 
我马上就想到问题的所在了,设定了域用户的home folder后,系统默认首要搜索路径会变成home folder,而不再是当前路径,而恰巧home folder上存在一个cmd.exe,而cmd shell 在win2kwinxp 中不支持 unc作为当前路径的,会提示出错,然后转到系统目录,而批处理所处的位置肯定不在系统目录,
故而会提示这样的错误。
那么剩下的事情就好办了,要么更改注册表 HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer
REG_DWORD  StartRunNoHOMEPATH 设定为 1
要么将home folder上的cmd.exe更名,或者移动到其他位置即可解决问题。




喜欢这篇文章吗?那就点击 订阅吧

首页| 评论 0 | 引用 1 | 编辑 按下键盘Ctrl+D会有惊喜发生
原文:cmd 找不到文件路径 ?
分类:[首页]>>[系统管理脚本]
原创: 活动目录SEO博客版权所有。转载时必须注明本声明,本文作者和链接。
作者: gnaw0725
链接:http://gnaw0725.blogbus.com/logs/4888581.html
时间:2004-12-22 19:05
收藏到: Yahoo书签 百度收藏 Google书签 QQ书签 天极网摘 新浪ViVi 365Key网摘 diglog 和讯网摘 博拉网 Del.icio.us POCO网摘 Windows Live

一篇日志:<<  XP SP2 Security Center(安全中心)已经可以检测到Symantec (赛门铁克)产品的状态
一篇日志:office 2007组件启动打开慢的问题  >>


『cmd 找不到文件路径 ? 我想说:』
 姓名: 
 网址: 
 

本页精品文章:cmd 找不到文件路径 ?
活动目录SEO博客公告
月流量突破 10 万,总流量突破170万,如果您对活动目录域网络管理也有心得,并且希望以此扩大自己影响力,只需要添加本站链接,然后将文章标题和链接在线留言给活动目录博客,活动目录博客将收录您的文章,并注明您的站点及链接。