问题标签 [pathtoolongexception]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows-server-2008 - PowerShell 5.0 PathTooLongException 错误
问题
接收 PathTooLongException - ... 完全限定的文件名必须少于 260 个字符,并且目录名必须少于 248 个字符。
操作系统
- Windows Server 2008 R2 企业版
PowerShell 版本
- PS版本 5.1.14409.1018
- 构建版本 10.0.14409.1018
- CLRVersion 4.0.30319.36543
- WSManStackVersion 3.0
- PSRemotingProtocolVersion 2.3
- 序列化版本 1.1.0.1
.NET 框架版本
- 4.5.51209
代码
到目前为止我尝试过的
1 - 设置位置“进一步进入文件夹树”(错误)
2 - Subst TEMP“文件夹进一步进入文件夹树”(错误)
3 - \计算机名\“文件夹进一步进入文件夹树”\(错误)
4 - 使用 2019 服务器,我可以将注册表编辑为“LongPathsEnabled = 1”,我还尝试使用 \?\UNC\ 方法并返回相同的错误。
也试过这段代码,仍然得到错误
询问我的主管是否可以升级到 PowerShell 6.0 或 7.0。
任何帮助或想法将不胜感激。
windows-10 - Net.Framework 4.7.2 和 Windows 10 中的长路径支持
为了解决路径限制为 255 个字符的问题,做了以下工作:
- Windows 10 2004 在“本地计算机策略”中包含“启用 Win32 长路径”。
- 在注册表分支中:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ FileSystem
setLongPathsEnabled
= 1 - 在 VS (Net.Framework 4.7.2) 中创建了一个项目
- 添加了清单文件 (app.manifest),包括
longPathAware
. - 片段
<AppContextSwitchOverrides value = "Switch.System.IO.UseLegacyPathHandling = false; Switch.System.IO.BlockLongPaths = false" />
被添加到 App.Config
但是PathToLong
在使用时仍然会发生异常System.IO
angular - ASP.NET Core - Windows 10 Pro - 发布到 IIS - 指定的路径、文件名或两者都太长
我正在尝试将带有 Angular 前端的 ASP.NET Core Web 应用程序发布到我的虚拟主机帐户。该项目使用 SSR,这会导致生成的文件以超过 260 个字符的路径结束。
通常我将解决方案文件夹直接放在我的C:\
驱动器中,以防止路径超过 260 个字符,这很好用。
昨天我购买了 Windows 10 Pro 并做了以下事情:
- gpedit.msc → 计算机配置 → 管理模板 → 系统 → 文件系统 → 启用 Win32 长路径 = 已启用
- Regedit → 定位
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\LongPathsEnabled
已设置为1
- 重新启动我的电脑
现在我正在尝试通过Web Deploy使用 Visual Studio (Administrator) 发布我的 ASP.NET Core with Angular 应用程序,但我仍然得到PathTooLongException
为什么这仍然发生?
编辑:
我尝试按照此处所述向我的项目添加清单文件,但它仍然无法正常工作:(我的项目中的 longpaths.manifest)
batch-file - Windows 文件 PathTooLongException:用于识别文件路径长于 255 的批处理文件
问题在我的 Windows 7 机器上的文件同步操作期间,
我有一些超出length=255
的文件路径显然无法处理(并且似乎会中断整个操作)。遇到的异常是PathTooLongException
所需的解决方案:
我想创建一个批处理文件来识别超过 255 的文件路径,并将它们输出到.txt
文件中(用于诊断审查)
更新 下面接受的解决方案完美运行。
这是我第一次发帖; 请善待
powershell - Powershell 5.1 - 文件名或扩展名太长。如何将具有动态参数的 1 个命令拆分为更多顺序调用?
问题:
在 powershell 5.1 中,我运行命令 ,并将逗号分隔的字符串列表(动态长度)myProgram
传递给它的标志,作为参数。通常有太多字符,有时是 125000 个字符,或更多或更少,其中可能会导致如下所示的错误。-itemsToProcess
$commaSeparatedList
$commaSeparatedList
$commaSeparatedList = 'file1,file2,file3,file4 ... fileX'
myProgram -itemsToProcess $commaSeparatedList
问题: 我怎样才能避免错误?我如何将其拆分为多个调用,以便永远不会引发错误?调用也必须是顺序的,而不是并行的。
上面的伪代码设置$commaSeparatedList
在字符长度短时工作正常/成功,但是如果它太长它会崩溃/失败/错误:
例如,动态生成的$commaSeparatedList
字符为 125k,可能更长或更短。
我们如何检测和避免错误?也许以某种方式将其拆分为多个myProgram -itemsToProcess
调用以避免错误? 那会是什么样子?