2013-03-08 76 views
5

當我們複製任何多媒體文件或除文本(不確定)以外的任何文件(在clipboard中)時,是否存儲文件或數據副本的地址,因爲每當我們複製任何類似3 GB ,C盤大小不增加這意味着剪貼板存儲地址不是副本。它是真的嗎?如何在Windows剪貼板中存儲數據

回答

7

如果複製的文件,你正在處理的文件指針像HDROP,內搭幾乎不佔空間。幾乎沒有時間來執行副本。如果您實際上需要等待3 GB才能複製到內存緩衝區中,那麼您需要等待很長時間,纔會有很多I/O,除非您擁有大量內存,否則系統需要利用頁面文件空間,從而導致更多的I/O。
您還應該認識到,不像文本/ HTML/RTF /圖形副本(數據實際位於剪貼板上),剪貼板不能用作安全網。使用文字,您可以複製,然後刪除文字,然後粘貼以恢復文字。與文件不同。如果你複製一個文件,然後刪除該文件,你將無法粘貼它。這看起來很明顯,但重要的是要了解何時使用任何類型的剪貼板管理器可以讓您返回並粘貼之前的剪輯。例如,您可以從3天前粘貼文件指針,但結果不會是3天前的該文件。它將成爲今日磁盤上的任何文件指針引用。

+0

Chris可以從剪貼板中檢索文件指針。 – 2013-03-11 11:58:18

+1

CF_HDROP包含一個文件指針。請參閱:http://msdn.microsoft.com/en-us/library/windows/desktop/bb776902(v=vs.85).aspx#CF_HDROP – 2013-03-11 12:13:28

+0

克里斯我試過你給的鏈接,但我無法理解如何檢索文件指針。 – 2013-03-13 11:13:51

3
does it stores the address of file 

基本上是的,但不是真正解決,但所謂手柄的文件

這是對資源(通常是內存或打開文件或管道)的抽象引用值。

正確地說,在Windows中(通常在計算中),句柄是一種抽象,它隱藏了API用戶的真實內存地址,允許系統透明地對程序重新組織物理內存。將句柄解析爲指針會鎖定內存,釋放句柄會使指針失效。在這種情況下,將其視爲指針表的索引。 您使用系統API調用的索引,並且系統可以隨意更改表中的指針。

,如果你想知道剪貼板究竟如何工作的你可以看看這篇文章:http://blogs.msdn.com/b/ntdebugging/archive/2012/03/16/how-the-clipboard-works-part-1.aspx

+1

我們可以從剪貼板獲取抽象引用值嗎? – 2013-03-11 05:18:44

1

@Hot酷釘:

要複製的文件的路徑/文件夾

出版社下移,選擇該文件或文件夾,點擊右鍵,你會看到一個額外的menu_option爲「複製爲路徑」。選擇它,並將路徑複製到剪貼板