一直习惯用.BAT处理启动数据库 或 停止运行金蝶K/3系统,最近 卡巴斯基 杀毒程序发现 木马,进行了全盘杀毒。偶然一天,发现.bat一闪而过,数据库并没有启动,刚开始时没在意,用其他方法启动。

  今早想解决这个问题。

  过程如下:

  1)重新编写一个简单.bat文件,发现不能运行

  2)BAIDU "WIN7 批处理不能运行" -- 没找到合适的方案

  3)回忆BAT运行模式,运行CMD,发现与 .BAT同样的问题,明白问题所在, 是CMD.EXE出问题了

  4)找到SYSTEM32下的CMD.EXE,双击,同样问题;复制其他目录,重命名,双击,问题还是一样;再查看CMD.EXE 的日期,与其他执行文件都同样为 2009-?-?,意味着这个文件没被损坏, 那是什么原因呢?

  5)BAIDU "win7 cmd不能运行", 找到一个方法:

  CMD命令窗口在一些特殊情况时我们会用到,如PING下看网络通不通。在CMD窗口里运行命令如磁盘格式转换,在开始运行输入CMD回车后,CMD命令黑框框出来闪一下就消失不见了的问题可以参考下下面的解决方法。

  一、首先查看C:\WINDOWS\SYSTEM32下的CMD.EXE是否存在,文件日期是否正常;

  检测结果为正常,与其他系统文件日期相同,应该不是这个问题。

  二、再查看系统的环境变量,path是否包含如下路径:%SystemRoot%\system32;%SystemRoot%;

  查看后发现存在(如果不存在就需加上)

  三、看来还不是在上面的两个常见问题,应该是注册表被修改过。最后终于找到了解决办法:

  注册表:

  HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun里的值清空,不能是空格哦!(就是没有数值,而一闪而过可能是EXIST,把他清除即可。)

  四,如果还是不行就用 cmd /k 来试试吧,例如在“运行”窗口中输入“cmd /k ipconfig /all” 。

  直接使用方法三:修改注册表:

  HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun里的值清空

  即可见效,原来是注册表被修改了, 被什么东东修改的呢?