Plugin
VIZZARD 응용 프로그램과 상호 동작하여
확장 가능한 기능을 구현할 수 있는 환경을 제공합니다.
Plugin Architecture
Figure 1 : Plugin Architecture

개발을 위한 순서 및 활용
- Plugin 개발을 위한 일반적인 절차입니다.
Figure 2 : Plugin 개발 절차
ℹ️ 참고
- Plugin License 설정은 VIZZARD가 설치된 폴더
(VIZZARD.exe 파일이 있는 폴더)에PluginSignTool.lic파일을 복사합니다.Plugin.xml파일은 VIZZARD 설치 폴더 하위 Addins 폴더에 복사합니다.- Plugin 서명은 구현 완료 후 최종 사용자 배포 직전에 수행합니다.
Plugin 활용 절차 (최종 사용자)
Figure 3 : Plugin 활용 절차
ℹ️ 참고
- 서명된 Plugin 파일들은 최종 사용자 PC의 지정된 위치에 복사하며,
해당 위치는Plugin.xml에서 관리됩니다.Plugin.xml파일은 VIZZARD 설치 폴더 하위 Addins 폴더에 복사합니다.
동작 과정
Figure 4 : Plugin 로딩
- VIZZARD 구동이 시작되면
Plugin.xml파일의 존재 여부를 확인합니다. Plugin.xml파일이 존재하는 경우, 정의된 항목들을 순서대로 인스턴스화합니다.
ℹ️ 참고
- Plugin 라이선스가 있는 경우 서명되지 않은 모듈도 로딩 가능합니다.
- Plugin 라이선스가 없는 경우 서명된 모듈만 로딩 가능합니다.
- Plugin 모듈 초기화 시, 필요한 DLL이 없는 경우 해당 모듈은 초기화에 실패합니다.
- 모든 초기화가 완료되면, VIZZARD는 각 모듈에
애플리케이션 초기화 완료 이벤트
OnInitializedAppEvent 를 전달합니다.
Plugin 종류
| 구분 | 기본 객체 | 설명 |
|---|---|---|
| Plugin | UserControl | 리본 메뉴에 기본 버튼 메뉴 생성 |
| SHControl | Class | 기본 UI는 없으며, 필요 시 구현 |
| KIOSK | UserControl | KIOSK 모드 전용 Plugin |
제품별 Plugin 실행 및 구현
| 제품 | Plugin 실행 | Plugin 개발 | 비고 |
|---|---|---|---|
| VIZZARD Standard | O | X | 서명된 Plugin만 실행 |
| VIZZARD Manager | O | X | 서명된 Plugin만 실행 |
| VIZZARD Manager + API | O | O | 서명되지 않은 Plugin도 실행 가능 |
Plugin 구현에 필요한 항목
| 구분 | 파일 | 비고 |
|---|---|---|
| VIZZARD Manager | ||
| Plugin 서명 도구 | PluginSignTool.exe | 구현된 Plugin Class Library를 인증 |
| Plugin 개발 라이선스 파일 | PluginSignTool.lic | Plugin 서명 도구 실행을 위한 라이선스 VIZZARD Manager 적용 시 Plugin을 서명 없이 실행 가능 |