Was bedeutet "C: 2 \" in einer Windows-Pfadzeichenfolge?

14

Ich habe dieses Popup von der Windows-Firewall erhalten. Was ist "C: 2" im Pfad? Der wahre Weg istD:\Steam\SteamApps\common\...

Popup-Fenster des Windows-Firewall-Dialogfelds

Ich habe es cd /d C:2\in cmd versucht und bekam"The system cannot find the path specified."

Ich habe es auch cd C:2\in Powershell versucht und bekam"Set-Location : Cannot find path 'C:\2\' because it does not exist."

Wie ist "C: 2" eine Abkürzung für "D:"?

Aktualisieren:

Ich habe versucht, C:2in der Registrierung nach zu suchen , wie von @Tyson vorgeschlagen. Es gibt eine Menge irrelevanter Suchergebnisse, wenn ich C:2in der Registrierung nach "Nur ganze Zeichenfolge abgleichen" suche und keine Ergebnisse mit "Nur ganze Zeichenfolge abgleichen" aktiviert habe. Trotzdem habe ich den Schlüssel gefunden, er steckt darin HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\FirewallRulesund sein Wert ist 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|. Es gibt eine Regel für D:\Steam\SteamApps\common\Sonic & All-Stars Racing Transformed\ASN_App_PcDx9_Final.exein Windows Firewall with Advanced Security > Inbound Rules. Ich habe auch eine Regel für Team Fortress 2 gefunden, die sich 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|in der Registrierung und D:\Steam\SteamApps\common\Team Fortress 2\hl2.exein der Windows-Firewall-Regelliste befindet. Andere Spiele, die in installiert sind, D:\Steam\...haben D:\sowohl in der Registrierung als auch in der Windows-Firewall Regeln. So ist es wahrscheinlich, wie Steam Aliase für andere Laufwerke als C: \ erstellt, aber ich möchte wissen, wie es funktioniert und warum es in einem Fall C:2\in einem anderen C:0\und im dritten Fall nur so warD:\. Ich vermute, es liegt wahrscheinlich daran, dass es sich um eine externe Festplatte handelt, und manchmal konnte Steam sie nicht finden, sobald Windows nach dem Einschlafen aufwachte.

Aber warum funktionieren diese Aliase eigentlich? Es gibt keine Ordner namens 2oder 0, es ist nurD:\Steam\...

HAL 9000
quelle
3
Wenn ich eine Vermutung wagen würde. Steam hat aus irgendeinem Grund den falschen Speicherort gemeldet. Ich vermute, C: 2 \ ist eine dampfspezifische Syntax.
Ramhound
3
Technisch gesehen ist es ein gültiger Pfad. Es gibt das 2Unterverzeichnis im aktuellen Arbeitsverzeichnis des Laufwerks C an. Wenn die CWD auf dem C-Laufwerk kein solches Unterverzeichnis hat, können Sie natürlich keine CD darauf erstellen.
MSalters
Existiert D: als separate physische Festplatte oder als Partition des Systemlaufwerks?
Tyson
@Tyson: Separates physisches Laufwerk.
HAL 9000,
2
Wenn es Ihre Registrierung zulässt, durchsuchen Sie die Registrierung nach "C: 2"
Tyson,

Antworten:

2

# 1 ADS

Könnte dies eine Datei mit dem Namen C sein, die eigentlich eine Junction (symbolische Verknüpfung) ist, auf die über den PFAD der App zugegriffen werden kann, und für die es einen alternativen NTFS-Stream ADS (Alternate Data Stream) gibt, sodass C: 1, C: 2, C: 3 usw. an einen anderen Ort auflösen würde? Da Steam für den größten Teil seines Bestehens auf die Installation auf einem einzelnen Laufwerk beschränkt war, war dies möglicherweise eine hackige Umgehung, um das Verschieben von Spielen zu unterstützen.

Hauptproblem : Mir ist nicht bekannt, dass ADS mit Ordnern, Verknüpfungszielen, Links oder Junctions funktioniert hat. Wenn dies jedoch der Fall wäre, würde es dieser Syntax ziemlich nahe kommen.

# 2 Relativer Pfad

Auf dem von KingZoingo geposteten Link können wir sehen, dass C: der aktuelle relative Pfad sein könnte:

"C:tempdir\tmp.txt" refers to a file in a subdirectory to the current directory on drive C.

Da es zulässig ist, einen Ordner oder eine Junction mit "2" zu bezeichnen, würde dies ebenfalls zu dieser Syntax führen.

Hauptproblem : Ich hätte erwartet, dass die Firewall den tatsächlichen absoluten Pfad anzeigt.

mtone
quelle
+1 für relativen Pfad. Auch wenn es falsch scheint. Die tatsächlichen Pfade werden bereitgestellt, einschließlich D: \ Steam \ SteamApps \ common \, sodass ein Unterverzeichnis mit dem Namen 2 anscheinend nicht Teil davon ist. Ihre Antwort bietet jedoch ein gutes Denkvermögen, und die Idee ist gut, damit die Menschen sich dessen bewusst werden, sodass Ihre Antwort nützlich ist (auch wenn sie nicht die richtige Antwort ist).
TOOGAM
0

Ohne zu sehen, was sich tatsächlich im laufenden Prozessspeicher befindet, ist es schwer zu sagen.

Im Allgemeinen kann das Programm eine Menge Mist in seinem eigenen Speicher anrichten, einschließlich des Änderns oder Entfernens der "Befehlszeile", mit der es ausgeführt wurde. Oder den untergeordneten Prozess ausführen. (Soweit ich mich erinnere, muss Steam bei jedem Start einen langen Weg zurücklegen, nach Updates suchen und sich selbst neu starten, bis alles an Bedeutung verliert.)

Kurz gesagt: Selbst wenn die Syntax dieser Zeile etwas "legal" ist, könnte die Realität alles sein. Es kann keine entscheidende Antwort geben, bis sich jemand mit besseren Werkzeugen dem gleichen Problem stellt und es persönlich untersucht.

AnrDaemon
quelle
0

Ich denke, die implizite Frage ist, ob c:2\fooWindows legal ist. Google ist hier nicht hilfreich, da die Suchzeichenfolgen zu häufig sind. MSDN ist jedoch hilfreich und bestätigt, dass dies nicht der Fall ist. Sehen Sie ihre Seite hier . Das ist also ein weiterer Datenpunkt zur Unterstützung Ihres Steam-Clients, der über den Eintrag kritzelt. Vielleicht versucht es dir seine Meinung über das Spiel mitzuteilen :)

Immer lernen
quelle
Von Ihrem Link: "C: tempdir \ tmp.txt verweist auf eine Datei in einem Unterverzeichnis des aktuellen Verzeichnisses auf Laufwerk C." Wenn tempdir "2" heißt, wäre das ein gültiger relativer Pfad. Es ist jedoch überraschend, dass die Firewall nicht den absoluten Pfad anzeigt.
mtone
Toller Ort. Ja, das ist sicherlich eine Möglichkeit.
AlwaysLearning