Qt QProcess赢得';VBScript失败时发生错误
我有一个VBScript,可以将Excel文件转换为制表符分隔的文本文件:Qt QProcess赢得';VBScript失败时发生错误,qt,signals,qprocess,Qt,Signals,Qprocess,我有一个VBScript,可以将Excel文件转换为制表符分隔的文本文件: format = -4158 Set objFSO = CreateObject("Scripting.FileSystemObject") src_file = objFSO.GetAbsolutePathName(Wscript.Arguments.Item(0)) dest_file = objFSO.GetAbsolutePathName(WScript.Arguments.Item(1)) Dim oEx
format = -4158
Set objFSO = CreateObject("Scripting.FileSystemObject")
src_file = objFSO.GetAbsolutePathName(Wscript.Arguments.Item(0))
dest_file = objFSO.GetAbsolutePathName(WScript.Arguments.Item(1))
Dim oExcel
Set oExcel = CreateObject("Excel.Application")
oExcel.DisplayAlerts = False
oExcel.ProtectedViewWindows.Open(src_file)
oExcel.ActiveProtectedViewWindow.Edit
Dim oBook
Set oBook = oExcel.Workbooks.Open(src_file)
oBook.Worksheets(5).Activate
oBook.SaveAs dest_file, format
oBook.Close False
oExcel.DisplayAlerts = True
oExcel.Quit
在Qt中,我使用wscript运行此代码,并将信号QProcess::ErrorOccurrent连接到lambda:
QObject::connect(&wscript, &QProcess::errorOccurred, [=](QProcess::ProcessError error)
{
qDebug() << "Error has occured";
});
QObject::connect(&wscript,&QProcess::error发生,[=](QProcess::ProcessError)
{
qDebug()只有当QProcess
本身有问题或正在运行的进程崩溃时才会发出Process::erroroccurrend
信号(请参见原因)
如果你想让你的VB脚本以某种方式通知你的应用程序错误,那么你的脚本必须使用非零退出代码,该代码可以通过读取,或者写入其标准错误流,该错误流可以捕获并读取信号。只有当QProcess
本身已发生错误时,才会发出Process::erroroccurrend
信号问题或正在运行的进程是否崩溃(请参阅原因)
如果你想让你的VB脚本以某种方式通知你的应用程序错误,那么你的脚本必须使用非零退出代码,该代码可以通过读取,或者写入标准错误流,该错误流可以捕获并读取信号