1 Votes


nsis یا Nullsoft Scriptable Install System ابزاری مفید ، کاربر پسند و قدرتمند برای ساخت برنامه های نصب (installer) در ویندوز است این ابزار متن باز بوده و برای هر گونه استفاده ای کاملا رایگان می باشد به دلیل اینکه این ابزار بر پایه اسکریپت نویسی بنا شده است کنترل کامل برنامه های نصب کننده ای که ساخته می شوند در دست است. زبان اسکریپت نویسی nsis مانند زبانهای برنامه نویسی معمولی از توابع ، متغیرها ، پشته و… پشتیبانی می کند.سایت و دانلود
برخلاف دیگر نرم افزارهایی که در دسته سازنده نصب کننده برنامه های کاربردی قرار می گیرند مانند
Advanced Installer
Indigo Rose Setup Factory
InstallShield
QSetup Installation Suite
Tarma ExpertInstall
nsis کوچکترین نصب کننده موجود است; در حالت تنظیمات پیش فرض (با تمام ویژگیهای موجود) فقط 34 کیلوبایت به حجم فایلهای نصبی شما افزوده می شود
این 34 کیلوبایت شامل یک فشرده ساز با یکی از الگوریتمهای فشرده سازی ZLib, BZip2, LZMA نیز است (دیگر چه نیازی به نرم افزارهای self-extracting archive است)
نصب کننده هایی که با این برنامه می سازید می توانند در همه نسخه های ویندوز (از ویندوز 95 تا ویستا) به خوبی عمل کنند
پشتیبانی بیشتر از 40 زبان در یک نصب کننده (از جمله زبانهای راست به چپ مثل فارسی و عربی)
nsis می تواند از پلاگین های برای توسعه امکاناتش استفاده کند این افزودنی های می توانند در زبانهای برنامه نویسی مانند سی ، سی پلاس پلاس ، دلفی و… نوشته شوند به عنوان مثال در هنگام نصب فایلهای برنامه چند پلاگین هم به برنامه اضافه می شوند:
AdvSplash برای ساخت نمایش عکسی هنگام لود شدن برنامه با افکتهای كم‌ رنگ‌
و پر رنگ شدن و شفافیت با حجم 6 کیلوبایت
BANNER بنرهای با متن دلخواه با حجم 4 کیلوبایت
BgImage برای نمایش یک عکس یا شیب رنگ در زمینه برنامه نصب با حجم 7.5 کیلوبایت
DIALER فراهم کردن 5 تابع مربوط به ارتباطات اینترنت با حجم 4 کیلوبایت
Math انجام اعمال ریاضی با حجم 66 کیلوبایت
NSISdl دانلود فایل از طریق پروتکل http با حجم 15 کیلوبایت
System برای اجرای توابع API ویندوز با حجم 10 کیلوبایت
و….
چند مورد دیگر از ویژگیهای nsis
انجام نصب برنامه بر پایه وب ، ساخت uninstaller ، ساخت نصب کننده هایی با ساختار درختی ، تست خودکار صحت فایلها با CRC32 checksum (اینجا رو بخونید)، پشتیبانی از نصب کننده های حجیم تا 2 گیگابایت ، فشرده سازی جداگانه فایلها یا همه فایلها با هم با چند الگوریتم مختلف ، ساخت نصب کننده های مخفی (بدون نیاز به دخالت کاربر و در حالت خودکار) و…
از nsis نه تنها برای تولید برنامه های نصب کننده استفاده می شود بلکه برای ساخت برنامه هایی که نیاز به تعامل با ویندوز و انجام اعمال کنترل ویندوز دارند برای راحتی هر چه بیشتر و کد کمتر و بدون دردسر استفاده می شود مثلا برنامه ای برای پاک سازی ویروس و اثرات آن یا برنامه ای برای انجام ترفندهای رجیستری و تنظیمات پارامترهای مختلف در ویندز بهترین انتخاب nsis است (خدمت افراد بد اندیش هم عرض شود برنامه ی خوبی است یاد بگیرید قدرت عمل زیادی به دست می آورید)
اسکریپت های nsis
برای ساخت یک نصب کننده با استفاده از nsis ابتدا باید یک اسکریپت nsis بنویسید این اسکریپت یک فایل متنی ساده است که با هر ویرایشگر متنی قابل نوشتن می باشد ولی قواعد(syntax) خاص خودش را دارد پیشنهاد می شود از یک ویرایشگر متن که توانایی تشخیص کلمات کلیدی اسکریپت nsis را داشته باشد و همچنین شماره خطوط را نمایش دهد استفاده کنید (هنگام خطا باید به شماره خط داده شده رفته و آن را تصحیح کنید) پیشنهاد من HM NIS Edit دانلود است.قدرتمندترین محیط Eclipse است با پلاگین nsis آن در اینجا

مرحله بعدی در ساختن یک نصب کننده با nsis کامپایل کردن اسکریپت است MakeNSIS.exe کامپایلر nsis است برای انجام عمل کامپایل بر روی فایل اسکریپت که پسوند nsi دارد راست کلیک کرده و گزینه Compile NSIS Script را انتخاب کنید در هنگام کامپایل کردن اسکریپت اشکالات نحوی آن گرفته شده و خطا را نمایش می دهد
کد تصویر بالا را در یک ویرایشگر متن مثل Notepad نوشته و آن را با نام دلخواه و پسوند nsi ذخیره کرده و آن را کامپایل کنید تا برنامه installer.exe در محل فایل nsi ساخته شود این هم اولین برنامه شما با nsis خطوطی که با علامت # شروع می شوند توضیحاتی برای یادآوری کدنویس اند و کاربردی برای کامپایل شدن ندارد.
چند مثال ساده دیگر برای شروع را در اینجا ببینید
هرچند امکان دیکامپایل پروژه های کامپایل شده وجود ندارد ولی برای امنیت بیشتر کد خود در صورت نیاز می توانید یک لایه امنیتی نیز با ابزار Adding Encryption to NSIS به آن اضافه کنید در اینجا
آموزش اسکریپت نویسی با nsis
بهترین منبع برای یادیگری تمام جوانب و نحوه کد نویسی این نرم افزار help خود نرم افزار(همان NSIS Users Manual) است
این دو کتاب الکترونیک فارسی آموزش nsis در فایل pdf نیز می تواند خیلی کمک کند


نرم افزار نصب ساز بر پایه nsis
ابزار رایگانی به نام sfxtool وجود دارد که می تواند اسکریپت برنامه های نصب شما را که ساده هستند خود تولید کند; گرچه تنظیمات پیشرفته ای در اختیار نمی گذارد ولی در یکی دو دقیقه یک نصب کننده ساده و کاربردی
می سازد
این برنامه را در اینجا بیابید

برنامه کمکی به نام Zip2Exe هنگام نصب NSIS نیز در سیستم اضافه می شود که برای تبدیل فایلهای zip به
exe که یک نصب کننده ساده بر پایه nsis است به کار می رود (self-extracting archive ) این برنامه فایل
زیپ را از حالت فشرده خارج کرده و سپس آن را با یکی از3 الگوریتم فشرده سازی اش فشرده می کند برای تغییر
ظاهر و نحوه عمل این نصب کننده ساده علاوه بر تنظیم گزینه هایی که وجود دارد می توانید به پوشه
NSIS\Contrib\zip2exe رفته و فایلهای Base.nsh و Classic.nsh و Modern.nsh را به دلخواه تغییر دهید
چه کسانی از nsis استفاده می کنند
نصب کننده تقریبا تمام نرم افزارهای سایت sourceforge.net با nsis ساخته شده اند مثلا emule
نصب کننده های نرم افزارهای گوگل مثل گوگل تاک
نرم افزار winamp (همان توسعه دهنده نرم افزار nsis)
و هزاران نرم افزار دیگر