문제

Windows Web 2008 X64 설치가 실행됩니다.

Excel 파일을 가져올 수있는 응용 프로그램의 요구 사항으로 인해 웹 애플리케이션이 32 비트 모드로 실행되도록 변경해야했습니다. MSACCESS/EXCEL 라이브러리는 X64에서 사용할 수 없습니다.

나는 또한 신뢰할 수 있도록 신청서를 텔레비전해야했다. 이전에는 레벨 = 중간에있었습니다.

이 문제에 대한 좋은 해결 방법이 있습니까? 한 화면이 Excel Import가 필요하기 때문에 신뢰 수준을 낮추고 싶습니다.이 화면의 사용이 빈번하지 않음).

응용 프로그램에서 32 비트를 사용하도록 특정 폴더/페이지를 설정하고 나머지는 x64로 설정할 수 있습니까? 나는 당신이 할 수 있다고 믿지 않습니다. 신뢰 수준도 마찬가지입니다. 신뢰 수준 응용 프로그램이 구체적이거나 중첩 된 폴더로 보낼 수 있습니까?

도움이 되었습니까?

해결책

처럼 Foxfire가 올바르게 지적합니다, 동일한 프로세스에서 32 비트와 64 비트 코드를 혼합 할 수 없습니다.

사무실과 상호 작용 해야하는 ASP.NET 응용 프로그램에는 신뢰 수준이 높아집니다.

'샌드 박스 (Sandboxing)'로 알려진 기술을 사용 하여이 주위에는 방법이 있습니다.

당신이하는 일은 Excel과 함께 필요한 작업 만 수행하는 래퍼 어셈블리를 작성하는 것입니다. 어셈블리를 표시하십시오 [assembly: AllowPartiallyTrustedCallers] 속성, 서명 한 다음 GAC에 배포하십시오.

이 어셈블리의 모든 클래스는 사무실 인터 로프 구성 요소와 관련하여 [PermissionSet(SecurityAction.Assert, Unrestricted=true)] 또는 필요한 수요가 필요합니다.

이렇게하면 서버의 신뢰 수준을 낮출 수 있지만 여전히 사무실 구성 요소를 사용할 수 있습니다.

이는 서버에 대한 관리에 액세스하여 '신뢰할 수있는'샌드 박스 어셈블리를 GAC로 삭제할 수 있다는 가정에 근거합니다.

다른 팁

동일한 프로세스 내에서는 32 비트와 64 비트를 혼합 할 수 없습니다. 당신은 당신을 위해 엑셀 물건을 수행하는 두 번째 응용 프로그램을 작성한 다음 32 비트 실행 파일로 컴파일 할 수 있습니다. 그런 다음 웹 응용 프로그램에서 실행 가능한 일부 매개 변수로 파일을 실행할 수 있습니다 (여전히 완전한 신뢰가 필요하지만 64 비트를 실행할 수 있음).

편집 : 완전 트러스트가 필요하지 않습니다. 사용자 정의 신뢰 수준을 만들 수도 있습니다. 그러나 요점은 표준 웹 트러스트 레벨에서 실행되지 않는다는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top