Microsoft Visual C++ قابل توزیع مجدد چیست و آیا به تعداد زیادی نیاز دارید؟

گاهی اوقات هنگام نصب یک برنامه در ویندوز(Windows) ، ممکن است از شما خواسته شود که یک برنامه اضافی به نام Microsoft Visual C++ Redistributable را نصب کنید. یک روز وقتی برنامه های نصب شده خود را نگاه می کنید، متوجه می شوید که این برنامه بارها نصب شده است. هر نصب با اندازه و تاریخ نصب متفاوت است. 

Microsoft Visual C++ Redistributable چیست ؟ چرا تعداد زیادی نسخه نصب شده است، و آیا می توانید هر یک از آنها را حذف کنید؟ در اینجا چیزهای زیادی برای مرور وجود دارد، بنابراین ما با اصول اولیه شروع می کنیم.

Microsoft Visual C++ Redistributable چیست ؟

قبل از اینکه به بخش C++ توضیح بپردازیم، ارزش آن را دارد که در مورد معنای «قابل توزیع مجدد» صحبت کنیم. 

نرم افزار(Software) به عنوان یک نصب کننده آنلاین سبک وزن یا به صورت قابل توزیع مجدد توزیع می شود. نصب کننده های آنلاین از نظر اندازه بسیار کوچک هستند و دلیل آن این است که آنها در واقع حاوی داده های برنامه نیستند. وقتی آنها را اجرا می کنید، داده ها از اینترنت دانلود می شوند. مزیت این روش این است که فقط داده هایی که کامپیوتر خاص شما واقعا به آن نیاز دارد دانلود می شود.

از سوی دیگر، یک فایل قابل توزیع مجدد، دارای تمام داده هایی است که ممکن است در طول نصب مورد نیاز باشد. این مزیت مشخص این است که برای کار کردن نیازی به اتصال به اینترنت نیست. قابل توزیع مجدد اغلب در نرم افزارهای دیگری که به آنها تکیه می کنند همراه می شوند و در Visual C++ نیز چنین است.

Visual C++ یک کامپایلر کد برای خانواده زبان های برنامه نویسی C است. این شامل کدهای C، C++ و C++/CLI است. بسیاری از برنامه‌هایی که به زبان C نوشته شده‌اند، به‌ویژه برنامه‌هایی که با استفاده از محیط توسعه‌دهنده مایکروسافت ویژوال استودیو(Microsoft Visual Studio) ایجاد شده‌اند، به مجموعه استانداردی از کتابخانه‌های نرم‌افزاری متکی هستند که بدون آن‌ها نرم‌افزار نمی‌تواند اجرا شود. 

با این حال، از آنجایی که اکثر افرادی که از برنامه استفاده می‌کنند، قرار نیست کل مجموعه توسعه‌دهنده ویژوال استودیو(Visual Studio developer suite) را روی رایانه خود نصب کنند، قابل توزیع مجدد شامل کتابخانه‌هایی است که یک برنامه خاص به آن نیاز دارد و می‌توان آن را همراه با نصب‌کننده آن همراه کرد.

کتابخانه های نرم افزاری چیست؟

بنابراین ما ثابت کردیم که C++ قابل توزیع مجدد، کتابخانه‌های نرم‌افزاری هستند که با برنامه‌هایی که با استفاده از Microsoft Visual C++ Studio نوشته شده‌اند، همراه هستند . پس کتابخانه های نرم افزاری چیست؟

بسیاری از توابع و عملیات رایج در برنامه‌ها وجود دارد که اغلب مورد استفاده قرار می‌گیرند. کتابخانه‌های نرم‌افزار(Software) در اصل مجموعه‌ای از کدهای برنامه‌نویسی از پیش ساخته هستند که یک توسعه‌دهنده نرم‌افزار می‌تواند در کدهای خود برای انجام کارهای خاص فراخوانی کند. این باعث صرفه جویی در زمان می شود و به استانداردسازی جنبه های توسعه نرم افزار کمک می کند.

کتابخانه‌های نرم‌افزاری مورد بحث متعلق به مایکروسافت(Microsoft) هستند، بنابراین توسعه‌دهنده نمی‌تواند به سادگی کد را کپی و در برنامه خود جای‌گذاری کند. قابل توزیع مجدد به برنامه اجازه می دهد تا کتابخانه های مورد نیاز خود را در رایانه کاربر فراخوانی کند.

چرا قابلیت توزیع مجدد بارها تکرار(Repeated So Many Times) می شود ؟

اگر دقت کنید، متوجه خواهید شد که نصب های مختلف C++ قابل توزیع مجدد دقیقاً نام یکسانی ندارند. آنها شماره نسخه های مختلف و سال های مختلف در عناوین خود خواهند داشت.

دلیلش این است که مایکروسافت ویژوال استودیو(Microsoft Visual Studio) خودش به مرور زمان به روز می شود. این همچنین بر کتابخانه های نرم افزار استاندارد در هر نسخه تأثیر می گذارد. برنامه ای که با استفاده از یک نسخه خاص از ویژوال (Visual) استودیو(Studio) نوشته شده است ، به کتابخانه قابل توزیع مجدد آن نسخه از ابزارهای توسعه دهنده نیاز دارد.

موارد قابل توزیع مجدد نیز تجمعی نیستند. بنابراین نسخه های جدیدتر شامل تمام کتابخانه های نسخه های قبلی نیستند. به این دلیل که برخی از کتابخانه های قدیمی به مرور زمان حذف می شوند یا تغییر می کنند و دیگر با نسخه های قدیمی سازگار نیستند. اگر آنها انباشته بودند، اندازه قابل توزیع مجدد در طول سال ها بادکنک می شد و نگهداری آن سخت می شد.

هر زمان که برنامه جدیدی را نصب می‌کنید که به یک قابل توزیع جدید نیاز دارد، بررسی می‌کند که آیا آن کتابخانه قبلاً نصب شده است یا خیر. اگر نه، به لیست اضافه می شود. بنابراین هر یک از ورودی هایی که لیست شده را می بینید در یک زمان مورد نیاز برنامه ای بود که روی رایانه خود نصب کرده اید.

آیا باید هر یک از آنها را حذف کنم؟

کتابخانه های قابل توزیع مجدد به اشتراک گذاشته می شوند. این بدان معناست که چندین برنامه از نصب یکسان کتابخانه های استاندارد استفاده می کنند. اگرچه یک برنامه کتابخانه های از دست رفته را در کنار خودش نصب می کند، اما وقتی آن را حذف می کنید، آن کتابخانه ها را حذف نمی کند. به این دلیل که ممکن است برنامه دیگری در این بین نصب شده باشد که به آن کتابخانه های خاص نیز متکی است.

توصیه نمی‌کنیم که Visual C++ قابل توزیع مجدد را حذف کنید، زیرا انجام این کار باعث می‌شود چندین برنامه در رایانه شما کار نکنند. با توجه به(Given) اینکه چقدر فضای کمی اشغال می‌کنند و به طور گسترده مورد استفاده قرار می‌گیرند، به نظر می‌رسد که به دردسر انداختن با اکوسیستم فعلی فایل‌های کتابخانه استاندارد شما نمی‌ارزد.

فهمیدن اینکه به کدام یک از قابل توزیع های مجدد(Which Redistributables) نیاز دارید

اگر به‌خاطر استدلال، کاملاً تصمیم داشتید که Visual C++ قابل توزیع مجدد را حذف کنید که دیگر توسط هیچ نرم‌افزاری در رایانه شما استفاده نمی‌شود، چگونه این کار را انجام می‌دهید؟ هیچ روش خودکاری برای تعیین وابستگی های کتابخانه C++ در رایانه شما وجود ندارد.

یکی از روش‌ها می‌تواند حذف همه موارد قابل توزیع مجدد و سپس نصب مجدد نرم‌افزاری باشد که می‌دانید به آن نیاز دارید. سپس این برنامه ها کتابخانه های مورد نیاز خود را مجدداً نصب می کنند. شما همچنین می توانید با نصب تمیز ویندوز(Windows) و فقط برنامه های ضروری خود به همان اثر برسید.

هر دوی این رویکردها شامل کارهای خسته کننده زیادی برای سود بسیار اندک است، اما اگر مجبورید این کار را انجام دهید.

در مورد Visual C++ Redistributablesاز خواب غافل(Lose Sleep) نشوید

در این عصر مدرن هارد دیسک های چند ترابایتی، رم های بسیار گیگابایتی و (RAM)CPU های(CPUs) چند هسته ای ، داشتن چند کتابخانه اضافی C++ بر روی رایانه شما دقیقاً هیچ تأثیری بر عملکرد یا سلامت رایانه شما نخواهد داشت. حذف آنها خواه ناخواه می تواند چیزها را خراب کند و حذف آنها به طور سیستماتیک کار سختی با پاداش کمی است. بنابراین یک نفس عمیق بکشید، لیست برنامه ها را ببندید و فراموش کنید که آنجا هستند.



About the author

من یک متخصص کامپیوتر با بیش از 10 سال تجربه هستم و در کمک به افراد در مدیریت کامپیوترهایشان در دفترشان تخصص دارم. من مقالاتی در مورد موضوعاتی مانند نحوه بهینه سازی اتصال اینترنت خود، نحوه راه اندازی رایانه برای بهترین تجربه بازی و موارد دیگر نوشته ام. اگر در مورد هر چیزی که مربوط به کار یا زندگی شخصی خود است به دنبال کمک هستید، من آن شخص برای شما هستم!



Related posts