Obsolete Members for QProcess

以下成員源於類 QProcess 已過時。 提供它們是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它們。

公共函數

(obsolete) QStringList environment () const
(obsolete) Q_PID pid () const
(obsolete) QProcess::ProcessChannelMode readChannelMode () const
(obsolete) void setEnvironment (const QStringList & environment )
(obsolete) void setReadChannelMode (QProcess::ProcessChannelMode mode )
(obsolete) void start (const QString & command , QIODevice::OpenMode mode = ReadWrite)

信號

(obsolete) void error (QProcess::ProcessError error )
(obsolete) void finished (int exitCode )

靜態公共成員

(obsolete) int execute (const QString & command )
(obsolete) bool startDetached (const QString & command )

成員函數文檔編製

[signal] void QProcess:: error ( QProcess::ProcessError error )

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

使用 errorOccurred () 代替。

注意: 信號 error 在此類中被重載。通過使用函數指針句法連接到此信號,Qt 提供用於獲得如此範例展示的函數指針的方便幫助程序:

connect(process, QOverload<QProcess::ProcessError>::of(&QProcess::error),
    [=](QProcess::ProcessError error){ /* ... */ });
					

[signal] void QProcess:: finished ( int exitCode )

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

這是重載函數。

Use finished(int exitCode , QProcess::ExitStatus status) instead.

注意: 信號 finished 在此類中被重載。通過使用函數指針句法連接到此信號,Qt 提供用於獲得如此範例展示的函數指針的方便幫助程序:

connect(process, QOverload<int>::of(&QProcess::finished),
    [=](int exitCode){ /* ... */ });
					

QStringList QProcess:: environment () const

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

返迴環境從 QProcess will pass to its child process, or an empty QStringList if no environment has been set using setEnvironment ()。若沒有設置環境,將使用調用進程的環境。

另請參閱 processEnvironment (), setEnvironment (),和 systemEnvironment ().

[static] int QProcess:: execute (const QString & command )

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

這是重載函數。

啓動程序 command in a new process, waits for it to finish, and then returns the exit code.

自變量處理分彆等同 start () 重載。

之後 command 字符串被拆分並取消引號,此函數的行為像接受字符串列錶作為自變量的重載。

另請參閱 start () 和 splitCommand ().

Q_PID QProcess:: pid () const

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

使用 processId () 代替。

返迴正在運行進程的本機進程標識符,若可用。若目前沒有進程正在運行, 0 被返迴。

注意: 不像 processId (), pid() returns an integer on Unix and a pointer on Windows.

另請參閱 Q_PID and processId ().

QProcess::ProcessChannelMode QProcess:: readChannelMode () const

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

Returns the read channel mode of the QProcess . This function is equivalent to processChannelMode ()

另請參閱 setReadChannelMode () 和 processChannelMode ().

void QProcess:: setEnvironment (const QStringList & environment )

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

Sets the environment that QProcess will pass to the child process. The parameter environment is a list of key=value pairs.

例如,以下代碼添加環境變量 TMPDIR :

QProcess process;
QStringList env = QProcess::systemEnvironment();
env << "TMPDIR=C:\\MyApp\\temp"; // Add an environment variable
process.setEnvironment(env);
process.start("myapp");
					

注意: This function is less efficient than the setProcessEnvironment () 函數。

另請參閱 environment (), setProcessEnvironment (),和 systemEnvironment ().

void QProcess:: setReadChannelMode ( QProcess::ProcessChannelMode mode )

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

使用 setProcessChannelMode ( mode ) 代替。

另請參閱 readChannelMode () 和 setProcessChannelMode ().

void QProcess:: start (const QString & command , QIODevice::OpenMode mode = ReadWrite)

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

這是重載函數。

啓動命令 command 按新進程。 OpenMode 被設為 mode .

command 是包含程序名稱及其自變量的單文本字符串。自變量由一個或多個空格分隔。例如:

QProcess process;
process.start("del /s *.txt");
// same as process.start("del", QStringList() << "/s" << "*.txt");
...
					

必須引用包含空格的自變量纔能被正確提供給新進程。例如:

QProcess process;
process.start("dir \"My Documents\"");
					

文字引號在 command 字符串由 3 引號錶示。例如:

QProcess process;
process.start("dir \"Epic 12\"\"\" Singles\"");
					

之後 command 字符串被拆分並取消引號,此函數的行為像接受字符串列錶作為自變量的重載。

可以禁用此重載通過定義 QT_NO_PROCESS_COMBINED_ARGUMENT_START when you compile your applications. This can be useful if you want to ensure that you are not splitting arguments unintentionally, for example. In virtually all cases, using the other overload is the preferred method.

在將命令行自變量傳遞給子進程的本機係統 API 使用單字符串的 Windows 操作係統,可以設想無法傳遞命令行憑藉 QProcess 的基於列錶的可移植 API。在這些罕見情況下,需要使用 setProgram () 和 setNativeArguments () 而不是此函數。

另請參閱 splitCommand ().

[static] bool QProcess:: startDetached (const QString & command )

此函數已過時。提供它是為使舊源代碼能繼續工作。強烈建議不要在新代碼中使用它。

此函數重載 startDetached()。

啓動命令 command 按新進程中,並與之分離。返迴 true 當成功時;否則返迴 false .

自變量處理分彆等同 start () 重載。

之後 command 字符串被拆分並取消引號,此函數的行為像接受字符串列錶作為自變量的重載。

另請參閱 start (const QString &command, QIODevice::OpenMode mode) and splitCommand ().