• Thứ Năm, 25/01/2007 09:53 (GMT+7)

    Sử dụng NSIS đóng gói ứng dụng VB6

    Như bạn đã biết, việc đóng gói, tạo tập tin Setup.exe, là một công đoạn chính trong qui trình phát triển phần mềm. Thông thường khi làm việc với Visual Basic 6.0 (VB6), bạn có thể dùng “Package & Deployment Wizard” (PDW) là tạm đủ, nhưng công cụ này đôi khi gây ấn tượng không được ‘chuyên nghiệp’ đối với các ứng dụng thương mại.

    Trong bài viết này chúng tôi muốn giới thiệu công cụ “Nullsoft Scriptable Install System” (NSIS) để đóng gói chương trình. Với NSIS bạn không phải mua bản quyền, nhưng phải tuân thủ các điều lệ được liệt kê ở địa chỉ: http://nsis.sourceforge.net/License.

    Bước 1: tải về NSIS (http://nsis.sourceforge.net) và cài đặt.

    Bước 2: Tạo bộ cài đặt bằng “Package & Deployment Wizard” của VB6, sau đó dùng một tiện ích tên VB_Converter (http://nsis.sourceforge.net/VB_Converter) để chuyển toàn bộ các cấu trúc sang NSIS.

    1. Tạo một Project bằng VB6 và dùng PDW như hình sau:




    2. PDW sẽ tạo ra 3 tập tin chính trong thư mục Package là Setup.exe, Setup.lst và Project1.Cab. Chúng ta sẽ dùng VB_Converter tạo tập tin Script từ tập tin Setup.lst, sau đó dùng NSIS để có tạo bộ Setup.

    Vào Start > Programs > NCC > VB6 Converter > VB6-NSI Converter, chọn đường dẫn đến thư mục chứa file Setup.lst và nhấn Next để tạo file Project1.nsi.


    Bây giờ bạn có thể khởi động NSIS để tạo bộ Setup. Vào Start > Programs > NSIS > MakeNSISW (Compiler GUI), chọn menu File/Load Script, chọn tập tin Project1.nsi ở bước trước.


    Nhấn nút Test Installer để thử.

    Nếu muốn tạo bộ Setup có giao diện tiếng Việt (việc Việt hóa NSIS hy vọng sẽ có dịp giới thiệu trong bài viết khác), bạn hãy mở file Project1.nis bằng Notepad, chỉnh sửa thêm 3 dòng in đậm như bên dưới:

    # Project1.nsi installation script

    # Automatically generated by VB6Converter by David Nuttall

    # VB6Converter was compiled on 21/09/06

    #

    !include “MUI.nsh”

    Name “Project1-Setup”

    <........>

    !include Library.nsh

    !insertmacro MUI_PAGE_LICENSE “${NSISDIR}\Docs\Modern UI\License.txt”

    Page Directory

    Page Components

    Page InstFiles

    !insertmacro MUI_LANGUAGE “English”

    Var ALREADY_INSTALLED

    Dưới đây là giao diện kết quả (đã thực hiện Việt hóa các file ngôn ngữ trong NSIS\Contrib\Modern UI\Language files và các nút, tiêu đề cửa sổ).


    Tống Quốc Thiều
    Email:
    thieutong@yahoo.com

    ID: A0701_106