Yüklü programları Windows'ta başka bir konuma taşıyabilir miyim?


27

Önerilen yinelenen hakkında not: Yükleme konumunda genel bir değişiklik aramıyorum . Program bazında programları farklı konumlara taşımak istiyorum.


Bazı yazılım yükleyicileri, programın nereye yükleneceğini seçmenize izin vermez, ki bu oldukça can sıkıcıdır.

Önceden kurulu programı başka bir yere taşımanıza, tercihen Kayıt Defterinde gerekli değişiklikleri otomatik olarak yapmanıza olanak sağlayan bir yol var mı?

güncellemek şimdiye kadar cevapları aşağıdadır:
Ben istemiyorum erişmek farklı bir yerden programa, ben fiziksel olarak orada olmak istiyorum. Bu yüzden önerilerinizi takdir ederken, linkler işe yaramaz.


1
SW, bir yükleme konumu seçmenize izin vermeyecek kadar sinir bozucu derecede kötüyse, bir yere sabit kodlanmış bazı "C: \" yollarına sahip olmak da sinir bozucu derecede kötü olabilir . Bu tür bir SW'yi kandırmanın tek güvenli yolu Jonno'nun cevabı gibi bir şey. “Çok fazla” kandırılmış olmasına rağmen, örneğin “sürücüde” kullanılabilir alanla ilgili olabilir.
Hagen von Eitzen


@Downvoter Neden olumsuz? Çünkü bu bir kopya mı? Neden olmadığını açıkladım.
Joris Groosman

Sembolik linkler kullanabilirsiniz @JorisGroosman aynı sürücüde , bu önemli değil dosyalar noktaları bir hatta program başına bazında yapabilir nerede. Program klasörünü sürücünüzdeki başka bir yere (veya tamamen başka bir sürücüye) taşıyabilir, ardından özgün konumun yeni konuma işaret etmesi için işaretleyiniz. Bu, sorunuzun bir kopyası olduğu anlamına gelir.
AStopher

3
Tamamen bir kopya değil. Ve teoride bir yerleşik bir yol olabilir. En yakın olanlar bana sahte geliyor.
Journeyman Geek

Yanıtlar:


44

Var olan klasör yapısı hakkında endişelenmiyorsanız, klasörü istediğiniz yere taşıyabilir ve yeni konuma işaret etmek için (örneğin, sistem sürücünüzde sınırlı alan varsa) dizin sembolik bir link kullanabilirsiniz. Bunun için tipik komut satırı

mklink /d C:\Path\Of\Original\Folder D:\Path\Of\New\Folder

Klasörleri gerçekten hareket ettirecek, yönlendirecek ve bağlantıları ve kayıt defteri anahtarlarını harekete geçirecek herhangi bir araçtan habersizim, çünkü sürekli güncellenen sürümleri olan pek çok program olması çok zor olacaktır.

DÜZENLEME: Dizin sembolik bağlantısının nasıl silileceğini eklemek için bir istek yapıldı. Yanlış komut, bağladığınız klasörü silebileceği için buna dikkat etmeniz gerekir.

En iyi yöntemler ya:

  • Dizin sembolik bağlantısını Windows Gezgini'nden silin. Bu hedef klasörü sağlam tutacak ve sadece sembolik bağlantıyı kaldıracaktır.

veya

  • Komutu kullan rmdir C:\Path\To\Symbolic\Link

Do not kullanmak delgibi dizin sembolik linke yere komutu delkomut dosyaları kaldırmak için kullanılır. Bunu yapmak, hedef dizine giden yolu izler, kriterlerinize uyan dosyaları siler!


5
Bu, bölümlerin NTFS (muhtemelen oldukları gibi) olmasını gerektirir. FAT32 sembolik bağları desteklemiyor.
Sydius

10

Jonno'nun cevabı üzerine inşa etmek, Alan senin için endişeliyse, ortak bağlantı senin arkadaşın. buharın , sembolik bağlantı oluşturmayı otomatikleştiren steammover adı verilen buhar kurulum klasörü dışına oyun yüklemenize izin vermediği günlerde bir yazılım parçası var, onu taşınmasını istediğiniz programları içeren klasörlere yönlendirebilirsiniz (örn. C: / Program Dosyalar) ve bir hedef (örneğin D: / programlar) ve belirli dosyaları taşıyabilirsiniz.


7

Bu uygulamaları başka bir yere taşımak / yüklemek istenmeyen sonuçlara yol açabilir.

Programı hareket ettirirseniz, geliştiricilerin bu kesintiyi kullandıkları varsayımları bir dizi olabilir. Örneğin, kendisini kullanıcı profiline yükleyen bir uygulama, kendi yükleme klasörüne tam yazma erişimi veya hatta yüklenmesini beklediği yere göre göreceli yolları daha da kötü kullanmasını bekler.

Bu yüzden en kolay çözüm (diğerlerinin dediği gibi), dosyaları uygulamanın hala başlangıçta kurulu konumda olduğunu düşünmesine izin verecek şekilde hareket ettirmek için yalnızca bir bağlantı noktası kullanmaktır (arkasındaki bir "hayalet" klasörünü bırakacaktır).

Daha sonra herhangi bir şeyin etrafta dolanıp kırılmadığını görmek için uygulama başına analiz gerektiren bir şey varsa, Windows ADK (Değerlendirme ve Dağıtım Seti) gibi bir analize yardımcı olacak araçlar var, ancak otomatik değil.


5

Bunu yapmanın en kolay yolu Link Shell Extension kullanmak . Komut satırına düşmeden sembolik ve sert bağlantıları yönetmenizi sağlayan bir gezgin kabuğu uzantısıdır.

Durumda, yükleyicinin kullanmaya zorladığı klasörü bulup dosyaları istediğiniz konuma taşıyacak, yeni konuma sağ tıklayıp "Bağlantı Kaynağını Seç" i seçip orijinal konuma geri dönüp orijinal konumuna geri döneceksiniz. "Bağlantıyı Farklı Bırak ..." ve Kavşağı seç (veya bazı uygulamalar Sembolik Bağlantıyı izlemeyeceğinden genellikle "Kavşak" kullandığım halde Sembolik Bağlantı).

Bu tür senaryoların çoğu için kullandım - genellikle bir uygulama config ve önbellek dosyaları için zorunlu bir konum getirecektir (% appdata% \ MyProgram gibi). Bir SSD'de, eğer bu dosyalar sürekli olarak yazılırsa, bu sürücünün ömrünü kısaltabilir, bu yüzden bu önbellek dosyalarını bir iğ sürücüsüne taşımak, performansını azaltmak, ancak SSD'deki aşınmayı azaltmak için kullanacağım.


1

Bunu yapmak için evrensel olarak garanti edilemez. Farklı programların, özellikle de farklı dillerde yazılmış programların, yürütülebilir dosyanın nerede depolandığını kontrol edebilmesinin birçok yolu vardır. Symlinks gibi şeyler genellikle etkili olabilir, ancak her zaman kırılacak bazı istisnalar olabileceğini her zaman bilir. Bir dosyayı taşırsanız (çalıştırılabilir, ancak muhtemelen başka bir dosya gibi), bazı programlar belirli bir yerde bir dosya bulmayı bekleyebilir ve eğer böyle değilse, farklı bir şekilde davranabilir (belki de tamamen kırılması muhtemeldir). program bekliyor.

Bu, çoklu işletim sistemleri için geçerlidir.

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.