使用“拖放”方法时,Media Player Classic 无法播放名称过长的视频

使用“拖放”方法时,Media Player Classic 无法播放名称过长的视频

当我双击一个过长名称的文件时,它会按预期播放,但是当我将同一个文件拖放到 MPC 窗口时,它不会播放,并且显示“未找到文件”。

除了使用较短的名称之外,还有其他解决方案吗?

答案1

阅读一些源代码后,我得出了以下几行

for (UINT iFile = 0; iFile < nFiles; iFile++) {
    CString fn;
    fn.ReleaseBuffer(::DragQueryFile(hDrop, iFile, fn.GetBuffer(MAX_PATH), MAX_PATH));
    slFiles.AddTail(fn);
}

MAX_PATH 如果来自标准 Windows API,其限制为 260 个字符长,因此这是拖放的限制,除非您修改它。从文档

在 Windows API 中(以下段落中讨论的一些例外情况),路径的最大长度为 MAX_PATH,定义为 260 个字符。本地路径的结构顺序如下:驱动器号、冒号、反斜杠、以反斜杠分隔的名称组件以及终止空字符。

相关内容