Alternate e697dbe9c5997e35395fe158628dd8c5209481da
for Visual Studio 2022 and Windows 11.
読み取り中…
検索中…
一致する文字列を見つけられません
Process.h
[詳解]
1// ----------------------------------------------------------------------------
6
7#pragma once
8
9#include "WindowsLibrary.h"
10#include "Pipe.h"
11
12namespace alt
13{
16 enum class Priority
17 {
19 Realtime = REALTIME_PRIORITY_CLASS,
20
22 High = HIGH_PRIORITY_CLASS,
23
25 AboveNormal = ABOVE_NORMAL_PRIORITY_CLASS,
26
28 Normal = NORMAL_PRIORITY_CLASS,
29
31 BelowNormal = BELOW_NORMAL_PRIORITY_CLASS,
32
34 Idle = IDLE_PRIORITY_CLASS
35 };
36
41 {
42 public:
44 APIENTRY Process ();
45
47 APIENTRY ~Process ();
48
56 BOOL APIENTRY Create (
57 LPCTSTR lpctszApplicationName,
58 LPTSTR lptszCommandLine,
59 LPCTSTR lpctszCurrentDirectory = NULL);
60
66 DWORD APIENTRY Wait (DWORD dwTime = INFINITE) const;
67
68 BOOL APIENTRY CreateAsUser ();
69 BOOL APIENTRY CreateWithLogon ();
70
73 DWORD APIENTRY GetExitCode () const;
74
79 BOOL APIENTRY Terminate () const;
80
87 VOID APIENTRY SetWindowInfo (
88 DWORD dwX, DWORD dwY, DWORD dwWidth, DWORD dwHeight,
89 WORD wShowWindow = SW_NORMAL);
90
98 VOID APIENTRY SetConsoleInfo (
99 DWORD dwX, DWORD dwY, DWORD dwWidth, DWORD dwHeight, DWORD dwXChars,
100 DWORD dwYChars);
101
104 VOID APIENTRY SetTitle (LPTSTR lptszConsoleTitle);
105
108 HANDLE APIENTRY GetProcessHandle () const { return _pi.hProcess; };
109
112 HANDLE APIENTRY GetStdIn () const { return _si.hStdInput; };
113
116 HANDLE APIENTRY GetStdOut () const { return _si.hStdOutput; };
117
120 HANDLE APIENTRY GetStdErr () const { return _si.hStdError; };
121
127 BOOL APIENTRY SetPriority (Priority priority) const;
128
133 DWORD APIENTRY Peek (LPVOID lpvBuf, DWORD dwSize) const;
134
139 DWORD APIENTRY Read (LPVOID lpvBuf, DWORD dwSize) const;
140
145 DWORD APIENTRY Write (LPVOID lpvBuf, DWORD dwSize) const;
146
147 private:
148 BOOL ConnectHandles ();
149
150 PROCESS_INFORMATION _pi;
151 STARTUPINFO _si;
156 };
157}
#define DLL_DECLSPEC
Definition: framework.h:17
パイプに関するWindowsAPIを集約したクラス
WindowsAPIを集約したプロジェクトファイル
パイプに関するWindowsAPIを集約したクラス
Definition: Pipe.h:16
プロセスに関するWindowsAPIを集約したクラス
Definition: Process.h:41
STARTUPINFO _si
Definition: Process.h:151
HANDLE APIENTRY GetProcessHandle() const
プロセスハンドルの取得
Definition: Process.h:108
HANDLE APIENTRY GetStdErr() const
標準エラーハンドルの取得
Definition: Process.h:120
PROCESS_INFORMATION _pi
Definition: Process.h:150
HANDLE APIENTRY GetStdIn() const
標準入力ハンドルの取得
Definition: Process.h:112
Pipe _pipeError
Definition: Process.h:154
Pipe _pipeRead
Definition: Process.h:152
DWORD _dwCreationFlags
Definition: Process.h:155
HANDLE APIENTRY GetStdOut() const
標準出力ハンドルの取得
Definition: Process.h:116
Pipe _pipeWrite
Definition: Process.h:153
プロジェクト共通基底クラス
Definition: DBLibrary.h:12
Priority
プロセスの優先度設定値
Definition: Process.h:17
@ High
優先:タイムクリティカル
@ AboveNormal
通常より少し上
@ Normal
通常:一般的なプロセス
@ Realtime
リアルタイム
@ BelowNormal
通常より少し下
@ Idle
アイドル:システムがアイドル状態の時に実行される。