Solution46
総合概要
名前空間
クラス
ファイル
ファイル一覧
ファイルメンバ
CProcess.h
[詳解]
1
//=============================================================================
2
/// @file
3
/// プロセスクラスヘッダファイル
4
///
5
/// プロセスクラスヘッダファイルです。
6
///
7
/// $Id: CProcess.h 245 2019-03-20 15:03:41Z admin $
8
/// $Date: 2019-03-21 00:03:41 +0900 (2019/03/21 (木)) $
9
/// $Author: admin $
10
///
11
/// @attention なし
12
13
#pragma once
14
#pragma managed( push, off )
15
16
//=============================================================================
17
// インクルードファイル
18
#include <
CSync.h
>
19
20
//=============================================================================
21
// 共通ライブラリ名前空間
22
namespace
LibCommon
{
23
//=========================================================================
24
/// プロセスクラス
25
///
26
/// プロセスクラスです。
27
///
28
/// @attention なし
29
///
30
class
LIB_COMMON_API
CProcess
:
public
CSync
{
31
//=====================================================================
32
// 構築子と解体子
33
public
:
34
//---------------------------------------------------------------------
35
/// コンストラクタ
36
///
37
/// コンストラクタです。
38
///
39
/// @param なし
40
/// @return なし
41
/// @attention なし
42
///
43
explicit
CProcess
() noexcept;
44
45
//---------------------------------------------------------------------
46
/// デストラクタ
47
///
48
/// デストラクタです。
49
///
50
/// @param なし
51
/// @return なし
52
/// @attention なし
53
///
54
virtual
~
CProcess
() noexcept;
55
56
//=====================================================================
57
// インライン公開関数
58
public
:
59
//---------------------------------------------------------------------
60
/// プロセスID取得関数
61
///
62
/// プロセスID取得関数です。
63
///
64
/// @param なし
65
/// @return プロセスID
66
/// @attention なし
67
///
68
inline
virtual
DWORD
GetProcessId
() const noexcept {
return
m_dwProcessId; }
69
70
//=====================================================================
71
// 公開関数
72
public
:
73
//---------------------------------------------------------------------
74
/// クローズ関数
75
///
76
/// クローズ関数です。
77
///
78
/// @param なし
79
/// @return なし
80
/// @attention オーバライド関数です。
81
///
82
virtual
void
Close() noexcept
override
;
83
84
//---------------------------------------------------------------------
85
/// リリース関数
86
///
87
/// リリース関数です。
88
///
89
/// @param なし
90
/// @return 実行結果
91
/// - true 成功
92
/// - false 失敗
93
/// @attention オーバライド関数です。
94
///
95
virtual
bool
Release() noexcept
override
;
96
97
//---------------------------------------------------------------------
98
/// 作成関数
99
///
100
/// 作成関数です。
101
///
102
/// @param[in] pszPath 実行ファイルパス
103
/// @param[in] pszArgument 引数文字列
104
/// @return 実行結果
105
/// - true 成功
106
/// - false 失敗
107
/// @attention なし
108
///
109
virtual
bool
Create(
wchar_t
const
* pszPath,
wchar_t
const
* pszArgument =
nullptr
) noexcept;
110
111
//---------------------------------------------------------------------
112
/// オープン関数
113
///
114
/// オープン関数です。
115
///
116
/// @param[in] dwProcessId プロセスID
117
/// @param[in] dwAccess アクセスフラグ
118
/// @return 実行結果
119
/// - true 成功
120
/// - false 失敗
121
/// @attention なし
122
///
123
virtual
bool
Open( DWORD dwProcessId, DWORD dwAccess = SYNCHRONIZE ) noexcept;
124
125
//---------------------------------------------------------------------
126
/// 強制終了関数
127
///
128
/// 強制終了関数です。
129
///
130
/// @param[in] dwExitCode 終了コード
131
/// @return 実行結果
132
/// - true 成功
133
/// - false 失敗
134
/// @attention なし
135
///
136
virtual
bool
Terminate( DWORD dwExitCode = 0 ) noexcept;
137
138
//---------------------------------------------------------------------
139
/// 終了コード取得関数
140
///
141
/// 終了コード取得関数です。
142
///
143
/// @param なし
144
/// @return プロセス終了コード
145
/// @attention なし
146
///
147
virtual
DWORD GetExitCode()
const
noexcept;
148
149
//=====================================================================
150
// 限定公開変数
151
protected
:
152
DWORD
m_dwProcessId
;
///< プロセスID
153
154
//=====================================================================
155
// 削除関数
156
private
:
157
CProcess
(
CProcess
const
& ) =
delete
;
158
CProcess
& operator=(
CProcess
const
& ) =
delete
;
159
};
160
}
161
162
#pragma managed( pop )
CSync.h
同期クラスヘッダファイル
LibCommon::CSync
同期クラス
Definition:
CSync.h:30
LibCommon
共通ライブラリ名前空間
Definition:
CArray.h:23
LibCommon::CProcess::m_dwProcessId
DWORD m_dwProcessId
プロセスID
Definition:
CProcess.h:152
LibCommon::CProcess::GetProcessId
virtual DWORD GetProcessId() const noexcept
プロセスID取得関数
Definition:
CProcess.h:68
LibCommon::CProcess
プロセスクラス
Definition:
CProcess.h:30
LIB_COMMON_API
#define LIB_COMMON_API
ダイナミックライブラリインポート宣言
Definition:
LibCommonDef.h:44
Include
Library
LibCommon
CProcess.h
2019年03月26日(火) 13時18分11秒作成 - Solution46 / 構成:
1.8.11