Neden bu kadar farklı Visual C ++ yeniden dağıtılabilir var?


19

Ne zaman bir oyun, hatta OpenOffice kurduğumda, kurulum rutininin bir kısmı, sistemimde halihazırda sahip olduğum 10 kişinin yanında başka bir Visual C ++ 2005/2008 yeniden dağıtılabilir.

Neden bu kadar farklı versiyonun (aynı şey gibi hissettirdiği) gerekli?


Son zamanlarda OpenOffice'i Windows'a yüklemedim, ancak AFAIK OO.org saf Java. Bu rahatsız edici!
lajuette

2
OO.org aslında bazı Java bileşenleri ( kaynak ) ile çoğunlukla C ++ .
heavyd

bu nadir değildir. Keşke onları eklemek / kaldırmak programlarında görsel olarak toplamanın bir yolu olsaydı, böylece hepsini görmek zorunda değilsiniz.
Keltari

Yanıtlar:


22

Visual C ++ yeniden dağıtılabilirleri, yazılımlarını yazmak için Visual C ++ kullanan uygulama geliştiricileri tarafından gönderilen bileşenlerdir. Geliştiriciler, Microsoft'un iyi test edilmiş ve yaygın olarak kullanılan kodunu uygulamalarının içinde kullanarak, yaygın olarak kullanılan kod yazmaktan kaçınarak geliştirme maliyetlerinden tasarruf sağlar (örneğin günah ve cos matematik işlevleri ve metin kutusu veya düğme gibi yaygın kullanıcı arabirimi öğelerinin işlenmesi). Uygulama geliştiricileri tarafından kullanılan çalışma zamanı sürümlerindeki parçalanma nedeniyle, çok sayıda uygulama yüklerseniz Visual C ++ yeniden dağıtılabilirlerinin uzun bir listesini görürsünüz. Bir Visual C ++ yeniden dağıtılabilirinin kaldırılması size birkaç megabayt disk alanı kazandırabilir, ancak bunu yaparken bazı uygulamaları bozma riskiniz vardır.

Programcılar, Visual C ++ çalışma zamanını güncel tutmak için Microsoft'a güvendiğinden, Microsoft yeniden dağıtılabilirler için güvenlik güncelleştirmesini yayımlar, ancak programcı istekleri nedeniyle Visual C ++ yeniden dağıtılabilirleri birbirinin yerine geçmez ve eski sürümler uyumluluk için tutulur. Bazı uygulamalar, uygulamanın tam olarak yayınlandığı gibi çalıştığından emin olmak için gereken Visual C ++ dll'lerinin sürümü hakkında çok spesifiktir. Yazarları, uygulamalarının yeni çalışma zamanı ile uyumluluğunu test edene kadar en son çalışma zamanını güncellemeye devam ediyor. Microsoft yeniden dağıtılabilir bir güncelleştirme yayımladıktan sonra öfkeli müşterilerden birkaç binlerce çağrıyı engellemenin bir yoludur. Bununla birlikte, çoğu uygulama aynı ana sürümün en son sürümüne bağlanır,

Microsoft, bir çok Visual C ++ çalışma zamanını da desteklemelidir çünkü uygulama geliştiriciden hangisini seçeceği konusunda hiçbir fikri yoktur. Aynı uygulama içinde bile Visual C ++ yeniden dağıtılabilirlerinin birden çok sürümü gerekebilir; örneğin, Visual C ++ 2008 yeniden dağıtılabilirine bağlı bir uygulama Visual C ++ 2005 yeniden dağıtılabilirine bağlı bir bileşen kullanıyorsa, uygulamanın geliştiricisi Visual C ++ yeniden dağıtılabilirlerinin her iki sürümünü de göndermelidir. 64 bit bir bilgisayarda, Visual C ++ yeniden dağıtılabilir, yaygın olarak kullanılan bir bileşen olduğundan ve hem 32bit uygulamaların hem de 64 bit uygulamaların (hatta içeren uygulamaların) olması normal olduğundan, sistemde Visual C ++ Yeniden Dağıtılabilirlerin hem x86 hem de x64 sürümleri yüklü olabilir. hem 32 bit kod hem de 64 bit kod) 64 bit sistemde yüklü.

Muhtemelen, yeniden dağıtılabilir ile aynı yükleme tarihine sahip bir uygulama arayarak uygulamayı yeniden dağıtılabilir kurarken bulabilirsiniz, ancak daha sonra yükleme tarihi olan diğer uygulamaların aynı yeniden dağıtılabilir duruma bağlı olduğunu söyleyemezsiniz. Tam bağımlılığı bulmak için harcadığınız zaman, yeniden dağıtılabilirleri kaldırarak kaydedebileceğiniz birkaç megabayta değmez.


Bu çok iyi bir cevap. Geliştiriciler ayrıca belirli sürümleri de hedefler. Sürüm A'daki bir işlevin Sürüm B'de de aynı şekilde çalışması garanti edilmez. Elbette, temel, sürüm B ve sonraki sürümlerde bulunan Özellik C ve yalnızca sürümde bulunan Özellik C arasındaki sürümler arasında aynı kalacaktır. Sürüm C, geliştiricilerin karşılaştığı gerçek sorundur. Böylece kullandıkları sürümü dağıtırlar ve yazılımlarını yalnızca bu sürümü kullanmak üzere derlerler. Bu özel durumda, C ++ Yeniden Dağıtılabilirlerinin birden çok tarih sürümü aynı sürümde mümkündür (Şubat, Mart, Nisan 2005).
Ramhound

3

Bunun nedeni aynı şey olmamalarıdır. Öncelikle, MSVC ++ 'ın her sürümünün kendi çalışma zamanı kitaplıkları sürümüyle birlikte geldiğini anlamanız gerekir. Ayrıca 32 ve 64 bit versiyonları vardır. Ayrıca, çalışma zamanı kitaplıklarının güncelleştirilmiş sürümlerini getiren hizmet paketleri vardır.

10 kurulumunuz varsa, isimlerini listeleyebilir misiniz? 4'ten fazla olması gerektiğini düşünmüyorum (2005 için 32 ve 64 bit ve 2008 için aynı). Hizmet paketleri, güncelleştirilmemiş sürümlerin yerini almalıdır.


1
Bunun doğru olduğuna inanıyorum - farkında olduğum sadece 4 tane var ve buradaki iyileştirme, şimdi yan yana kurulabilmeleridir. Gerekli derleme, uygulamanın derlenmesinde kullanılan çalışma zamanına statik veya dinamik olarak bağlanıp bağlanmadığına bağlıdır. Bunlar barış içinde bir arada bulunabilir ve nispeten küçüktür.
jtreser

VS2010 için +2 daha fazla! Ama yine de OP'nin 10'u varsa, bu çok fazla.
AndrejaKo

Kuşkusuz, onları saymadım. İş yerinde makinemde iki tane var (2008 32bit ve 64bit, her ikisi de 9.0. Bir şey). Onları evde de sayacağım.
Tomalak

3
Listede 12 tane var. 2005 (2) (listelenen özellik veya sürüm yok) 2008 (8) x32 / x64 9.0.21022, 9.0.30729.17, 9.0.30729.4148, 9.0.30729.6161 2010 (2) x32 / x64 10.0.40219
Darren Hall

1
@DarrenHall - Bu kadarına sahip olmak normal. Her sürüm farklıdır ve bu belirli sürümleri hedefleyen uygulamalarınız vardır.
Ramhound

1

C ++ yeniden dağıtılabilir dosyalarının birçok sürümü vardır, tam olarak hangi programın dosyayı kullanacağını bilmiyorsanız, bir tane kaldırın ve kullanılan her program yeniden yüklenmedikçe kalıcı olarak devre dışı bırakılır.

Çok sayıda programı yüklü olanların birçok sürümü olacak. Microsoft, yeniden dağıtılmasına izin verir, bu nedenle her seferinde yeni kod icat etmek yerine, bir geliştirici sizin için bunlardan birini açabilir.

Onlar küçük ve endişelenecek kadar büyük değil. Birçoğu sadece KB, birkaçı MB ve GB olan programlardan daha iyi.

Birçoğunu orada görmenin agresif olduğunu biliyorum (21 tane var), ama onları yalnız bırak, eğer onları kaldırırsan programların kapanacak. Program geliştiricilerinin bunları bireysel program için de etiketlemesi de iyi olurdu, ancak eğer yaptılarsa yüzlerce tane daha olurdu. Şu anda, programların hem eski hem de yeni kodları kullanmasını sağlayan sırtlama programları.

Bilgisayar ağları diplomam var. Bilgisayarınıza kendim için yapmayacağım hiçbir şey söylemem.

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.