Ứng dụng Windows Native (.NET 10 WPF) hiện đại, chuyên dùng để quản lý, bật/tắt và giám sát các dịch vụ phát triển hoặc phần mềm cần thiết (như Nginx, PHP FastCGI, MySQL, Redis, Node.js, Python, các file .exe, .bat, .cmd,...).


🌟 Các Tính Năng Nổi Bật

  1. Giao diện Dashboard Hiện đại (Dark Mode):

    • Hiển thị trực quan trạng thái từng dịch vụ: 🟢 Đang chạy (kèm mã PID), ⚪ Đã dừng, 🟡 Đang khởi động.
    • Bảng thống kê trực tiếp: Số dịch vụ đang chạy, đã dừng và tổng số.
    • Thanh tìm kiếm và bộ lọc nhanh theo tên hoặc đường dẫn.
  2. Khởi chạy & Dừng linh hoạt:

    • Nút [▶ Chạy tất cả] và [⏹ Dừng tất cả] chỉ với 1 click.
    • Nút bật/tắt (Toggle), khởi động lại (Restart), mở nhanh thư mục chứa file (Open Folder).
    • Cơ chế Kill Process Tree: Khi dừng, toàn bộ tiến trình con (ví dụ PHP-CGI workers, Nginx worker processes) đều được đóng sạch sẽ, không bị sót tiến trình rác trong Task Manager.
  3. Tùy chỉnh Dịch vụ Linh hoạt:

    • Thêm không giới hạn dịch vụ/phần mềm.
    • Chọn file .exe, .bat, .cmd qua hộp thoại duyệt file trực quan.
    • Có sẵn các Mẫu cấu hình nhanh: Nginx, PHP FastCGI, MySQL, Redis, Node.js.
    • Tùy chọn Chạy ẩn nền ngầm (Hide Window): không bị nhảy pop-up cửa sổ đen CMD.
    • Tùy chọn Tự động chạy khi mở app (Auto-start).
    • Tùy chọn Yêu cầu quyền Administrator.
  4. Khay Hệ Thống (System Tray):

    • Khi bấm thu nhỏ hoặc nút đóng [X], ứng dụng tự động ẩn xuống System Tray để các dịch vụ tiếp tục chạy ngầm.
    • Menu chuột phải ở khay hệ thống:
      • 🖥️ Mở LDL System Hub
      • ▶️ Chạy tất cả dịch vụ
      • ⏹️ Dừng tất cả dịch vụ
      • 🚀 Khởi động cùng Windows (Bật/Tắt)
      • ❌ Thoát ứng dụng
    • Nhấp đúp chuột vào biểu tượng khay để khôi phục nhanh giao diện chính.
  5. Tự khởi động cùng Windows:

    • Tích hợp trực tiếp vào Registry Windows (HKCU\Software\Microsoft\Windows\CurrentVersion\Run).
    • Hỗ trợ cờ --minimized để khi Windows khởi động, ứng dụng tự động chạy ẩn ngay dưới khay hệ thống mà không làm phiền người dùng.
  6. Lên Lịch Chạy Tự Động Theo Thời Gian Quy Định (Task Scheduler):

    • 🔄 Chạy lặp lại theo chu kỳ định kỳ: Tự động kích hoạt/khởi chạy lại sau mỗi X phút (ví dụ: mỗi 5, 15, 30, 60 phút để chạy script backup DB, dọn dẹp log, crawl dữ liệu,...).
    • 📅 Chạy vào giờ cố định mỗi ngày: Kích hoạt vào đúng mốc thời gian chỉ định (ví dụ: 08:00 sáng hoặc 23:30 đêm).
    • ⏳ Chạy trễ sau khi mở phần mềm: Đợi X giây sau khi bật ứng dụng rồi mới chạy dịch vụ (hữu ích khi cần chờ database hoặc web server chạy trước).
    • Đếm ngược thời gian thực (Live Countdown): Thẻ dịch vụ hiển thị rõ thời gian còn lại trước lần kích hoạt tiếp theo.

🚀 Hướng Dẫn Sử Dụng

1. Khởi động ứng dụng

  • Bản Siêu Nhẹ (Cần .NET 10 Desktop Runtime):
    • Mở publish/LDLSystemHub.exe.
  • Bản Độc Lập Portable (Không cần cài bất kỳ phần mềm bổ trợ nào):
    • Mở publish-standalone/LDLSystemHub.exe.

2. Khi copy sang máy tính khác

  • Nếu dùng bản publish-standalone: Bạn chỉ cần copy thư mục publish-standalone sang bất kỳ máy Windows 10/11 nào là chạy được ngay lập tức 100%, không cần cài thêm bất kỳ runtime hay phần mềm bổ trợ nào.
  • Nếu dùng bản publish: Máy đích cần cài gói .NET Desktop Runtime 10 từ trang chủ Microsoft (nếu chưa có, Windows sẽ tự hiện pop-up bấm cài đặt chỉ mất 30 giây).
  • Lưu ý cấu hình đường dẫn:
    • Đảm bảo các file dịch vụ (như nginx.exe, php-cgi.exe...) trên máy mới được đặt đúng đường dẫn đã cấu hình, hoặc mở app lên bấm nút cây bút ✏️ để chọn lại đường dẫn file trên máy mới.
    • File cấu hình dịch vụ nằm tại %APPDATA%\LDLSystemHub\services.json, bạn có thể copy file này sang máy mới để mang theo toàn bộ danh sách dịch vụ đã tạo mà không cần nhập lại.

3. Thêm dịch vụ mới

  1. Nhấn nút ➕ Thêm Ứng Dụng.
  2. Bạn có thể chọn mẫu nhanh từ danh sách thả xuống (Nginx, PHP, MySQL, Redis...) hoặc tự điền:
    • Tên hiển thị: Ví dụ Nginx Web Server.
    • Đường dẫn file: Nhấn Duyệt file... để chọn file .exe hoặc .bat.
    • Tham số (nếu có): Ví dụ PHP FastCGI cần -b 127.0.0.1:9000.
    • Thư mục làm việc: Tự động nhận diện theo đường dẫn file hoặc tuỳ chọn.
    • Tích chọn "Ẩn cửa sổ dòng lệnh đen" để chạy ngầm êm ái.
  3. Nhấn Lưu Dịch Vụ.

4. Vị trí lưu cấu hình

Tất cả danh sách phần mềm và cấu hình được lưu tự động dạng JSON tại:

%APPDATA%\LDLSystemHub\services.json
%APPDATA%\LDLSystemHub\settings.json

Bạn có thể dễ dàng sao chép hoặc backup file này sang máy khác bất cứ lúc nào.