2017-02-14 10 views
1

런타임시 어셈블리로드가 허용되지 않는 Windows 10 Store 응용 프로그램의 신중한 보안 인 것으로 보입니다. 이 기능은 과도한 잔인 함으로 UWP 개발을 막을 수 있다고 생각합니다. 그러나 Microsoft의 단호한 디자인 결정 인 경우이를 논할 수있는 방법이 없습니다.Windows UWP - 측면로드 된 응용 프로그램에서 동적으로 어셈블리로드

대신 UWP 앱을 상점에 배포하지 않는다고 가정 할 때 어셈블리를 동적으로로드 할 수 없습니까? 가능하다면 어떻게?

이 기능 요청 참조하십시오 :에 관계없이 당신이 당신의 UWP 응용 프로그램을 배포 어떤 환경의 https://wpdev.uservoice.com/forums/110705-universal-windows-platform/suggestions/18145291-dynamically-load-assembly

답변

0

이 질문에 대한 대답은 아니오 인 것처럼 보입니다.

게임이 UWP에서 변경되었습니다. UWP는 앱을 스토어에 가져 오는 방향으로 조정되는 플랫폼입니다. 그것은 플랫폼을 벗기고 런타임에 어셈블리를로드 할 수 있도록 표시하지 않습니다. 이것은 .NET에서 가능했습니다.

그러나 Desktop Bridge를 사용하여 .NET 런타임 위에 UWP 스타일의 응용 프로그램을 실행하는 방법이있는 것 같습니다. 나는 그다지 익숙하지 않지만, 여기서 나의 시작점으로 더 많이 읽을 수 있습니다. 내 생각 엔 어셈블리를 동적으로로드하려는 경우 최상의 방법은 다음을 사용하는 것입니다. https://docs.microsoft.com/en-us/windows/uwp/porting/desktop-to-uwp-root

+0

가을 제작자 업데이트를 사용하면 선택적 애플리케이션 패키지를 살펴볼 수 있습니다.이 패키지는형식으로 허용하지만 특별히 애플리케이션을 대상으로 구축해야합니다. https://docs.microsoft.com/en-us/windows/uwp/packaging/optional-packages –

+0

내가 무슨 일이 벌어지고 있는지 이해했다고 생각한 바로 그 순간 ... –

1

을의 UWP API는 동일합니다. Windows 스토어 대신 앱을 내부적으로 배포한다고 선택하면 지원되지 않는 API 기능이 활성화되지 않습니다 (예 : Assembly.Load().

+0

이 제한에 대한 내 감정을 유지하기 위해 최선을 다하고 있지만이 제한은 저장소를 기반으로합니다. 정책이 아니라 런타임 기능에 의존합니다. 왜 Microsoft는 런타임 환경에서 메소드를 노출하지 않지만 앱 스토어 앱으로 실행하는 경우 예외를 발생시키지 않습니까? –

+0

하지만 추가 어셈블리를 추가해도 앱에 추가 기능이 추가되지는 않습니다. 시작 후에 어셈블리가로드되었다고해서 앱에 추가 기능이 추가되는 것은 아닙니다. 그것이 단지 빨간 청어라고 말하는 것입니다. UWP는 샌드 박스 런타임입니다. 궁극적으로 어느 시점에 어떤 APIS를 실행할 수 있는지를 선택하게됩니다. –

+0

이 외에도 일반 대중이 사용할 수없는 엔터프라이즈 급 앱에 대해 이야기하고 있습니다. Microsoft는 소프트웨어의 품질에 대해 책임을지지 않습니다. 앱 스토어의 모든 사용자가 앱을 무료로 사용할 수있는 것은 완전히 다른 경우입니다. –