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

如何在Pharo环境中打开Windows系统的文件及资源管理器?

在Pharo中Windows 10下打开文件/资源管理器的实用方案

方案1:用Pharo自带的Win32Shell API(推荐,无需额外装库)

Pharo本身内置了调用Windows底层API的能力,不用依赖第三方库,稳定性更高,适合新手操作:

  • 打开PDF、WAV这类系统已注册的文件:
    把代码里的文件路径换成你自己的直接运行即可:

    | filePath |
    filePath := 'C:\Users\你的用户名\Desktop\test.pdf'. "换成WAV或其他文件路径也适用"
    Win32Shell shellExecute: 'open' file: filePath parameters: '' directory: '' show: 1.
    

    小提示:show: 1代表正常窗口打开,改成3是最大化窗口,2是最小化窗口,可按需调整。

  • 打开资源管理器到指定文件夹:

    | folderPath |
    folderPath := 'C:\你的项目文件夹路径'.
    Win32Shell shellExecute: 'open' file: folderPath parameters: '' directory: '' show: 1.
    

    若想打开资源管理器默认界面,把folderPath改成空字符串''就行。

方案2:修复Pharo-OS-Windows的使用问题

你之前用WinShell shellOpen:无反应,大概率是调用方式或版本匹配的问题:

  • 先检查路径:确保路径没有中文或特殊字符,用标准Windows格式(比如C:\test.pdf,别用斜杠/)。
  • 试试带完整参数的调用方式:
    WinShell shellOpen: 'C:\pharo.pdf' withParameters: '' inDirectory: '' show: SW_SHOWNORMAL.
    
    如果还是不行,可能是库和你的Pharo版本不兼容,重新加载对应版本的Pharo-OS-Windows即可(比如Pharo 11/12对应最新版库)。

方案3:命令行调用(兜底方案)

Windows的start命令可以直接唤起系统默认程序,Pharo里用SystemCommandLine执行即可:

  • 打开文件:
    | command |
    command := 'start "" "C:\Users\你的用户名\Desktop\test.wav"'.
    SystemCommandLine run: command.
    
    注意:中间的""是占位窗口标题,必须添加,不然路径带空格会出错。
  • 打开资源管理器:
    SystemCommandLine run: 'start explorer.exe "C:\你的文件夹路径"'.
    

新手踩坑提醒

  1. 优先使用绝对路径,别用相对路径,避免Pharo找不到目标文件/文件夹。
  2. 测试时先选桌面这类确定存在的简单文件,路径要写全写对。
  3. 要是代码没报错但无反应,试试右键以管理员身份运行Pharo,部分路径需要权限才能访问。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 00:12:42