COM Interop을 통해 VB6 실행 파일에서 사용되는 어셈블리가 하나 있습니다. 이 어셈블리는 다른 .NET 어셈블리를 사용합니다 (COM에서는 사용할 수 없음). 등록없이 .NET 어셈블리를 사용할 수 있도록 VB6 응용 프로그램의 .manifest를 정의했습니다. 또한 프로빙 설정을 사용하여 하위 디렉토리 ("bin")에서 어셈블리를 찾는 VB6 응용 프로그램의 .config 파일을 정의했습니다.등록 무료 COM/.NET Interop을 사용한 .NET 어셈블리 검사
지정된 하위 디렉터리 ("bin")에 모든 .NET 어셈블리를 배치하면 응용 프로그램이 성공적으로 시작되고 Interop-Assembly가 다른 어셈블리의 코드를 호출 할 때까지 작업 할 수 있습니다. 그런 다음 런타임 오류 '429'가 발생합니다. ActiveX 구성 요소가 개체를 만들 수 없습니다.
.config 파일을 삭제하고 모든 파일을 같은 디렉터리에 저장하면 응용 프로그램이 예상대로 작동합니다.
VB6 실행 파일에서 사용되는 .NET 어셈블리에 대해 프로빙을 사용할 수 있습니까? 다른 어셈블리가 성공적으로 배치되도록 probing을 설정하는 방법이 있습니까? 당신의 .config 파일이 작동하지 않는 것처럼
의 .config
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin"/>
</assemblyBinding>
</runtime>
</configuration>
Interop-Assembly가 프로빙을 사용하여 발견되었지만 종속 어셈블리가 해결되지 않았습니다. 나는 fuslogvw.exe를 시도 할 것이다. – Jehof