Share via


프로세스 상호 운용성

에뮬레이션 계층을 사용하여 64비트 Windows에서 Win32 기반 애플리케이션을 실행할 수 있습니다. ARM의 Windows 10 x86 on-ARM64 에뮬레이션 계층을 포함합니다. 자세한 내용은 32비트 애플리케이션 실행을 참조하세요.

64비트 Windows에서는 64비트 프로세스가 32비트 DLL(동적 링크 라이브러리)을 로드할 수 없습니다. 또한 32비트 프로세스는 64비트 DLL을 로드할 수 없습니다. 그러나 64비트 Windows는 64비트 프로세스와 32비트 프로세스(동일한 컴퓨터와 컴퓨터에서 모두) 간의 RPC(원격 프로시저 호출)를 지원합니다. 64비트 Windows에서는 Out-of-process 32비트 COM 서버가 64비트 클라이언트와 통신할 수 있으며, Out-of-process 64비트 COM 서버는 32비트 클라이언트와 통신할 수 있습니다. 따라서 COM을 인식하지 않는 32비트 DLL이 있는 경우 OUT-of-Process COM 서버에서 래핑하고 COM을 사용하여 64비트 프로세스에서 호출을 마샬링할 수 있습니다.

InprocServer 레지스트리 항목을 사용하여 현재 InprocServer 서버가 등록되어 있습니다. 64비트 Windows에서 64비트 및 32비트 in-process 서버는 InprocServer32 항목을 사용해야 합니다.

기본적으로 컴퓨터에 로컬이고 32비트에서 64비트 경계를 넘어 사용되지 않는 핸들을 포트하려면 INT_PTR 또는 DWORD_PTR 형식 대신 HANDLE_PTR 형식을 사용합니다. 여기에는 DWORD 값과 같은 핸들을 전달하는 RPC 인터페이스 포팅이 포함됩니다. 64비트 HANDLE_PTR 와이어에서 64비트(잘리지 않음)이므로 매핑이 필요하지 않습니다. (32비트 HANDLE_PTR 32비트입니다.)

자세한 내용은 64비트 호환 인터페이스 디자인을 참조하세요.