題 我可以刪除文件夾C:\ ProgramData \ Package Cache \嗎?


有一個新的文件夾,裡面有安裝程序 C:\ProgramData\Package Cache\。我相信這是來自Visual Studio 2012 RC。

我可以刪除這些千兆字節的數據而不會產生任何後果嗎?它們都是臨時文件嗎?這是一個測試版產品,所以我不確定那裡有關於這個文件夾的信息。


380
2017-07-31 14:47


起源


我會建議任何超過50MB的東西,它用於某些東西。嘗試將它們移動到桌面或其他東西,運行它,如果它崩潰,請將它們移回。 - Frank
我無法真正測試我的原始場景,但我記得所有卸載的都很好。由於有幾個人說他們有問題,我已經撤銷了接受的答案。請記住,我使用的是2012 RC。 - Ben L
@BenL即使我明白當你說“我無法真正測試我的原始場景但我記得所有東西都卸載好了。因為有幾個人說他們有問題,我已經撤銷了接受的答案。”我認為我的答案(迄今為止最受歡迎的答案)允許任何人在任何情況下通過移動並將文件夾指向具有更多空間的驅動器來解決該問題。它甚至可以與離線媒體一起使用。因此,您可以簡單地重新安裝/插入存檔DVD /重新連接外部驅動器,如果您在移植,維修等時也移動它。 - Flak DiNenno
@FlakDiNenno我喜歡你的解決方法。但問題是如果刪除是否安全,而不是安裝或離線是否安全。 - Ben L
@BenL好點。我添加了一些細節和微軟的鏈接,絕對建議你不要刪除文件夾及其原因。 - Flak DiNenno


答案:


TL; DR:不要刪除此文件夾

(見下文 解決方法


為什麼不?

關於是否缺少此文件夾(由於刪除它)的報告存在衝突 其實 並在 所有情況 導致Visual Studio安裝出現問題,即在正常操作期間,重新安裝,修補/升級,修復安裝或卸載期間。但是,MICROSOFT的建議顯然是 不要刪除它

Microsoft開發人員工具博客→ 這裡

修復,修改或卸載產品時或何時   如果需要源媒體,則安裝或卸載補丁   包緩存自動使用,大多數用戶永遠不會看到   提示。只有當包緩存丟失或不完整時才會顯示   Studio安裝程序提示下載(如果已連接)或將媒體定位為   如下面的截圖所示。

Visual Studio 2012 Prompt for Source

從媒體安裝的用戶甚至可以選擇下載   (如果已連接)。因此,雖然很少有客戶能夠看到這一點   對話框,我們想確保體驗很簡單。
  即使我們   如果丟失,將提示將包下載到緩存,我們建議   用戶不會刪除包緩存。不僅緩存使用了   許多其他與Burn一起安裝的產品可能無法提供相同的下載體驗 場景 什麼時候   Windows Installer可能需要我們無法處理的源代碼,因為我們的   代碼未運行。


解決方案/解決方法:

如果您需要收回這個空間,最安全的選擇是避免 “刪除” 什麼,但相反,移動此文件夾及其所有文件。您可以按照以下說明安全地執行此操作,以執行任何本地/在線,在線,近線或離線存儲 只要 那個存儲系統 可以安裝到NTFS文件系統上的驅動器號或任何掛載點。以下任何一項都有效:

  • 另一個實時(已安裝)分區
  • 光盤(CD,DVD等),帶有FAT或NTFS等實時文件系統
  • 外置硬盤
  • 一個USB驅動器
  • 網絡驅動器

每當系統提示您輸入介質/接收有關丟失文件/丟失位置的任何錯誤時,只需確保重新安裝/重新插入驅動器/介質(如果它不是活動分區)。

移動後,為了“鏈接”舊的安裝點/位置(在大多數情況下) C:\ProgramData\Package Cache\),你只需創建一個目錄 junction 它。

Junctions 被認可了 file systemlevel作為別名條目 FSTAB。因此,它對所有程序都是透明的,包括操作系統本身。換句話說,它不被視為僅指向另一個位置的文件(如 shortcut)因此始終無故障地工作。

  1. 您可以將相關文件夾移動到新位置
  2. 創建交匯點

    • 選項1.(原生):只需發出內置的Windows Vista / 7/8命令和cmd提示符:

      mklink /J oldpath newpath
      

      注意:如果你做了 newpath 絕對的,你將能夠在不破壞指針的情況下移動鏈接 newpath。如果你做了 newpath 相對而言,只要您同時移動鏈接並同時鎖定目標並保持其相對路徑,您就可以防止斷開鏈接。

    • 選項2.(使用工具):另一個偉大的替代方案是我多年來一直使用的免費實用工具 “鏈接外殼擴展”。 LSE是免費的,你可以在這裡找到它(或Google吧): http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html

      LSE允許您創建符號鏈接,硬鏈接,聯結,智能複印,智能克隆,智能鏡像,智能移動,拼接,多個來源以及其他一些我發現太難以閱讀的內容,坦率地說。但是,這是一個 輝煌 創建Windows資源管理器上下文菜單的免費產品,允許您右鍵單擊LINK-TARGET文件夾,然後將其拖動到您要創建實際鏈接的位置。您當然可以將鏈接重命名為您想要的任何內容。


356
2018-01-19 15:34



這是很好的解決方案。我需要通過將文件移動到其他驅動器來清理我的SSD c驅動器。非常感謝 - marek
+1用於Hardlink Shell擴展。沒有它就活不下去。 - Dennis G
親愛的微軟:請不要使用名稱“緩存”來描述一個文件夾,這個文件夾在刪除時會引起很大的麻煩。謝謝。 - Todd Menier
移動到另一個驅動器並建立連接的訣竅。今天運行VS2015 SP3安裝程序,安裝程序導致聯結轉移到正常目錄(可能在卸載某個組件的舊版本時,它通過“空”父目錄移除它們 - 已知連接和天真空目錄的問題測試)。因此,它將新組件放在C:\ ProgramData \ Package Cache中,然後無法在以前指向交匯點的新位置中找到項目。只是警告未來的讀者可能需要重新建立交叉點。 - Ben Voigt
作為一個更永久的修復,使用NTFS權限並拒絕結點本身的“刪除”權限。 - Ben Voigt


安裝VS2012後,我在筆記本電腦上找到了相同的文件夾。我嘗試將該文件夾重命名為'__Package Cache'。當我嘗試卸載VS2012時,卸載過程無法啟動。

有更多信息 這裡


46
2017-11-16 11:26





正確的答案似乎是,如果你刪除它,VS 2012將無法卸載,但否則不需要。因此:

  1. 你可以把文件留在那裡。一切都會工作但它會佔用大量的磁盤空間。
  2. 您可以刪除這些文件,如果要卸載VS 2012,可以重新運行原始安裝程序以放回文件,然後卸載。
  3. 您可以將文件移動到具有更多可用空間的另一個驅動器,並且:

    a)在需要時將文件移回

    b)按照Flak的建議創建一個交叉點(警告:交叉點是棘手的野獸,並且會告訴你Windows文件佔用C上的磁盤空間:當它們真的在另一個驅動器上時!)

連接和符號鏈接是將系統文件移動到另一個驅動器的唯一答案。它們是NTFS文件系統級功能,即使是Windows本身也不知道,因此它們是一個非常大的錘子(和潛在的安全風險)應該與UNIX / Linux / BSD對應物一樣少用,因為它們已經存在了很長時間在該OS系列和UNIX / Linux / BSD程序上知道如何處理它們。


19
2017-07-07 00:27



連接點是棘手的野獸,並且會告訴Windows資源管理器文件佔用C上的磁盤空間  - 如果你的意思是當你打開聯結的屬性對話框時,它顯示“磁盤上的大小”等於它實際所在的磁盤上的大小,那麼我同意這是誤導性的。但是,實際上文件夾的大小 聯結 不會累計到C驅動器的屬性對話框所顯示的C驅動器上的總使用空間。在這種情況下,你的陳述是誤導性的;-) - Sнаđошƒаӽ


所有軟件的安裝程序都保存在此文件夾中。刪除此文件夾後嘗試卸載軟件時會失敗。


16
2018-05-19 00:58





在安裝Visual Studio 2012之後我注意到了這個文件夾,在我的情況下,Visual Studio 2012安裝中包含了它的所有內容,我手動刪除它,一切似乎都在工作,包括Visual Studio。


12
2017-09-24 21:03



這是接受的答案,它是 錯誤。如果您刪除此文件夾 慣於 能夠卸載或更新Visual Studio(以及相關工具和可再發行組件 - 這個 將 如果出現MSVC運行時更新,則會導致安全問題 - kinokijuf
你錯了,我沒有任何問題設法用最新的更新來更新Visual Studio 2012。謝謝。 - Johan Svensson


否。如果刪除此文件夾,則無法卸載(並可能更新)Visual Studio。


7
2018-01-19 15:36





是,如果已卸載Visual Studio,則可以刪除此目錄。

卸載Visual Studio後我找到了這個目錄,準備安裝比我以前使用的硬盤小的SSD。這台計算機不再是開發站。

卸載Visual Studio會遺留一些其他軟件,比如程序連接到本地SQL服務器,這是我沒有的。我卸載了它。

它還留下了幾個.NET程序,但我不知道卸載哪些是安全的,所以我把它們留在原地。

所以問題的關鍵點:我確實刪除了這個目錄。

它非常大,所以幫助我更好地適應我的SSD。

現在一天后我沒有發現任何問題。


6
2018-06-03 10:58



幾個月後,仍然沒有問題。 - SDsolar