Sto eseguendo Windows 8 Enterprise x64. Quando apro \\localhost\c$
come una cartella di rete e quindi utilizzando un menu di scelta rapida apro la finestra Proprietà di una sottocartella (ad esempio \\localhost\c$\Deploy
come nell'esempio seguente), c'è la scheda Versioni precedenti in cui posso vedere un elenco delle versioni precedenti disponibili della cartella, insieme ai corrispondenti timestamp:
Se seleziono una versione e faccio clic sul pulsante Apri , viene aperta una nuova finestra di Explorer in cui posso sfogliare la versione precedente selezionata della cartella:
La barra degli indirizzi mostra una posizione in cui un timestamp (in una forma lunga leggibile dall'uomo) viene aggiunto al nome di ogni cartella. Questa posizione, se copiata da lì, non può essere utilizzata direttamente come percorso valido in un'altra finestra di Explorer o come strumento da riga di comando. Ma se apro la finestra Proprietà di una sottocartella, viene visualizzata una posizione della sottocartella in una forma simile \\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy
. Questo modulo può effettivamente essere utilizzato sia in Explorer che nella riga di comando:
C:\>dir \\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy /s
Volume in drive \\localhost\c$ is OSDisk
Volume Serial Number is ▨▨▨▨-▨▨▨▨
Directory of \\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy
04/11/2013 10:53 AM <DIR> .
04/11/2013 10:53 AM <DIR> ..
04/11/2013 10:53 AM <DIR> Tools
0 File(s) 0 bytes
Directory of \\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy\Tools
04/11/2013 10:53 AM <DIR> .
04/11/2013 10:53 AM <DIR> ..
04/11/2013 10:53 AM <DIR> x64
0 File(s) 0 bytes
Directory of \\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy\Tools\x64
04/11/2013 10:53 AM <DIR> .
04/11/2013 10:53 AM <DIR> ..
08/30/2012 06:10 PM 325,272 ▨▨▨▨▨▨▨▨.dll
1 File(s) 325,272 bytes
Total Files Listed:
1 File(s) 325,272 bytes
8 Dir(s) 70,546,321,408 bytes free
E anche in PowerShell:
PS C:\> pushd \\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy
PS Microsoft.PowerShell.Core\FileSystem::\\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy> ls -r
Directory: \\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 4/11/2013 10:53 AM Tools
Directory: \\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy\Tools
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 4/11/2013 10:53 AM x64
Directory: \\localhost\c$\@GMT-2013.08.27-04.01.18\Deploy\Tools\x64
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 8/30/2012 6:10 PM 325272 ▨▨▨▨▨▨▨▨.dll
Sembra che la cartella con un nome magico @GMT-2013.08.27-04.01.18
(che presumibilmente rappresenta un timestamp nel fuso orario GMT) si comporti come se fosse effettivamente uscita lì, tranne per il fatto che non puoi scoprire la sua esistenza usando il dir
comando a meno che tu non ne conosca già il nome. Tutti i file e le cartelle al di sotto di questa cartella sono di sola lettura: non è possibile creare, eliminare, rinominare o modificare nulla (compresi gli attributi e le autorizzazioni di file / cartelle). Se sei un amministratore, ma non disponi delle autorizzazioni per visualizzare determinati file, non puoi modificarlo, a meno che tu non riesca prima a copiare una cartella contenente in una posizione non di sola lettura.
Domanda: è possibile ottenere l'elenco delle versioni di una determinata cartella, come quella mostrata nel primo screenshot, e aprirne una in una nuova finestra di Explorer a livello di codice (usando PowerShell, WMI, WSH, BAT, API Win32, ecc. )? È possibile ottenere l'elenco delle cartelle corrispondenti con nomi magici come a livello di
@GMT-2013.08.27-04.01.18
programmazione?