3.0 KiB
3.0 KiB
MBN_STOCK_N 마이그레이션 현황
원본 기준선
원본은 .NET Framework 4.8 / C# 7.3 기반 WinForms 애플리케이션입니다. 약 38,000줄의 C# 코드와 다음 요소로 구성되어 있습니다.
- 대형
MainForm및 7개 WinForms UserControl - 보조 폼 7개
- Tornado/K3D 장면 처리 클래스 35개
- Oracle 및 MariaDB SQL/데이터 요청 계층
- FarPoint Spread 4 플레이리스트/그리드
원본 작업 트리의 MainForm.cs와 RES/MmoneyCoder.ini에는 커밋되지 않은 변경이 있습니다. 원본 저장소는 그대로 보존했으며, 새 프로젝트에는 비밀값이 포함된 INI를 복사하지 않았습니다.
적용 완료
| 기존 구현 | 새 구현 |
|---|---|
| WinForms MainForm | WinUI 3 MainWindow + 로컬 WebView2 UI |
FarPoint FpSpread 플레이리스트 |
HTML table + 선택/드래그 정렬/이동/삭제 |
| 플레이리스트 임시 저장 | WebView2 사용자 데이터 영역의 localStorage |
| WinForms 단축키 | Web UI F2 / F8 / Esc 처리 |
| 직접 DBManager 호출 | Core의 IDataQueryExecutor 경계 |
Data/Request SQL 정의 |
.NET 8 Core 프로젝트로 71개 이관 |
| AnyCPU/x86 혼재 | 솔루션 및 게시 프로필 x64 단일화 |
| 상대 경로 Web 파일 | MSIX Content 및 안전한 가상 호스트 매핑 |
WebView는 https://app.mbn.local 가상 호스트로 패키지 내부 파일만 제공합니다. 외부 탐색은 WebView 안에서 차단하고 기본 브라우저로 넘기며, 개발자 도구와 기본 컨텍스트 메뉴는 디버거가 연결된 경우에만 활성화합니다.
다음 구현 경계
데이터베이스
IDataQueryExecutor를 구현하는 Oracle/MariaDB 어댑터- .NET 8 호환 공급자 선정 및 연결 검증
- 기존 문자열 조합 SQL의 매개변수화
- 비동기 실행, 취소, 타임아웃, 재연결 정책
- Credential Locker/DPAPI 등 승인된 비밀 저장 방식
Tornado/K3D
- 설치된 x64 COM 타입 라이브러리에서 재현 가능한 Interop 생성
IPlayoutEngine경계로 COM 형식 격리- STA 호출 직렬화와 프로세스 재연결
- MSIX 환경의 COM 활성화 및 벤더 재배포 조건 확인
- 기존
StartsWith("Tornado2")프로세스 탐지 변경 반영
화면 기능
- Oracle 플레이리스트 영구 저장/불러오기
- 10개 업무 탭의 실제 데이터 바인딩
- 테마, 전문가, VI, 비교, 수동 그래프 편집기
- 35개 장면 빌더의 단계별 포팅
- 실제 Preview 이미지 및 씬/영상 자산 연결
의도적으로 제외한 항목
- WinForms
*.Designer.cs,*.resx - FarPoint DLL과 라이선스 파일
Interop.K3DAsyncEngineLib.dll복사본- 원본
App.config바인딩 리디렉션 - 실제 DB 주소, 계정, 암호가 들어 있는 INI
- Git에서 관리되지 않던 약 212MB의 Tornado 컷/영상 자산
이 항목들은 WinUI/WebView/MSIX 경계에 맞춰 재구현하거나, 정식 라이선스 및 운영 자산 위치가 확인된 뒤 어댑터 형태로 연결합니다.