# JJServiceManager Windows 서비스 기동/종료 관리 프로그램 (C# WPF, .NET 8) ## 실행 파일 | 파일 | 크기 | 필요 조건 | |---|---|---| | `JJServiceManager.exe` (런타임 필요판) | 약 1.4MB | [.NET 8 Desktop Runtime (x64)](https://dotnet.microsoft.com/download/dotnet/8.0) 설치 | | `JJServiceManager.exe` (단독 실행판) | 약 65MB | 없음 | 항상 **관리자 권한**으로 실행됩니다 (실행할 때 UAC 창이 한 번 뜹니다). ## 화면 ### 초기화면 - **추가**: Windows 서비스 전체 목록에서 관리할 서비스 선택 - **삭제**: 체크한 서비스를 목록에서 제외 (Windows 서비스 자체는 건드리지 않음) - **선택 Start / 선택 Stop**: 체크한 서비스를 차례로 시작/중지 - **Windows 강제종료 / Windows 재시작**: 확인 후 즉시 실행 (설정에서 버튼 숨김 가능) - **설정** - 서비스마다 **Start / Stop / Status / Log** 버튼, 상태는 2초마다 자동 갱신 (초록=실행 중, 빨강=중지됨) - 서비스 줄 **우클릭**: 로그 파일 지정 / 로그 폴더 지정 / 경로 해제 - 하단 **로그**: 작업 기록 (번호 + 체크박스) - 전체선택 / 전체취소 / 복사(체크한 줄) - **화면클리어**: 새 로그를 화면 맨 위부터 출력, 위로 스크롤하면 이전 로그가 보임, 번호는 이어짐 - **로그 클리어**: 화면의 로그를 모두 지우고 번호를 1번부터 다시 시작 - 로그 파일은 어떤 경우에도 지우지 않음 - **Esc**: 설정에 따라 트레이로 / 완전 종료 (창의 X 버튼도 같음) ### 추가 선택 화면 - 설명 / 상태 / 이름 / 시작유형 열, 열 제목을 누르면 정렬(▲▼) - 전체선택 / 전체취소 / 선택완료, 검색 - 이미 등록된 서비스는 노란색 + 체크된 상태로 표시 - 체크를 해제하고 선택완료하면 초기화면에서 빠짐 ### 로그창 (서비스 로그 파일) - 로그 **파일** 지정 또는 로그 **폴더** 지정(폴더 안의 가장 최근 수정 파일을 자동 추적) - 실시간 표시 (0.5초 간격), 인코딩 자동/UTF-8/CP949 - 띄우기 방식: 1. 개별 창 / 2. 하나의 창에 탭 / 3. 좌우 분할 비교 ### 설정 | 항목 | 내용 | |---|---| | 컴퓨터 시작시 기동 | 로그인 시 트레이로 자동 실행 (작업 스케줄러 `JJServiceManager` 등록) | | 단축키 | 직접 눌러서 지정 (기본 Ctrl + Shift + A), Enable 토글. 누르면 창 보이기/숨기기 | | 서비스 시작시 로그보기 | 작업 로그를 초기화면 하단에 표시할지 여부 | | 로그창 띄우기 | 개별 창 / 탭 / 좌우 분할 | | Esc | 트레이로 (백그라운드) / 완전 종료 | | Windows 종료키 | Windows 강제종료 / 재시작 버튼 표시 여부 | ## 저장 위치 - 설정: `%AppData%\JJServiceManager\settings.json` - 작업 로그: `%AppData%\JJServiceManager\logs\yyyy-MM-dd.log` (추가만 하고 삭제하지 않음) ## 빌드 [.NET 8 SDK](https://dotnet.microsoft.com/download/dotnet/8.0) 설치 후 `build.bat` 실행 → `publish` 폴더에 두 가지 exe 생성 화면 정의는 `Views/*.xaml`이며 실행 시 읽어들입니다 (XAML 컴파일 없음).