AppDomain.CreateInstance 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정한 어셈블리에 정의된 지정한 형식의 새 인스턴스를 만듭니다.
오버로드
CreateInstance(String, String) |
지정된 어셈블리에 정의되어 있는 지정된 형식의 새 인스턴스를 만듭니다. |
CreateInstance(String, String, Object[]) |
지정된 어셈블리에 정의되어 있는 지정된 형식의 새 인스턴스를 만듭니다. 매개 변수에서는 활성화 특성의 배열을 지정합니다. |
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[]) |
지정된 어셈블리에 정의되어 있는 지정된 형식의 새 인스턴스를 만듭니다. 매개 변수는 바인더, 바인딩 플래그, 생성자 인수, 인수 해석에 사용되는 문화권별 정보 및 선택적 활성화 특성을 지정합니다. |
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence) |
사용되지 않음.
지정된 어셈블리에 정의되어 있는 지정된 형식의 새 인스턴스를 만듭니다. 매개 변수에서는 바인더, 바인딩 플래그, 생성자 인수, 인수 해석에 사용되는 문화권별 정보, 활성화 특성 및 형식을 만들기 위한 인증을 지정합니다. |
CreateInstance(String, String)
- Source:
- AppDomain.cs
- Source:
- AppDomain.cs
- Source:
- AppDomain.cs
지정된 어셈블리에 정의되어 있는 지정된 형식의 새 인스턴스를 만듭니다.
public:
System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName);
public:
virtual System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName);
public System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName);
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName);
member this.CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
abstract member CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String) As ObjectHandle
매개 변수
반환
typeName
에서 지정한 새 인스턴스의 래퍼인 개체입니다. 실제 개체에 액세스하려면 반환 값은 래핑되지 않아야 합니다.
구현
예외
언로드된 애플리케이션 도메인에서 작업이 시도됩니다.
assemblyName
또는 typeName
가 null
인 경우
assemblyName
는 현재 로드된 런타임에 유효한 어셈블리가 아닙니다.
어셈블리 또는 모듈이 서로 다른 두 증명 정보로 두 번 로드되었습니다.
assemblyName
을 찾을 수 없습니다.
호출자에게 이 생성자를 호출할 수 있는 권한이 없습니다.
일치하는 public 생성자를 찾을 수 없습니다.
assemblyName
에서 typename
을 찾을 수 없습니다.
이 인스턴스가 null
인 경우
설명
이 메서드는 에 대한 매개 변수가 없는 생성자를 호출합니다 typeName
.
형식assemblyName
은 을 참조하세요AssemblyName.
호출 하려는 시도 CreateInstance 현재 애플리케이션 도메인 없는 애플리케이션 도메인을 대상에 대상 애플리케이션 도메인에서 어셈블리의 로드를 성공적으로 발생 합니다. 하므로 Assembly 아닙니다 MarshalByRefObject이 메서드는 반환 하려고 시도 하는 경우는 Assembly 현재 애플리케이션 도메인에 로드 된 어셈블리에 대 한 공용 언어 런타임에서 현재 애플리케이션 도메인에 어셈블리 로드를 시도 하며 부하 실패할 수 있습니다. 현재 애플리케이션 도메인에 로드 된 어셈블리는 두 애플리케이션 도메인에 대 한 경로 설정이 다른 경우 먼저 로드 된 어셈블리에서 달라질 수 있습니다.
추가 정보
적용 대상
CreateInstance(String, String, Object[])
- Source:
- AppDomain.cs
- Source:
- AppDomain.cs
- Source:
- AppDomain.cs
지정된 어셈블리에 정의되어 있는 지정된 형식의 새 인스턴스를 만듭니다. 매개 변수에서는 활성화 특성의 배열을 지정합니다.
public:
System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Object ^> ^ activationAttributes);
public:
virtual System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Object ^> ^ activationAttributes);
public System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName, object?[]? activationAttributes);
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, object[] activationAttributes);
member this.CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
abstract member CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String, activationAttributes As Object()) As ObjectHandle
매개 변수
- activationAttributes
- Object[]
활성화할 수 있는 하나 이상의 특성으로 이루어진 배열입니다. 일반적으로, 원격 개체를 활성화하는 데 필요한 URL을 지정하는 단일 UrlAttribute 개체가 포함된 배열입니다.
이 매개 변수는 클라이언트 활성 개체와 관련이 있습니다. 클라이언트 활성화는 이전 버전과의 호환성을 위해 유지되지만 새로운 개발에는 권장되지 않는 레거시 기술입니다. 분산된 애플리케이션은 Windows Communication Foundation을 사용해야 합니다.
반환
typeName
에서 지정한 새 인스턴스의 래퍼인 개체입니다. 실제 개체에 액세스하려면 반환 값은 래핑되지 않아야 합니다.
구현
예외
언로드된 애플리케이션 도메인에서 작업이 시도됩니다.
assemblyName
또는 typeName
가 null
인 경우
assemblyName
는 현재 로드된 런타임에 유효한 어셈블리가 아닙니다.
어셈블리 또는 모듈이 서로 다른 두 증명 정보로 두 번 로드되었습니다.
assemblyName
을 찾을 수 없습니다.
호출자에게 이 생성자를 호출할 수 있는 권한이 없습니다.
일치하는 public 생성자를 찾을 수 없습니다.
호출자가 MarshalByRefObject에서 상속되지 않는 개체에 대한 활성화 특성을 제공할 수 없습니다.
assemblyName
에서 typename
을 찾을 수 없습니다.
이 인스턴스가 null
인 경우
설명
이 메서드는 에 대한 매개 변수가 없는 생성자를 호출합니다 typeName
.
형식assemblyName
은 을 참조하세요AssemblyName.
호출 하려는 시도 CreateInstance 현재 애플리케이션 도메인 없는 애플리케이션 도메인을 대상에 대상 애플리케이션 도메인에서 어셈블리의 로드를 성공적으로 발생 합니다. 하므로 Assembly 아닙니다 MarshalByRefObject이 메서드는 반환 하려고 시도 하는 경우는 Assembly 현재 애플리케이션 도메인에 로드 된 어셈블리에 대 한 공용 언어 런타임에서 현재 애플리케이션 도메인에 어셈블리 로드를 시도 하며 부하 실패할 수 있습니다. 현재 애플리케이션 도메인에 로드 된 어셈블리는 두 애플리케이션 도메인에 대 한 경로 설정이 다른 경우 먼저 로드 된 어셈블리에서 달라질 수 있습니다.
추가 정보
적용 대상
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])
- Source:
- AppDomain.cs
- Source:
- AppDomain.cs
- Source:
- AppDomain.cs
지정된 어셈블리에 정의되어 있는 지정된 형식의 새 인스턴스를 만듭니다. 매개 변수는 바인더, 바인딩 플래그, 생성자 인수, 인수 해석에 사용되는 문화권별 정보 및 선택적 활성화 특성을 지정합니다.
public:
System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes);
public System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture, object?[]? activationAttributes);
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
member this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object()) As ObjectHandle
매개 변수
- ignoreCase
- Boolean
검색할 때 대/소문자를 구분할지를 지정하는 부울 값입니다.
- bindingAttr
- BindingFlags
typeName
생성자 검색에 영향을 미치는 0 또는 그 이상의 비트 플래그 조합입니다. bindingAttr
가 0이면 대/소문자를 구분한 public 생성자 검색이 수행됩니다.
- binder
- Binder
리플렉션을 통해 바인딩, 인수 형식의 강제 변환, 멤버 호출 및 MemberInfo 개체의 검색을 가능하게 하는 개체입니다. binder
가 null이면 기본 바인더가 사용됩니다.
- args
- Object[]
생성자에 전달할 인수입니다. 이 인수 배열은 호출할 생성자의 매개 변수와 개수, 순서 및 형식이 일치해야 합니다. 매개 변수가 없는 생성자를 사용하려면 args
가 빈 배열이거나 null이어야 합니다.
- culture
- CultureInfo
typeName
생성자에 대해 선언된 공식적인 형식에 args
를 강제로 적용하는 것을 제어하는 문화권별 정보입니다. culture
가 null
이면 현재 스레드의 CultureInfo가 사용됩니다.
- activationAttributes
- Object[]
활성화할 수 있는 하나 이상의 특성으로 이루어진 배열입니다. 일반적으로, 원격 개체를 활성화하는 데 필요한 URL을 지정하는 단일 UrlAttribute 개체가 포함된 배열입니다.
이 매개 변수는 클라이언트 활성 개체와 관련되어 있습니다. 클라이언트 활성화는 이전 버전과의 호환성을 위해 유지되지만 새로운 개발에는 권장되지 않는 레거시 기술입니다. 분산된 애플리케이션은 Windows Communication Foundation을 사용해야 합니다.
반환
typeName
에서 지정한 새 인스턴스의 래퍼인 개체입니다. 실제 개체에 액세스하려면 반환 값은 래핑되지 않아야 합니다.
예외
언로드된 애플리케이션 도메인에서 작업이 시도됩니다.
assemblyName
또는 typeName
가 null
인 경우
assemblyName
는 현재 로드된 런타임에 유효한 어셈블리가 아닙니다.
어셈블리 또는 모듈이 서로 다른 두 증명 정보로 두 번 로드되었습니다.
assemblyName
을 찾을 수 없습니다.
호출자에게 이 생성자를 호출할 수 있는 권한이 없습니다.
일치하는 생성자를 찾을 수 없습니다.
호출자가 MarshalByRefObject에서 상속되지 않는 개체에 대한 활성화 특성을 제공할 수 없습니다.
assemblyName
에서 typename
을 찾을 수 없습니다.
이 인스턴스가 null
인 경우
설명
형식assemblyName
은 을 참조하세요AssemblyName.
호출 하려는 시도 CreateInstance 현재 애플리케이션 도메인 없는 애플리케이션 도메인을 대상에 대상 애플리케이션 도메인에서 어셈블리의 로드를 성공적으로 발생 합니다. 하므로 Assembly 아닙니다 MarshalByRefObject이 메서드는 반환 하려고 시도 하는 경우는 Assembly 현재 애플리케이션 도메인에 로드 된 어셈블리에 대 한 공용 언어 런타임에서 현재 애플리케이션 도메인에 어셈블리 로드를 시도 하며 부하 실패할 수 있습니다. 현재 애플리케이션 도메인에 로드 된 어셈블리는 두 애플리케이션 도메인에 대 한 경로 설정이 다른 경우 먼저 로드 된 어셈블리에서 달라질 수 있습니다.
추가 정보
적용 대상
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
주의
Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.
지정된 어셈블리에 정의되어 있는 지정된 형식의 새 인스턴스를 만듭니다. 매개 변수에서는 바인더, 바인딩 플래그, 생성자 인수, 인수 해석에 사용되는 문화권별 정보, 활성화 특성 및 형식을 만들기 위한 인증을 지정합니다.
public:
virtual System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes, System::Security::Policy::Evidence ^ securityAttributes);
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
[System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
abstract member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
[<System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
abstract member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object(), securityAttributes As Evidence) As ObjectHandle
매개 변수
- ignoreCase
- Boolean
검색할 때 대/소문자를 구분할지를 지정하는 부울 값입니다.
- bindingAttr
- BindingFlags
typeName
생성자 검색에 영향을 미치는 0 또는 그 이상의 비트 플래그 조합입니다. bindingAttr
가 0이면 대/소문자를 구분한 public 생성자 검색이 수행됩니다.
- binder
- Binder
리플렉션을 통해 바인딩, 인수 형식의 강제 변환, 멤버 호출 및 MemberInfo 개체의 검색을 가능하게 하는 개체입니다. binder
가 null이면 기본 바인더가 사용됩니다.
- args
- Object[]
생성자에 전달할 인수입니다. 이 인수 배열은 호출할 생성자의 매개 변수와 개수, 순서 및 형식이 일치해야 합니다. 매개 변수가 없는 생성자를 사용하려면 args
가 빈 배열이거나 null이어야 합니다.
- culture
- CultureInfo
typeName
생성자에 대해 선언된 공식적인 형식에 args
를 강제로 적용하는 것을 제어하는 문화권별 정보입니다. culture
가 null
이면 현재 스레드의 CultureInfo가 사용됩니다.
- activationAttributes
- Object[]
활성화할 수 있는 하나 이상의 특성으로 이루어진 배열입니다. 일반적으로, 원격 개체를 활성화하는 데 필요한 URL을 지정하는 단일 UrlAttribute 개체가 포함된 배열입니다.
이 매개 변수는 클라이언트 활성 개체와 관련이 있습니다. 클라이언트 활성화는 이전 버전과의 호환성을 위해 유지되지만 새로운 개발에는 권장되지 않는 레거시 기술입니다. 분산된 애플리케이션은 Windows Communication Foundation을 사용해야 합니다.
- securityAttributes
- Evidence
typeName
의 생성을 인증하는 데 사용하는 정보입니다.
반환
typeName
에서 지정한 새 인스턴스의 래퍼인 개체입니다. 실제 개체에 액세스하려면 반환 값은 래핑되지 않아야 합니다.
구현
- 특성
예외
언로드된 애플리케이션 도메인에서 작업이 시도됩니다.
assemblyName
또는 typeName
가 null
인 경우
assemblyName
는 현재 로드된 런타임에 유효한 어셈블리가 아닙니다.
어셈블리 또는 모듈이 서로 다른 두 증명 정보로 두 번 로드되었습니다.
assemblyName
을 찾을 수 없습니다.
호출자에게 이 생성자를 호출할 수 있는 권한이 없습니다.
일치하는 생성자를 찾을 수 없습니다.
호출자가 MarshalByRefObject에서 상속되지 않는 개체에 대한 활성화 특성을 제공할 수 없습니다.
또는
securityAttributes
이 null
가 아닙니다. 레거시 CAS 정책을 사용하지 않을 때는 securityAttributes
는 null
이 되어야 합니다.
assemblyName
에서 typename
을 찾을 수 없습니다.
이 인스턴스가 null
인 경우
설명
형식assemblyName
은 을 참조하세요AssemblyName.
호출 하려는 시도 CreateInstance 현재 애플리케이션 도메인 없는 애플리케이션 도메인을 대상에 대상 애플리케이션 도메인에서 어셈블리의 로드를 성공적으로 발생 합니다. 하므로 Assembly 아닙니다 MarshalByRefObject이 메서드는 반환 하려고 시도 하는 경우는 Assembly 현재 애플리케이션 도메인에 로드 된 어셈블리에 대 한 공용 언어 런타임에서 현재 애플리케이션 도메인에 어셈블리 로드를 시도 하며 부하 실패할 수 있습니다. 현재 애플리케이션 도메인에 로드 된 어셈블리는 두 애플리케이션 도메인에 대 한 경로 설정이 다른 경우 먼저 로드 된 어셈블리에서 달라질 수 있습니다.
추가 정보
적용 대상
.NET
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기