2014-02-06 4 views

답변

1

x64 버전을 사용하면 다른 사람의 친절함에 따라 달라집니다. PIA는 대상 컴퓨터에 설치해야합니다. 이것은 일반적으로 설치 프로그램에서 처리해야 할 일입니다. 설치 프로그램에 포함될 준비가되면 컴퓨터의 C:\Program Files (x86)\Microsoft.NET\Primary Interop Assemblies 디렉토리에 다시 있습니다.

설치 프로그램에 대한 필요성은 프로그래머에게는 그리 인기가 없습니다. 프로젝트가 이미 늦었을 때 항상 지켜야 할 마지막 사항입니다. 아무도 시간이 없습니다.

  • .NET 4.0 이상 및 VS2010 + 어셈블리 참조에 대한 삽입 상호 운용성 유형 옵션을 지원 : 실제로 필요 GAC에 PIA가 꽤 드문 일이다. 컴파일러는 PIA에 의존하지 않고 이제 interop 형식을 프로그램 자체에 포함 할 수 있습니다. 실제로 사용하는 것만으로 배포 크기를 크게 줄입니다. 항상이이 옵션을 선호하면 속성 창에서 True로 설정하면됩니다. 그 자체로 이미 VS 버전을 업데이트하고 .NET 4로 전화를 옮기는 큰 이유가 있습니다.

  • 대부분의 일반 배포에서는 실제로 GAC에 어셈블리가 필요하지 않습니다. 단순히 어셈블리 참조의 로컬 복사 속성을 True로 변경하십시오. 빌드 디렉토리에 Microsoft.mshtml.dll 복사본이 생기고 EXE 및 나머지 DLL 종속 파일을 대상 컴퓨터에 복사합니다.

+0

라이브러리의 copy 속성을 사용하면이 값을 true로 설정할 수 없습니다. –

+1

나는이 치아를 당겨야 할 것입니다. Interop Types Embed (Embed Interop Types) 속성이 보이고 이미 True로 설정되어 있습니까? 그런 다음 Copy Local을 설정하여 사용할 수 없도록 설정할 필요가 없습니다. PIA는 필요 없습니다. –

관련 문제