Alternate e697dbe9c5997e35395fe158628dd8c5209481da
for Visual Studio 2022 and Windows 11.
読み取り中…
検索中…
一致する文字列を見つけられません
alt::Process クラス

プロセスに関するWindowsAPIを集約したクラス [詳解]

#include <Process.h>

alt::Process の継承関係図
alt::WindowsLibrary

公開メンバ関数

APIENTRY Process ()
 コンストラクタ
 
APIENTRY ~Process ()
 デストラクタ
 
BOOL APIENTRY Create (LPCTSTR lpctszApplicationName, LPTSTR lptszCommandLine, LPCTSTR lpctszCurrentDirectory=NULL)
 プロセスの作成
 
BOOL APIENTRY CreateAsUser ()
 
BOOL APIENTRY CreateWithLogon ()
 
DWORD APIENTRY GetExitCode () const
 プロセス終了時の終了コード取得
 
HANDLE APIENTRY GetProcessHandle () const
 プロセスハンドルの取得
 
HANDLE APIENTRY GetStdErr () const
 標準エラーハンドルの取得
 
HANDLE APIENTRY GetStdIn () const
 標準入力ハンドルの取得
 
HANDLE APIENTRY GetStdOut () const
 標準出力ハンドルの取得
 
DWORD APIENTRY Peek (LPVOID lpvBuf, DWORD dwSize) const
 プロセス出力内容の読み込み
 
DWORD APIENTRY Read (LPVOID lpvBuf, DWORD dwSize) const
 プロセス出力内容の読み込み
 
VOID APIENTRY SetConsoleInfo (DWORD dwX, DWORD dwY, DWORD dwWidth, DWORD dwHeight, DWORD dwXChars, DWORD dwYChars)
 起動するプロセスのコンソール位置を設定
 
BOOL APIENTRY SetPriority (Priority priority) const
 優先度の設定
 
VOID APIENTRY SetTitle (LPTSTR lptszConsoleTitle)
 コンソールタイトルの設定
 
VOID APIENTRY SetWindowInfo (DWORD dwX, DWORD dwY, DWORD dwWidth, DWORD dwHeight, WORD wShowWindow=SW_NORMAL)
 起動するプロセスのウィンドウ位置を設定
 
BOOL APIENTRY Terminate () const
 プロセスの強制終了
 
DWORD APIENTRY Wait (DWORD dwTime=INFINITE) const
 プロセス終了の待機
 
DWORD APIENTRY Write (LPVOID lpvBuf, DWORD dwSize) const
 プロセス入力への書き込み
 
- 基底クラス alt::WindowsLibrary に属する継承公開メンバ関数
APIENTRY WindowsLibrary ()
 コンストラクタ
 
virtual APIENTRY ~WindowsLibrary ()
 デストラクタ
 
virtual DWORD APIENTRY GetErrNo () const
 WindowsAPIのエラー値を取得します。
 
virtual VOID APIENTRY SetErrNo ()
 WINAPIエラーの情報を設定します。
 

非公開メンバ関数

BOOL ConnectHandles ()
 

非公開変数類

DWORD _dwCreationFlags
 
PROCESS_INFORMATION _pi
 
Pipe _pipeError
 
Pipe _pipeRead
 
Pipe _pipeWrite
 
STARTUPINFO _si
 

その他の継承メンバ

- 基底クラス alt::WindowsLibrary に属する継承限定公開変数類
DWORD _dwErrorNo
 

詳解

プロセスに関するWindowsAPIを集約したクラス

参照
https://docs.microsoft.com/en-us/windows/win32/ProcThread/creating-a-child-process-with-redirected-input-and-output

Process.h40 行目に定義があります。

構築子と解体子

◆ Process()

Process::Process ( )

コンストラクタ

Process.cpp12 行目に定義があります。

参照先 _dwCreationFlags, _pi, _si.

◆ ~Process()

Process::~Process ( )

デストラクタ

Process.cpp21 行目に定義があります。

参照先 _pi.

関数詳解

◆ ConnectHandles()

BOOL Process::ConnectHandles ( )
private

◆ Create()

BOOL Process::Create ( LPCTSTR  lpctszApplicationName,
LPTSTR  lptszCommandLine,
LPCTSTR  lpctszCurrentDirectory = NULL 
)

プロセスの作成

引数
lpctszApplicationNameモジュール名
lptszCommandLineコマンドライン
lpctszCurrentDirectory実行時カレントディレクトリ
戻り値
BOOL
戻り値
TRUE(成功)
FALSE(失敗)

Process.cpp27 行目に定義があります。

参照先 _dwCreationFlags, _pi, _si, ConnectHandles().

参照元 WindowsLibraryTest::TEST_CLASS().

◆ CreateAsUser()

BOOL Process::CreateAsUser ( )

Process.cpp68 行目に定義があります。

◆ CreateWithLogon()

BOOL Process::CreateWithLogon ( )

Process.cpp74 行目に定義があります。

◆ GetExitCode()

DWORD Process::GetExitCode ( ) const

プロセス終了時の終了コード取得

戻り値
DWORD 終了コード

Process.cpp80 行目に定義があります。

参照先 _pi.

参照元 WindowsLibraryTest::TEST_CLASS().

◆ GetProcessHandle()

HANDLE APIENTRY alt::Process::GetProcessHandle ( ) const
inline

プロセスハンドルの取得

戻り値
HANDLE

Process.h108 行目に定義があります。

参照元 SetPriority().

◆ GetStdErr()

HANDLE APIENTRY alt::Process::GetStdErr ( ) const
inline

標準エラーハンドルの取得

戻り値
HANDLE

Process.h120 行目に定義があります。

◆ GetStdIn()

HANDLE APIENTRY alt::Process::GetStdIn ( ) const
inline

標準入力ハンドルの取得

戻り値
HANDLE

Process.h112 行目に定義があります。

◆ GetStdOut()

HANDLE APIENTRY alt::Process::GetStdOut ( ) const
inline

標準出力ハンドルの取得

戻り値
HANDLE

Process.h116 行目に定義があります。

◆ Peek()

DWORD Process::Peek ( LPVOID  lpvBuf,
DWORD  dwSize 
) const

プロセス出力内容の読み込み

引数
lpvBuf読み込みバッファ
dwSizeバッファサイズ
戻り値
DWORD 読み込みサイズ

Process.cpp132 行目に定義があります。

参照先 _pipeRead, alt::Pipe::Peek().

参照元 WindowsLibraryTest::TEST_CLASS().

◆ Read()

DWORD Process::Read ( LPVOID  lpvBuf,
DWORD  dwSize 
) const

プロセス出力内容の読み込み

引数
lpvBuf読み込みバッファ
dwSizeバッファサイズ
戻り値
DWORD 読み込みサイズ

Process.cpp137 行目に定義があります。

参照先 _pipeRead, alt::Pipe::Read().

参照元 WindowsLibraryTest::TEST_CLASS().

◆ SetConsoleInfo()

VOID Process::SetConsoleInfo ( DWORD  dwX,
DWORD  dwY,
DWORD  dwWidth,
DWORD  dwHeight,
DWORD  dwXChars,
DWORD  dwYChars 
)

起動するプロセスのコンソール位置を設定

引数
dwXX座標
dwYY座標
dwWidthウィンドウの幅
dwHeightウィンドウの高さ
dwXChars横方向キャラクタ数
dwYChars縦方向キャラクタ数

Process.cpp106 行目に定義があります。

参照先 _dwCreationFlags, _si.

◆ SetPriority()

BOOL Process::SetPriority ( Priority  priority) const

優先度の設定

引数
priority設定する優先度
戻り値
BOOL
戻り値
TRUE(成功)
FALSE(失敗)

Process.cpp127 行目に定義があります。

参照先 GetProcessHandle().

◆ SetTitle()

VOID Process::SetTitle ( LPTSTR  lptszConsoleTitle)

コンソールタイトルの設定

引数
lptszConsoleTitleコンソールタイトル

Process.cpp122 行目に定義があります。

参照先 _si.

参照元 WindowsLibraryTest::TEST_CLASS().

◆ SetWindowInfo()

VOID Process::SetWindowInfo ( DWORD  dwX,
DWORD  dwY,
DWORD  dwWidth,
DWORD  dwHeight,
WORD  wShowWindow = SW_NORMAL 
)

起動するプロセスのウィンドウ位置を設定

引数
dwXX座標
dwYY座標
dwWidthウィンドウの幅
dwHeightウィンドウの高さ
wShowWindowウィンドウ表示スタイル { SW_MAXIMIZE, SW_MINIMIZE, etc }

Process.cpp93 行目に定義があります。

参照先 _si.

参照元 WindowsLibraryTest::TEST_CLASS().

◆ Terminate()

BOOL Process::Terminate ( ) const

プロセスの強制終了

戻り値
BOOL
戻り値
TRUE(成功)
FALSE(失敗)

Process.cpp88 行目に定義があります。

参照先 _pi.

参照元 WindowsLibraryTest::TEST_CLASS().

◆ Wait()

DWORD Process::Wait ( DWORD  dwTime = INFINITE) const

プロセス終了の待機

引数
dwTime終了タイムアウト時間(ms)
戻り値
DWORD
戻り値
WAIT_OBJECT_0正常終了(プロセス終了)
WAIT_

Process.cpp63 行目に定義があります。

参照先 _pi.

参照元 WindowsLibraryTest::TEST_CLASS().

◆ Write()

DWORD Process::Write ( LPVOID  lpvBuf,
DWORD  dwSize 
) const

プロセス入力への書き込み

引数
lpvBuf書き込みバッファ
dwSizeバッファサイズ
戻り値
DWORD 書き込みサイズ

Process.cpp142 行目に定義があります。

参照先 _pipeWrite, alt::Pipe::Write().

参照元 WindowsLibraryTest::TEST_CLASS().

メンバ詳解

◆ _dwCreationFlags

DWORD alt::Process::_dwCreationFlags
private

Process.h155 行目に定義があります。

参照元 Process(), Create(), SetConsoleInfo().

◆ _pi

PROCESS_INFORMATION alt::Process::_pi
private

Process.h150 行目に定義があります。

参照元 Process(), ~Process(), Create(), GetExitCode(), Terminate(), Wait().

◆ _pipeError

Pipe alt::Process::_pipeError
private

Process.h154 行目に定義があります。

参照元 ConnectHandles().

◆ _pipeRead

Pipe alt::Process::_pipeRead
private

Process.h152 行目に定義があります。

参照元 ConnectHandles(), Peek(), Read().

◆ _pipeWrite

Pipe alt::Process::_pipeWrite
private

Process.h153 行目に定義があります。

参照元 ConnectHandles(), Write().

◆ _si

STARTUPINFO alt::Process::_si
private

Process.h151 行目に定義があります。

参照元 Process(), ConnectHandles(), Create(), SetConsoleInfo(), SetTitle(), SetWindowInfo().


このクラス詳解は次のファイルから抽出されました: