Microsoft MVP성태의 닷넷 이야기
글쓴 사람
심현철
홈페이지
첨부 파일
 

ClickOnce를 이용하여 SmartClient를 자동화설치할 수 있다고 아래의 글에 써 있었습니다.
자바스크립트를 이용하면 된다고만 써 있는데, 힌트를 주셨으면 좋겠습니다.

제가 생각하는 배포방식은 기존의 ActiveX 배포하는 것처럼. 특정 사이트에 접속하면 알아서 ActiveX가 설치되고
IE에 호스팅 되는 것입니다. 중간에 마우스로 버튼을 누를 필요도 없고, 멀 선택할 필요도 없이 말입니다.

일단 ClickOnce로 CAS를 설정하는 프로그램을 만들었고 publish.htm도 있습니다.

사용자는 (1) 특정 사이트로 접근한다.
           (2) 웹 페이지에서는 .NET이 설치되었는지 확인한다(publish.htm에 이미 코드가 있죠)
           (3) 웹 페이지에서는 CAS 설정 프로그램이 기존에 설치되어 있는지 확인한다.
                기존에 설치되지 않은 경우에만 CAS 설정 프로그램을 새로 설치한다.
           (4) 스마트 클라이언트를 IE에 호스트할 수 있도록 한다.

이상입니다.








[최초 등록일: ]
[최종 수정일: 12/29/2006]


비밀번호

댓글 작성자
 



2006-12-29 03시21분
[신동열] 자동 설치는 publish.htm 파일을 좀 수정해서 하시면 되구요. 하지만 님이 말씀하시는 것처럼 중간에 마우스 누르지 않고 완전 자동 설치는 불가능 합니다. 그냥 설치 프로그램만 실행되도록 호출해 주는 겁니다. 그리고 클릭원스만들때 옵션에서 온라인으로만 실행되도록 하시는게 좋구요.
설치시 필요한 클릭은 한두번 정도 하게 되구요.
설치 프로그램이 실행되도록 하는건 publish.htm 파일의 설치 버튼을 클릭하면 호출 되는 자바스크립트를 페이지가 로드될때 호출되도록 수정하시면 자동 설치 페이지가 됩니다. 따라서 스마트크라이언트를 사용하는 페이지에서 닷넷설치여부를 체크(서버단에서 페이지 Request.Browser.GetClrVersions를 사용)하셔서 설치되어 있지않으면(당연히 CAS도 설정되어 있지 않겠죠) 자동 설치 페이지로 이동하시고, 마찬가지로 CAS 설정도 체크(이건 보안 위배되는 프로그램을 하나짜서 함수나 속성으로 값을 리턴합니다. 실행하다 에러나면 Fasle, 에러없이 모두 실행되면 True가 되도록 해서 자바스크립트로 이를 체크해서 False이면 역시 자동설치페이지로 이동시켜 버리면 됩니다. CAS에서 설치시 닷넷프레임웍을 자동설치하게 해 놓으면 닷넷 프레임웍 설치도 문제없이 되겠죠.
[guest]

... 16  17  18  [19]  20  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
5487진우4/27/202113430C# 엑셀 자동화 성능 향상 문의 [2]
5486지나가던...4/26/202113222닷넷 구현 코드 관련 질문 [2]
5485이재원4/17/202113414교재 315페이지 내용 질문 [3]
5484Syong4/16/202117379윈폼 기반의 응용프로그램 dll 참조와 32,64bit 빌드 관련 문의 [4]
5483한예지 donator4/15/202112391익명 형식과 var 관계 질문 있습니다. [2]
5482질문4/13/202114347WPF를 위한 MVVM toolkit 선택과 관련한 문의드립니다. [4]
5480한예지 donator4/5/202115279GetHashCode 질문있습니다! [2]
5479한예지 donator4/4/202114101Equals를 닷넷에서 어떻게 구현했는지 보고 싶을 떄는 어떻게 해야 될까요? [2]
5478갑자기C#3/23/202117074C# Winform에서 TextBox없이 입력 받을 수 있나요? [7]
5477달팽이3/18/202113241c# 도형을 그린후 편집하는 방법이 궁금합니다. [2]파일 다운로드1
5475dimo...3/2/202114135POH가 .NET 5에 추가된 것으로 알고 있습니다. POH가 유용한 경우는 어떤 경우가 있을까요? [1]
5474Syong2/26/202113649사용자 지정 컨트롤 생성시 Invalidate, Update, Refresh의 차이점 [2]
5473한예지 donator2/25/202113072디자인 타임이 뭔지 궁금합니다!! [5]
5472dimo...2/24/202114556등록하지 않고 ocx를 사용하는 `키움`관련 포스팅을 따라가다 질문드립니다. [9]
5471남산2/21/202112963MarshalDirectiveException 에 대한 질문입니다. [1]
5470한예지 donator2/7/202112721yield 질문있습니다!! [2]
5469유호성2/6/202112583Parallel + Task.Run 동시 실행 환경에서 간헐적으로 Task.Run()에서 null이 리턴됩니다. [3]파일 다운로드1
5467hero...2/4/202113136실행 환경에 따른 Thread.Sleep 딜레이 차이 질문 [8]
5466pr1/29/202113015c# winform load시 작업표시줄에 뜨지 않는 현상을 겪으신적이 있으신가요? [4]파일 다운로드1
5465영귤1/28/202113170두 번째 await 부터는 스레드 개수만 늘어나는 것이 아닌가요 [1]
5464민우1/26/202114018C# 빌드시 코드 치환되는걸 확인하는 방법 문의 [2]
5463한예지 donator1/24/202114716Parameters.AddWithValue 와 Parameters.Add 의 차이점이 궁금합니다. [2]
5462C#초보1/22/202114845사용자 정의 메시지 전달이 가능한가요? [2]
5461한예지 donator1/22/202113882AsEnumerable() 메서드 질문 있습니다! [2]
5459한예지 donator1/21/202113181typeof와 GetType의 차이점 질문있습니다. [2]
5458진우1/20/202114362C# DataTable 에 SQL 쿼리문을 실행하는 방법 문의 (LINQ 사용하지 않고) [6]
... 16  17  18  [19]  20  21  22  23  24  25  26  27  28  29  30  ...