Microsoft MVP성태의 닷넷 이야기
글쓴 사람
김영대
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

안녕하십니까 정성태님 죄송하지만 SmartClient 에 관한 질문이 있습니다.

작은 인트라넷에 개발 및 유지보수를 하다보니

C++ 의 지식이 없어 ActiveX를 개발 하지 못해

SmartClient의 도움을 받고 유용하게 클라이언트 부분을 제어 하고 있씁니다.

문제는 클라이언트의 .NET Framework 4.5.1 이상 도입시 클라이언트에서는 동작을 하지 않고

64비트의 Windows 7 운영체제인 클라이언트에서 동작을 하지 않았습니다.
(Code Access Security 부분 설정 확인 하였습니다.)

Registry 를 EnableIEHosting 의 Dword 값을 1로 설정해줘도 마찬가지이고

제 자신의 생각으로는 SmartClient때문에 클라이언트의 Framework를 3.5.1 이상에서 업데이트를 하지 않는 것도 추후 방향으로 보았을때 좋은 방법이 아닌것 같습니다 ㅠㅠ

죄송하지만 인트라넷 웹사이트를 ActiveX기반으로 계속 인트라넷 운영을 고집한다고 하면 제가 SmartClient를 가장 빠르게 대처할 수 있는 방안이 어떤것인지 충고와 질타를 해주셨으면 감사하겠습니다.

제가 생각한 방안은 (?)
1. 처음부터 차근차근 ActiveX 개발을 위해 C++ 을 배운다 ( 시간오래걸릴거같습니다 ㅠㅠ)
2. C# 을 이용한 ActiveX 개발 방법을 참조한다 . ( 직접 해보지는 않았습니다. 해당 방안으로 .Net Framework 4.5 이상에서 동작하는지는 모르겠습니다.)



[연관 글]






[최초 등록일: ]
[최종 수정일: 7/3/2014]


비밀번호

댓글 작성자
 



2014-07-03 03시27분
제 질문게시판의 "질문하시기 전에!" 글에 스마트 클라이언트 관련한 질문을 삭제한다는 데에는 이유가 있습니다. 예를 들어 위의 질문에서 "동작을 하지 않았습니다."라고는 하지만 그게 보안에 위배된 부분만 동작을 안한다는 것인지, 아예 활성화가 안되었다는 것인지... 다시 한번 물어봐야 합니다.

그리곤, 저도 동일하게 재현을 위해 환경 구성을 해야 하는데 이것이 질문하신 분과 100% 동일하지 않게 되는 경우가 많습니다. 왜냐하면 서로 환경이 틀리고 질문하신 분의 특정한 환경 구성을 빼놓고 묻기 때문입니다.

암튼, ^^;;; 복잡 다단한 부분이 있어서 제가 회피하는 것입니다.

일단, 제가 잠시 해본바에 의하면 EnableIEHosting을 설정하면 IE에서 정상적으로 스마트 클라이언트가 보이기는 합니다. 그 이상은 테스트 안해봤습니다. 64비트라고 하셨는데 혹시 아래의 문제가 아닌지 한번 확인해 보세요.

SmartClient Vista 64bit IE7
; http://www.sysnet.pe.kr/3/0/810

또는 64비트이기 때문에 EnableIEHosting 값도 64비트에 맞게 설정이 되었는지 확인해 보세요. (예를 들어, 64비트 윈도우 7의 IE 32비트에서 활성화하는 경우라면 Wow6432Node에 설정해야 합니다.)

참고로, 제가 해본바에 의하면 닷넷 프레임워크를 업데이트 하셔도 됩니다.

------------------------------

주의하실 것은, 어쩌면 제가 더 모를 수도 있다는 점을 아셔야 합니다. 저도 ^^;;; 스마트 클라이언트 안 만져 본지 꽤나 오래되었습니다.

------------------------------

1. ActiveX 개발을 위한다기 보다는 그냥 C++을 배워두시는 것은 꼭 도움이 될 것이므로 주저없이 배우시기를 바랍니다.
2. C#을 이용한 ActiveX개발도 결국 IE SmartClient와 다를 바가 없습니다.


정성태
2014-07-03 06시01분
아래의 글에 제가 테스트 한 것을 정리해 보았습니다. 참고하시고 혹시 문제를 찾으시면 댓글 좀 부탁드립니다. ^^

.NET SmartClient 컨트롤을 윈도우 8/2012에서 활성화하는 방법
; http://www.sysnet.pe.kr/2/0/1706
정성태
2014-07-04 01시29분
[김영대] 정말 감사드립니다 정성태님 열심히 공부해보겠습니다.

어제 무슨 용기인지 저 자신도 모르게 서점에가서 C++ 기초서적을 찾아 구매했습니다. -0-
[guest]
2014-07-04 01시43분
[김영대] 명쾌한 해결 방안 제시해 주셔서 정말 감사드립니다.


http://www.sysnet.pe.kr/3/0/810을 참조하여

CAS 설정이 64 bit Framework에만 적용된다는걸 확인했습니다.


정말 감사드립니다
[guest]
2014-07-04 01시45분
[김영대] CAS 설정 배포 모듈도 any cpu가 아닌 32bit로 설정해봐야겠습니다 감사드립니다.
[guest]
2014-07-04 05시12분
[김영대] 감사드립니다 정성태님 정리 해 봅니다.

제시해주신 방법으로 모두 시원하게 해결 되었습니다.


1. 프레임워크 4.5.1 이상으로 업데이트 완료

2. CAS 설정 배포시 클라이언트가 64비트인데 32비트 브라우저일경우 설정 배포 모듈을 any cpu가 아닌 x86으로 빌드
( 또는 C:\windows\Microsoft.Net\Framework\v2.0.50727 caspol로 등록 )

3.
레지스트리 등록
64비트일경우
regedit HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MicoroSoft\.NETFramework\
값 생성 Dword 형식 (32비트) EnableIEHosting : 1


32비트일 경우
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
값 생성 Dword 형식 (32비트) EnableIEHosting : 1


4. IE(Internet Explorer ) 에서 해당 Trust 영역 신뢰 할 수 있는 사이트 등록


[guest]
2014-07-04 01시13분
좋은 소식이군요. ^^ 프로젝트 잘 끝마치시길 바랍니다.
정성태
2015-09-23 07시08분
[방양희] 안녕하세요
아래 내용을 닷넷으로 구현하면 실행을 관리자권한으로 해야 하던데 일반모드로 실행해도 되는 방법 있는지요?
--------------------------------------------------------------------------------------------
레지스트리 등록
64비트일경우
regedit HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MicoroSoft\.NETFramework\
값 생성 Dword 형식 (32비트) EnableIEHosting : 1
 

32비트일 경우
 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
 값 생성 Dword 형식 (32비트) EnableIEHosting : 1
[guest]
2015-09-23 07시19분
@방양희 없습니다.
정성태

1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5781List맨1/5/20233862List.Add("newobj") 속도는 빠른 편인지요? [11]
5780임세1/3/20234433C# 프로그래밍 10 책 구매한 사람입니다. 3부 자료는 어디서 다운 받을 수 있나요? [4]
5779이건우1/2/20233310안녕하십니까 루프안에서 메세지처리에 관하여 질문드립니다! [2]
5778이건우12/30/20224603안녕하세요 c#에서 dll참조 관련 질문드립니다. [4]
5777감사합니...12/29/20223589UI Thread에 Invoke 처리관련 궁금합니다. [3]
5776pdf맨12/28/20223380C# MouseUp Event + pdf [10]
5775민성12/28/20223162안녕하세요 Class 관련해서 예외처리를 하나로 받아낼수 있는 방법 [1]
5774중급12/27/20223963중급개발자란 어느 수준인지요? [4]
5773김영식12/26/20223498c# 압축파일 읽어 올 때 BinaryRead 한글 처리 문제 [1]
5772눈송이12/26/20223631Excel VSTO 는 왜 Net Core, Net 5, 6 버전을 사용하지 않나요? [2]
5771김훈12/26/20223730c# .net client application 망분리(내부망,외부망) 환경에서 의문의 외부사이트 호출 대기 [2]
5770lsh12/26/20223347클라우디움안에 있는 파일을 File.Copy 하고싶은데 코드로는 접근을 못하나요? [1]
5769울타리12/20/20223367Active Directory 2012R2 2016 또는 2019 마이그렝션 문의 드립니다. [1]
5768c++12/14/20224133Thread를 사용한 C++ DLL에 관련된 질문입니다. [6]파일 다운로드2
5767민성12/9/20223490안녕하세요 ashx로 화일을 저장하고 화일명을 리턴하는데요 [1]
5766김명훈12/9/20223631웹브라우저에서 묻지 않고 바로 다운로드 [2]
5765hong12/1/20223879Winform(.Net6) 클라이언트에서 SignalR Core 웹서버에 접속시 인증서 문제 [3]파일 다운로드1
5764요한11/30/20224061c++ 동일한 객체인지 비교 방법문의 [2]
5763고필석11/30/20223595시작하자마자 비정상 종료하는 프로세스에 대한 문제 해결 조언 요청 드립니다. [3]
5762흰털너부리11/30/20223570wpf mvvm ui update 로딩중 표시 [1]
5761민성11/29/20223462죄송하지만 한가지만 더 여쭈어 보겠습니다 [1]
5760민성11/29/20223388안녕하세요 [2]
5759문정환11/28/20223735c# socket 통신할때 빅엔디언으로 바꿔줘야 하나요? [1]
5758라떼11/28/20224955Linux 에서 winform UI 어플리케이션 실행하기 [3]
5757흰털너부리11/25/20223891asp.net core EF AddDbContext,AddDbContextFactory 차이점 알려주세요 [1]
5756흰털너부리11/25/20223466asp.net core web api에서 json 특정 property 무시하는 방법 문의 드립니다. System.Text.Json 사용중입니다. [1]
1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...