Windows ๋ค์ค ๋ชจ๋ํฐ ํ๊ฒฝ์์ ์ฑ ์คํ๊ณผ ์ํฌ์คํ์ด์ค ์ฐฝ ๋ฐฐ์น๋ฅผ ๋ณต์ํ๋ ๊ฒฝ๋ ์ ํธ๋ฆฌํฐ
Monitor Launcher๋ ๋ค์ค ๋ชจ๋ํฐ ํ๊ฒฝ์์ ์์ ํ๋ ์ฌ์ฉ์๋ฅผ ์ํ Windows ์ ํธ๋ฆฌํฐ์ ๋๋ค. ํน์ ํ๋ก๊ทธ๋จ์ ์ํ๋ ๋ชจ๋ํฐ์์ ์ํ๋ ์ฐฝ ์ํ๋ก ์คํํ ์ ์๋๋ก ๋์์ค๋๋ค.
- ์ฌ๋ฌ ๋ชจ๋ํฐ๋ฅผ ์ฌ์ฉํ์ง๋ง, ํ๋ก๊ทธ๋จ์ด ํญ์ ๊ธฐ๋ณธ ๋ชจ๋ํฐ์์๋ง ์คํ๋๋ ๋ฌธ์
- ํน์ ์์ ์ฉ ํ๋ก๊ทธ๋จ์ ํญ์ ํน์ ๋ชจ๋ํฐ์์ ์คํํ๊ณ ์ถ์ ๊ฒฝ์ฐ
- ๊ฒ์, ๊ฐ๋ฐ ๋๊ตฌ, ๋ฏธ๋์ด ํ๋ ์ด์ด ๋ฑ์ ๊ฐ๊ฐ ๋ค๋ฅธ ๋ชจ๋ํฐ์ ๋ฐฐ์นํ๊ณ ์ถ์ ๋
- ํ๋กํ์ ์ ์ฅํ์ฌ ์์ฃผ ์ฌ์ฉํ๋ ํ๋ก๊ทธ๋จ์ ์ํด๋ฆญ์ผ๋ก ์คํํ๊ณ ์ถ์ ๋
- ๐ฅ๏ธ ์๋ ๋ชจ๋ํฐ ๊ฐ์ง: ์ฐ๊ฒฐ๋ ๋ชจ๋ ๋ชจ๋ํฐ๋ฅผ ์๋์ผ๋ก ๊ฐ์งํ๊ณ ํด์๋ ์ ๋ณด ํ์
- ๐ฏ ์ ํํ ์ฐฝ ์์น ์ ์ด: Win32 API๋ฅผ ํ์ฉํ ๊ฐ๋ ฅํ ์ฐฝ ์์น ์ ์ด
- โก ๊ฒฝ๋ ๋ฐ ๊ณ ์ฑ๋ฅ: CPU ์ฌ์ฉ๋ ์ต์ ํ (0.5-3%), ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ 25-35MB
- ๐พ ํ๋กํ ์ ์ฅ: ์์ฃผ ์ฌ์ฉํ๋ ํ๋ก๊ทธ๋จ ์ค์ ์ ํ๋กํ๋ก ์ ์ฅํ์ฌ ๋น ๋ฅธ ์คํ
- ๐ ์ง์์ ์ธ ๋ชจ๋ํฐ๋ง: ํ๋ก๊ทธ๋จ์ด ์ฐฝ ์์น๋ฅผ ๋ณ๊ฒฝํด๋ ์๋์ผ๋ก ์ํ๋ ๋ชจ๋ํฐ๋ก ์ฌ๋ฐฐ์น
- ๐จ ์ง๊ด์ ์ธ UI: ๊ฐ๋จํ๊ณ ๊น๋ํ Windows Forms ์ธํฐํ์ด์ค
- ๐ ์์คํ ํธ๋ ์ด ์ง์: ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํ ๋ฐ ํธ๋ ์ด ์์ด์ฝ์ ํตํ ๋น ๋ฅธ ์ ๊ทผ
- ๋ชจ๋ํฐ ๊ฐ์ง ๋ฐ ์ ํ: ์ฐ๊ฒฐ๋ ๋ชจ๋ ๋ชจ๋ํฐ๋ฅผ ์๋ ๊ฐ์งํ๊ณ ์ ํํ ์ ์์ต๋๋ค.
- ํ๋ก๊ทธ๋จ ์คํ ์์น ์ ์ด: ์คํ ํ์ผ์ ์ ํํ ๋ชจ๋ํฐ์์ ์คํํ ์ ์์ต๋๋ค.
- ํ๋กํ(์ฆ๊ฒจ์ฐพ๊ธฐ) ๊ธฐ๋ฅ: ํ๋ก๊ทธ๋จ ๊ฒฝ๋ก, ๋ชจ๋ํฐ, ์ฐฝ ์ํ๋ฅผ ํ๋กํ๋ก ์ ์ฅํ์ฌ ์ํด๋ฆญ์ผ๋ก ์คํํ ์ ์์ต๋๋ค.
- ์ํฌ์คํ์ด์ค ๊ธฐ๋ฅ: ์ฌ๋ฌ ์ฑ ์ฐฝ์ ์์น์ ํฌ๊ธฐ๋ฅผ ํ๋์ ์ํฌ์คํ์ด์ค๋ก ์ ์ฅํ๊ณ ๋ณต์ํ ์ ์์ต๋๋ค.
- ์ฐฝ ์ํ ์ ์ด: ์ ์ฒดํ๋ฉด, ์ฐฝ๋ชจ๋, ๋ณต์ ์ต์ ์ ์ง์ํฉ๋๋ค.
- ์์คํ ํธ๋ ์ด ์ง์: ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํ ๋ฐ ํธ๋ ์ด ์์ด์ฝ์ ํตํ ๋น ๋ฅธ ์ ๊ทผ
- ์๋ ์ฐฝ ์์น ๋ชจ๋ํฐ๋ง: ํ๋ก๊ทธ๋จ์ด ์ฐฝ ์์น๋ฅผ ๋ณ๊ฒฝํด๋ ์๋์ผ๋ก ์ํ๋ ๋ชจ๋ํฐ๋ก ์ฌ๋ฐฐ์น
- ์ ์ฐํ ์คํ ๋์ ์ง์:
.exe,.lnk, URL/์ ธ ์คํ ๋์์ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.
MonitorLauncher/
โโโ MonitorLauncher.csproj # ํ๋ก์ ํธ ํ์ผ
โโโ app.manifest # ๊ด๋ฆฌ์ ๊ถํ ์๊ตฌ ์ค์
โโโ Program.cs # ์ง์
์
โโโ MainForm.cs # ๋ฉ์ธ UI ๋ฐ ๋ก์ง
โโโ AppLauncherService.cs # ํ๋ก๊ทธ๋จ ์คํ ๋ฐ ์ฐฝ ์ด๋ ์กฐ์
โโโ WorkspaceRestoreService.cs # ์ํฌ์คํ์ด์ค ๋ณต์ ๋ฐ ์ฐฝ ๋ชจ์ผ๊ธฐ
โโโ WindowCaptureService.cs # ํ์ฌ ์ด๋ ค ์๋ ์ฐฝ ์บก์ฒ
โโโ LaunchRequest.cs # ์คํ ์์ฒญ ๋ชจ๋ธ
โโโ LaunchResult.cs # ์คํ ๊ฒฐ๊ณผ ๋ชจ๋ธ
โโโ WorkspaceProfile.cs # ์ํฌ์คํ์ด์ค ์ ์ฅ/๋ก๋
โโโ AppWindowProfile.cs # ์ํฌ์คํ์ด์ค ์ฑ ์ฐฝ ๋ชจ๋ธ
โโโ CapturedWindowInfo.cs # ์บก์ฒ๋ ์ฐฝ ์ ๋ณด
โโโ AppWindowState.cs # ์ฐฝ ์ํ enum
โโโ Win32Api.cs # Win32 API ๋ํผ
โโโ WindowController.cs # ์ฐฝ ์์น ์ ์ด ๋ก์ง
โโโ Profile.cs # ํ๋กํ ์ ์ฅ/๋ก๋
โโโ Resources/ # ์ฑ ๋ก๊ณ , ์ฑ ์์ด์ฝ, ํธ๋ ์ด ์์ด์ฝ ๋ฆฌ์์ค
โโโ tasks/ # ์์
๊ธฐ๋ก
โโโ README.md # ์ด ํ์ผ
- Windows 10 ๋๋ Windows 11
- .NET 8.0 Runtime (๋ค์ด๋ก๋)
- ๊ด๋ฆฌ์ ๊ถํ (์ผ๋ถ ํ๋ก๊ทธ๋จ ์ ์ด๋ฅผ ์ํด ๊ถ์ฅ)
- Releases ํ์ด์ง์์ ์ต์ ๋ฒ์ ๋ค์ด๋ก๋
MonitorLauncher.exe์คํ- ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์คํ ๊ถ์ฅ
# ์ ์ฅ์ ํด๋ก
git clone https://github.com/your-username/MonitorLauncher.git
cd MonitorLauncher
# ๋น๋
dotnet build MonitorLauncher.csproj -c Release
# ์คํ ํ์ผ ์์น
# bin/Release/net8.0-windows/MonitorLauncher.exe- ํ๋ก๊ทธ๋จ์ ์คํํฉ๋๋ค (๊ด๋ฆฌ์ ๊ถํ ๊ถ์ฅ)
- ๋ชจ๋ํฐ ์ ํ: ๋๋กญ๋ค์ด์์ ์ํ๋ ๋ชจ๋ํฐ ์ ํ
- ์คํ ํ์ผ ์ง์ : "์ฐพ์๋ณด๊ธฐ..." ๋ฒํผ์ผ๋ก ํ๋ก๊ทธ๋จ ์ ํ
- ์ธ์ ์ ๋ ฅ (์ ํ): ํ๋ก๊ทธ๋จ ์คํ ์ ํ์ํ ์ธ์ ์ ๋ ฅ
- ์ฐฝ ์ํ ์ ํ: ์ ์ฒดํ๋ฉด, ์ฐฝ๋ชจ๋, ๋ณต์ ์ค ์ ํ
- ์คํ ๋ฒํผ ํด๋ฆญ
ํ๋กํ ์ ์ฅ:
- ํ๋ก๊ทธ๋จ ๊ฒฝ๋ก, ๋ชจ๋ํฐ, ์ฐฝ ์ํ๋ฅผ ์ค์
- "ํ๋กํ ์ ์ฅ" ๋ฒํผ ํด๋ฆญ
- ํ๋กํ ์ด๋ฆ ์ ๋ ฅ (์: "๊ฒ์ - ๋ชจ๋ํฐ 2")
ํ๋กํ ์คํ:
- ํ๋กํ ๋ชฉ๋ก์์ ๋๋ธํด๋ฆญํ๋ฉด ํด๋น ์ค์ ์ผ๋ก ์ฆ์ ์คํ
- ๋๋ ํ๋กํ ์ ํ ํ "์คํ" ๋ฒํผ ํด๋ฆญ
ํ๋กํ ์ญ์ :
- ํ๋กํ ์ ํ ํ "ํ๋กํ ์ญ์ " ๋ฒํผ ํด๋ฆญ
์ํฌ์คํ์ด์ค ์ ์ฅ:
- ๋ณต์ํ๊ณ ์ถ์ ์ฑ ์ฐฝ์ ์ํ๋ ๋ชจ๋ํฐ์ ์์น์ ๋ฐฐ์น
- ์ํฌ์คํ์ด์ค ํญ์์ "ํ์ฌ ๋ฐฐ์น ๊ฐ์ ธ์ค๊ธฐ" ํด๋ฆญ
- ํฌํจํ ์ฐฝ๋ง ์ฒดํฌ
- ์ํฌ์คํ์ด์ค ์ด๋ฆ ์ ๋ ฅ ํ "์ ์ฅ" ํด๋ฆญ
- ๊ฐ์ ์ด๋ฆ์ด ์์ผ๋ฉด ๋ฎ์ด์ฐ๊ธฐ ์ฌ๋ถ ํ์ธ (๊ธฐ๋ณธ ์ ํ์ "์๋์")
์ํฌ์คํ์ด์ค ์คํ:
- ์ ์ฅ๋ ์ํฌ์คํ์ด์ค๋ฅผ ์ ํ ํ "์คํ" ํด๋ฆญ
- ๋๋ ํธ๋ ์ด ๋ฉ๋ด์ "์ํฌ์คํ์ด์ค ์คํ"์์ ๋ฐ๋ก ์คํ
- ๋ณต์ ์ค์๋ ํธ๋ ์ด์ ํผ์์ ์ค๋ณต ๋ณต์์ ์ฐจ๋จํฉ๋๋ค.
- ํ๋ก์ธ์ค๋ช ๊ณผ ์ ์ฅ๋ ์คํ ํ์ผ ๊ฒฝ๋ก๋ฅผ ํ์ธํ๊ณ ์ ๋ชฉ์ด ๊ฐ์ ์ฐฝ์ ์ฐ์ ์ ํํฉ๋๋ค. ํ ๋ฒ ๋ณต์ํ ์ฐฝ์ ๊ฐ์ ๋ณต์ ์์ ์์ ๋ค์ ์ฌ์ฉํ์ง ์์ต๋๋ค.
- ์ ๋ชฉ์ด ๋ฐ๋๊ฑฐ๋ ๋์ผํ ์ฐฝ์ ์ ํํ ๋์์ด ๋ณด์ฅ๋์ง ์์ต๋๋ค. ์ฑ ์์ฒด๊ฐ ์ ์ฐฝ ์์ฑ์ ์ง์ํ์ง ์์ผ๋ฉด ๋ถ์กฑํ ์ฐฝ์ ๋ณต์ ์คํจ๋ก ํ์๋ ์ ์์ต๋๋ค.
- ์ด๋ ์คํจ์ ์ ์ฅ๋ ๋ชจ๋ํฐ ๋ถ์ฌ๋ก ์ธํ ์ฃผ ๋ชจ๋ํฐ ๋์ฒด๋ ๋ณต์ ๊ฒฐ๊ณผ์ ํ์ํฉ๋๋ค.
ํ๋ฉด ๋ฐ ์ฐฝ ๋ณต๊ตฌ:
- ์ํฌ์คํ์ด์ค ํญ์์ "ํ๋ฉด ๋ฐ ์ฐฝ ๋ณต๊ตฌ" ๋ฒํผ ํด๋ฆญ
- ๋ชจ๋ํฐ ์ฌ์ด ๋น ๊ณต๊ฐ์ ํฌํจํด ์ ๋ชฉ ์์ญ์ ์ ๊ทผํ๊ธฐ ์ด๋ ต๊ฑฐ๋ ํฌ๊ธฐ๊ฐ ๋น์ ์์ธ ์ฐฝ์ ์ฃผ ๋ชจ๋ํฐ ์ค์์ผ๋ก ์ด๋ํฉ๋๋ค.
- ํ์ผ ํ์๊ธฐ์ Windows Terminal๋ ์ ์ฅ ๋์์ ํฌํจํ๋ฉฐ, ๋ฐํํ๋ฉด๊ณผ ์์ ํ์์ค์ ์ ์ธํฉ๋๋ค.
- ์์ ํ๋ฉด์์๋ ์ฐฝ ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ๊ฑฐ๋ ์คํฌ๋กคํ์ฌ ํ๋จ ๊ธฐ๋ฅ์ ์ ๊ทผํ ์ ์์ต๋๋ค.
Windows ํ๊ท ๊ฒ์ฆ ์ ์ฐจ๋ workspace-regression.md๋ฅผ ์ฐธ๊ณ ํ์ธ์.
- ์ฐฝ์ ๋ซ์ ๋ "๋ฐฑ๊ทธ๋ผ์ด๋ ์คํ" ์ ํ ์ ์์คํ ํธ๋ ์ด๋ก ์ด๋
- ํธ๋ ์ด ์์ด์ฝ ๋๋ธํด๋ฆญ์ผ๋ก ์ฐฝ ํ์/์จ๊น
- ํธ๋ ์ด ์์ด์ฝ ์ฐํด๋ฆญ์ผ๋ก ๋ฉ๋ด ์ ๊ทผ
- ํธ๋ ์ด ๋ฉ๋ด์ "ํ๋กํ ์คํ"์์ ์ ์ฅ๋ ํ๋กํ์ ๋ฐ๋ก ์คํ ๊ฐ๋ฅ
- ํธ๋ ์ด ๋ฉ๋ด์ "์ํฌ์คํ์ด์ค ์คํ"์์ ์ ์ฅ๋ ์ํฌ์คํ์ด์ค๋ฅผ ๋ฐ๋ก ์คํ ๊ฐ๋ฅ
ํ๋กํ์ ๋ค์ ์์น์ ์ ์ฅ๋ฉ๋๋ค:
%APPDATA%\MonitorLauncher\profiles.json
ํ๋กํ ํ์ผ์ ๋ฐฑ์ ํ๊ฑฐ๋ ๋ค๋ฅธ ์ปดํจํฐ๋ก ๋ณต์ฌํ์ฌ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ํฌ์คํ์ด์ค๋ ๋ค์ ์์น์ ์ ์ฅ๋ฉ๋๋ค:
%APPDATA%\MonitorLauncher\workspaces.json
- ์ธ์ด: C# 12.0
- ํ๋ ์์ํฌ: .NET 8.0
- UI: Windows Forms
- API: Win32 API (P/Invoke)
- ๋น๋ ์์คํ : MSBuild / .NET SDK
MonitorLauncher/
โโโ MonitorLauncher.csproj # ํ๋ก์ ํธ ํ์ผ
โโโ app.manifest # ๊ด๋ฆฌ์ ๊ถํ ์๊ตฌ ์ค์
โโโ Program.cs # ์ง์
์
โโโ MainForm.cs # ๋ฉ์ธ UI ๋ฐ ๋ก์ง
โโโ AppLauncherService.cs # ํ๋ก๊ทธ๋จ ์คํ ๋ฐ ์ฐฝ ์ด๋ ์กฐ์
โโโ WorkspaceRestoreService.cs # ์ํฌ์คํ์ด์ค ๋ณต์ ๋ฐ ์ฐฝ ๋ชจ์ผ๊ธฐ
โโโ WindowCaptureService.cs # ํ์ฌ ์ด๋ ค ์๋ ์ฐฝ ์บก์ฒ
โโโ LaunchRequest.cs # ์คํ ์์ฒญ ๋ชจ๋ธ
โโโ LaunchResult.cs # ์คํ ๊ฒฐ๊ณผ ๋ชจ๋ธ
โโโ WorkspaceProfile.cs # ์ํฌ์คํ์ด์ค ์ ์ฅ/๋ก๋
โโโ AppWindowProfile.cs # ์ํฌ์คํ์ด์ค ์ฑ ์ฐฝ ๋ชจ๋ธ
โโโ CapturedWindowInfo.cs # ์บก์ฒ๋ ์ฐฝ ์ ๋ณด
โโโ AppWindowState.cs # ์ฐฝ ์ํ enum
โโโ Win32Api.cs # Win32 API ๋ํผ
โโโ WindowController.cs # ์ฐฝ ์์น ์ ์ด ๋ก์ง
โโโ Profile.cs # ํ๋กํ ์ ์ฅ/๋ก๋
โโโ Resources/ # ๋ฆฌ์์ค ํ์ผ
โ โโโ logo.png # ์ฑ ๋ก๊ณ
โ โโโ favicon.ico # ์ฑ/ํผ/ํธ๋ ์ด ์์ด์ฝ
โโโ tasks/ # ์์
๊ธฐ๋ก ๋ฐ ๊ตํ
โโโ .github/
โ โโโ workflows/
โ โโโ build.yml # GitHub Actions ๋น๋ ์ค์
โโโ README.md # ์ด ํ์ผ
- UWP ์ฑ: Windows ์คํ ์ด ์ฑ์ ์๋ฒฝํ๊ฒ ์ง์๋์ง ์์ ์ ์์ต๋๋ค.
- ์คํ๋์ ์คํฌ๋ฆฐ: ์ผ๋ถ ํ๋ก๊ทธ๋จ์ ์คํ๋์ ์คํฌ๋ฆฐ์ผ๋ก ์ธํด ์ฐฝ ์์น ์ ์ด๊ฐ ์ง์ฐ๋ ์ ์์ต๋๋ค.
- ๊ด๋ฆฌ์ ๊ถํ: ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์คํ๋๋ ํ๋ก๊ทธ๋จ์ ์ ์ดํ๋ ค๋ฉด ๋ฐ์ฒ๋ ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์คํํด์ผ ํฉ๋๋ค.
- ๋ฐ์ฒํ ์ฑ/๊ฒ์: ์์ ํ๋ก์ธ์ค์์ ์ค์ ์ฐฝ์ ๋์ฐ๋ ํ๋ก๊ทธ๋จ์ ๊ฐ์ ๋ fallback์ ์ฌ์ฉํ์ง๋ง, 100% ๋ณด์ฅ๋์ง๋ ์์ต๋๋ค.
- ์ํฌ์คํ์ด์ค ๋ณต์: ์ฑ์ด ์คํ ํ ์ฐฝ ์ ๋ชฉ์ด๋ ํ๋ก์ธ์ค ๊ตฌ์กฐ๋ฅผ ํฌ๊ฒ ๋ฐ๊พธ๋ ๊ฒฝ์ฐ ์ผ๋ถ ์ฐฝ์ ์๋ ๊ฐ์ง๋์ง ์์ ์ ์์ต๋๋ค.
- ๊ด๋ฆฌ์ ๊ถํ ์คํ: ๋๋ถ๋ถ์ ํ๋ก๊ทธ๋จ ์ฐฝ ์ ์ด๋ฅผ ์ํด ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์คํํ๋ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค.
- ํ๋กํ ๋ฐฑ์
: ์ค์ํ ํ๋กํ์ ์ ๊ธฐ์ ์ผ๋ก ๋ฐฑ์
ํ์ธ์ (
%APPDATA%\MonitorLauncher\profiles.json)
# .NET 8.0 SDK ์ค์น ํ์
dotnet --version # 8.0.x ํ์ธ
# ํ๋ก์ ํธ ๋ณต์
git clone https://github.com/your-username/MonitorLauncher.git
cd MonitorLauncher
# ์์กด์ฑ ๋ณต์
dotnet restore
# ๋น๋
dotnet build
# ์คํ
dotnet run- ์ด ์ ์ฅ์๋ฅผ Fork
- ๊ธฐ๋ฅ ๋ธ๋์น ์์ฑ (
git checkout -b feature/AmazingFeature) - ๋ณ๊ฒฝ์ฌํญ ์ปค๋ฐ (
git commit -m 'Add some AmazingFeature') - ๋ธ๋์น์ Push (
git push origin feature/AmazingFeature) - Pull Request ์์ฑ
๋ฒ๊ทธ๋ฅผ ๋ฐ๊ฒฌํ์ จ๋ค๋ฉด Issues์ ๋ฆฌํฌํธํด์ฃผ์ธ์.
- v2.0.1: ์ฐฝ ์ค๋ณต ๋ณต์ ๋ฐฉ์ง, ํ๋ฉด ๋ฐ ์ฐฝ ๋ณต๊ตฌ ๊ฐ์ , ๋ณต์ ๊ฒฐ๊ณผ ์๋ด ๋ฐ ์์ ํ๋ฉด ๋์ (๋ฆด๋ฆฌ์ฆ ๋ ธํธ)
- v2.0.0: ์ฌ๋ฌ ์ฑ ์ฐฝ ๋ฐฐ์น๋ฅผ ์ ์ฅ/๋ณต์ํ๋ ์ํฌ์คํ์ด์ค ๋งค๋์ MVP ์ถ๊ฐ
- v1.2.6: ๋ชจ๋ํฐ ์ฐ๊ฒฐ ๋ณ๊ฒฝ ํ ์คํ/ํ๋กํ ์ ์ฅ ์์ ์ฑ ๊ฐํ, ํ๋กํ ์ญ์ ์ ์ฅ ํ๋ฆ ๋ณด์
- v1.2.5: ์ ธ ์คํ ์ฐฝ ์ถ์ ์์ ํ, ์ฐฝ ๋ณด์ ๋ฃจํ ์์ , ์ ์ฐฝ ์ด๋ ์ฑ๊ณต ํ์ ๊ฐ์
- v1.2.4: ํ๋ก๊ทธ๋จ ์คํ ๋ก์ง ์๋น์ค ๋ถ๋ฆฌ, ์คํ ์์ฒญ/๊ฒฐ๊ณผ ๋ชจ๋ธ ์ถ๊ฐ,
MainForm์ฑ ์ ์ ๋ฆฌ - v1.2.3: ์ฑ ๋ก๊ณ ์ถ๊ฐ, GitHub Actions ์๋ ๋น๋/๋ฆด๋ฆฌ์ค ์ค์
- v1.2.2: ์ฑ๋ฅ ์ต์ ํ (CPU ์ฌ์ฉ๋ 40% ๊ฐ์), ์ฐฝ ์์น ์ ์ด ๊ฐํ
- v1.1.0: ์์คํ ํธ๋ ์ด ๊ธฐ๋ฅ, ์ฐฝ ์ํ ์ต์ ๊ฐ์
์ด ํ๋ก์ ํธ๋ ์์ ๋กญ๊ฒ ์ฌ์ฉ, ์์ , ๋ฐฐํฌํ ์ ์์ต๋๋ค.
์ด ํ๋ก์ ํธ๋ฅผ ์ฌ์ฉํด์ฃผ์๊ณ ๊ธฐ์ฌํด์ฃผ์๋ ๋ชจ๋ ๋ถ๋ค๊ป ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
โญ ์ด ํ๋ก์ ํธ๊ฐ ๋์์ด ๋์ จ๋ค๋ฉด Star๋ฅผ ๋๋ฌ์ฃผ์ธ์! โญ
Made with โค๏ธ for Windows users