Что означает "C:2\" в строке пути Windows?
Я получил это всплывающее окно от брандмауэра Windows. Что такое "C:2\" в пути? Настоящий путь D:\Steam\SteamApps\common\...
Я старался cd /d C:2\
в CMD и получил "The system cannot find the path specified."
Я тоже пробовал cd C:2\
в Powershell и получил "Set-Location : Cannot find path 'C:\2\' because it does not exist."
Так как же "C:2\" является ярлыком для "D:\"?
Обновить:
Я пытался найти C:2
в реестре, как предложил @Tyson. Есть много нерелевантных результатов поиска, когда я ищу C:2
в реестре с параметром "Совпадение только по всей строке" не отмечен, а с параметром "Совпадение только по всей строке" нет результатов. И все же я нашел ключ, он в HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules
и его ценность v2.10|Action=Allow|Active=TRUE|Dir=In|Protocol=17|Profile=Private|App=C:2\steam\steamapps\common\sonic & all-stars racing transformed\asn_app_pcdx9_final.exe|Name=asn_app_pcdx9_final.exe|Desc=asn_app_pcdx9_final.exe|Defer=User|
, Есть правило для D:\Steam\SteamApps\common\Sonic & All-Stars Racing Transformed\ASN_App_PcDx9_Final.exe
в Windows Firewall with Advanced Security > Inbound Rules
, Я также нашел правило для Team Fortress 2, которое v2.10|Action=Allow|Active=TRUE|Dir=In|Protocol=6|Profile=Private|App=C:0\steam\steamapps\common\team fortress 2\hl2.exe|Name=hl2.exe|Desc=hl2.exe|Defer=User|
в реестре и D:\Steam\SteamApps\common\Team Fortress 2\hl2.exe
в списке правил брандмауэра Windows. Другие игры установлены в D:\Steam\...
иметь D:\
как в реестре, так и в правилах брандмауэра Windows. Так что, вероятно, Steam создает псевдонимы для дисков, отличных от C:\, но я хотел бы знать, как это работает, и почему в одном случае это было C:2\
, в другой C:0\
а в третьем просто D:\
, Я предполагаю, что это, вероятно, потому, что это внешний жесткий диск, и иногда Steam не мог найти его в тот момент, когда Windows проснулась после сна, поэтому Steam назначил для него разные псевдонимы.
Но что на самом деле заставляет эти псевдонимы работать? Там нет папок называется 2
или же 0
, это просто D:\Steam\...
3 ответа
#1 ОБЪЯВЛЕНИЯ
Может ли это быть файл с именем C, который на самом деле является соединением (символическая ссылка), доступным из PATH приложения, и для которого есть альтернативный поток NTFS ADS (альтернативный поток данных), так что C:1, C:2, C:3 и т. д. будет разрешать в другом месте? Поскольку Steam большую часть своего существования ограничивался установкой на один диск, возможно, это был хакерский обходной путь для поддержки перемещения игр?
Основная проблема: я не знаю, что ADS работал с папками, ярлыками, ссылками или переходами. Однако, если бы это было так, это приблизило бы его к этому синтаксису.
# 2 Относительный путь
По ссылке, размещенной KingZoingo, мы видим, что C: может быть текущим относительным путем:
"C:tempdir\tmp.txt" refers to a file in a subdirectory to the current directory on drive C.
Поскольку допустимо называть папку или узел "2", это также приведет к этому синтаксису.
Основная проблема: я ожидал, что Брандмауэр покажет фактический абсолютный путь.
Неявный вопрос здесь, я думаю, c:2\foo
законно в Windows. Google здесь не поможет, потому что строки поиска слишком распространены. Но MSDN полезен и подтверждает, что это не так. Смотрите их страницу здесь. Так что это еще одна точка данных в поддержку вашего клиента Steam, пишущего над записью. Возможно, он пытается рассказать вам свое мнение об игре:)
Не видя, что на самом деле находится в памяти процесса, трудно сказать.
Вообще говоря, программа может делать много дерьма для своей собственной памяти, включая изменение или удаление "Командной строки", с которой она была выполнена. Или выполнение дочернего процесса. (Насколько я помню, каждый раз, когда он запускается, Steam делает все возможное, проверяет наличие обновлений и перезапускает себя, пока все не утратит смысл.)
Короче говоря: даже если сам синтаксис этой строки несколько "легален", реальность может быть чем угодно. Не может быть решающего ответа, пока кто-то с лучшими инструментами не столкнется с той же самой проблемой и не исследует это лично.