我的nsis脚本中的以下行返回7:
ExecWait '"$mysqlfolder\bin\mysqldump" --user=$MySQLUser --password=$MysqlPassword --execute="tcm > D:\db_test.sql"' $2
我想知道它有什么问题。
答案 0 :(得分:1)
您确定退出代码不是来自mysqldump吗?您可以通过运行Process Monitor来验证这一点。
在这种情况下,问题可能是stdout重定向(>
),这种类型的重定向是在cmd.exe中实现的,所以除非--execute调用cmd.exe它不会起作用。
如果要捕获(“root”子进程的)输出,您有两个选择:
cmd.exe /C
作为命令行的前缀(如果需要支持Win9x,请使用ReadEnvStr“COMSPEC”)