Menyertakan Program ke dalam Installer NSIS

Pada artikel ini akan dijelaskan cara menyertakan program eksternal ke dalam installer NSIS dan kemudian menjalankannya secara otomatis sebagai salah satu langkah instalasi . Ada beberapa alasan mengapa seorang programmer perlu memasukkan sebuah atau beberapa program ke dalam installer yang dibuatnya:

  • Dibutuhkan program pihak ke-tiga (3rd party program) yang menjadi prasyarat (prerequisite) agar program aplikasi utama bisa berjalan. Misalnya sebuah aplikasi Java membutuhkan Java Runtime untuk diinstal terlebih dahulu. Oleh karena itu installer dari Java Runtime itu bisa diinstal bersamaan dengan proses instalasi aplikasi utama tersebut.
  • Dibutuhkan serangkaian proses tambahan atau menjalankan langkah-langkah yang rumit daripada sekedar menyalin file-file ke dalam lokasi instalasi. Misalnya sebuah aplikasi membutuhkan database-nya diinisiasi sebelum digunakan, maka sebuah skrip SQL bisa dijalankan oleh installer NSIS sebagai bagian dari proses instalasi.

Pada dokumen ini kita akan menggunakan sebuah program dummy yang dianggap sebagai sebuah program eksternal. Program dummy ini adalah sebuah aplikasi Java sederhana dengan tampilan GUI. Pada saat installer NSIS dijalankan, program eksternal akan otomatis berjalan sesuai dengan urutan langkah instalasi yang dibuat dalam skrip NSIS. Pada prakteknya nanti Anda bisa mengganti program dummy ini dengan program apapun lainnya.

Teknik pembuatan installer tersebut diperlihatkan pada skrip berikut ini.

 

Penjelasan:

Bagian awal dari skrip cukup mudah dipahami sehingga penjelasan bagian itu akan dilewatkan.

Perintah InstType digunakan untuk membuat tipe instalasi, pada contoh skrip ini terdapat 2 buah tipe instalasi.

Setiap tipe instalasi berkaitan dengan section mana saja yang akan dijalankan. Misalnya jika tipenya “Full” maka semua section akan dijalankan, namun jika pilihannya “Core” maka hanya section yang berisi program aplikasi utama saja yang dijalankan sedangkan section yang berisi program tambahan akan diabaikan.

Section yang pertama diberi label “XYZ Program”. Section ini bagian skrip yang berisi langkah-langkah instalasi untuk program pihak ke-tiga.

 

Label tersebut akan muncul ketika instalasi tiba pada page MUI_PAGE_COMPONENTS. Pada page tersebut terdapat pilihan tipe instalasi Full atau Core sesuai dengan tipe-tipe instalasi yang ditetapkan sebelumnya.

nsis-prog-01

Perintah SectionIn diikuti angka “1” menandakan bahwa section ini adalah bagian dari tipe instalasi yang pertama, dalam ini adalah Full. Jika jika tipe instalasi yang dipilih oleh pengguna adalah Full maka kotak checkbox pada pilihan komponen akan diberi tanda terpilih.

Sekarang bandingkan dengan section ke-dua yang diberi label “Core Application”. Sesuai dengan namanya, section ini berisi langkah-langkah instalasi untuk program utama.

 

Angka “1” dan “2” perintah SectionIn menandakan bahwa section ini selalu akan dijalankan baik tipe instalasinya adalah yang pertama atau yang ke-dua. Karakter “RO” adalah kependekan dari read-only yang artinya checkbox tidak bisa diubah. Ia selalu dalam keadaan terpilih.

Kembali kepada section yang pertama, program eksternal yang akan disalin ke dalam folder instalasi adalah install-demo.jar sedangkan install-demo.bat adalah pemanggil dari program JAR tersebut. Program pemanggil dibutuhkan untuk sebuah program eksternal yang tidak bisa berjalan sendiri, contoh file JAR membutuhkan java.exe. Program pemanggil tidak diperlukan jika program eksternal sudah bisa langsung dieksekusi, misalnya EXE, CMD dan BAT.

 

Isi dari file BAT ini adalah sebaris perintah standar untuk menjalankan program Java:

java -jar install-demo.jar

Masing-masing perintah File di atas akan menyalin kedua file yang bersangkutan ke dalam lokasi instalasi dan selanjutnya perintah ExecWait akan mengekseskusi file BAT dari lokasi instalasi. Segera setelah perintah ExecWait dijalankan, program eksternal akan terbuka dan pada saat itu juga proses instalasi berhenti. Selama program eksternal terbuka, langkah instalasi terhenti dan menunggu sampai program eksternal itu selesai atau ditutup. Setelah program eksternal tertutup, proses instalasi akan berlanjut.

nsis-prog-02

Demikianlah tips singkat untuk menyertakan program eksternal ke dalam installer NSIS dan menjalankannya di dalam proses instalasi.

end-of-doc

Leave a Reply

Your email address will not be published. Required fields are marked *