X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..820b49cdbf6fa6e6aac6bbb66e84ea9f5f5f745d:/docs/latex/wx/process.tex diff --git a/docs/latex/wx/process.tex b/docs/latex/wx/process.tex index 9438d0433e..78908e4820 100644 --- a/docs/latex/wx/process.tex +++ b/docs/latex/wx/process.tex @@ -1,6 +1,6 @@ \section{\class{wxProcess}}\label{wxprocess} -The objects of this class are used in conjunction with +The objects of this class are used in conjunction with the \helpref{wxExecute}{wxexecute} function. When a wxProcess object is passed to wxExecute(), its \helpref{OnTerminate()}{wxprocessonterminate} virtual method is called when the process terminates. This allows the program to be @@ -23,6 +23,9 @@ to call its \helpref{Redirect}{wxprocessredirect} method before passing it to the streams corresponding to the child process stdandard output, input and error output respectively. +\perlnote{In wxPerl this class has an additional {\tt Destroy} method, +for explicit destruction.} + \wxheading{Derived from} \helpref{wxEvtHandler}{wxevthandler} @@ -96,7 +99,7 @@ of the child process. \constfunc{wxInputStream* }{GetInputStream}{\void} -It returns a output stream corresponding to the standard output stream of the +It returns an input stream corresponding to the standard output stream of the subprocess. If it is NULL, you have not turned on the redirection. See \helpref{wxProcess::Redirect}{wxprocessredirect}. @@ -108,6 +111,68 @@ It returns an output stream correspoding to the input stream of the subprocess. If it is NULL, you have not turned on the redirection. See \helpref{wxProcess::Redirect}{wxprocessredirect}. +\membersection{wxProcess::Kill}\label{wxprocesskill} + +\func{static wxKillError}{Kill}{\param{int}{ pid}, \param{wxSignal}{ signal = wxSIGNONE}} + +Send the specified signal to the given process. Possible signal values are: + +\begin{verbatim} +enum wxSignal +{ + wxSIGNONE = 0, // verify if the process exists under Unix + wxSIGHUP, + wxSIGINT, + wxSIGQUIT, + wxSIGILL, + wxSIGTRAP, + wxSIGABRT, + wxSIGEMT, + wxSIGFPE, + wxSIGKILL, // forcefully kill, dangerous! + wxSIGBUS, + wxSIGSEGV, + wxSIGSYS, + wxSIGPIPE, + wxSIGALRM, + wxSIGTERM // terminate the process gently +}; +\end{verbatim} + +{\tt wxSIGNONE}, {\tt wxSIGKILL} and {\tt wxSIGTERM} have the same meaning +under both Unix and Windows but all the other signals are equivalent to +{\tt wxSIGTERM} under Windows. + +Returns the element of {\tt wxKillError} enum: + +\begin{verbatim} +enum wxKillError +{ + wxKILL_OK, // no error + wxKILL_BAD_SIGNAL, // no such signal + wxKILL_ACCESS_DENIED, // permission denied + wxKILL_NO_PROCESS, // no such process + wxKILL_ERROR // another, unspecified error +}; +\end{verbatim} + +\wxheading{See also} + +\helpref{wxProcess::Exists}{wxprocessexists},\rtfsp +\helpref{wxKill}{wxkill},\rtfsp +\helpref{Exec sample}{sampleexec} + +\membersection{wxProcess::Exists}\label{wxprocessexists} + +\func{static bool}{Exists}{\param{int}{ pid}} + +Returns {\tt TRUE} if the given process exists in the system. + +\wxheading{See also} + +\helpref{wxProcess::Kill}{wxprocesskill},\rtfsp +\helpref{Exec sample}{sampleexec} + \membersection{wxProcess::OnTerminate}\label{wxprocessonterminate} \constfunc{void}{OnTerminate}{\param{int}{ pid}, \param{int}{ status}} @@ -123,7 +188,7 @@ It raises a wxWindows event when it isn't overridden. \func{void}{Redirect}{\void} -It turns on the redirection, wxExecute will try to open a couple of pipes +Turns on redirection. wxExecute will try to open a couple of pipes to catch the subprocess stdio. The caught input stream is returned by GetOutputStream() as a non-seekable stream. The caught output stream is returned by GetInputStream() as a non-seekable stream.