반응형 분류 전체보기252 PySide6 GUI 앱에서 multiprocessing.Queue와 Process 안전하게 종료하는 방법 PySide6 GUI 앱에서 multiprocessing.Queue와 Process 안전하게 종료하는 방법PySide6 기반 GUI 프로그램에서 multiprocessing.Process와 multiprocessing.Queue를 사용하는 경우, UI를 닫더라도 백그라운드 프로세스가 종료되지 않고 리소스를 점유하는 현상이 발생할 수 있습니다. 특히 PyInstaller로 EXE를 만들었을 때 더욱 민감하게 반응합니다. 이 글에서는 Queue와 Process를 정상 종료하는 방법과, 종료 이후 terminate()와 close()를 다시 호출하면 어떻게 되는지 실전 예제와 함께 설명합니다.✅ 문제 현상self.close() 또는 MainWindow.close() 호출 시 UI는 종료되지만,백그라운드에서 실.. 2025. 6. 11. NSIS 고급 활용 시리즈 ⑰ – 배포용 설치기 서명과 보안 적용 전략 NSIS 고급 활용 시리즈 ⑰ – 배포용 설치기 서명과 보안 적용 전략배포용 설치기는 일반적인 설치기와 달리 운영체제 보안 정책, 사용자 UAC 동의, 악성코드 탐지 회피 등을 고려해야 합니다.✅ 핵심 보안 항목 요약 항목 설명 디지털 서명Windows SmartScreen 우회 및 배포자 신뢰 확보관리자 권한 요청시스템 폴더 설치, 레지스트리 설정 시 필수무결성 보호설치기 위변조 방지실행 파일 제한경로 및 해시 기반 화이트리스트 확보🔏 ① 디지털 서명 (코드 서명)설치 프로그램에 디지털 서명을 하면 다음과 같은 효과가 있습니다:Windows SmartScreen 필터를 우회실행 시 “신뢰할 수 없는 배포자” 경고 제거실행 이력 추적 가능예: SignTool.exe로 서명하기signtool sign .. 2025. 6. 10. NSIS 고급 활용 시리즈 ⑯ – 설치기 디버깅과 배포 최적화: 로그, 경량화, 테스트 자동화 NSIS 고급 활용 시리즈 ⑯ – 설치기 디버깅과 배포 최적화: 로그, 경량화, 테스트 자동화설치기의 완성도를 높이기 위한 핵심 전략 3가지를 중심으로 설명합니다.디버깅 로그로 오류 위치 확인설치기 크기 줄이기 위한 경량화 기법자동화 테스트 구성으로 QA 효율화✅ 주요 전략 요약 항목 설명 디버깅 로그설치 중 메시지 추적, 사용자 문제 파악설치기 용량 최적화불필요 파일 제거, 압축률 조정테스트 자동화설치/제거 자동 실행, 결과 비교🐞 ① 디버깅 로그 및 콘솔 추적1. DetailPrint 메시지 사용DetailPrint "설치 시작됨: $SYSDATE $SYSTIME"2. LogSet on으로 설치 로그 활성화!include "FileFunc.nsh"LogSet on3. 사용자 로그 파일로 저장Fun.. 2025. 6. 9. NSIS 고급 활용 시리즈 ⑮ – 설치 환경 진단 페이지 만들기 (필수 구성 요소 자동 검사) NSIS 고급 활용 시리즈 ⑮ – 설치 환경 진단 페이지 만들기 (필수 구성 요소 자동 검사)이 글에서는 다음을 구현합니다:Windows 버전, .NET Framework, Visual C++ Redistributable 등 필수 조건 확인구성 요소 누락 시 설치 중단 또는 설치 링크 제공사용자 환경 진단 정보를 저장✅ 주요 기능 요약 진단 항목 설명 OS 버전최소 OS 조건 충족 여부 검사DLL 존재특정 시스템 파일 존재 여부.NET / VC++ 런타임버전 확인 후 안내로그 저장진단 결과 기록🧪 ① 시스템 구성 요소 체크 함수 예제1. Windows 버전 확인 (예: 최소 Windows 10)Function CheckWindowsVersion ClearErrors ${If} ${AtLeastWi.. 2025. 6. 9. NSIS 고급 활용 시리즈 ⑭ – 설치 실패 복구 전략: 롤백, 오류 알림, 진단 로그 NSIS 고급 활용 시리즈 ⑭ – 설치 실패 복구 전략: 롤백, 오류 알림, 진단 로그NSIS는 설치 도중 오류 발생 시 Abort로 설치를 중단하지만, 추가적인 예외 처리나 롤백 복원, 사용자 메시지, 오류 로그 저장을 통해 문제 상황에 대비할 수 있습니다.✅ 주요 전략 요약 기능 설명 설치 중단 감지.onInstFailed, Abort 사용파일 백업 및 롤백기존 파일 백업 후 실패 시 복원오류 메시지 제공사용자에게 오류 사유 표시진단 로그 저장오류 로그 파일을 남겨 분석 가능🛑 ① 설치 실패 후 호출되는 .onInstFailedFunction .onInstFailed MessageBox MB_ICONSTOP "설치 중 오류가 발생했습니다. 설치를 완료하지 못했습니다." ; 진단 로그 남기기 .. 2025. 6. 9. NSIS 고급 활용 시리즈 ⑬ – 자동 업데이트 설치기 만들기: 버전 체크 및 차등 패치 구성 NSIS 고급 활용 시리즈 ⑬ – 자동 업데이트 설치기 만들기: 버전 체크 및 차등 패치 구성자동 업데이트 설치기는 일반적으로 다음과 같은 흐름을 가집니다:서버에서 최신 버전 정보 확인현재 버전과 비교최신 버전이 있으면 설치 진행없으면 종료 또는 메시지 표시이번 글에서는 INI 파일 방식, HTTP 요청 방식, 그리고 차등 패치 구성을 모두 다룹니다.✅ 주요 기능 요약 기능 설명 서버 버전 확인INI 파일 또는 HTTP 텍스트로 버전 비교현재 설치 버전 확인로컬 레지스트리 또는 파일에서 읽음차등 패치필요한 파일만 다운로드 후 설치자동 실행업데이트 후 기존 앱 자동 재실행🧾 ① 서버 버전 정보 파일 구조 (INI 방식 예)서버에 아래와 같은 텍스트 파일을 두고, NSIS에서 다운로드해서 확인합니다:ve.. 2025. 6. 9. 이전 1 2 3 4 5 6 ··· 42 다음 반응형