昨天还好好的,今天编译的时候突然提示:
文件名、目录名或卷标语法不正确。
不管是bulid还是rebuild都一样,目录我确认没问题
应该能正常编译才对
@admin 求大佬解惑
myworldx
插件生成的命令只有一对引号包裹,而你的有两个,你需要检查你的终端设置是否有问题,检查是否修改了 vscode 有关终端的设置
正常应该是这样的:/C 之后只有一个引号
Magic myworldx
microsoft/vscode#214931
似乎这是 vscode 自身的问题,插件使用 vscode-task 发送命令。
你可以试一下将 vscode 回退到旧的版本。比如我正在使用的版本:
如果你不打算回退版本,请关闭该选项,这将导致命令直接被发送到终端,而不是 Task,应该可以暂时绕过该问题:
我也遇到一樣的狀況,並且找不到終端機是那邊的設置出問題,求解~
admin 謝謝大老,問題解決了~
admin 按照您的要求取消,我现在可以编译成功了,但是无法烧录,系统提示无法找到指定路径
admin 谢谢大佬,解决了,今天(2025年8月8日 )怎么搜索都搜索不到相关的解释和处理办法,按照你 说的弄好了 ^_^
老哥解决了吗。我也这样,昨天好好的
我也是突然遇到这个问题,昨天还好好的
昨天正常,今天刚出现这个问题,可以编译成功(关闭vscode-task 发送命令),但是无法烧录。
HuiKeIOT 回退至1.102.3版本正常编译下载,也不需要关闭vscode-task。可以理解为VScode软件抽风。
HuiKeIOT 感谢大佬给出直接有效的方案,让我快速解决我的问题
baixiaosheng Jerry gaoguobin a5999901 HuiKeIOT
对于该问题我已经提出了相关 issue,如果确认该变化vscode后续不会修改,那么稍后我会发布新的版本来修复该问题。
microsoft/vscode#260534
回退退至1.102.3版本完美解决这个问题,感谢大佬,爱了爱了!
貌似这个问题VsCode未来也不会退回到之前的那种Shell Task:
VS Code 这次是“行为一致性”而非 API 破坏:统一 shell 任务参数的自动引用,减少跨平台/含空格路径被拆分的问题;旧版本的“宽松”其实是不确定行为,所以不被视为需要维持的兼容契约。结果是:那些自己手动拼好并加引号、又依赖旧行为不再包第二层的扩展/任务被暴露出问题,表现为双引号、空命令或尾部多余引号。 要点: API 未变:tasks.json、ShellExecution 仍旧;变的是内部对 command/args 的规范化策略。 官方倾向“可预期正确”优先于维持对未声明行为的兼容。 受影响场景集中在:扩展返回整行且已含首尾引号;或把带引号的大串当成单个 arg。 缓解/迁移建议给扩展作者: 若当前用 ShellExecution(commandStringWithQuotes) 且再让 VS Code 拆分 → 改成 ShellExecution(fullLineLiteral)(单字符串版本)或 ShellExecution(exec, args[]) 且不自加引号。 不要在 args 里出现已经整体加引号的参数;仅传裸值,交给 VS Code。 避免把带空格参数再包一层 "" 然后作为更大串的一部分。
VS Code 这次是“行为一致性”而非 API 破坏:统一 shell 任务参数的自动引用,减少跨平台/含空格路径被拆分的问题;旧版本的“宽松”其实是不确定行为,所以不被视为需要维持的兼容契约。结果是:那些自己手动拼好并加引号、又依赖旧行为不再包第二层的扩展/任务被暴露出问题,表现为双引号、空命令或尾部多余引号。
要点:
API 未变:tasks.json、ShellExecution 仍旧;变的是内部对 command/args 的规范化策略。
官方倾向“可预期正确”优先于维持对未声明行为的兼容。
受影响场景集中在:扩展返回整行且已含首尾引号;或把带引号的大串当成单个 arg。
缓解/迁移建议给扩展作者:
若当前用 ShellExecution(commandStringWithQuotes) 且再让 VS Code 拆分 → 改成 ShellExecution(fullLineLiteral)(单字符串版本)或 ShellExecution(exec, args[]) 且不自加引号。
不要在 args 里出现已经整体加引号的参数;仅传裸值,交给 VS Code。
避免把带空格参数再包一层 "" 然后作为更大串的一部分。
admin 好的,关闭自动更新,退回1.102.3版本暂时解决,谢谢大佬
文件名、目录名或卷标语法不正确。 我也遇到了,回退vscode先。
谢谢大佬,今天更新1.103就出问题了,现在看到解决方法了