2012-10-18 3 views
2

우선 Windows Embedded CE 6.0이 설치된 장치가 있습니다. 아시다시피 EWS Managed API는 .NET Framework 3.5 이상에서만 사용할 수 있습니다. Windows Embedded CE 6.00은 .run Net Compact Framework 3.5 응용 프로그램을 실행할 수 없습니다.

내가 새 프로젝트를 생성 -> 스마트 장치 프로젝트 ->

대상 플랫폼 : 윈도우 CE

.NET Compact Framework에서 버전 : .NET Compact Framework에서 버전 3.5

템플릿 : 장치 응용 프로그램

그럼 EWS API 라이브러리를 사용하여 서버에서 내 이메일로 이메일을 보내는 프로그램을 작성하려했지만 오류가 있습니다.

오류 1 'System.TimeZoneInfo'형식이 참조되지 않은 어셈블리에 정의되어 있습니다. 어셈블리 'System.Core, Version = 3.5.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089'에 대한 참조를 추가해야합니다. C : \ Documents 및 Settings \ christopher.lim \ My Documents \ Visual Studio 2008 \ Projects \ SmartDeviceProject1 \ SmartDeviceProject1 \ Form1.cs 23 13 SmartDeviceProject1

이 오류는 .NET Framework가 호환되지 않아 내 Window Embedded CE 6.0은 .NET Framework 3.5가 필요한 응용 프로그램을 실행할 수 없습니다.

어쨌든 .NET Framework 3.5 이상을 실행할 수 있도록 Window CE를 업그레이드 할 수 있습니까?

누군가 나를 도와 줄 수 있기를 바랍니다. 미리 감사드립니다.

답변

4

Compact Framework, 모두 반복은 CE 6.0에서 제대로 작동합니다 (1.0은 공식적으로 "지원"되지 않지만 사용하고 싶다면 실행됩니다).

표시되는 문제는 런타임 문제가 아니라 컴파일러 문제입니다. 문제의 근본 원인은 오류 (공개 키 토큰)에 (암호로) 명시되어 있습니다. b77a5c561934e089은 데스크톱 프레임 워크의 공개 키입니다.

기본적으로 컴파일러는 "이봐, 데스크톱 System.Core.dll 어셈블리를 사용하는 DLL을 참조하기 때문에 해당 DLL에 대한 참조를 추가해야합니다." 이 문제는 데스크톱 System.Core.dll 어셈블리가 Windows CE 장치에서 실행되지 않는다는 것입니다.

Compact Framework System.Core.dll (공개 키 : 969db8053d3322ac)을 사용해야합니다. 즉, 참조하는 항목 (EWS Managed API)은 Compact Framework 참조를 사용하여 다시 컴파일해야하거나 나중에 수행 할 기능/기능을 제공하는 대체 방법을 찾아야합니다.

+0

답변 해 주셔서 감사합니다. Compact Framework System.Core.dll을 사용해야하므로 어디에서 찾을 수 있습니까? – CNLSH

+0

CF 3.5 설치의 일부이므로 CF 응용 프로그램의 '참조 추가'대화 상자에 표시되어야합니다. 특히, 그것은 '% PROGRAM_FILES % \ Microsoft.NET \ SDK \ CompactFramework \ v3.5 \ Debugger \ BCL'에 있습니다. – ctacke

+0

이렇게하면 EWS API를 .NET CF에서 실행할 수 있다고 생각하지 않습니다. – Crono

관련 문제