|
# 배포하기
들어가는 말.
우선 여기저기 복사해서 있는 자료들을 수집했고, 외국 블로그와 국내 유명한 개발자의 블로그를 짜집기 해서
나의 경험과 생각으로 정리를 해보고 자 합니다.
# 스마트 클라이언트란 ?
스마트 클라이언트(n) 정의: 쉽게 배포 및 관리할 수 있는 클라이언트 응용 프로그램인 스마트 클라이언트는 로컬 리소스를 활용하고 분산된 데이터 소스에 인텔리전트하게 연결됨으로써 뛰어난 적응력과 대응성을 갖춘 풍부한 대화형 경험을 제공합니다.
간단히 발전 역사와 관련이 있다. 위 그림처럼 중간에 중쳡되는 (교집합) 부분이 스마트 클라이언트의 장점이라고 보겠다.
thin client - 비지니스 로직이 웹 서버에 있고, 클라이언트는 브라우징만 한다.
smart client - 틈틈이 네트웍에 접근을 해서, 서비 데이타를 긁어오고, 비지니스 로직도 클라이언트가 같이 갖고 있다.
참고 할 만한 자료
Smart Client Architecture and Design Guide on MSDN (영문자료지만 차례별로 잘 보면 이해가 된다.)
개발자가 스마트 클라이언트를 만들어야 하는 가장 중요한 10가지 이유
개발자가 스마트 클라이언트를 만들어야 하는 가장 중요한 10가지 이유 더보기
ClickOnce란
http://msdn.microsoft.com/ko-kr/library/t71a733d(VS.80).aspx
msdn의 말을 인용하면 아래와 같다.
솔루션을 배포하는 부분은 알게 모르게 많은 문제와 비용이 발생한다.
하지만 이런 과정을 ClickOnce 을 이용하면 편리하게 적은 비용과 간단히 배포가 가능하다.
참고링크
1. http://www.microsoft.com/korea/msdn/smartclient/understanding/windowsforms/2.0/features/clickonce.aspx
왜 써야하는가?
보통 기존의 Microsoft Installer 방식과 ClickOnce을 비교한 표를 보여준다. 아래 링크에서 보세요.
참고: http://kikiwaka.egloos.com/2046360
간단히 말해서 윈도우즈 권한 문제와 자동 업데이트, 안전성과 성능을 보장한다.
# ClickOnce을 통하여 배포하기
해당 URL을 호출하면 웹서버를 통해서 클라이언트에 배포된다.
프로그램(app)이 실행되지 위해서 필요한 모든 dll, exe 리소스들은 iis서버에 있고 이를 URL을 통해서 클라이언트는 서버로 접속을 하고 내려 받는 것이다. 다운받은 리소스들은 자동으로 설치가 되는 것이다.
Visual Stdio .Net에서 게시를 하면 위와 같은 화면을 볼 수있다.
현재 3rd Part로 Infragistics의 Wingrid, WinTree 등, XtraReport를 쓰고 있는 데
인프라로직스의 경우
http://devcenter.infragistics.com/Support/KnowledgeBaseArticle.Aspx?ArticleID=9692
를 보면 알수 있듯이 간단히 게시만으로도 배포가 가능하다고 나와 있다.
HOWTO:Deploy a VS2005 Windows Forms application with NetAdvantage controls using ClickOnce deployment
Step-By-Step Example
Use
the following steps to configure your application's NetAdvantage
references to include these files as part of ClickOnce deployment.
1)
Access the project’s properties interface by right-clicking on the
project in Solution Explorer and selecting properties or through Visual
Studio 2005’s main toolbar’s Project -> (Your project name)
Properties.
2) Click on the Publish tab.
3) Click on the Application Files button.
4)
In the interface that appears, you will find the NetAdvantage
assemblies that are referenced. Change their Publish Status to Include.
특별히 다른 배포를 할 필요가 있으면 Bootstrapper Manifest Generator 을 이용하여 배포할때 필요한 구성에 추가를 하면된다.
http://www.davidguyer.us/BMG/publish.htm 여기에서 다운로드 받을 수 있다.
msi파일로 만들어서 같이 배포를 하면 되기 때문에 같이 쓰면 유용하다.
# 마무리
솔찍히 스마트클라이언트로 만들고 ClickOnce로 배포하는 로직을 구현했으나
대 실패하였다. 하지만 관련정보를 애써 모았던 기억이 나고 다음에 쓸 기회가 있다는 생각에 적어두었습니다.
배포하는 방법은 ClickOnce가 참 좋던데 IE에서 exe파일을 독립적으로 호출 할때 차후 문제가 많이 될거라 생각되어서 손땟습니다.
ClickOnce가 원하는 위치에 배포하지 않기때문에 자동업그래이드도 직접구현하여서 처리하는 방향으로 가닥을 잡았습니다.
잘 관리하면 초기배포비용을 줄일수있을거 같은데 쉽지 않네요. 유료배포툴인 인스톨쉘이 더 좋은건 사실인거 같습니다.
바탕화면으로 바로가기 아이콘 뽑아내기, CAS 등 권한 자동으로 설정등 팁이 있지만 여전히 힘듬
참고사이트
http://springpopup.me/33 ☆☆☆☆☆ 추천! (실무자 다운 면모)
http://kikiwaka.egloos.com/2046360 ☆☆☆ (읽어볼것. 개념정리에 좋음)
# 추가
1. CAS권한 msi로 배포하기
http://www.devpia.com/Maeul/Contents/Detail.aspx?BoardID=18&MAEULNO=8&no=1067&page=20
참고
http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=18&MAEULNo=8&no=1075&ref=1075
작성자 우영식
ClickOnce 배포를 사용하면 간단한 설치를 위해 웹 서버나 네트워크 파일 공유에 Windows 기반 응용 프로그램을 게시할 수 있습니다. Visual Studio는 ClickOnce를 사용하여 배포되는 응용 프로그램의 게시 및 업데이트를 완벽하게 지원합니다. ClickOnce 배포는 Visual Basic, Visual C# 및 Visual J#을 사용하여 만드는 프로젝트에 사용할 수 있지만 Visual C++에는 해당되지 않습니다. Visual C++ 응용 프로그램 배포에 대한 자세한 내용은 Visual C++ 응용 프로그램의 ClickOnce 배포를 참조하십시오.
다음 항목에서는 ClickOnce 배포에 대해 자세히 설명합니다.
단원 내용
- ClickOnce 배포 개요
-
ClickOnce 배포 기술 및 관련 개념에 대해 소개합니다.
- ClickOnce 배포 전략 선택
-
ClickOnce 응용 프로그램을 배포하기 위한 여러 가지 옵션을 설명합니다.
- ClickOnce 업데이트 전략 선택
-
ClickOnce 응용 프로그램을 업데이트하기 위한 여러 가지 옵션을 설명합니다.
- ClickOnce 배포 및 보안
-
ClickOnce 배포의 보안 관련 문제에 대해 설명합니다.
- ClickOnce 응용 프로그램 게시
-
이 단원에는 ClickOnce 배포와 관련된 일반적인 작업을 수행하는 방법에 대해 설명하는 작업 항목이 포함되어 있습니다.
- ClickOnce 응용 프로그램 보안
-
ClickOnce 배포의 보안 기능과 코드 액세스 보안 및 보안 영역의 역할에 대해 설명합니다.
- ClickOnce 매니페스트 서명
-
응용 프로그램 및 배포 매니페스트를 서명하는 방법에 대해 설명합니다.
- ClickOnce를 사용하여 COM 구성 요소 배포
-
응용 프로그램 및 배포 매니페스트를 서명하는 방법에 대해 설명합니다.
- 명령줄에서 ClickOnce 응용 프로그램 빌드
-
MSBuild를 사용하여 명령줄에서 응용 프로그램을 배포하는 방법에 대해 설명합니다.
- System.Deployment.Application을 사용하는 ClickOnce 응용 프로그램 디버깅
-
고급 ClickOnce 배포 기능을 제공하는 System.Deployment.Application 네임스페이스의 요소를 구현하는 응용 프로그램을 디버깅하는 방법에 대해 설명합니다.
- Troubleshooting ClickOnce Deployment
-
ClickOnce 배포에서 발생할 수 있는 일반적인 문제의 해결 방법에 대한 정보를 제공합니다.
관련 단원
|
'소프트웨어 > 3rd Part' 카테고리의 다른 글
UltraWinGrid Infragistics Netadvantage - FrameWork (25) | 2009.07.16 |
---|---|
UltraWinTree 클릭후 포커스 Enter/Out 시 색상지정 (5) | 2009.03.02 |
Export UltraWinGrid to Excel (WinGird에서 엑셀로 내려받기) (5) | 2009.01.30 |
Windows Form UltraWinGrid Infragistics Netadvantage 2008.3 CLR2.0 버전 ver 0.1 (5) | 2009.01.20 |
UltraWinGrid 의 Grid의 GroupBoxBy 예제입니다. (4) | 2009.01.17 |
댓글