Xuất file exe trong visual studio

1. Setup Project : tạo bộ đóng gói cho ứng dụng Windows (hay còn gói là ứng dụng chạy trên Desktop).2. Merge Module Project : Tạo ra file .msm , đóng gói các components cho phép bạn chia sẽ các components đó giữa nhiều Project hoặc nhiều ứng dụng.3. CAB Project : Cho phép bạn tạo 1 file .cab để nén ActiveX controls chứ không phải những ứng dụng, tuy nhiên có thể được download từ Web server tới trình duyệt web4. Web Setup Project : Cho phép bạn triển khai 1 ứng dụng Web tới web server. Bạn tạo 1 Web Setup project, build nó tạo ra file đóng gói , copy file đó tới Web Server, và chạy file đó để cài đặt ứng dụng này trên server, sử dụng những Setting định nghĩa Web Setup project của bạn.5. Smart Device CAB Project : tạo Cab project để cài đặt trên ứng dụng trên thiết bị di động.6. Setup Wizard : nếu bạn không rõ mình dùng loại đóng gói nào thì dùng lựa chọn này để dùng trình thuật sỹ Wizard sẽ hướng dẫn chúng ta đi từng bước trong suốt quá trình tạo file đóng gói . Áp dụng cho mọi loại ứng dụng , kể cả ứng dụng Web.Ở đây chỉ xét 2 hổ trợ đó là Setup Wizard và Setup Project . Thực ra chỉ cần tìm hiểu Setup Wizard là đủ vì Setup Wizard đã có bao hàm Setup Project.Một số thuật ngữ sử dụng trong bài viết chỉ có áp dụng trong nội dung bài hướng dẫn này thôi , ngoài phạm vi bài này, ý nghĩa của các từ có thể khác nhiều đi .Target Machine = Target Computer = Client: máy tính của khách hàng chạy file setup do bạn tạo ra.Application : chương trình do bạn viết ra và muốn đóng gói lại .Setup : là 1 ứng dụng hay quá trình cho phép bạn đóng gói ứng dụng của bạn thành 1 định dạng easy-to-deploy , với định dạng easy-to-deploy bạn có thể dễ dàng install ứng dụng vào máy client .Deploy : triển khai chương trình tới máy client.Deployment : là quá trình đem ứng dụng của bạn và install nó vào máy khác , đa số dùng thêm 1 ứng dụng setup khác.Project : là Project mình muốn đóng gói lạiSetup Project : là Project mình đang thao tác , cấu hình project để tạo file setup.Setup File : là file kết quả tạo ra khi build Setup Project , file này để cài đặt trên Target Computer.

Bạn đang xem: Xuất file exe trong visual studio

Windows Installer

Cách 1: Các bước tạo một chương trình setup bằng Setup Wizard B1. Trong Solution Explorer của VS.net , right click vào Solution. Trong menu popup, vào mục Add –> New project . Xuất hiện hộp thoại Add new project. (H1 và H2)

*
Hình 1 Trong hộp thoại Add new project:

*

Hình 2 B2. - Bên trái là Project Types: Chọn Other Project Types –> Setup and Deployment - Bên phải là Templates: Chọn Setup Wizard. Đặt tên Project mới vào trường name Chọn đường dẫn cần lưu thư mục tại trường Location Sau khi click Ok, VS.net sẽ tự động hiển thị hộp thoại là Setup Wizard (1 of 5). Click chọn Next (H3)

*
Hình 3:
*
Hình 4 B3. Hộp thoại thứ 2 là Setup Wizard (2 of 5) xuất hiện . (H4) Hộp thoại này cho phép chọn kiểu Project Trong trường hợp này chúng ta giả sử đóng gói ứng dụng Windows nên đánh dấu check vào radio button : Create a setup for a Windows application. Còn nếu là ứng dụng Web thì ta chọn radio button : Create a setup for a web application. Next tiếp :
*
Hình 5 B4. Hộp thoại thứ 3 là Setup Wizard (3 of 5) xuất hiện . (H5) Hộp thoại này chứa các loại output mà chúng ta có thể đưa vào file Setup XXX là tên project cần đóng gói . * Localized resources from XXX : * XML Serialization Assemblies from XXX : * Content Files from XXX : chứa toàn bộ file chứa trong project XXX , cái này không cần thiết phải chọn. * Primary output from XXX : chứa file exe và file dll của prject XXX , cái này tất nhiên phải chọn rồi. * Source files from XXX : chứa file source code của project cần đóng gói như file css , vb , cpp … * Debug Symbols from XXX : chứa một số file hỗ trợ debug của dự án . * Documentation Files XXX : (tài liệu XML của dự án, cái này liên quan đến các commnets viết theo qui tắc convention của .Net) . Có thể đưa vào hoặc không. * Built Output from …: tạo ra file MSI * Primary Output (chứa các DLL và EXE do Project phía trên tạo ra) - đương nhiên phải đưa vào Bạn muốn biết thêm thông tin thì có thể xem Description ở bên dưới của hộp thoại đó. Sau khi chọn xong nhấn Next. B5. Hộp thoại thứ 4 là Setup Wizard (4 of 5) xuất hiện (xem H6)
*
Hình 6 Hộp thoại cho phép chọn file đính kèm theo như file Help , ReadMe … Nếu muốn thêm file nào thì chọn Add à chọn đường dẫn của file đó. Nếu không thì chọn Next. B6. Hộp thoại thứ 5 xuất hiện Setup wizard (5 of 5) thông báo tóm tắt nội dung kết quả. (xem H8)
*
B7. Chọn Finish để kết thúc quá trình tạo file cài đặt . B8. Sau khi nhấn nút Finish trong Wizard cuối cùng thì màn hình (xem H8) hiện ra.
*
Hình 8: File System Designer Trong Solution Explorer xuất hiện thêm Project , người ta gọi là Setup Project . Tới đây có thể tạm thời gọi là xong , nhưng chúng ta phải qua một số bước cấu hình để tạo ra file setup đóng gói phần mềm theo ý mình .

Xem thêm: Bạn Muốn Sinh Con Năm 2019 Mệnh Gì ? Vận Mạng Người Sinh Năm 2019 Ra Sao?

__________________


Các loại Setup Editors Khi bạn triển khai 1 ứng dụng , bạn muốn thực hiện 1 thao tác đặc biệt nào đó như thay đổi cấu trúc thư mục của ứng dụng trên máy client , thêm 1 số registry , và đặt một số điều kiệm kiểm tra đặc biết nào đó , thay đổi GUI trong quá trình cài đặt . Với VS.NET bạn có thể làm điều đó rất dễ dàng . VS.NET cung cấp một số editor sau : * File System Editor: editor này được dùng để add files vào gói cài đặt . * Registry Editor: editor này bạn có thể thêm một số key vào registry của máy client . * File Types Editor: editor này cho phép liên kết loại file nào đó tới ứng dụng của bạn * User Interface Editor: editor này cho phép bạn cấu hình một số GUI của dialog được show trong suốt quá trình cài đặt . * Custom action s Editor: với editor này , bạn tự chỉ định chương trình nào đó mà bạn muốn installer gọi khi install hay uninstall. * Launch condition s Editor: editor này cho phép bạn kiểm tra các yêu cầu tối thiểu cho ứng dụng của bạn install trên máy client . Mục tiếp theo , bạn sẽ tìm hiểu sâu hơn về tất cả editor trên . 1.1. File System Editor Nhìn cái tên là bạn biết editor này có chức năng gì , editor này cho phép bạn add vào Project Output những file như assemply , các file output vào thư mục xác định nào đó , bạn có thể xác định vị trí nơi các file này sẽ được install tới máy client . File System Editor mở bằng cách sau : - Click phải Project trong Solution Explorer , và chọn View à File System để hiện thị File System . Tại đây bạn có thể chỉ định các file cài đặt . (H13) - Trên cửa sổ File System (mặc định đang được mở, nếu chưa có thể mở ra bằng cách nhấn phải chuột trên project cài đặt -> View -> File System) File System Editor cung cấp một số folder đặc biệt được định nghĩa trước , mà bạn có thể add vào gói cài đặt của bạn .Môt số folder quan trọng trong File System Editor là: * Application Folder: Application Folder đại diện cho thư mục sau : . Thư mục Manufacturer và ProductName sẽ được chỉ định bằng cửa sổ Properties . * Global Assembly Cache Folder: Thư mục này cho phép bạn thêm các assembly được install dưới dạng shared assemblies trên máy client . * User’s Desktop: chỉ định các files sẽ xuất hiện trên Desktop người dùng . Vị trị mặc định thường là folder \Documents and Settings\\Desktop, với UserName đại diện cho tên tài khoản của người dùng trên máy client. * User’s Program Menu: đường dẫn mặc định thường là \Documents and Settings\\Start Menu\Programs, với UserName đại diện cho tên tài khoản của người dùng trên máy client. VD : - Tạo thêm thư mục Bin, Database (giả sửa có dùng file CSDL Access) bằng cách nhấn phải chuột trên biểu tượng Application Folder -> Add -> Folder (xem H13).

*
Hình 13: Add thư mục - Kéo thả biểu tượng Primary output … trong thư mục Application Folder vào thư mục Bin vừa tạo. Tức là ta muốn các file EXE và file DLL(H14)

*
Hình 14 : Add file - Đưa tập tin .mdb vào trình cài đặt (nếu sử dụng CSDL Access) bằng cách nhấn phải chuột trên biểu tượng Application Folder -> Add -> File … Chọn tập tin .mdb cần thiết (H16) - Tương tự như vậy ta có thể sắp xếp các file sau khi cài đặt vào các thư mục mong muốn , bằng các tạo các thư mục con trong Application Folder rồi kéo các file trong thư mục con Application Folder vào thư mục con tương ứng.
*
Hình 15 : Insert file database Lưu ý : Ban đầu , File System Designer chỉ hiện thị một số thư mục thường được sử dụng . Bạn có thể liên kết thêm các thư mục bằng cách nhấp phải vào vùng trống và chọn Add Special Folder . Có các tùy chọn ánh xạ đến thư mục Font , Favorites , Starup … của máy tính , cho phép bạn cài đặt các file và các shortcut ở các vị trí khác nhau . Lưu ý : Khi các bạn sắp xếp các file ở các thư mục khác nhau , sẽ ảnh hưởng tới đường dẫn tương đối của các file liên quan đến nhau . VD như file CSDL , do đó bạn phải đảm bảo source code của bạn thay đổi phù hợp đường dẫn đó . 1.1.1. Tạo shorcut - Tạo shortcut cho chương trình: nhấn phải chuột trên biểu tượng Primary output … -> Create Shortcut to Primary output From … một shortcut được tạo ra trong cùng thư mục à đặt lại tên nếu muốn à kéo biểu tượng này vào User’s Desktop, nếu muốn trên Desktop sẽ có shortcut của chương trình, thực hiện tương tự cho shortcut trong User’s Programs Menu (không dùng cho Web Application)
*
Hình 16 1.1.2. Add Assembly vào GAC - Giả sử bạn muốn add thêm 1 assembly độc lập được dùng bởi ứng dụng của bạn vào thư mục Global Assembly Cache . Để làm điều này , bạn mở File System Editor bằng cách chọn menu View ->Editor ->File System Editor . Sau đó , click chuột phải vào folder File System và chọn Add Special Folder -> Global Assembly Cache Folder . Khi đó sẽ xuất hiện thư mục con của File System . Bây giờ bạn có thể add assembly của bạn vào Global Assembly Cache folder. Bằng cách click phải Global Assembly Cache folder và chọn Add -> Assembly . Trong hộp thoại Component Selector , chọn assembly mà bạn muốn add vào . Sau khi add xong thì lúc install nó sẽ copy assembly đó vào folder Global Assembly Cache ở máy client .

*

Hình 17 1.2. Registry Editor - Nhìn cái tên là bạn đã biết editor này làm gì , nó cho phép quản lý các giá trị các registry key của máy client . Mặc định registry editor hiện thỉ các key chuẩn của Windows registry như sau : HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, và HKEY_USERS - Việc khi thêm hay thiết lập registry trong quá trình cài đặt là việc làm thường xuyên “ở huyện” , hầu như 1 ứng dụng nào đó đều ghi thêm “tí tẹo” nào đó để đánh dấu sự hiện diện của nó trong máy client , ngay cả các thành phần portable cũng không thoát khỏi ngoại lệ này . - Click chuột phải vào Setup Project à View à Registry . Cửa sổ Registry On Target Machine hiện lên (H17).

*
Hình 18 VD : - Registry editor đại diện cho cấu trúc của registry editor ở máy client . Vd , chúng ta add 1 key nằm trong trong HKEY_LOCAL_MACHINE. Bằng cách click phải vào nhánh HKEY_LOCAL_MACHINE , chọn New Key , và key con tên là Software. Cứ như thế bạn có thể add các key phân cấp giống như hình sau :
*
Hình 19 - Sau đó bạn install phần mềm tại máy client thì cấu trúc phân nhánh key trong registry của máy client giống y chang trong lúc bạn cấu hình bằng Registry Editor như hình trên. - Các thông tin thường tạo là , v.v… 1.3. File Types Editor - Mục đích : bạn muốn ứng dụng của bạn tự động mở khi người dùng chọn kiểu file nào đó trong Windows Explorer. - Bạn có thể đăng ký các kiểu file bằng cách chỉnh sửa Registry bằng tay . Tuy nhiên cách đó rất nguy hiểm dễ gây hỏng Windows nếu user không am hiểu rõ về registry . Có một cách hay hơn là thực hiện các cấu hình này một lượt (lúc cài đặt) với các tính năng đi cùng với Setup Project . - 1 . Click phải chuột vào Setup Project trong Solution Explorer và chọn View à File Types để hiện thị File Type Designer (H14)
*
Hình 20 : File Type Designer . - 2. Click phải File Type Designer và chọn Add File Type . Đối với mỗi kiểu file bạn phải ng am hiểu rõ về registry . Có một cách hay hơn là thực hiện các cấu hình này một lượt (lúc cài đặt) với các tính năng đi cùng với Setup Project . - 1 . Click phải chuột vào Setup Project trong Solution Explorer và chọn View à File Types để hiện thị File Type Designer (H14)
*
Hình 21 : Thêm 1 kiểu file - 3. Thêm các hành động hỗ trợ cho kiểu file, có 3 mẩu thông tin * Name : mô tả hành động (VD , trong 1 menu ngữ cảnh của Windows Explorer) * Argument : là các đối số dòng lệnh sẽ được truyền cho ứng dụng . Biểu tượng “%l” nghĩa là truyền tên file . Thông thường , 1 thao tác open sẽ chỉ truyền tên file , trong khi các hành động khác có thể truyền thêm đối số (VD lệnh print có thể truyền tên file và đối số /p). Chương trình bạn phải kiểm tra các đối số dòng lệnh và thự hiện hành động thích hợp (trong trường hợp này là mở file) , như được mô tả trong H15 * Verb : cho biết kiểu hành động , như open hay print Hình 22 : Thêm hành động cho kiểu file Lưu ý : Đừng sử dụng File Type Designer để tiếp quản các kiểu file căn bản .bmp , .mp3 , .html . Hầu hết người dùng máy tính đều có các ứng dụng mà họ ưu chuộng để truy xuất các kiểu file này , và việc ghi đè các sở thích này chỉ làm tức giận người dùng của bạn mà thôi. 1.4. Custom Actions Editor - Editor này cho phép bạn liên kết quá trình cài đặt với chương trình khác sẽ được gọi khởi động vào cuối quá trình cài đặt .Để tạo 1 custom action , tạo 1 .dll hay .exe đại diên cho custom action và add nó vào deployment project. Nên nhớ rằng custom action chỉ được thực thi vào lúc cuối quá trình cài đặt . - VD : Nếu bạn muốn tạo dialog ReadMe , có thể User Interface Editor có hỗ trợ bạn làm điều đó , nhưng bạn muối dialog ReadMe động , nhiều chức năng như liên kết website , có hình ảnh … Với Custom Actions bạn có thể add bất cứ cái gì mà do bạn tự code ra, như : copy file sang thư mục nào đó , điều khiển GAC , Registry , IE , tạo database v.v… . Có thể nói là không giới hạn khả năng , vì chính do bạn tự tay code ra mà . - Để add custom action vào Setup Project . Click phải vào Setup Project trong Solution Explorer và chọn View->Custom Actions.
*
Hình 23 : Mở Custom Actions Editor - Sau đó sẽ có cửa sổ giống hình sau : Custom Actions can be divided into 4 categories:
*
Hình 24 : Custom Action Editor - Custom Actions được chia làm 4 category sau : Install, Commit, Rollback, and Uninstall . Nếu bạn muốn có dialog ReadMe riêng bạn vào cuối quá trình cài đặt thì chọn Install 1.5. Launch condition s Editor - Dùng editor này , bạn có đặt điều kiện nào đó được kiểm tra phải có thì mới bắt đầu cài đặt ứng dụng được . Nếu người dùng cố gắng cài đặt ứng dụng vào máy của họ, mà không thỏa điều kiện đã xác định thì không thể cài đặt tiếp được . Khi đặt điều kiện launch condition , bạn có thể chỉ rõ điều kiện như kiểm tra sự tồn tại 1 file xác định , registry key nào đó , hay 1 component nào đó .Launch condition editor có 2 tùy chọn cho bạn dùng được minh họa như sau : * Search Target Machine: tùy chọn này cho phép bạn chỉ định cách search cái bạn cần trên máy client . Bao gồm như tìm fie , tìm registry key …. * Launch conditions : tùy chọn này cho phép bạn kiểm tra sự có mặt của ứng dụng cụ thể nào đó như IIS (Internet Information Server), .NET Framework …trên máy client .
*
Hình 25 Bảng sau liệt kê danh sách launch condition có thể bạn cấu hình thông qua Launch conditions editor. Condition Purpose File Launch Dùng để tìm 1 file nào đó trên máy client Registry Launch Installation Tìm 1 key nào đó trên máy client Windows Installer Launch Tìm file Windows installer .NET Framework Launch Kiểm tra tồn máy client có .NET Framework hay không Internet Information Services Launch Kiểm tra IIS Bạn dùng Lauch Condition có tác dụng là kiểm tra một số điều kiên phải thỏa trước khi install ứng dụng . Các điều kiện kiểm tra thường là tìm file , tìm khóa registry , tìm Component nào đó hay 1 điều kiện triển khai đặc biệt nào đó . 1. Click phải vào Setup Project vào View vào Launch Condions . Cửa sổ Launch Conditions xuất hiện .

*
Hình 26 2. Click chuột phải vào folder Searh Target Machine . Chọn một số giá trị sau : a. Add file Search b. Add Registry Search c. Add Windows Installer 3. Click chuột phải vào Laun Conditions à Add Launch Conditions . Tìm thêm thông tin trong MSDN : Deployment in Visual Studio Launch Condition Management in Deployment URL : ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.en/dv_deploy/html/9927d5e4-11ab-4819-9c7d-7e5e9d3cf555.htm 1.5.1. Searching the system during the install Trong Cửa sổ Launch Conditions có 2 categories : Search Target Machine và Launch Conditions . Thường trong Launch Condisions có sẵn 1 Launch Condition là .NET framework . Bạn thấy những thuộc tính của Launch Conditions .NET framework như hình sau :
*
Hình 27 Trong của sổ Properties bạn thấy các thuộc tính quan trọng sau : - SupportedRuntimes : sẽ là con số miêu tả version của .NET Framework , mà ứng dụng của bạn cần , dùng “;” để liệt kê nhiều version .NET Framework mà ứng dựng của bạn dùng - InstallUrl : là liên kết nơi framework có thể download về. Khi máy client chạy file setup , điều đầu tiên nó sẽ kiểm tra có FrameWork được cài ở máy client chưa . Nếu không có , VS sẽ hỏi yes/no muốn cài đặt FrameWork từ đường link InstallUrl . Do đó bạn có thể cho thuộc tính InstallUrl là 1 đường dẫn tương đối từ CD hay thư mục nào cũng được . 1.5.2. Search for a file Hình sau ví dụ cho tìm file notepad.exe trong thư mục hệ thống . Chú ý dấu chỉ đến thư mục hệ thống (thư mục Windows nếu sài WinXP) của máy client . Có thuộc tính Properites có giá trị : FILEEXISTS1 , nghĩa là kiểm tra tồn tại hay không . Khi setup điều kiện Tìm file sẽ được dò tìm đúng tên file tại thư mục được chỉ định , Có thể điền thêm thông tin như Date , Version … để tìm chính xác file cần tìm . Thuộc tính Depth = 2 : tức là độ sâu tìm , thư mục cha là cấp 1 , thư mục con là cấp 2.
*
Hình 28 1.5.3. Search for a registry entry Trong ví dụ này sẽ tìm khoá registry MDAC MDAC (Microsoft Data Access Components) ở máy client , RegKey : đường dẫn cần tìm Value : giá trị cần tìm
*
Hình 29 1.5.4. Kiểm tra tồn tại .NET Framework trên máy client . Chọn menu View -> Editor -> Launch condition s . Trong Launch condition s Editor, chọn Requirements on Target Machine node và chọn menu Action -> Add .NET Framework Launch condition . Bây giờ bạn đã tạo .NET Framework launch condition , khi người dùng có chạy chương trình cài đặt mà không có .NET Framework sẽ nhận được thông báo rằng .NET Framework cần được cài đặt trước khi tiến trình cài đặt phần mềm . - C1 : Bạn cài đặt .NET Framework bằng thủ công trên máy client : * Bạn có thể download Dotnetfx.exe từ website Microsoft … * Client có thể tải Dotnetfx.ext băng tính năng Microsoft Windows Update * Bạn có thể tìm thấy Dotnetfx.exe trên đĩa cài đặt Microsoft Visual Studio .NET * Khi cài đặt , chương trình cài đặt sẽ kiểm tra máy client có NetFramework không , nếu không có thì nó sẽ hiện ra thông báo (H13):
*
Hình 30 Nếu nhấn No thì thoát khỏi trình cài đặt Nếu nhấn Yes thì trình sẽ tự động tới trang web down NetFramework tương ứng. - C2 : Click chuột phải vào Setup Project à chọn Properties à nhấn nút Prerequisites…

*
Hình 31 Hiện lên dialog Prerequisites . Bạn đánh dấu check vào phần .Net FrameWord 2.0 hoặc 3.5 với VS2008
*
Hình 32 - Ở dialog này bạn check vào các component (VD : .Net Framework 2.0) , khi đó lúc setup phần mềm Windows Installer sẽ kiểm tra các component đó có được cài sẵn vào máy client , nếu có thì cho cài tiếp còn ngược lại không có thì sẽ cài . Mà các component sẽ được lấy ra từ nơi mà bạn chỉ định ở các option bên dưới của dialog Prerequisites - Download Prerequisites from the component vendor’s web site : chỉ định component được install từ website của nhà sản xuất . Đây là tuỳ chọn mặc định . - Download Prerequisites from the same location as my application : chỉ định component được setup từ thư mục của ứng dụng . Do đó khi chọn tuỳ chọn này , nó sẽ copy các gói component cần thiết từ máy chủ vào output của Setup Project - Download Prerequisites from the following location. : chỉ định component được install từ thưc mục do bạn tự chọn . Nhấn nút Browse vào thư mục cài đặt . - C3 : Bạn có thể tạo một bootstrapper setup để cài đặt .NET Framework và rồi cài đặt ứng dụng một cách tự động . Cách này làm cho việc triển khai thêm rắc rối và không mang lại lợi ích nào thuyết phục trong hầu hết các trường hợp. User Interface Editor Nhìn cái tên là bạn đoán ra editor này cho phép bạn tùy biến một dãy các hộp thoại GUI được hiển thị trong suốt quá trình cài đặt ứng dụng trên máy client .
*

Hình 33 Hình ở trên minh họa cho User Interface Editor bao gồm 2 chế độ cài đặt : * Install: vùng Iinstall liệt kê các hộp thoại sẽ xuất hiện khi người dùng chạy installer. * Administrative Install: vùng này liệt kê các hộp thoại sẽ được xuất hiện khi người quản trị hệ thống uploads installer lên mạng . Hộp thoại được định nghĩa sẵn trong vùng Install và Admin được chia thành 3 Group Dialog nữa : * Start dialog boxes: Các hộp thoại trong lớp này sẽ xuất hiện trước khi quá trình thực sự cài đặt bắt đầu . * Progress dialog box: Các hộp thoại trong lớp này cho phép người dùng tương tác lại trong quá trình cài đặt . * Finish dialog boxes: Các hộp thoại trong lớp này sẽ xuất hiện khi quá trình cài đặt thành công . Nó cũng thể cho phép ngừoi dùng chạy ứng dụng khi cài đặt xong . - Thực ra rất dễ sắp xếp lại các hộp thoại GUI bằng cách dragging and dropping chúng tới vị trí thích hợp . - Bạn có thể tùy chỉnh các thông tin , tiêu đề của các cửa sổ xuất hiện trong lúc install phần mềm . Click chuột phải vào Setup Project à View à User Interface . Sẽ xuất hiện của sổ User Interface :

*
Hình 34 - Chọn từng hộp thoại và chỉnh sửa các thông tin trong cửa sổ Properties (nếu không có của sổ này thì vào menu View à Properties Window hoặc nhấn F4) . Bạn có thể thêm một Dialog của mình , bằng cánh nhấn vào Group Dialog à Add Dialog . 1.6.1 Thêm hộp thoại Splash vào trong quá trình cài đặt . - Bằng cách dùng User Interface Editor, bạn có thể insert thêm 1 hộp thoại phụ vào chuỗi các hộp thoại trên , bằng cách chọn hộp thoại Start từ user interface editor và chọn menu Action->Add Dialog . Trong cửa sổ Add Dialog , chọn hộp thoại Splash trong danh sách . Khi hộp hoại Splash được thêm vào user interface editor, bạn có thể drag and drop hộp thoại để sắp xếp vị trí thích hợp .Vì hộp thoại Splash luôn luôn xuất hiện vào lúc bắt đầu cài đặt , nên ta di chuyển hộp thoại Splash vào đầu dãy hộp thoại . Trong hộp thoại splash , bạn có thể thêm hình ảnh hiển thị bằng cách Click phải chuột vào nó chọn Properties. Trong cửa sổ Properties ,đặt thuộc tính SplashBitMap đường dẫn của hình mà bạn muốn . Giống như hộp thoại Splash , có một số hộp thoại định nghĩa sẵn như License Agreement, Read Me, Register User, Customer Information và v.v… Hình sau đâu mình họa một số tùy chọn hộp thoại trong Add Dialog box.
*
Hình 35 1. Add Merge Module Khai báo các Merge Module cho trình cài đặt: trên Solution Explorer, nhấn phải chuột trên project cài đặt -> Add -> Merge Module. Nếu trong ứng dụng có sử dụng các thành phần không có trong .Net FrameWork, phải chọn và đưa vào trình cài đặt. - Ví dụ ứng dụng có báo biểu Crystal Report là chương trình độc lập với .Net FrameWork, cần phải đưa các Merge Module sau vào trình cài đặt: a. Crystal_managed2003.msm b. Crystal_Database_Access2003.msm c. Crystal_Database_Access2003_enu.msm d. Crystal_regwiz2003.msm
*
Hình 36 Khai báo License key: với một số Merge Module, phải khai báo License Key ví dụ Crystal_regwiz2003.msm theo các bước: a. Trên Solution Explorer, chọn Merge Module muốn khai báo License key và nhấn phím F4 để mở cửa sổ Properties :
*
Hình 37 Trên cửa sổ Properties, nhấn vào biểu tượng dấu cộng , nhập License Key
*
Hình 38 License Key lấy bằng cách vào Menu Help à About Microsoft Visual Studio
*
Hình 39 : Lưu ý : bạn có thể add Crystal Report vào đấy. 2. Cấu hình các thuộc tính của Setup Project Trước khi Build Setup Project, cần xác định Propreties cho Setup Project: Right Click vào Setup Project trong Solution Explorer, chọn Project Propertities :

*

Hình 40 Output file name : Xác định vị trí lưu file Windows Installer (.Msi , .Msm ) . Mặc định được lưu ở . Bạn có thể nhấn nút (…) để chọn vị trí đường dẫn khác . Packages file : Loại đóng gói , chọn một trong các các giá trị sau : As loose uncompressed files Các file được đưa vào trong 1 file là file .MSI In setup file Các file được nén thành 1 file .MSI (mặc định) . In cabinet file(s) Các file được nén thành 1 hay nhiều file .Cab . Compression : chỉ định cách nén file setup , có 3 tùy chọn , không có tác dụng đối với tùy chọn As loose uncompressed files ở mục Packages file Optimized for speed Các file được nén để install nhanh hơn , nhưng kích thước file setup sẽ lớn Files will be compressed to install faster, but will result in a larger file size. Optimize for size Các file sẽ được nén thành file setup có kích thước nhỏ , nhưng install chậm hơn None Các file không được nén. Cab size : Chỉ định kích thước lớn nhất cho file .Cab . Tùy chọn này chỉ các tác dụng khi ở mục Package files được chọn In cabinet file(s) . Có 2 tùy chọn chính ở múc này Option Description Unlimited Tạo 1 file .Cab duy nhất . Custom Tạo 1 hay hay nhiều file .Cab , mỗi file .Cab có kích thước lớn nhất được chỉ định ở textbox Custom. 3. Các thông tin cấu hình Setup Project ở cửa sổ Properties. Trong cửa sổ Solution Exlorer , chọn Project Setup , trong cửa sổ Properties (nếu không có của sổ này thì vào menu View à Properties Window hoặc nhấn F4) sẽ hiện lên danh sách các thông tin mà ta có thể cấu hình cho file setup chương trình của mình . Hầu hết các thông tin thiết lập này đều là mô tả được sử dụng trong Setup Wizard hay trong cửa sổ Add/Remove Programs. Tên thuộc tính Ý nghĩa AddRemoveProgramsIcon Chỉ định icon xuất hiện trong hộp thoại Add/Remove Programs Author Tên tác giả của chương trình Description Miêu tả một số thông tin phụ DectectNewerInstalledVersion Lúc cài đặt có kiểm tra phiên bản mới hơn không , mặc định là True InstallAllUsers Chương trình cài đặt có được phép sử dụng bởi tất cả user có trong máy không . Mặc định là False Keywords Chỉ định một số từ khóa để tìm kiếm chương trình Localization Xác định vùng văn hóa của chương trình Manufacturer Tên của nhà sản xuất ManufacturerUrl Địa chỉ Website của nhà sản xuất PostBuildEvent PreBuildEvent ProductCode Số sản phẩm , số này là duy nhất , mặc định VS tạo sẵn cho mình , số này định danh cho phần mềm của mình là duy nhất trên máy cài đặt ProductName Tên sản phẩm, thường tên xuất hiện trong add/remove program trong control panle RemovePreviousVersions Chỉ định có xóa phiên bản cũ trước khi cài đặt phiên bản mới hay không. Mặc định là False RunPostBuildEvent Chỉ định các lệnh PostBuildEvent chạy khi này . Mặc định là On succesful build , tức là khi cài đặt xong rồi thì lệnh đó mới chạy . SearchPath SupportPhone Chỉ định số điện thoại để hỗ trợ về sản phẩm SupportUrl Chỉ định địa chỉ trang web để hỗ trợ về sản phẩm TargetPlatform Chỉ định Nền máy đích là gì . Mặc định là x86 (tức là ứng dụng win32 bit) Title Chỉ định tiêu đề , tiêu đề này xuất hiện trong cửa sổ cài đặt UpgradeCode Chỉ định một số duy nhất , đại diện cho nhiều version của ứng dụng. Mặc định dãy số này do VS tạo ra Version phiên bản của ứng dụng . VD 1.0.0 3.1. Deploy IIS Settings Một điều quan trọng khi bạn triển khai ứng dụng web ASP.NET là làm thế nào cấu hình một số thông số trong IIS . Nếu chọn cách triển khai ứng web bằng cách copy như lệnh XCOPY , Windows Explorer, hay FTP , thì không thể cấu hình thông số của IIS được . Bạn phải cấu hình cài đặt 1 cách độc lập . Bạn có thể vừa làm cách thủ công hay viết IIS scripts để áp dụng cài đặt vào thư mục Web. Nếu bạn dùng Visual Studio .NET Copy Project , 1 virtual directory mới được tạo tự động cho bạn trên Web server. Tuy nhiên , thông số IIS settings sẽ là thông số mặc định của máy chủ web . Trở lại vấn đề, bạn có thể cấu hình thông số IIS một cách độc lậo . Nếu gói ứng dụng ASP.NET của bạn trong Windows installer Web setup project, bạn có thể chỉ định các thông số IIS . Để cấu hình các thông số cho virtual directory , chọn thư mục ứng dụng Web File System Editor. Chọn Properties . Được minh họa như hình sau :

*
Hình 41 Một só thuộc tính quan trọng sau đây : * AllowDirectoryBrowsing: thuộc tính này cho phép bạn cấu hình dùng trình duyệt thư mục Web . Thuộc tính này tương được với checkbox Directory browsing trên tab Directory trong hộp thoại Internet Information Services Web Site Properties . Có thể đặt True hoặc False. * AllowReadAccess: Thuộc tính này tương được với checkbox Read trên tab Directory trong hộp thoại Internet Information Services Web Site Properties . Có thể đặt True hoặc False. * AllowScriptSourceAccess: Thuộc tính này tương được với checkbox Scipt Source Access trên tab Directory trong hộp thoại Internet Information Services Web Site Properties . Có thể đặt True hoặc False. * AllowWriteAccess: Thuộc tính này tương được với checkbox Write trên tab Directory trong hộp thoại Internet Information Services Web Site Properties . Có thể đặt True hoặc False. * ApplicationProtection: Thuộc tính này tương được với combobox Application Protection trên tab Directory trong hộp thoại Internet Information Services Web Site Properties . Có thể đặt giá trị là vsdapLow, vsdapMedium, hay vsdapHigh. * AppMappings: Thuộc tính này tương được với textbox Local Path trên tab Directory trong hộp thoại Internet Information Services Web Site Properties . Để chỉ tới đường dẫn tới thư mục web thật của bạn . 3.1.1. Specifying additional IIS Propeties Có một số thông số của IIS không thể cấu hình với thuộc tính của Web setup project. Bao gồm các thông số bảo mật ( anonymous access, basic authentication, hay Windows authentication) và thông số về cấu hình lỗi .Tuy nhiên , bạn có thể khác phục vấn đề này bằng cách khác . Đó là bao gộp custom action s vào file Windows installer . Như đã đề cập trước đây , dùng custom action , bạn có thể chạy code vào lúc cuối của quá trình cài đặt trên máy client để thao tác một số hành động phức tạp . Code có thể định dạng trong file DLL, file thực thi , script, hay assembly. Các custom action s cần được cấu hình bằng cách Custom action Editor thông qua menu View -> Editor -> Custom action . 4. Build - Bước cuối cùng tất nhiên mà bạn phải làm là build Setup Project khi mà các bước cấu hình ở các bước trên đã hoàn thành . +C1 : Click chuột phải vào Setup Project chọn Build , hoặc Rebuild + C2 : Nhấn nút Build, nhớ trong Solution Explorer ta phải chọn tên của Setup Project. + C3 : Vào Menu Build à Chọn Build Tên_Setup_Project - Nếu sau khi build mà thích cài thử thì cứ việc right click vào Setup Project và chọn Install.
*

Hình 42 - Phần để cài đặt chứa trong thư mục Debug của trình cài đặt gồm các tập tin:

*