Repository navigation
Description
Brief summary
NVDA exits during startup when its portable copy is stored under a sufficiently long directory path. The failure occurs while loading the WinRT Bluetooth extension module.
Steps to reproduce
-
Quit all running NVDA instances.
-
Under
D:\NVDA_LONG_TEST, create a directory whose name contains exactly 180 lowercasencharacters. -
Copy the NVDA portable directory into it.
-
Set
portableRootto the copied NVDA directory and verify the path lengths:$portableRoot = 'D:\NVDA_LONG_TEST\' + ('n' * 180) + '\NVDA2026.3beta1' $portableRoot.Length (Join-Path $portableRoot 'winrt._winrt_windows_devices_bluetooth.pyd').Length
The output should be:
214 257 -
Start NVDA with add-ons disabled and debug logging enabled:
& (Join-Path $portableRoot 'nvda.exe') ` --disable-addons ` --debug-logging ` --log-file (Join-Path $env:TEMP 'nvda-long-path.log')
Actual behavior
NVDA exits with code 1 before the main window and system tray icon become available. No speech is produced.
The log contains an error similar to:
ImportError: DLL load failed while importing _winrt_windows_devices_bluetooth:
The filename or extension is too long
The failing module is:
winrt._winrt_windows_devices_bluetooth.pyd
Expected behavior
NVDA should complete startup. Failure to load Bluetooth support should not terminate the entire NVDA process.
NVDA logs, crash dumps and other attachments
No response
NVDA type
portable copy, installer/launcher copy
NVDA version
NVDA 2026.1 and NVDA 2026.3beta1.
Have you tried any other versions of NVDA? If so, please report their behaviors.
None
Windows version
Windows 10 Pro 22H2, build 19045, 64-bit.
Name and version of other software in use when reproducing the issue
Windows PowerShell. No other application is required.
Other information about your system
The portable copy is stored on the local D: drive.
Does the issue still occur after restarting your computer?
I have restarted my computer and the issue still occurs
If NVDA add-ons are disabled, is your problem still occurring?
I have restarted NVDA with add-ons disabled and the issue still occurs
Does the issue still occur after you run the System Accessibility Repair Tool (COM Registration Fixing Tool in older versions) in NVDA's tools menu?
I have run the System Accessibility Repair Tool and the issue still occurs
Activity
seanbudd commentedon Sep 18, 2026
I think this should be temporarily fixed in 2026.3 when #20832 lands, however @bramd will need to fix this before #19122 lands. This might need to be reported upstream as we might not own the code that's causing the issue?
cary-rowen commentedon Sep 18, 2026
Hi @seanbudd
There is also #20841; if #20841 is not fixed, it may still prevent NVDA starting.
bramd commentedon Sep 18, 2026
@cary-rowen Under NVDA Version you mention 2026.1 and 2026.3 beta1. However, under "Other versions tested" you don't mention 2026.1. The module is not there in 2026.1, so I understand this specific issue can't occur, but if NVDA 2026.1 is also not loading in a very long path it's at least not a user facing regression. Given the issue you reported in #20841 I suspect NVDA 2026.1 will also not start in this case?
cary-rowen commentedon Sep 18, 2026
Hi @bramd
Yes, that's right; there's still a lot of work to be done on NVDA's support for long paths.
bramd commentedon Sep 27, 2026
Thanks for the clarification @cary-rowen. In that case, I'd say this is not a regression and unless we make long path support suddenly a feature for this release it is not release blocking. Agreed @seanbudd?
seanbudd commentedon Sep 28, 2026
Yes thanks for investigating @bramd and @cary-rowen , let's try and solve them both in 2027.1 if we can