Foxtable(狐表)用户栏目专家坐堂 → 运行bat文件不起作用


  共有1863人关注过本帖树形打印复制链接

主题:运行bat文件不起作用

帅哥哟,离线,有人找我吗?
mxl810823
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:355 积分:3033 威望:0 精华:0 注册:2018/2/27 17:32:00
运行bat文件不起作用  发帖心情 Post By:2023/11/27 10:59:00 [只看该作者]

@echo off
xcopy "E:\FOXTABLE项目\206\LCM厂播音" "F:\LCM厂播音" /s/i/y
exit
先是做了个Bat文件"fox.bat",内容如上,然后在WINDOWS系统里加个定时任务运行BAT文件,我的目的是想定期自动运行拷贝项目文件到另一个地方保存,但是任务执行后没有拷贝任何文件。在CMD.EXE里直接运行“xcopy "E:\FOXTABLE项目\206\LCM厂播音" "F:\LCM厂播音" /s/i/y”是可以的,之后我在FT里调用也是一样的没有拷贝任何文件,不知道原因出在哪里,调用代码如下:

Dim Proc As New Process '定义一个新的Process
Proc.File =
"E:\fox.bat" '指定要打开的文件

Proc.Start()


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110740 积分:563626 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/27 11:08:00 [只看该作者]

Dim Proc As New Process '定义一个新的Process
Dim batPath As String  = "E:\fox.bat" '指定要打开的文件
Proc.StartInfo.WorkingDirectory = "E:\"
Proc.StartInfo.FileName = batPath
Proc.StartInfo.CreateNoWindow = False
Proc.Start()

 回到顶部
帅哥哟,离线,有人找我吗?
mxl810823
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:355 积分:3033 威望:0 精华:0 注册:2018/2/27 17:32:00
  发帖心情 Post By:2023/11/27 11:29:00 [只看该作者]

Dim Proc As New Process '定义一个新的Process
Dim batPath As String  = "E:\fox.bat" '指定要打开的文件
Proc.StartInfo.WorkingDirectory = "E:\"
Proc.StartInfo.FileName = batPath
Proc.StartInfo.CreateNoWindow = False
Proc.Start()
运行这个也是一闪而过,没有拷贝文件呢

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110740 积分:563626 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/27 11:42:00 [只看该作者]

都加了exit执行完肯定就退出了,没有复制可能没有权限

试试

Dim Proc As New Process '定义一个新的Process
Dim batPath As String  = "E:\fox.bat" '指定要打开的文件
Proc.StartInfo.WorkingDirectory = "E:\"
Proc.StartInfo.FileName = batPath
Proc.StartInfo.Verb = "runas"
Proc.Start()

 回到顶部
帅哥哟,离线,有人找我吗?
mxl810823
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:355 积分:3033 威望:0 精华:0 注册:2018/2/27 17:32:00
  发帖心情 Post By:2023/11/27 12:48:00 [只看该作者]

试了试
Dim Proc As New Process '定义一个新的Process
Dim batPath As String  = "E:\fox.bat" '指定要打开的文件
Proc.StartInfo.WorkingDirectory = "E:\"
Proc.StartInfo.FileName = batPath
Proc.StartInfo.Verb = "runas"
Proc.Start()
还是一闪而过,在BAT文件里把exit删除了也是一闪而过没有复制文件

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110740 积分:563626 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/27 13:27:00 [只看该作者]

中文问题,把bat文件另存为ANSI编码的文件

@echo off
xcopy "E:\FOXTABLE项目\206\LCM厂播音" "F:\LCM厂播音" /s/i/y
pause

代码
Dim Proc As New Process '定义一个新的Process
Dim batPath As String  = "E:\fox.bat" '指定要打开的文件
Proc.StartInfo.WorkingDirectory = "E:\"
Proc.StartInfo.FileName = batPath
Proc.StartInfo.CreateNoWindow = False
Proc.Start()

 回到顶部
帅哥哟,离线,有人找我吗?
mxl810823
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:355 积分:3033 威望:0 精华:0 注册:2018/2/27 17:32:00
  发帖心情 Post By:2023/11/27 14:10:00 [只看该作者]

保存为ANSI编码可以了,谢谢

 回到顶部