فرض کنید که چندین برنامه نصب شده بر روی سیستمعامل ویندوز را بخواهید به طور یکجا حذف کنید، اما ویندوز به شما امکان حذف یکجای برنامهها را نخواهد داد. به چه دلیل این اتفاق میافتد؟ چه فرایندی در ویندوز، حذف همزمان چندین برنامه را غیرممکن میکند؟ در ادامه به تشریح علت این امر خواهیم پرداخت.
اگر شما از روند کار ویندوز اینستالر آگاه باشید، میدانید که این ابزار از پایگاه دادههای موجود برای نصب و نگهداری برنامهها بهره میبرد. نیازی به یادآوری نیست که فایلهای .msi، به عنوان پایگاه دادهها به حساب میآیند. همواره در طراحی پایگاه دادهها این سوال وجود دارد که برای شما سرعت اهمیت دارد یا دقت و امنیت؟ مدنظر داشته باشید که اینستالر میتواند تنظیمات سیستم را تغییر دهد و اعمال اشتباه تنظیمات میتواند به از کارافتادن یا عدم کارایی کامل سیستمعامل منجر شود، بنابراین در این زمینه، امنیت بر سرعت ترجیح داده شده است.
یکی از دلایلی که نصبکنندههای .msi سرعت پایینی دارند این است که فایل بازگردانی برای هرفایلی که حذف یا تغییر مییابد ساخته میشود. این فایلهای بازگردانی ساخته میشوند تا در صورتی که در طول فرایند مشکلی پیش آمد (مانند قطعی برق و یا مشکل در سیستمعامل)، به راحتی فایلهای تغییریافته جایگزین شوند.
موتور MSI، فرایند نصب، تغییر و یا حذف را در آن واحد تنها برای یک برنامه مجاز میشمارد. اگر شما قصد داشته باشید یک فایل .msi را در حالی که فرایند حذف برای فایل دیگری در جریان است اجرا کنید، این عمل غیرممکن است یا اینکه باید تا اتمام فرایند فعلی حذف منتظر بمانید.
نصبکنندههایی سوای MSI، از آنجایی که از موتور MSI استفاده نمیکنند، ممکن است از این قانون تبعیت نکنند. برنامههایی مانند CCleaner میتوانند به شما این امکان را بدهند تا بدون نیاز به انتظار برای اتمام فرایند حذف، فرایند بعدی را آغاز کنید اما عملیاتهای مرتبط با MSI installers ممکن است از فرمان این برنامه نیز پیروی نکنند.
اگر برنامهای از سیستم نصبکننده مستقل خود استفاده کند، هیچ مانعی برای اجرای همزمان وجود نخواهد داشت. نصب کننده ویندوز، تعداد یادشده را برای جلوگیری از مشکل تداخل محدود کرده زیرا این عملیات، تغییرات زیادی بر روی تنظیمات و فایلها اعمال میکند.
اکثر نصبکنندهها و حذفکنندهها به ثبت و ضبط تغییرات اعمال شده بر روی فایلها میپردازند تا در صورت نیاز بتوانند نسخههای اصلی را بازنشانی کنند. نصب کننده ویندوز با هدف ایجاد سیستمی یکپارچه برای توسعهدهندگان نرمافزاری و جلوگیری از مشکلات بعدی به وجود آمده است.