Đang tải dữ liệu...

Vui lòng chờ
:: Quên mật khẩu ::

Lần truy cập trước của bạn:
Hôm nay: 19/10/2017, 03:09
Xem bài mới từ lần truy cập trước
Xem bài của bạn
Xem bài chưa có ai trả lời
 Share | 
ĐÓNG GÓI ỨNG DỤNG BẰNG Visual studio PHẦN 1Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

avatar

nguoibantot192007



http://da07tt.forum-2007.com
.:.Thông tin.:.

Giới tính Giới Tính: Nam
NickName User: nguoibantot192007
Đến từ Đến từ : traÌ€ vinh
Age Age : 27
Posts Posts : 275
Join date Join date : 08/06/2009

Giới tính Giới tính : Nam
Age Age : 27
Birthday Birthday : 26/11/1989
Job/hobbies Job/hobbies : Sinh Viên
Đến từ Đến từ : traÌ€ vinh
Sở thich của bạn Sở thich của bạn : game,nghe nhaÌ£c
Posts Posts : 275
Points Points : 15252
Thanks Thanks : 10
Join date Join date : 08/06/2009
Pet Pet : 4 .Endeavor


30/4/2010, 23:28
Nguồn bài gửiNguồn: http://da07tt.forum-2007.com/t314-topic
Bài gửiTiêu đề: ĐÓNG GÓI ỨNG DỤNG BẰNG Visual studio PHẦN 1
Da07tt Community - Kết nối bạn bè 
------------------------------------------------------------------
1. GIỚI
THIỆU:




- Có một thời trước đây , đa số máy tính người dùng có một
thời kỳ khủng hoảng trong việc cài đặt ứng dụng Windows . Ví dụ , khi
bạn cài đặt 1 version mới của 1 ứng dụng nào đó hay 1 ứng dụng không
liên quan gì tới 1 ứng dụng đã cài trong máy của bạn , quá trình cài đặt
sẽ copy version của dlls vào thư mục hệ thống và thay đổi thiết lập
trong registry . Quá trình cài đặt này có thể gây nguy hiểm ứng dụng
khác trong cùng máy client đó , đặc biệt nếu tồn tại 1 ứng dụng đang
dùng chung với các componient . Nếu các componient đó tương thích lùi
với các phiên bản trước , that’s okei , nhưng đa số trường hợp nó không
có khả năng tương thích lùi với các phiên bản cũ hơn . Thì lúc đó bạn
buộc phải nâng cấp các phần mềm khác , hoặc tệ hơn là không dùng được
nữa . Vấn đề khó chịu đó được gọi là DLL Hell

- Nói thêm về cơn ác mộng DLL . Giả sử kịch bản sau : bạn
cài đặt ứng dụng A của trên máy của bạn , nạp một số DLL của Windows .
Nó hoạt động ngon lành trong nhiều năm . Sau đó bạn cài đặt ứng dụng B
cũng trên máy của bạn và thình lình không chờ đợi , ứng dụng A “sụm bà
chè” không nói không rằng . Mà ứng dụng B không dính dạng ứng dụng A .
Việc gì xảy ra ? Cuối cùng bạn phát hiện ra là : ứng dụng B đã thay thế
một số DLL mà ứng dụng A cần đến , và thình lình ứng dụng A bằt đầu lảo
đảo và bất động .

- Theo nguyên tắc , DLL phải tương thích lùi
(backward-comatible) . Vì DLL mới được thêm vào máy , thì ứng dụng cũ
xưa thình lình được kết nối với 1 DLL không tương thích với những gì ứng
dụng chờ đợi và thế là xong đời . Hiện tượng này khiến cho khách hàng
windows phải nâng cấp chương trình hiện hữu và cũng là 1 trong những lý
do bảo rằng các máy sử dụng Windows bất ổn . Với assembly của .NET thì
cơn ác mộng sẽ biến mất .

- Bạn muốn triển khai ứng dụng của bạn bằng một chương
trình cài đặt có thể chép file thực thi , tạo shorcut , thêm các thiết
lập Registry … Có nhiều chương trình phục vụ cho việc đóng gói phần mềm
trở nên dễ dàng hơn bao giờ hết , ví dụ như : WiseInstall for .net,
InstallShield, InstallAnywhere for .net , Nsis …

- Hôm nay mình sẽ giới thiệu 1 công cụ hỗ trọ đóng gói
phần mềm đó là Microsoft Visual Studio 2005 .

- Với mô hình triển khai “zero-touch” của .NET , bạn có
thể chép file ứng dụng đã được biên dịch sang bất kỳ máy tính nào khác
mà không phải đăng ký các thành phần này hay chỉnh sửa các Registry .
Tuy nhiên , hầu hết các ứng dụng chuyên nghiệp đều đòi hỏi có 1 chương
trình cài đặt tự động để chép các file vào vị trí thích hợp và thêm các
shortcut của ứng dụng vào Start Menu hay với nhiều cấu hình tự động khác
nữa . Microsoft Visual Studio .NET cho phép xây dựng kiểu chương trình
cài đặt như thế với một dự án cài đặt hay người ta gọi là (Setup
Project)


- Setup Project là 1 kiểu Project đặc
biệt trong Visual Studio .NET . Khác với kiểu Project
khác , nó thuộc dạng không đặc thù ngôn ngữ . Thay vì viết mã kịch bản
cài đặt , bạn cấu hình tùy chọn cài đặt thông qua GUI . Sau đó Project
này được biên dịch thành 1 ứng dụng cài đặt Windows Installer
(file .msi)


Các tính năng mà công cụ đóng gói của VS.net hổ trợ :

- Chương trình tự động phát sinh cùng lúc cả Install và
Uninstall lúc Compile

- Tạo Shortcut

- Cho phép tạo chương trình Install gồm nhiều đồ án, nhiều
chương trình thực thi và nhiều thư viện

- Tùy chọn đường dẫn cài đặt

- Kiểm soát được tình huống cài đặt :

o Cài đặt lần đầu

o Remove

o Repair

o Khi chương trình đã được cài đặt thì lần tiếp theo xuất
hiện hộp thoại cho chúng ta lựa chọn Repair hoặc Remove

- …..v…v

VS.net hỗ trợ 6 kiểu tạo file setup như sau:

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
web

4. 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.

Chúng ta xét 2 hổ trợ đó là Setup Wizard
Setup Project . Thực ra chỉ cần tìm hiểu Setup
Wizard
là đủ vìSetup Wizard đã có bao hàm Setup
Project.

2. MỘT SỐ
THUẬT NGỮ TRONG BÀI VIẾT




Một số thuật ngữ 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 :
    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ại
  • Setup 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.
  • Windows Installer
    :


3. TÌM HIỂU
CƠ CHẾ ĐÁNH PHIÊN BẢN CỦA .NET




Như bạn đã biết , .NET Runtime không buồn kiểm tra phiên
bản đối với private assembly . Nhưng khi “chơi” với shared assembly thì
vấn đề phiên bản lại trở thành quan trọng , bây giờ ta tìm hiểu cơ chế
đánh số phiên bản (gọi là versioning ) và kiểm tra đối với shared
assembly .

Trên .NET các shared assembly được nhận diện được nhận
diện duy nhất thông qua tên và version . GAC (Global Assembly Cache )
cho phép các phiên bản khác sống side-by-side , nghĩa là phiên bản cũ
vẫn hiện diện cùng với phiên bản mới . Như vậy các ứng dụng có thể dùng
bất cứ phiên bản nào mà nó thích , tuỳ thuộc ứng dụng đó , cũ cũng có ,
mới cũng có sẵn .

Một con số đánh dấu version của 1 assembly trong giống như
sau : 1:0:2204:21 , nghĩa là 4 con số phân cách bởi dấu ‘:’ . 2 số đầu
(1:0) được gọi là major và minor . Con số thứ 3 là số build và con số
thứ 4 là số revision (số chỉnh sửa duyệt lại) .

Khi 2 assemply có số major và minor khác nhau thì được xem
là không tương thích (incompatible) . Khi các assembly khác nhau số
Major và minor , thì bạn có thể chắc chắn là có nhiều thay đổi đánh kể
(như đổi tên các hàm hành sự , kiểu dữ liệu , kiểu thông số bị thay đổi ,
v.v… Do đó , nếu ứng dụng client yêu cầu gắn kết với phiên bản 2.5
nhưng GAC chỉ có phiên bản 2.0 thì yêu cầu gắn kết thất bại (trừ khi bản
chỉnh sửa tập tin cấu hình của ứng dụng) .

Khi 2 version cùng số major và minor nhưng lại có số build
khác nhu thì .NET Runtime giả định chúng có thể tương thích với nhau
(tương thích nhưng không bảo đảm lắm) . Cuối cùng nếu 3 số đầu giống
nhau, chỉ khách số revision (còn gọi là QFE Quick Fix Engineering) thì
được xem là hoàn toàn tương thích .

Số QFE dành cho những lần sửa chữa bug . Nếu bạn sửa 1bug
và cho biết là DLL của bạn hoàn toàn tương thích đối với phiên bản hiện
hữu , thì bạn phải tăng con số revision . Khi 1 ứng dụng nạp 1 assemply ,
thì nó cho biết version major và minor muốn nạp , và AssemblyResolver
sẽ tìm ra con số build và revision cao nhất .
4. 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
  • 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)



Hình 7

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 .


5. CÁCH 2 :
CÁC BƯỚC TẠO CHƯƠNG TRÌNH VỚI SETUP BẰNG SETUP PROJECT




1. Mở Solution Explorer của VS.net ra, right click vào
Solution.

Trong menu thả ra, vào mục Add à New project –> Xuất
hiện hộp thoại Add new project (H12).



Hình 9

2. Trong hộp thoại Add new project (H13):



Hình 10

- Bên trái có Project Types: Chọn Other Project Types
–> Setup and Deployment

- Bên phải có Templates: Chọn Setup Project.

- Đặt tên Setup Projectvào
trường name

- Chọn đường dẫn cần lưu thư mục tại trường Location

3. Sau khi click Ok à VS.net sẽ tự động hiển thị Child
window là File System ở dạng Explorer. Chưa làm gì với Window này vội.



Hình 11

4. Lại mở Solution Explorer, right click vào Setup
Project
vừa tạo.Trong menu thả ra, Chọn AddàProject
Output –> xuất hiện hộp thoại: Add Project Output Group



Hình 12

Combobox đầu tiên tên là Project chứa danh sach
các Project hiện có trong Solution , chọn 1 project mà bạn muốn đóng gói
.

ListBox thứ hai chứa các loại đầu ra (output) lấy từ tên
Project của combobox trên mà chúng ta có thể đưa vào toàn bộ Setup .

  • Primary Output :
    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.
  • Localized
    resources :

  • Debug symbol :
    chứa một số file hỗ trợ debug của dự án .
  • Content Files :
    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.
  • Source files : chứa
    file source code của project cần đóng gói như file css , vb , cpp …
  • Documentation
    Files :
    (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.


  • XML Serialization
    Assemblies :



Các thứ khác thì có thể xem Description của hộp thoại đó.

Khi chọn xong những Project và ouput cần đưa vào Setup
Project
thì VS sẽ gói tất cả vào và khi cài đặt sẽ bung ra ở
máy người dùng. Đấy là nguyên lý, còn bây giờ chưa gói mà phải Build
nhưng đừng Build vội

Có những thứ không tự động thêm vào Setup thì chúng ta
phải dùng Child Window File System để thêm. Chúng ta có thể tạo thêm các
thư mục, Shortcut, đưa các file từ Source Machine đến Target
Machine,…..vv .


Chữ Kí Của: nguoibantot192007


Giới tính Giới tính : NamAge Age : 27Birthday Birthday : 26/11/1989Job/hobbies Job/hobbies : Sinh ViênĐến từ Đến từ : traÌ€ vinhSở thich của bạn Sở thich của bạn : game,nghe nhaÌ£cPosts Posts : 275Points Points : 15252Thanks Thanks : 10Join date Join date : 08/06/2009Pet Pet : 4 .Endeavor

Thông điệp:

****************Hãy cùng chia sẻ với bạn bè bằng cách****************

Copy đường Link dưới đây gửi đến nick yahoo bạn bè!


ĐÓNG GÓI ỨNG DỤNG BẰNG Visual studio PHẦN 1Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang
Trang 1 trong tổng số 1 trang
* Viết tiếng Việt có dấu, là tôn trọng người đọc.
* Chia sẻ bài sưu tầm có ghi rõ nguồn, là tôn trọng người viết.
* Thực hiện những điều trên, là tôn trọng chính mình.
-Nếu chèn smilies có vấn đề thì bấm A/a trên phải khung viết bài
AVIM Control [F12 to Hide]
AutoTelexVNIVIQRVIQR*OffSpellOldAccent

Permissions in this forum:Bạn không có quyền trả lời bài viết
 :: 

Góc Học Tập - Kho Tài Liệu

 :: 

Lập Trình Tổng Hợp

 :: 

C / C++ / C#

-
 




Thông tin diễn đàn
Copyright ©2008 - 2009, DA07T Forum.
Design by by Mai Minh Thuận [Admin]
Bản quyền by Haitac261189.
RSS Liên hệ MAP
Powered by phpBB Version 2.0 Lisenced
Copyright ©2000 - 2008.
Gửi cho bạn trang này | Click vào tải Firefox 3 || Lưu ý:Nên sử dụng Fire Fox 3 để duyệt Web
Free Auto Backlinks From WebXayDung.VNText Back Links Exchange
Free forum | © phpBB | Free forum support | Liên hệ | Report an abuse | www.sosblogs.com