이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

MissingSatelliteAssemblyException 클래스

 

게시 날짜: 2016년 11월

기본 문화권의 리소스에 대 한 위성 어셈블리를 사용할 수 없을 때 throw 되는 예외입니다.

네임스페이스:   System.Resources
어셈블리:  mscorlib(mscorlib.dll에 있음)

System.Object
  System.Exception
    System.SystemException
      System.Resources.MissingSatelliteAssemblyException

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class MissingSatelliteAssemblyException : SystemException

이름설명
System_CAPS_pubmethodMissingSatelliteAssemblyException()

기본 속성을 사용하여 MissingSatelliteAssemblyException 클래스의 새 인스턴스를 초기화합니다.

System_CAPS_protmethodMissingSatelliteAssemblyException(SerializationInfo, StreamingContext)

serialize된 데이터로부터 MissingSatelliteAssemblyException 클래스의 새 인스턴스를 초기화합니다.

System_CAPS_pubmethodMissingSatelliteAssemblyException(String)

지정된 오류 메시지를 사용하여 MissingSatelliteAssemblyException 클래스의 새 인스턴스를 초기화합니다.

System_CAPS_pubmethodMissingSatelliteAssemblyException(String, Exception)

지정된 오류 메시지와 해당 예외의 원인인 내부 예외에 대한 참조를 사용하여 MissingSatelliteAssemblyException 클래스의 새 인스턴스를 초기화합니다.

System_CAPS_pubmethodMissingSatelliteAssemblyException(String, String)

새 인스턴스를 초기화는 MissingSatelliteAssemblyException 된 지정된 된 오류 메시지와 중립 문화권의 이름입니다.

이름설명
System_CAPS_pubpropertyCultureName

기본 문화권의 이름을 가져옵니다.

System_CAPS_pubpropertyData

예외에 대한 사용자 정의 추가 정보를 제공하는 키/값 쌍의 컬렉션을 가져옵니다.(Exception에서 상속됨)

System_CAPS_pubpropertyHelpLink

이 예외와 연결된 도움말 파일에 대한 링크를 가져오거나 설정합니다.(Exception에서 상속됨)

System_CAPS_pubpropertyHResult

특정 예외에 할당된 코드화된 숫자 값인 HRESULT를 가져오거나 설정합니다.(Exception에서 상속됨)

System_CAPS_pubpropertyInnerException

현재 예외를 발생시킨 Exception 인스턴스를 가져옵니다.(Exception에서 상속됨)

System_CAPS_pubpropertyMessage

현재 예외를 설명하는 메시지를 가져옵니다.(Exception에서 상속됨)

System_CAPS_pubpropertySource

오류를 발생시키는 응용 프로그램 또는 개체의 이름을 가져오거나 설정합니다.(Exception에서 상속됨)

System_CAPS_pubpropertyStackTrace

호출 스택의 직접 실행 프레임 문자열 표현을 가져옵니다.(Exception에서 상속됨)

System_CAPS_pubpropertyTargetSite

현재 예외를 throw하는 메서드를 가져옵니다.(Exception에서 상속됨)

이름설명
System_CAPS_pubmethodEquals(Object)

지정한 개체가 현재 개체와 같은지 여부를 확인합니다. (Object에서 상속됨)

System_CAPS_protmethodFinalize()

개체가 가비지 수집자에서 회수되기 전에, 해당 개체에서 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨)

System_CAPS_pubmethodGetBaseException()

파생 클래스에서 재정의된 경우 하나 이상의 후속 예외의 근본 원인이 되는 Exception을 반환합니다.(Exception에서 상속됨)

System_CAPS_pubmethodGetHashCode()

기본 해시 함수로 작동합니다.(Object에서 상속됨)

System_CAPS_pubmethodGetObjectData(SerializationInfo, StreamingContext)

파생 클래스에서 재정의된 경우 예외에 관한 정보를 SerializationInfo에 설정합니다.(Exception에서 상속됨)

System_CAPS_pubmethodGetType()

현재 인스턴스의 런타임 형식을 가져옵니다.(Exception에서 상속됨)

System_CAPS_protmethodMemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.(Object에서 상속됨)

System_CAPS_pubmethodToString()

현재 예외에 대한 문자열 표현을 만들고 반환합니다.(Exception에서 상속됨)

이름설명
System_CAPS_proteventSerializeObjectState

예외에 대한 serialize된 데이터를 포함하는 예외 상태 개체를 만들기 위해 예외를 serialize할 때 발생합니다.(Exception에서 상속됨)

기본 문화권이 적절 한 문화권 관련 리소스를 찾을 수 없는 경우 해당 리소스가 로드 되는 문화권입니다. 기본적으로 기본 문화권에 대 한 리소스가 주 어셈블리에 있는 및 MissingManifestResourceException 리소스 관리자를 검색 하려고 시도 하지만 기본 문화권에 대 한 리소스를 찾을 수 없는 경우 throw 됩니다. 그러나.NET Framework 로드 됨 응용 프로그램의 기본 문화권의 리소스를 위성 어셈블리에서는 NeutralResourcesLanguageAttribute 특성의 값을 지정 UltimateResourceFallbackLocation.Satellite 위치 매개 변수입니다. 이 경우는 MissingSatelliteAssemblyException 리소스 관리자에 지정 된 문화권에 대 한 위성 어셈블리 및 기본 문화권의 리소스를 검색 하려고 할 때 예외가 throw 되는 NeutralResourcesLanguageAttribute 특성이 없는 합니다. 예외와 같은 리소스 검색 메서드에 의해 throw 되는 참고 ResourceManager.GetString 또는 ResourceManager.GetObject, 때가 아니라는 ResourceManager 개체 인스턴스화됩니다.

MissingSatelliteAssemblyException 0x80131536 값이 있는 HRESULT COR_E_MISSINGSATELLITEASSEMBLY를 사용 합니다.

MissingSatelliteAssemblyException 기본값을 사용 하 여 Equals 구현을 참조 일치를 지원 합니다.

인스턴스에 대 한 초기 속성 값 목록은 MissingSatelliteAssemblyException 클래스를 참조는 MissingSatelliteAssemblyException 생성자입니다.

System_CAPS_note참고

항상 사용 해야는 NeutralResourcesLanguageAttribute 특정 문화권에 대 한 리소스를 사용할 수 없는는 응용 프로그램에 사용할 수 있는 동작 나타납니다 되도록 응용 프로그램의 기본 문화권을 정의 하는 특성입니다.

다음 예제에서는 NeutralResourcesLanguageAttribute 영어 응용 프로그램의 기본 문화권 임 및 해당 리소스를 위성 어셈블리에 저장 됩니다 있는지를 나타내는 특성입니다. 다음 표에 설명 된 대로 영어 및 프랑스어 문화권에 대 한.txt 파일에 리소스를 포함 하는 자체 예제:

문화권

리소스 이름/값

파일 이름

영어

Greet = Hello

Greet.en.txt

프랑스어

Greet Bonjour =

Greet.fr.txt

다음 소스 코드는 프랑스어 (프랑스) 및 러시아어 (러시아) 먼저 현재 UI 문화권을 변경 하 고 두 경우 모두 적절 한 문화권 관련 리소스를 표시 하는 응용 프로그램을 작성 합니다.

using System;
using System.Globalization;
using System.Resources;
using System.Threading;

[assembly:NeutralResourcesLanguageAttribute("en", UltimateResourceFallbackLocation.Satellite)]

public class Example
{
   public static void Main()
   {
      ResourceManager rm = new ResourceManager("GreetResources", typeof(Example).Assembly); 
      Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture("fr-FR");
      Console.WriteLine("The current UI culture is {0}", Thread.CurrentThread.CurrentUICulture.Name);
      Console.WriteLine(rm.GetString("Greet"));

      Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture("ru-RU");
      Console.WriteLine("The current UI culture is {0}", Thread.CurrentThread.CurrentUICulture.Name);
      Console.WriteLine(rm.GetString("Greet"));
   }
}
// The example displays the following output when created using BuildNoDefault.bat: 
//    The current UI culture is fr-FR
//    Bonjour
//    The current UI culture is ru-RU
//    
//    Unhandled Exception: System.Resources.MissingSatelliteAssemblyException: The satellite ass
//    embly named "HelloWorld.resources.dll, PublicKeyToken=" for fallback culture "en" either c
//    ould not be found or could not be loaded. This is generally a setup problem. Please consid
//    er reinstalling or repairing the application.
//       at System.Resources.ManifestBasedResourceGroveler.HandleSatelliteMissing()
//       at System.Resources.ManifestBasedResourceGroveler.GrovelForResourceSet(CultureInfo cult
//    ure, Dictionary`2 localResourceSets, Boolean tryParents, Boolean createIfNotExists, StackC
//    rawlMark& stackMark)
//       at System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo requestedCulture
//    , Boolean createIfNotExists, Boolean tryParents, StackCrawlMark& stackMark)
//       at System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo culture, Boolean
//     createIfNotExists, Boolean tryParents)
//       at System.Resources.ResourceManager.GetString(String name, CultureInfo culture)
//       at Example.Main()
// The example displays the following output when created using BuildDefault.bat:
//    The current UI culture is fr-FR
//    Bonjour
//    The current UI culture is ru-RU
//    Hello

You can use the following batch file to build and execute the C# version of the example. If you're using Visual Basic, replace csc with vbc, and replace the .cs extension with .vb. When the example is executed, it displays a French language string but throws a T:System.Resources.MissingSatelliteAssemblyException exception when the current culture is Russian (Russia). This is because the satellite assembly en\HelloWorld.dll that contains the resources of the default culture does not exist.


vbc HelloWorld.vb

md fr
resgen Greet.fr.txt
al /out:fr\HelloWorld.resources.dll /culture:fr /embed:GreetResources.fr.resources

HelloWorld

You can use the following batch file to build and execute the Visual Basic version of the example. If you're using C#, replace vbc with csc, and replace the .vb extension with .cs. When the example is executed, it displays a French language string when the current UI culture is French (France). When the current UI culture is Russia (Russian), it displays an English language string because Russian language resources do not exist, but the resource manager is able to load the resources of the default culture from the satellite assembly en\HelloWorld2.dll.


vbc HelloWorld.vb /out:HelloWorld2.exe

md fr
resgen GreetResources.fr.txt
al /out:fr\HelloWorld2.resources.dll /culture:fr /embed:GreetResources.fr.resources

md en
resgen GreetResources.en.txt
al /out:en\HelloWorld2.resources.dll /culture:en /embed:GreetResources.en.resources

HelloWorld2

.NET Framework
2.0 이후 사용 가능

이 형식의 모든 public static(Visual Basic의 공유 Visual Basic의 경우) 멤버는 스레드로부터 안전합니다. 인스턴스 멤버는 스레드로부터의 안전이 보장되지 않습니다.

맨 위로 이동
표시: