You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell使用变量拼接路径打印PNG文件失败如何解决?

问题根源

PowerShell的字符串规则中,单引号包裹的内容会被当作纯字面量处理,不会解析内部的$变量,你写的'/p $folder$photo /pt "Microsoft Print to PDF"'里的$folder、$photo没有被替换成实际路径值,系统只能将其识别为相对路径,到当前用户目录下查找,自然会报错。

解决方案

方案1:使用双引号包裹参数+转义内部引号

双引号支持变量解析,内部需要嵌套引号时用反引号`转义即可:

$photo = "5555.png"
$folder = "D:\simplecodegenerator\"

Start-Process -filepath "C:\windows\system32\mspaint.exe" -argumentlist "/p `"$folder$photo`" /pt `"Microsoft Print to PDF`""

方案2(更稳妥,避免路径空格问题):先拼接完整路径,用数组传参

将ArgumentList按参数拆分作为数组传递,PowerShell会自动处理空格和引号转义,出错概率更低:

$photo = "5555.png"
$folder = "D:\simplecodegenerator\"
# 用Join-Path拼接路径,自动处理分隔符兼容问题
$fullPath = Join-Path -Path $folder -ChildPath $photo

Start-Process -filepath "C:\windows\system32\mspaint.exe" -ArgumentList @(
    '/p',
    $fullPath,
    '/pt',
    "Microsoft Print to PDF"
)

内容的提问来源于stack exchange,提问作者Edwin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 07:54:04