2013-03-08 17 views
5

Ogni volta che si copia qualsiasi file multimediale o qualsiasi file eccetto il testo (Non sono sicuro) in clipboard, memorizza l'indirizzo di file o copia di dati perché ogni volta che si copia un filmato di 3 GB , La dimensione del disco C non aumenta significa che gli appunti memorizzano l'indirizzo non la copia. È vero ???Come vengono memorizzati i dati negli appunti di Windows

risposta

7

Se si copia dei file, hai a che fare con i puntatori di file come HDROP, che occupano quasi nessuno spazio . E quasi nessun tempo per eseguire la copia. Se dovessi effettivamente aspettare che 3 GB venissero copiati in un buffer di memoria, ti aspetteresti da molto tempo, ci sarebbe un sacco di I/O e, a meno che tu non abbia molta memoria, il tuo sistema avrebbe bisogno di utilizzare spazio del file di paging, causando così ancora più I/O.
Si dovrebbe anche rendersi conto che a differenza di un testo/HTML/RTF/copia grafica (in cui i dati sono effettivamente negli appunti), gli appunti non possono essere utilizzati come rete di sicurezza. Con il testo, puoi copiare, quindi eliminare il testo e incollarlo per recuperarlo. Non così con i file. Se copi un file, quindi cancelli quel file, non potrai incollarlo. Questo può sembrare ovvio, ma è importante capire quando si utilizza qualsiasi tipo di gestore di appunti che consente di tornare indietro e incollare i clip precedenti. È possibile incollare un puntatore di file da 3 giorni fa, ad esempio, ma il risultato non sarà quel file da 3 giorni fa. Sarà qualunque cosa il puntatore del file fa riferimento al disco di oggi.

+0

Chris possiamo recuperare il puntatore del file dagli appunti. –

+1

CF_HDROP contiene un puntatore di file. vedere: http://msdn.microsoft.com/en-us/library/windows/desktop/bb776902(v=vs.85).aspx#CF_HDROP –

+0

chris ho provato il collegamento fornito da te ma non sono in grado di capire come per recuperare il puntatore del file. –

3
does it stores the address of file 

Fondamentalmente sì, ma non la realtà, ma affrontare la cosiddetta manico del file.

È un valore di riferimento astratto per una risorsa, spesso memoria o un file aperto o una pipe.

Correttamente, in Windows, (e generalmente nel calcolo) un handle è un'astrazione che nasconde un vero indirizzo di memoria dall'utente API, consentendo al sistema di riorganizzare la memoria fisica in modo trasparente al programma. La risoluzione di un handle in un puntatore blocca la memoria e il rilascio dell'handle invalida il puntatore. In questo caso, pensalo come un indice in una tabella di puntatori. Si utilizza l'indice per le chiamate API di sistema e il sistema può modificare a piacimento il puntatore nella tabella.

Si può dare un'occhiata a questo articolo se volete sapere esattamente come funziona negli appunti: http://blogs.msdn.com/b/ntdebugging/archive/2012/03/16/how-the-clipboard-works-part-1.aspx

+1

È possibile ottenere un valore di riferimento astratto dagli Appunti. –

1

@Hot fresco perno:

Per copiare il percorso di un file/cartella

Press Maiusc Giù, selezionare il file o la cartella, fare clic destro, si vedrà un menu_option extra come "Copia come percorso ". Selezionalo e il percorso viene copiato negli appunti

Problemi correlati