Notice»

Recent Post»

Recent Comment»

Recent Trackback»

Archive»

« 2025/9 »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

 
 

<자료>고속도로 무선랜시범구축 (무선메쉬도입사례)-현대HDS 스트릭스
<자료>현대HDS 스트릭스(Strix) 무선메쉬
<기사>도로공사, 12월초 교통정보수집용 무선랜 구축 돌입(07.11.30)-30km구간에 1km마다 AP설치

판교IC~오산IC 30km

차량전송 -> 도로공사 본사 -> 차량뷰어
테스트 화면..



UMPC를 이용한 첫 전송 테스트




도로공사 라디오 테스트(스트리밍)
오른쪽 화면

테스트 장비
Strix 무선메쉬( OWS)
BBHCM581(파나소닉 IP카메라)

SNP-3300(삼성테크윈 IP카메라)

PDA(애니콜 블랙잭)

GPS


구축내용
무선메쉬를 이용한 IPCamera 영상전송 및 제어(PTZ)
웹뷰어(ActiveX)
PDA 뷰어
차량내 전력시스템 제어
GPS연동
TTS

:

Visual Studio ATL Security Update 관련 업데이트가 나왔다.
아무생각없이 업데이트 했는데..

배포시 문제가 발생했다.

첫째. 재배포 패키지가 업데이트 됐다(사용 DLL버젼이 달라졌다)
-> 서비스팩업데이트가 아닌 보안 긴급 업데이트라..
기존버젼의 dll도 필요로 한다. 재배포 패키지를 꼭 필요로 한다..

둘째. CT-U3라는 미니 PC의 보드와 프로그램이 충돌 나는것 같다.
설치하면 부팅시 윈도우 화면이 뜨는 타이밍에 검은색으로 반응이 없다 ㅡ.ㅡ;
지우면 그런현상이 아주 가끔 발생한다.. ㅡ.ㅡ;;;;;;;;;;;;;

ATL 업데이트 관련을 정리해보았다.

Visual Studio ATL Security Update


:

Visual Studio ATL 보안 업데이트

Microsoft Visual Studio 2008 서비스 팩 1 보안 업데이트에 대한 설명: 2009년 7월 28일

Active Template Library Security Update for Developers

2009년 7월 30일 MS 긴급 보안공지 - 찌롱님 정리

M$가 Visual Studio 2003~2008을 위한 ATL관련 보안 업데이트를 발표했다. 아래 링크와 해당 버젼이 다를경우는 아래 관련 링크에서 원하는 툴의 버젼을 찾을 수 있다.(서비스팩에 따른 버젼 제공)
Visual Studio 2008 Service Pack 1 ATL Security Update

위 업데이트를 설치하면 VC가 사용하는 CRT,MFC,ATL등의 DLL버젼이 달라진다.
재배포 패키지(Redistributable Package)
Microsoft Visual C++ 2008 Service Pack 1 Redistributable Package ATL Security Update

설치가 잘 안될경우 아래 링크를 참조하자.
Hotfix KB 971092 for Visual Studio 2008 SP1 install problems

설치후 컴파일 에러가 날경우
Visual Studio 2008의 ATL 보안업데이트 이후 발생하는 컴파일 에러 문제

2005부터는 재배포패키지라는 개념이 도입되어 배포방법이 까다로워(?) 졌다. 서비스팩이 업데이트 될경우 재배포 패키지 또한 변경해줘야한다. 사용자 입장에선 이게 좀 불편한편인데.. 물론 대상 컴퓨터가 x86의 일반적인 CPU를 사용하는 환경이라면 재배포 패키지에서 사용하는 DLL만 가져온후 같이 배포하면 이문제가 거의 대부분 해결되기는 한다.

하지만 이번에 업데이트된 프로그램 배포시는 재배포 패키지가 항상 필요할 듯 하다. 아래 내용참고.

재배포 패키지의 DLL 버젼(VS 2008 기준)

9.0.21022.8 - 2008 기본 버젼

9.0.30729.1 - sp1

9.0.30729.4148 - sp1에 ATL관련 보안 업데이트시


Manifest에 명시되는 사용 DLL버젼
- crt와 mfc 기본만 사용할 경우.

기존 sp1 프로그램
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>
      </requestedPrivileges>
    </security>
  </trustInfo>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.30729.1" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC90.MFC" version="9.0.30729.1" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
9.0.30729.1 버젼의 crt와 mfc라이브러만 명시되어 있음.

sp1에 ATL 보안 업데이트시
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>
      </requestedPrivileges>
    </security>
  </trustInfo>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.30729.4148" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC90.MFC" version="9.0.30729.4148" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.30729.1" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
9.0.30729.1과 9.0.30729.4148 CRT를 둘다 필요로 한다. 버젼은 달라도 CRT의 이름은 다르므로 DLL만 포함하면 실행이 안된다. 그러므로 일반적으로 dll을 포함하던 방법으론 프로그램이 제대로 실행되지 않을 것이다.

배포할 일에 많은 개발자가 아무생각없이 자동 업데이트 했다가는 사무실이 뒤집어 질꺼다;(필자의 경험담? ㅡ.ㅡa)

ATL 보안업데이트 삭제

위와 같이 바뀌어도 인스톨쉴드에 파일 하나만 바꾸면 되는거 아니나는 분들에겐 할말 없지만 조금이라도 불편해서 삭제하고 싶은 분들은 참고하기 바란다.(아래는 필자의 경험담이며 공식문서 확인시 변경될수 있다)

위 보안 업데이트를 삭제하는 방법은 공식 문서에는 프로그램 추가/삭제에서 제거 해주면 된다고 명시되어 있다. 하지만 재배포 패키지 관련 업데이트만 목록에 존재하며 삭제를 해도 VS와는 전혀 상관없다. 윈도우 복원을 날짜를 되돌려도 설정은 바뀌지 않는다. 그래서 필자가 택한 방법은 VS를 전체 삭제하고 재설치 하는거였다 ㅡ.ㅡ; 전체삭제하고 재설치를 해도 기본 설정값들은 전부 남아있어서 크게 불편한점은 없었고 안전하게(?) 이전 버젼의 DLL을 사용한다.

위방법 적용후 필자의 결론은 추가/제거에서 관련 업데이트를 삭제후 기존에 사용하던 서비스팩만 재설치해도 문제가 해결될꺼같다는 거다.


인스톨에 대한 거부감과 DLL업데이트후 재배포 패키지를 설치해야된다는 말에 지대로 거부감 날려주신 클라이언트로 인해 이번업데이트에 대해 정리해본다. 사실 별 내용은 아닌데 결론은 개발자용 PC에 아무리 중요한 업데이트라도 아무생각없이 막 설치해서는 안된다는거다.(응?)

원본 글
http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=51&MAEULNO=20&no=8351&page=1

: