C: \ ProgramData \ Package Cache \ klasörünü silebilir miyim?


389

Konumunda yükleyici dolu yeni bir klasör var. C:\ProgramData\Package Cache\. Bunun Visual Studio 2012 RC'den olduğuna inanıyorum.

Bu gigabayt veriyi sonuç çıkarmadan silebilir miyim? Hepsi geçici dosyalar mı? Bu bir beta ürün olduğundan, bu klasör hakkında fazla bilgi bulunmadığından emin değilim.


4
50 MB'tan büyük bir şeye karşı öneriyorum, bir şey için kullanılıyor. Bunları masaüstünüze veya başka birşeye taşımayı deneyin, çalıştırın ve kilitlenirse tekrar taşıyın.
Jon

1
Orijinal senaryoumu gerçekten test edemiyorum ancak her şeyin yolunda gittiğini hatırlıyorum. Sorunları olduğunu söyleyen birkaç kişi olduğu için kabul edilen cevabı iptal ettim. 2012 RC kullandığımı unutmayın.
Ben L

@BenL "Orijinal senaryomu gerçekten test edemiyorum ancak her şeyin yolunda gittiğini hatırlıyorum." Deyince sorun çıktığını söyleyen birkaç kişi olduğu için kabul edilen cevabı iptal ettim. Aşağıdaki cevabımın (şimdiye kadarki en popüler olanı), herhangi bir durumda, klasörü daha fazla alana sahip bir sürücüye götürüp işaretleyerek herkesin bu sorunu çözmesine izin verdiğini düşünüyorum. Hatta çevrimdışı medya ile çalışacak. Böylece, arşiv DVD'sini yeniden yerleştirebilir / takabilir / harici sürücünüzü yeniden bağlayabilirsiniz, bu da kaldırma, onarım, vb.
Flak DiNenno

1
@FlakDiNenno Geçici çözümünüzü beğendim. Ancak soru, silme işleminin güvenli olup olmadığı, montajı güvenli veya çevrimdışı olup olmadığı ile ilgilidir.
Ben L

@BenL İyi nokta. Bazı detayları ve Microsoft'tan kesinlikle klasörü silmenizi ve neden silmenizi önermeyen bir bağlantı ekledim.
Flak DiNenno

Yanıtlar:


365

TL; DR: Bu klasörü SİLMEYİN

(için aşağıya bakın geçici çözümler )


Neden olmasın?

Bu klasörün olmamasının (silinmesinin bir sonucu olarak) çıkıp çıkmayacağı konusunda çelişkili raporlar olmuştur. aslında ve Tüm vakalar Visual Studio kurulumu ile ilgili sorunlara, örneğin normal çalışma sırasında, yeniden kurulum, yama / yükseltme, kurulum onarımı veya kaldırma sırasında sorunlara neden olabilir. Ancak, MICROSOFT’un önerileri açıkça SİLMEZ .

itibaren Microsoft Geliştirici Araçları Blogları → İŞTE

Bir ürünü tamir ederken, değiştirirken veya kaldırırken veya   Kaynak medya gerekliyse bir yamanın kurulması veya kaldırılması   paket önbelleği otomatik olarak kullanılır ve çoğu kullanıcı asla   Komut istemi. Yalnızca paket önbelleği eksik veya eksikse, Görsel   Studio kurulum istemi indirmek (bağlıysa) veya medyayı olduğu gibi bulmak için   Aşağıdaki ekran görüntüsünde gösterilmiştir.

Visual Studio 2012 Prompt for Source

Medyadan yüklemiş olan kullanıcılar bile indirme seçeneğine sahiptir   (eğer bağlıysa). Yani çok az sayıda müşterinin bunu görmesi gerekirken   diyalogda, deneyimin kolay olduğundan emin olmak istedik.
Biz bile   Eğer eksikse, paketleri önbelleğe indirmenizi isteyecek,   kullanıcılar paket önbelleğini kaldırmaz. Sadece önbellek tarafından kullanılmaz   Burn ile birlikte yüklenen ve aynı indirme deneyimini sağlayamayabilecek birçok diğer ürün var. senaryolar ne zaman   Windows Installer, bizim   kod çalışmıyor.


Çözüm / İş-Around:

Bu alanı geri kazanmanız gerekiyorsa, en güvenli bahis önlemenizdir. "Silme" herhangi bir şey, ancak bunun yerine, bu klasörü ve tüm dosyaları taşıyın. Bunu, aşağıdaki talimatları izleyerek yerel / canlı, çevrimiçi, çevrimiçi veya çevrimdışı depoya yapılan işlemleri güvenle yapabilirsiniz. olduğu sürece bu depolama sistemi bir sürücü harfine veya NTFS dosya sistemindeki herhangi bir bağlama noktasına monte edilebilir . Aşağıdakilerden herhangi biri işe yarayacak:

  • başka bir canlı (monte edilmiş) bölüm
  • FAT veya NTFS gibi canlı bir dosya sistemine sahip bir optik disk (CD, DVD, vb.)
  • harici bir sabit disk
  • bir USB sürücüsü
  • bir ağ sürücüsü

Medya istendiğinde / eksik dosyalar / eksik konumla ilgili herhangi bir hata aldığınızda, sürücüyü / medyayı zaten canlı bir bölüm değilse yeniden taktığınızdan / yeniden taktığınızdan emin olun.

Bir kez taşındığında, eski montaj noktasını / yerini "bağlamak" için (çoğu durumda) C:\ProgramData\Package Cache\ ), sadece bir dizin oluşturun junction buna.

Junctions tanınır file system alandaki diğer ad girişi olarak FSTAB. Bu nedenle, işletim sisteminin kendisi de dahil olmak üzere tüm programlar için şeffaftır. Başka bir deyişle, sadece başka bir yere işaret eden bir dosya olarak görülmez (gibi bir shortcut ) ve bu nedenle her zaman olaysız çalışır.

  1. Söz konusu klasör (ler) i yeni konumuna taşırdınız
  2. Kavşağı oluştur

    • Seçenek 1. (yerel olarak) : Yalnızca yerleşik Windows Vista / 7/8 komutunu ve cmd komutunu verin:

      mklink /J oldpath newpath
      

      Not: Yaparsanız, newpath mutlak, işaretçiyi simgesine bölmeden bağlantıyı hareket ettirebileceksiniz. newpath. Yaparsan newpath göreceli olarak, BOTH ile hareket ettirdiğinizde ve BİRLİKTE hedeflediğiniz ve göreceli yollarını koruduğunuz sürece, bağlantının kopmasını önleyebilirsiniz.

    • Seçenek 2. (bir araç kullanarak) : Bir diğer GREAT alternatifi, yıllardır kullandığım ücretsiz kullanışlı bir yardımcı programdır. "Bağlantı Kabuğu Uzantısı" . LSE ücretsizdir ve burada (veya bunun için Google’da) bulabilirsiniz: http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html

      LSE, sembolik bağlantılar, sabit bağlantılar, kavşaklar, smartcopies, smartclones, smart mirrors, smart hareketler, splices, çoklu kaynaklar ve açıkça okumak için kafa karıştırıcı bulduğum diğer birçok şey oluşturmanıza olanak sağlar. Ama bu bir parlak LINK-HEDEF klasörünüzü sağ tıklamanızı ve ardından gerçek bağlantıyı oluşturmak istediğiniz yere sürüklemenizi sağlayan bir Windows Gezgini içerik menüsü oluşturan ücretsiz bir üründür. Elbette istediğiniz herhangi bir şeyin bağlantısını yeniden adlandırabilirsiniz.


20
bu harika bir çözüm. dosyaları başka bir sürücüye taşıyarak SSD c sürücümü temizlemem gerekiyor. çok teşekkürler
marek

7
Hardlink Shell Extension için +1. Onsuz yaşayamam.
Dennis G

116
Sayın Microsoft: Lütfen silindiğinde bu kadar baş ağrısına neden olan bir klasörü tanımlamak için "önbellek" adını kullanmayın. Teşekkürler.
Todd Menier

8
Hile başka bir sürücüye geçerek ve bir kavşak yaparak yaptım. Bugün VS2015 SP3 yükleyicisini çalıştıran yükleyici, bağlantının normal bir dizine geçmesine neden oldu (muhtemelen bazı bileşenlerin eski bir sürümünü kaldırırken, bunları kaldıran "boş" üst dizinler aracılığıyla yinelenir - bağlantıların ve naif boş dizinin sıkıntıları ile ilgili bilinen sorunlar vardır. testleri). Bu yüzden C: \ ProgramData \ Package Cache içine yeni bileşenler yerleştirdi ve ardından kavşağın önceden işaret ettiği yeni konumda öğeler bulamadı. Gelecekteki okuyuculara sadece bir uyarı, kavşağın yeniden kurulması gerekebilir.
Ben Voigt

5
Daha kalıcı bir düzeltme olarak, NTFS izinlerini kullanın ve bağlantının kendisinde "delete" iznini reddedin.
Ben Voigt

46

VS2012'yi yükledikten sonra dizüstü bilgisayarımda aynı klasörü buldum. Bu klasörü '__Package Cache' olarak yeniden adlandırmayı denedim. Sonra VS2012'yi kaldırmaya çalıştığımda kaldırma işlemi başlayamadı.

Daha fazla bilgi mevcut İşte .


20

Doğru cevap, silerseniz, VS 2012'nin kaldırılmayacağı, ancak bunun gerekmediği anlaşılıyor. Bu nedenle:

  1. Dosyaları orada bırakabilirsin. Her şey işe yarayacak, ancak çok fazla disk alanı kullanacak.
  2. Dosyaları silebilirsiniz ve VS 2012'yi kaldırmak istiyorsanız, dosyaları geri yüklemek için orijinal yükleyiciyi yeniden çalıştırabilir ve ardından kaldırabilirsiniz.
  3. Dosyaları daha fazla boş alana sahip başka bir sürücüye taşıyabilir ve şunlardan birini yapabilirsiniz:

    a) ihtiyacınız olduğunda dosyaları geri taşıyın

    b) Flak'ın önerisinde olduğu gibi bir kavşak oluşturun (uyarı: kavşaklar zorlu hayvanlardır ve Windows Gezgini'ne, dosyaların C'deki disk alanını kullandığını söyleyin: gerçekten başka bir sürücüdeyken!)

Kavşaklar ve sembolik bağlantılar, sistem dosyalarını başka bir sürücüye taşımak için tek cevaptır. Bunlar, Windows'un bile habersiz olduğu NTFS dosya sistemi düzeyinde özelliklerdir ve bu nedenle UNIX / Linux / BSD meslektaşlarının aksine çok daha uzun zamandır kullanılmaları gerektiği gibi kullanılmaları gereken büyük bir çekiç (ve potansiyel güvenlik riskidir). Bu işletim sistemi ailesi ve UNIX / Linux / BSD programları onlarla nasıl başa çıkılacağını biliyor.


2
kavşaklar zor canavarlardır ve Windows Explorer’a yalan söyler; - Bununla kastettiğiniz şey, bağlantının özellikler iletişim kutusunu açtığınızda, gerçekte bulunduğu diskteki boyutuna eşit bir "Diskteki Boyut" u göstermesi, yanıltıcı olduğunu kabul ediyorum. Ancak, gerçek klasörün boyutu junction C sürücüsünün özellikler iletişim kutusunda görüntülendiği gibi C sürücüsündeki toplam kullanılan alana eklenmez. Bu durumda ifadeniz yanıltıcıdır ;-)
Sнаđошƒаӽ

17

Tüm yazılım yükleyicileri bu klasöre kaydedilir. Bu klasörü sildikten sonra bir yazılımı kaldırmaya çalıştığınızda başarısız olur.


12

Visual Studio 2012'yi yükledikten sonra bu klasörü fark ettim, benim durumumda Visual Studio 2012 kurulumuna dahil olan her şeyi el ile kaldırdım ve Visual Studio dahil her şey çalışıyor gibi görünüyor.


7
Bu kabul edilen cevap ve yanlış . Bu klasörü silerseniz, alışkanlık Visual Studio'yu (ve ilgili araçları ve yeniden dağıtılabilir dosyaları) kaldırabilir veya güncelleyebilir irade MSVC çalışma sürelerinde bir güncelleme olursa güvenlik sorunlarına neden olabilir)
kinokijuf

5
Yanılıyorsun, en son güncellemeler ile Visual Studio 2012'yi güncellemeyi başardım. Teşekkürler.
Johan Svensson

7

Hayır. Bu klasörü silerseniz, Visual Studio'yu kaldıramazsınız (ve muhtemelen güncelleyemezsiniz).


7

EVET Visual Studio'yu kaldırdıysanız, bu dizini silebilirsiniz.

Visual Studio'yu kaldırdıktan sonra, daha önce kullandığım sabit diskten daha küçük bir SSD'yi yüklemeye hazırlanırken bu dizini buldum. Bu bilgisayar artık bir geliştirme istasyonu değil.

Visual Studio'yu kaldırmak, sahip olmadığım bir yerel SQL sunucusuna bağlanmak için bir program gibi başka bir yazılımı geride bıraktı. Kaldırdım.

Ayrıca bazı .NET programlarını geride bıraktı ancak hangilerinin kaldırılmasının güvenli olduğunu bilmiyorum bu yüzden onları yerinde bıraktım.

Yani soru şu: Bu dizini sildim.

Oldukça büyüktü bu yüzden SSD'ye daha iyi oturmamı sağladı.

Şimdi bir gün sonra herhangi bir sorun fark etmedim.


4
Aylar sonra hala problem yok.
SDsolar

7

Visual Studio 2017 için aşağıdakileri arayarak paket önbelleğini (Visual Studio yüklendikten sonra bile) devre dışı bırakabilirsiniz:

"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vs_installer.exe" --nocache

Bundan (YMMV) sistem sürücümde yaklaşık 2 GB disk alanı kazandım.

Ayrıntılar için dokümanlara bakınız: Visual Studio Docs: Paket Önbelleğini Devre Dışı Bırakma veya Kaldırma


Herhangi biri vs2017 yüklendikten sonra önbelleği devre dışı bırakıp çıkartmayı test etmiş mi?
Ben L

1
@ Ben: Bu benim için çalıştı.
0xA3

Paket Önbelleği klasörünü silmenin uygun yolu bu gibi görünüyor. Tek şey, arama yapmak yeterli değil: aslında yükleyici aracılığıyla bir eylem gerçekleştirmeniz gerekir (örneğin, görsel stüdyosunu yükseltme veya yeniden yükleme gibi).
rsenna

2

Genellikle bu dosyaları el ile silmeyi karıştırmamak ve bunun yerine bu görevi Windows Disk Temizleme'ye veya diğer disk temizleme araçlarına bırakmak daha iyidir. Şahsen kullanabileceğim ve önerebileceğim kişi CCleaner .

CCleaner, bir programdaki eski dosyaları otomatik olarak bulmanıza ve bunları sizin için silmenize yardımcı olabilir.


11
Çok dikkatli ol; bu programlar kesinlikle kusursuz değildir. CCleaner'ın bazı programların çalışması için kritik olan dosyaları kaldırdığı ve bazı seçeneklerin kaldırılmak üzere tutulan dosyaları kaldıracağı bilinmektedir.
Bob

3
CCleaner az ya da çok berbat. Bu aracı kullanmaya çalıştıktan sonra bilgisayarımı (başlayamamam nedeniyle) geri yüklemek zorunda kaldım. Asla kullanmasan iyi olur.
Hopeless
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.