我想知道在vb中怎样才能调用dos窗口,并且执行自己定义的命令
例如:
我想执行一个备份数据库的命令:“backup database test to disk='d:\test_db.bak'”
在dos 窗口下就应该输入:CALL isql -S SQLServerName -U sa -P -Q :“backup database test to disk='d:\test_db.bak'” -O "D:\test.log"请问在vb中是怎样直接实现的呢
例如:
我想执行一个备份数据库的命令:“backup database test to disk='d:\test_db.bak'”
在dos 窗口下就应该输入:CALL isql -S SQLServerName -U sa -P -Q :“backup database test to disk='d:\test_db.bak'” -O "D:\test.log"请问在vb中是怎样直接实现的呢
然后:shell 你的批处理
是生成一个.dat文件吗
这个文件里就写我要执行的语句?
bat 内容为:
isql -S SQLServerName -U sa -P -Q :“backup database test to disk='d:\test_db.bak'” -O "D:\test.log"
写在一行
或者shell "isql -S SQLServerName -U sa -P -Q :“backup database test to disk='d:\test_db.bak'” -O "D:\test.log"
写在一行
试一下 我没实验
bat 内容为:
isql -S SQLServerName -U sa -P -Q :“backup database test to disk='d:\test_db.bak'” -O "D:\test.log"
写在一行我试过了
strMsg = "CALL isql -S ZHANGSUNING -U sa -P -Q :""backup database zhang to disk='d:\zhang_db.bak'"" -O ""D:\test.log"""Open "d:\aaa.bat" For Output As #1
Write #1, strMsg
Close #1Shell "d:\aaa.bat", vbNormalFocus可是写到 d:\aaa.bat 里的东西被一个双引号引起来,不能执行,为什么啊?
怎样写文件才能不带引号呀?
知道了
把write 改成print 就好了
唉~~~
Command.Com没有Command.EXE,呵呵~~