217 lines
5.7 KiB
C++
217 lines
5.7 KiB
C++
// CDialogProtectProcess.cpp: 구현 파일
|
|
//
|
|
|
|
#include "pch.h"
|
|
#include "tool.h"
|
|
#include "afxdialogex.h"
|
|
#include "CDialogProtectProcess.h"
|
|
|
|
|
|
// CDialogProtectProcess 대화 상자
|
|
|
|
IMPLEMENT_DYNAMIC(CDialogProtectProcess, CDialogEx)
|
|
|
|
CDialogProtectProcess::CDialogProtectProcess(CWnd* pParent /*=nullptr*/)
|
|
: CDialogEx(IDD_DIALOG_PROCESS_PROTECT, pParent)
|
|
{
|
|
|
|
}
|
|
|
|
CDialogProtectProcess::~CDialogProtectProcess()
|
|
{
|
|
}
|
|
|
|
void CDialogProtectProcess::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDialogEx::DoDataExchange(pDX);
|
|
DDX_Control(pDX, IDC_EDIT1, editProcessNames_);
|
|
DDX_Control(pDX, IDC_EDIT2, editProcessIds_);
|
|
}
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(CDialogProtectProcess, CDialogEx)
|
|
ON_BN_CLICKED(IDC_BUTTON_PROCESS_PROTECT_START, &CDialogProtectProcess::OnBnClickedButtonProcessProtectStart)
|
|
ON_BN_CLICKED(IDC_BUTTON_PROCESS_PROTECT_STOP, &CDialogProtectProcess::OnBnClickedButtonProcessProtectStop)
|
|
ON_BN_CLICKED(IDC_BUTTON_SET_PROTECT_PROCESSNAME, &CDialogProtectProcess::OnBnClickedButtonSetProtectProcessname)
|
|
ON_BN_CLICKED(IDC_BUTTON_SET_PROTECT_PROCESSID, &CDialogProtectProcess::OnBnClickedButtonSetProtectProcessid)
|
|
ON_BN_CLICKED(IDC_BUTTON_DEL_PROTECT_PROCESSNAME, &CDialogProtectProcess::OnBnClickedButtonDelProtectProcessname)
|
|
ON_BN_CLICKED(IDC_BUTTON_DEL_PROTECT_PROCESSID, &CDialogProtectProcess::OnBnClickedButtonDelProtectProcessid)
|
|
ON_BN_CLICKED(IDCANCEL, &CDialogProtectProcess::OnBnClickedCancel)
|
|
ON_BN_CLICKED(IDOK, &CDialogProtectProcess::OnBnClickedOk)
|
|
END_MESSAGE_MAP()
|
|
|
|
|
|
// CDialogProtectProcess 메시지 처리기
|
|
|
|
void CDialogProtectProcess::OnBnClickedButtonProcessProtectStart()
|
|
{
|
|
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
|
|
bs1flt_.Bs1FltProcessProtect(TRUE);
|
|
}
|
|
|
|
void CDialogProtectProcess::OnBnClickedButtonProcessProtectStop()
|
|
{
|
|
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
|
|
bs1flt_.Bs1FltProcessProtect(FALSE);
|
|
}
|
|
|
|
void CDialogProtectProcess::OnBnClickedButtonSetProtectProcessname()
|
|
{
|
|
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
|
|
CString strInput;
|
|
int curPos = 0;
|
|
if (!bs1flt_.Bs1FltSetProcessProtectName)
|
|
{
|
|
MessageBox(L"bs1flt가 초기화 되지 않았습니다.", L"BS1FLT ALRAM", MB_ICONERROR | MB_OK);
|
|
return;
|
|
}
|
|
|
|
editProcessNames_.GetWindowText(strInput);
|
|
|
|
if (strInput.IsEmpty())
|
|
{
|
|
MessageBox(L"입력 데이터가 없습니다.", L"BS1FLT ALRAM", MB_ICONERROR | MB_OK);
|
|
return;
|
|
}
|
|
|
|
CString strToken = strInput.Tokenize(_T("|"), curPos);
|
|
|
|
while (curPos != -1) // 더 이상 토큰이 없으면 -1을 반환하지 않음 (빈 문자열 체크로 대체 가능)
|
|
{
|
|
if (!strToken.IsEmpty())
|
|
{
|
|
strToken.Trim();
|
|
if (!strToken.IsEmpty())
|
|
{
|
|
bs1flt_.Bs1FltSetProcessProtectName((LPCWSTR)strToken.GetBuffer(0));
|
|
}
|
|
}
|
|
|
|
// 다음 토큰 가져오기
|
|
strToken = strInput.Tokenize(_T("|"), curPos);
|
|
}
|
|
}
|
|
|
|
void CDialogProtectProcess::OnBnClickedButtonDelProtectProcessname()
|
|
{
|
|
CString strInput;
|
|
int curPos = 0;
|
|
if (!bs1flt_.Bs1FltDelProcessProtectName)
|
|
{
|
|
MessageBox(L"bs1flt가 초기화 되지 않았습니다.", L"BS1FLT ALRAM", MB_ICONERROR | MB_OK);
|
|
return;
|
|
}
|
|
|
|
editProcessNames_.GetWindowText(strInput);
|
|
|
|
if (strInput.IsEmpty())
|
|
{
|
|
MessageBox(L"입력 데이터가 없습니다.", L"BS1FLT ALRAM", MB_ICONERROR | MB_OK);
|
|
return;
|
|
}
|
|
|
|
CString strToken = strInput.Tokenize(_T("|"), curPos);
|
|
|
|
while (curPos != -1) // 더 이상 토큰이 없으면 -1을 반환하지 않음 (빈 문자열 체크로 대체 가능)
|
|
{
|
|
if (!strToken.IsEmpty())
|
|
{
|
|
strToken.Trim();
|
|
if (!strToken.IsEmpty())
|
|
{
|
|
bs1flt_.Bs1FltDelProcessProtectName((LPCWSTR)strToken.GetBuffer(0));
|
|
}
|
|
}
|
|
|
|
// 다음 토큰 가져오기
|
|
strToken = strInput.Tokenize(_T("|"), curPos);
|
|
}
|
|
}
|
|
|
|
|
|
void CDialogProtectProcess::OnBnClickedButtonSetProtectProcessid()
|
|
{
|
|
CString strInput;
|
|
int curPos = 0;
|
|
if (!bs1flt_.Bs1FltSetProcessProtectId)
|
|
{
|
|
MessageBox(L"bs1flt가 초기화 되지 않았습니다.", L"BS1FLT ALRAM", MB_ICONERROR | MB_OK);
|
|
return;
|
|
}
|
|
|
|
editProcessIds_.GetWindowText(strInput);
|
|
|
|
if (strInput.IsEmpty())
|
|
{
|
|
MessageBox(L"입력 데이터가 없습니다.", L"BS1FLT ALRAM", MB_ICONERROR | MB_OK);
|
|
return;
|
|
}
|
|
|
|
CString strToken = strInput.Tokenize(_T("|"), curPos);
|
|
|
|
while (curPos != -1) // 더 이상 토큰이 없으면 -1을 반환하지 않음 (빈 문자열 체크로 대체 가능)
|
|
{
|
|
if (!strToken.IsEmpty())
|
|
{
|
|
strToken.Trim();
|
|
if (!strToken.IsEmpty())
|
|
{
|
|
DWORD pid = _ttoi(strToken);
|
|
bs1flt_.Bs1FltSetProcessProtectId(pid);
|
|
}
|
|
}
|
|
|
|
// 다음 토큰 가져오기
|
|
strToken = strInput.Tokenize(_T("|"), curPos);
|
|
}
|
|
}
|
|
|
|
void CDialogProtectProcess::OnBnClickedButtonDelProtectProcessid()
|
|
{
|
|
CString strInput;
|
|
int curPos = 0;
|
|
if (!bs1flt_.Bs1FltDelProcessProtectId)
|
|
{
|
|
MessageBox(L"bs1flt가 초기화 되지 않았습니다.", L"BS1FLT ALRAM", MB_ICONERROR | MB_OK);
|
|
return;
|
|
}
|
|
|
|
editProcessIds_.GetWindowText(strInput);
|
|
|
|
if (strInput.IsEmpty())
|
|
{
|
|
MessageBox(L"입력 데이터가 없습니다.", L"BS1FLT ALRAM", MB_ICONERROR | MB_OK);
|
|
return;
|
|
}
|
|
|
|
CString strToken = strInput.Tokenize(_T("|"), curPos);
|
|
|
|
while (curPos != -1) // 더 이상 토큰이 없으면 -1을 반환하지 않음 (빈 문자열 체크로 대체 가능)
|
|
{
|
|
if (!strToken.IsEmpty())
|
|
{
|
|
strToken.Trim();
|
|
if (!strToken.IsEmpty())
|
|
{
|
|
DWORD pid = _ttoi(strToken);
|
|
bs1flt_.Bs1FltDelProcessProtectId(pid);
|
|
}
|
|
}
|
|
|
|
// 다음 토큰 가져오기
|
|
strToken = strInput.Tokenize(_T("|"), curPos);
|
|
}
|
|
}
|
|
|
|
void CDialogProtectProcess::OnBnClickedCancel()
|
|
{
|
|
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
|
|
CDialogEx::OnCancel();
|
|
}
|
|
|
|
void CDialogProtectProcess::OnBnClickedOk()
|
|
{
|
|
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
|
|
CDialogEx::OnOK();
|
|
}
|