Phase 2: MSIX 패키지 + IExplorerCommand 셸 익스텐션
C++ 셸 익스텐션 (src/EverythingToJpeg.Shell/) - WRL RuntimeClass 패턴으로 IExplorerCommand 두 핸들러 구현 - Quick(빠른 변환) / Dialog(설정 창) verb를 다른 CLSID로 분리 - Invoke()에서 EverythingToJpeg.exe로 verb + 파일 경로 전달 - VS 2026 빌드 검증, /utf-8 한글 라벨 지원 MSIX 패키징 (packaging/) - Package.appxmanifest: com:SurrogateServer + desktop4:FileExplorerContextMenus - 26개 확장자 × 2 verb 자동 노출 - BuildMsix.ps1: dotnet publish + msbuild + makeappx 일관 파이프라인 - CreateDevCert.ps1 / Install-EverythingToJpeg.ps1: 자체 서명 인증서 워크플로 - GenerateAssets.ps1: placeholder 로고 자동 생성 CI/CD - .github/workflows/release.yml: 태그 푸시 시 미서명 MSIX 자동 빌드 + 첨부 검증 - 50MB MSIX 산출 확인 (packaging/dist/EverythingToJpeg-x64.msix) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
8fa4a613d7
commit
f2c8610ff6
19 changed files with 973 additions and 41 deletions
41
packaging/Install-EverythingToJpeg.ps1
Normal file
41
packaging/Install-EverythingToJpeg.ps1
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
#Requires -Version 5.1
|
||||
#Requires -RunAsAdministrator
|
||||
# 5대 PC에서 MSIX 사이드로드 설치 — 1회 셋업 스크립트.
|
||||
# 사용법:
|
||||
# PowerShell (관리자) > .\Install-EverythingToJpeg.ps1 -PfxPath .\EverythingToJpeg-DevCert.pfx -MsixPath .\EverythingToJpeg.msix
|
||||
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter(Mandatory)] [string]$PfxPath,
|
||||
[Parameter(Mandatory)] [string]$MsixPath,
|
||||
[securestring]$PfxPassword
|
||||
)
|
||||
|
||||
$ErrorActionPreference = 'Stop'
|
||||
|
||||
if (-not (Test-Path $PfxPath)) { throw "PFX 파일을 찾을 수 없습니다: $PfxPath" }
|
||||
if (-not (Test-Path $MsixPath)) { throw "MSIX 파일을 찾을 수 없습니다: $MsixPath" }
|
||||
|
||||
if (-not $PfxPassword) {
|
||||
$PfxPassword = Read-Host -AsSecureString -Prompt 'PFX 비밀번호'
|
||||
}
|
||||
|
||||
Write-Host '[1/3] 인증서를 LocalMachine\TrustedPeople에 임포트…'
|
||||
$importResult = Import-PfxCertificate `
|
||||
-CertStoreLocation 'Cert:\LocalMachine\TrustedPeople' `
|
||||
-FilePath $PfxPath `
|
||||
-Password $PfxPassword
|
||||
Write-Host " Thumbprint: $($importResult.Thumbprint)"
|
||||
|
||||
Write-Host '[2/3] 인증서를 LocalMachine\Root에도 임포트 (체인 신뢰)…'
|
||||
Import-PfxCertificate `
|
||||
-CertStoreLocation 'Cert:\LocalMachine\Root' `
|
||||
-FilePath $PfxPath `
|
||||
-Password $PfxPassword | Out-Null
|
||||
|
||||
Write-Host '[3/3] MSIX 패키지 설치…'
|
||||
Add-AppxPackage -Path $MsixPath -ForceApplicationShutdown
|
||||
|
||||
Write-Host ''
|
||||
Write-Host '✅ 설치 완료. Win11 메인 우클릭 메뉴에 "JPEG로 빠른 변환" / "JPEG로 변환…" 항목이 보일 겁니다.'
|
||||
Write-Host ' (탐색기 재시작이 필요할 수 있음: 작업 관리자 → "Windows 탐색기" 다시 시작)'
|
||||
Loading…
Add table
Add a link
Reference in a new issue