Spyder WinPython Portable: pywintypes.error: (2, 'GetShortPathNameW', ...) USERPROFILE на USBPython

Программы на Python
Ответить
Anonymous
 Spyder WinPython Portable: pywintypes.error: (2, 'GetShortPathNameW', ...) USERPROFILE на USB

Сообщение Anonymous »

Контекст
Я использую WinPython (v3.13.8.0) с USB-накопителя. Моя цель — сделать его полностью переносимым, гарантируя, что в локальном каталоге C:\Users\Name\ не будут создаваться папки конфигурации (такие как .spyder-py3, .ipython и т. д.).
​Настройка
Я изменил файл WinPython.ini, чтобы перенаправить переменные среды в папку настроек на USB-накопителе:

Код: Выделить всё

[env.bat]
SPYDER_CONFDIR = %WINPYDIRBASE%\settings\.spyder-py3
JUPYTER_DATA_DIR = %WINPYDIRBASE%\settings\jupyter_data

[environment]
HOME = %WINPYDIRBASE%\settings
USERPROFILE = %HOME%
TEMP = %HOME%\temp
TMP = %HOME%\temp
Проблема
Когда я запускаю Spyder, консоль IPython не запускается и выдает следующую обратную трассировку:

Код: Выделить всё

Traceback (most recent call last):

File "...\spyder\plugins\ipythonconsole\widgets\main_widget.py", line 1441, in \_connect_new_client_to_kernel

kernel_spec.env = future.result()

File "...\spyder\plugins\ipythonconsole\utils\kernelspec.py", line 275, in env

env_vars["tmp"] = GetShortPathName(env_vars["tmp"])

pywintypes.error: (2, 'GetShortPathNameW', 'The system cannot find the file specified.')
Наблюдения
​Ошибка сохраняется даже после создания вручную папки \settings\temp на USB-накопителе.
​Если я верну USERPROFILE к пути Windows по умолчанию, это работает, но оставляет следы на главном компьютере (чего я хочу избежать).
​Я переместил папку WinPython в папку корень USB (

Код: Выделить всё

D:\WPy64...
), чтобы избежать проблем с длинным путем, но ошибка остается.
Вопрос
Как заставить Spyder/IPython принимать переносимый путь TEMP на USB-накопителе, не вызывая при этом ошибку GetShortPathNameW? Существует ли особый способ, которым WinPython обрабатывает короткие имена на дисках FAT32/exFAT, который может быть причиной этого?

Подробнее здесь: https://stackoverflow.com/questions/798 ... amew-userp
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»