feat: 初始提交——一键运行快捷轮盘工具(WPF + C#)
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
# 一键运行 - 启动冒烟验证脚本(PowerShell 7.6.5)
|
||||
$ErrorActionPreference = 'Stop'
|
||||
$exe = 'E:\002_Demo\One_click_run_wpf\src\OneClickRun\bin\Debug\net8.0-windows\OneClickRun.exe'
|
||||
if (-not (Test-Path $exe)) { throw "未找到构建产物: $exe" }
|
||||
|
||||
# 清理上次冒烟残留(仅本路径实例)
|
||||
Get-Process -Name 'OneClickRun' -ErrorAction SilentlyContinue |
|
||||
Where-Object { $_.Path -eq $exe } |
|
||||
ForEach-Object { Stop-Process -Id $_.Id -Force }
|
||||
|
||||
$logFile = Join-Path $env:APPDATA 'OneClickRun\logs\app-{0}.log' -f (Get-Date -Format 'yyyyMMdd')
|
||||
$logBefore = 0
|
||||
if (Test-Path $logFile) { $logBefore = (Get-Item $logFile).Length }
|
||||
|
||||
$p = Start-Process -FilePath $exe -PassThru
|
||||
Start-Sleep -Seconds 6
|
||||
$p.Refresh()
|
||||
$alive = -not $p.HasExited
|
||||
Write-Output "ProcessAlive: $alive"
|
||||
|
||||
$cfg = Join-Path $env:APPDATA 'OneClickRun\config.json'
|
||||
Write-Output "ConfigExists: $(Test-Path $cfg)"
|
||||
if (Test-Path $cfg) {
|
||||
$json = Get-Content $cfg -Raw | ConvertFrom-Json
|
||||
Write-Output "ConfigItems: $($json.items.Count)"
|
||||
Write-Output "HotkeyText: $($json.general.hotkey.modifiers -join '+')+$($json.general.hotkey.key)"
|
||||
Write-Output "TriggerMode: $($json.general.triggerMode)"
|
||||
Write-Output "SelectionMode: $($json.general.selectionMode)"
|
||||
Write-Output "Theme: $($json.general.theme)"
|
||||
}
|
||||
|
||||
Write-Output '--- 本次启动新增日志 ---'
|
||||
if (Test-Path $logFile) {
|
||||
$stream = [System.IO.File]::Open($logFile, 'Open', 'Read', 'ReadWrite')
|
||||
$reader = New-Object System.IO.StreamReader($stream)
|
||||
$reader.BaseStream.Seek($logBefore, 'Begin') | Out-Null
|
||||
$delta = $reader.ReadToEnd()
|
||||
$reader.Close(); $stream.Close()
|
||||
Write-Output $delta
|
||||
}
|
||||
|
||||
if ($alive) {
|
||||
Stop-Process -Id $p.Id -Force
|
||||
Write-Output 'ProcessStopped: true'
|
||||
}
|
||||
Write-Output 'SmokeDone'
|
||||
Reference in New Issue
Block a user