Created attachment 20290 [details] Сама ошибка # Ошибка При запуске прямого транспорта SPICE выводит ошибку "expected str, bytes, os.PathLike but not tuple" со стороны UDSClient # Возможная проблема В скрипте openuds/uds/transports/SPICE/scripts/windows/direct.py идет набор в переменную extraPaths типа tuple для сборки всех virt-viewer со стороны UDSClient. Внутри UDSClient uds/tools.py в функции find_application перед тем как объединить extra_path идет получение с переменной среды `os.environ['PATH']`, но разделена функцией split: ``` searchPath = os.environ['PATH'].split(os.pathsep) # searchPath is a list. wtf?! where safe? `.get("PATH", "").split(os.pathsep)` ``` После идет проверка на пустоту, где идет добаление элементов tuple в list, но добавляется как значение, а не конкатенация массива, ожидается строка # Логи DEBUG 2025-12-09 13:54:35,590 Platform info: DEBUG 2025-12-09 13:54:35,590 UDSClient version: 4.0.0 DEBUG 2025-12-09 13:54:35,838 Platform: Windows-10-10.0.19044-SP0 DEBUG 2025-12-09 13:54:35,838 Node: windows10-DEBUGGER-MACHINE DEBUG 2025-12-09 13:54:35,838 System: Windows DEBUG 2025-12-09 13:54:35,838 Release: 10 DEBUG 2025-12-09 13:54:35,838 Version: 10.0.19044 DEBUG 2025-12-09 13:54:35,838 Machine: AMD64 DEBUG 2025-12-09 13:54:35,838 Processor: Intel64 Family 6 Model 165 Stepping 3, GenuineIntel DEBUG 2025-12-09 13:54:35,838 Architecture: ('64bit', 'WindowsPE') DEBUG 2025-12-09 13:54:35,839 Python version: 3.13.7 DEBUG 2025-12-09 13:54:35,839 Python implementation: CPython DEBUG 2025-12-09 13:54:35,839 Python compiler: MSC v.1944 64 bit (AMD64) DEBUG 2025-12-09 13:54:35,839 Python build: ('tags/v3.13.7:bcee1c3', 'Aug 14 2025 14:15:11') DEBUG 2025-12-09 13:54:35,839 Qt framework: PySide6 DEBUG 2025-12-09 13:54:35,839 Log level set to DEBUG DEBUG 2025-12-09 13:54:35,839 Environment variables: DEBUG 2025-12-09 13:54:35,839 ALLUSERSPROFILE=C:\ProgramData DEBUG 2025-12-09 13:54:35,839 APPDATA=C:\Users\TESTER\AppData\Roaming DEBUG 2025-12-09 13:54:35,839 COMMONPROGRAMFILES=C:\Program Files\Common Files DEBUG 2025-12-09 13:54:35,839 COMMONPROGRAMFILES(X86)=C:\Program Files (x86)\Common Files DEBUG 2025-12-09 13:54:35,839 COMMONPROGRAMW6432=C:\Program Files\Common Files DEBUG 2025-12-09 13:54:35,839 COMPONENT_INSTALLER_DIR=C:\Users\TESTER\AppData\Local\Microsoft\Edge\User Data DEBUG 2025-12-09 13:54:35,839 COMPUTERNAME=WINDOWS10-DEBUGGER-MACHINE DEBUG 2025-12-09 13:54:35,840 COMSPEC=C:\Windows\system32\cmd.exe DEBUG 2025-12-09 13:54:35,840 DRIVERDATA=C:\Windows\System32\Drivers\DriverData DEBUG 2025-12-09 13:54:35,840 EDGE_BROWSER_PID=11648 DEBUG 2025-12-09 13:54:35,840 EDGE_CRASHPAD_PIPE_NAME=\\.\pipe\crashpad_11648_ZRCTVNEIVEEDWCKR DEBUG 2025-12-09 13:54:35,840 EDGE_METRICS_CLIENT_ID_HASH=-8580487689746786014 DEBUG 2025-12-09 13:54:35,840 EDGE_METRICS_SESSION_ID=22 DEBUG 2025-12-09 13:54:35,840 EDGE_RUNTIME_VARIATIONS_SEED_ETAG="AKUqZyhHUXDuohnQ897PbFAKTzpdl9ymel7c75hdBRg=" DEBUG 2025-12-09 13:54:35,840 EDGE_USER_DATA_DIR=C:\Users\TESTER\AppData\Local\Microsoft\Edge\User Data DEBUG 2025-12-09 13:54:35,840 EDGE_UX_CONFIG_CORRELATION_ID=47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= DEBUG 2025-12-09 13:54:35,840 EDGE_VARIATIONS_SEED_ETAG="vaTAXTvuXwLB8roOtuZCPsOijBUGMTz8H8G/A9HJ064=" DEBUG 2025-12-09 13:54:35,840 FPS_BROWSER_APP_PROFILE_STRING=Internet Explorer DEBUG 2025-12-09 13:54:35,840 FPS_BROWSER_USER_PROFILE_STRING=Default DEBUG 2025-12-09 13:54:35,840 HOMEDRIVE=C: DEBUG 2025-12-09 13:54:35,840 HOMEPATH=\Users\TESTER DEBUG 2025-12-09 13:54:35,840 LOCALAPPDATA=C:\Users\TESTER\AppData\Local DEBUG 2025-12-09 13:54:35,840 LOGONSERVER=\\SERVER-TEST DEBUG 2025-12-09 13:54:35,840 NUMBER_OF_PROCESSORS=3 DEBUG 2025-12-09 13:54:35,840 NWLANGUAGE=RUSSKI DEBUG 2025-12-09 13:54:35,840 NWUSERNAME=student DEBUG 2025-12-09 13:54:35,840 ONEDRIVE=C:\Users\TESTER\OneDrive DEBUG 2025-12-09 13:54:35,840 ONEDRIVECONSUMER=C:\Users\TESTER\OneDrive DEBUG 2025-12-09 13:54:35,840 OS=Windows_NT DEBUG 2025-12-09 13:54:35,840 PATH=C:\Users\TESTER\AppData\Local\Temp\_MEI95402\PySide6;C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402;C:\Program Files (x86)\Microsoft\Edge\Application;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Users\TESTER\AppData\Local\Microsoft\WindowsApps;Y:.; DEBUG 2025-12-09 13:54:35,840 PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC DEBUG 2025-12-09 13:54:35,841 PROCESSOR_ARCHITECTURE=AMD64 DEBUG 2025-12-09 13:54:35,841 PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 165 Stepping 3, GenuineIntel DEBUG 2025-12-09 13:54:35,841 PROCESSOR_LEVEL=6 DEBUG 2025-12-09 13:54:35,841 PROCESSOR_REVISION=a503 DEBUG 2025-12-09 13:54:35,841 PROGRAMDATA=C:\ProgramData DEBUG 2025-12-09 13:54:35,841 PROGRAMFILES=C:\Program Files DEBUG 2025-12-09 13:54:35,841 PROGRAMFILES(X86)=C:\Program Files (x86) DEBUG 2025-12-09 13:54:35,841 PROGRAMW6432=C:\Program Files DEBUG 2025-12-09 13:54:35,841 PSMODULEPATH=C:\Program Files\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules DEBUG 2025-12-09 13:54:35,841 PUBLIC=C:\Users\Public DEBUG 2025-12-09 13:54:35,841 SESSIONNAME=Console DEBUG 2025-12-09 13:54:35,841 SYSTEMDRIVE=C: DEBUG 2025-12-09 13:54:35,841 SYSTEMROOT=C:\Windows DEBUG 2025-12-09 13:54:35,841 TEMP=C:\Users\TESTER~1\AppData\Local\Temp DEBUG 2025-12-09 13:54:35,841 TMP=C:\Users\TESTER~1\AppData\Local\Temp DEBUG 2025-12-09 13:54:35,841 USERDNSDOMAIN=TEST.DOMAIN DEBUG 2025-12-09 13:54:35,841 USERDOMAIN=TEST DEBUG 2025-12-09 13:54:35,841 USERDOMAIN_ROAMINGPROFILE=TEST DEBUG 2025-12-09 13:54:35,841 USERNAME=TESTER DEBUG 2025-12-09 13:54:35,841 USERPROFILE=C:\Users\TESTER DEBUG 2025-12-09 13:54:35,841 WINDIR=C:\Windows DEBUG 2025-12-09 13:54:35,841 WINDOWS_LOGIN=0 DEBUG 2025-12-09 13:54:35,842 _PYI_APPLICATION_HOME_DIR=C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402 DEBUG 2025-12-09 13:54:35,842 _PYI_ARCHIVE_FILE=C:\Program Files (x86)\UDSClient\UDSClient.exe DEBUG 2025-12-09 13:54:35,842 _PYI_PARENT_PROCESS_LEVEL=1 DEBUG 2025-12-09 13:54:35,842 QT_PLUGIN_PATH=C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\PySide6\plugins DEBUG 2025-12-09 13:54:35,842 QML2_IMPORT_PATH=C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\PySide6\qml DEBUG 2025-12-09 13:54:35,842 PYSIDE6_OPTION_PYTHON_ENUM=True DEBUG 2025-12-09 13:54:35,842 Python path: ['C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\base_library.zip', 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\python3.13\\lib-dynload', 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402'] DEBUG 2025-12-09 13:54:35,842 Python executable: C:\Program Files (x86)\UDSClient\UDSClient.exe DEBUG 2025-12-09 13:54:35,842 Python version: 3.13.7 (tags/v3.13.7:bcee1c3, Aug 14 2025, 14:15:11) [MSC v.1944 64 bit (AMD64)] DEBUG 2025-12-09 13:54:35,842 Python version info: sys.version_info(major=3, minor=13, micro=7, releaselevel='final', serial=0) DEBUG 2025-12-09 13:54:35,842 Python prefix: C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402 DEBUG 2025-12-09 13:54:35,842 Python base prefix: C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402 DEBUG 2025-12-09 13:54:35,842 Python executable: C:\Program Files (x86)\UDSClient\UDSClient.exe DEBUG 2025-12-09 13:54:35,842 Python argv: ['C:\\Program Files (x86)\\UDSClient\\UDSClient.exe', 'udss://***.***.***.***/cg92prwtrv2wr7bceyt3lquui97dn1feshuecrsz/5VXhHVyUjD3HA8Exr1MR1Br56lXK7Nwu'] DEBUG 2025-12-09 13:54:35,842 Python modules path: ['C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\base_library.zip', 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\python3.13\\lib-dynload', 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402'] DEBUG 2025-12-09 13:54:35,842 Python modules importer cache path: {'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\base_library.zip': <zipimporter object "C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\base_library.zip\">, 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\base_library.zip\\encodings': <zipimporter object "C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\base_library.zip\encodings\">, 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\python3.13\\lib-dynload': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\python3.13\lib-dynload), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\ctypes': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\ctypes), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\base_library.zip\\re': <zipimporter object "C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\base_library.zip\re\">, 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\importlib': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\importlib), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\zipfile': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\zipfile), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\pathlib': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\pathlib), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\zipfile\\_path': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\zipfile\_path), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\_pyi_rth_utils': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\_pyi_rth_utils), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\shiboken6': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\shiboken6), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\PySide6': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\PySide6), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\PySide6\\support': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\PySide6\support), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\urllib': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\urllib), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\uds': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\uds), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\uds\\ui': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\uds\ui), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\uds\\ui\\pyside6': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\uds\ui\pyside6), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\json': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\json), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\http': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\http), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\email': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\email), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography\\x509': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography\x509), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography\\hazmat': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography\hazmat), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography\\hazmat\\bindings': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography\hazmat\bindings), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography\\hazmat\\primitives': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography\hazmat\primitives), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography\\hazmat\\primitives\\asymmetric': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography\hazmat\primitives\asymmetric), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography\\hazmat\\primitives\\serialization': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography\hazmat\primitives\serialization), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography\\hazmat\\primitives\\ciphers': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography\hazmat\primitives\ciphers), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography\\hazmat\\decrepit': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography\hazmat\decrepit), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\cryptography\\hazmat\\decrepit\\ciphers': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\cryptography\hazmat\decrepit\ciphers), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\certifi': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\certifi), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\importlib\\resources': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\importlib\resources), 'C:\\Users\\TESTER~1\\AppData\\Local\\Temp\\_MEI95402\\psutil': PyiFrozenFinder(C:\Users\TESTER~1\AppData\Local\Temp\_MEI95402\psutil)} DEBUG 2025-12-09 13:54:35,843 Python modules hooks path: [<class 'zipimport.zipimporter'>, <bound method PyiFrozenFinder.path_hook of <class 'pyimod02_importers.PyiFrozenFinder'>>, <function FileFinder.path_hook.<locals>.path_hook_for_FileFinder at 0x00000201418509A0>] DEBUG 2025-12-09 13:54:35,843 Python modules meta path: [<class '_frozen_importlib.BuiltinImporter'>, <class '_frozen_importlib.FrozenImporter'>, <class '_frozen_importlib_external.PathFinder'>] DEBUG 2025-12-09 13:54:35,884 Initializing connector for win32(AMD64) DEBUG 2025-12-09 13:54:35,885 Arguments: ['C:\\Program Files (x86)\\UDSClient\\UDSClient.exe', 'udss://***.***.***.***/abcdefgh/abcdefgh'] DEBUG 2025-12-09 13:54:35,885 Mac OS *NOT* Detected DEBUG 2025-12-09 13:54:35,894 Setting request URL to https://***.***.***.***/uds/rest/client DEBUG 2025-12-09 13:54:35,894 Starting execution INFO 2025-12-09 13:54:36,639 Hostname: windows10-DEBUGGER-MACHINE DEBUG 2025-12-09 13:54:38,192 Transport data received ERROR 2025-12-09 13:54:38,209 Get Transport Data Traceback (most recent call last): File "UDSClient.py", line 172, in fetch_transport_data File "<string>", line 19, in <module> File "uds\tools.py", line 116, in find_application File "<frozen ntpath>", line 100, in join TypeError: expected str, bytes or os.PathLike object, not tuple ERROR 2025-12-09 13:54:38,210 Error: expected str, bytes or os.PathLike object, not tuple DEBUG 2025-12-09 13:54:39,951 ** Remote log data: , 0 DEBUG 2025-12-09 13:54:39,952 Main execution finished correctly: 0 DEBUG 2025-12-09 13:54:39,952 Exiting