내보내기(0) 인쇄
모두 확장
이 문서는 수동으로 번역한 것입니다. 원본 텍스트를 보려면 포인터를 문서의 문장 위로 올리십시오.
번역
원본

Aximp.exe (Windows Forms ActiveX 컨트롤 가져오기)

ActiveX 컨트롤 가져오기를 사용하면 ActiveX 컨트롤에 대한 COM 형식 라이브러리의 형식 정의를 Windows Forms 컨트롤로 변환할 수 있습니다.

Windows Forms은 Windows Forms 컨트롤, 즉 Control에서 파생된 클래스만 호스팅할 수 있습니다. Aximp.exe를 사용하여 Windows Form에서 ActiveX 컨트롤을 호스팅할 수 있도록 ActiveX 컨트롤에 대한 래퍼 클래스를 생성합니다. 이렇게 하면 다른Windows Forms 컨트롤에 사용할 수 있는 것과 동일한 디자인 타임 지원 및 프로그래밍 방법을 사용할 수 있습니다.

ActiveX 컨트롤을 호스팅하려면 AxHost에서 파생된 래퍼 컨트롤을 생성해야 합니다. 이 래퍼 컨트롤에는 내부 ActiveX 컨트롤의 인스턴스가 들어 있으며, ActiveX 컨트롤과 통신할 수는 있지만 Windows Forms 컨트롤로 나타납니다. 이렇게 생성된 컨트롤은 ActiveX 컨트롤을 호스팅하며, 해당 속성, 메서드 및 이벤트를 생성된 컨트롤의 속성, 메서드 및 이벤트로 표시합니다.

aximp [options]{file.dll | file.ocx}

인수

설명

file

변환할 ActiveX 컨트롤이 들어 있는 소스 파일의 이름입니다. file 인수의 확장명은 .dll 또는 .ocx이어야 합니다.

옵션

설명

/delaysign

Aximp.exe에서 지연 서명을 사용하여 결과 컨트롤에 서명하도록 지정합니다. /keycontainer:, /keyfile: 또는 /publickey: 옵션과 함께 이 옵션을 지정해야 합니다. 지연 서명 프로세스에 대한 자세한 내용은 어셈블리 서명 연기를 참조하십시오.

/help

이 도구의 명령 구문 및 옵션을 표시합니다.

/keycontainer: containerName

containerName에서 지정한 키 컨테이너에 있는 공개/개인 키 쌍을 사용하여 강력한 이름으로 결과 컨트롤에 서명합니다.

/keyfile: filename

filename에 있는 게시자의 공식 공개/개인 키 쌍을 사용하여 강력한 이름으로 결과 컨트롤에 서명합니다.

/nologo

Microsoft 시작 배너를 표시하지 않습니다.

/out: filename

만들 어셈블리의 이름을 지정합니다.

/publickey: filename

filename에서 지정한 파일에 있는 공개 키를 사용하여 강력한 이름으로 결과 컨트롤에 서명합니다.

/silent

성공 메시지를 표시하지 않습니다.

/source

Windows Forms 래퍼에 대한 C# 소스 코드를 생성합니다.

/verbose

세부 정보 표시 모드를 지정합니다. 즉, 추가 진행 정보를 표시합니다.

/?

이 도구의 명령 구문 및 옵션을 표시합니다.

Aximp.exe를 사용하면 전체 ActiveX 컨트롤 형식 라이브러리를 한꺼번에 변환하고, 공용 언어 런타임 메타데이터가 들어 있으며 원본 형식 라이브러리에 정의된 형식의 구현을 제어하는 어셈블리를 생성할 수 있습니다. 이렇게 생성된 파일의 이름은 다음 패턴에 따라 지정됩니다.

COM 형식을 위한 공용 언어 런타임 프록시: progid.dll

ActiveX 컨트롤을 위한 Windows Forms 프록시(여기서 Ax는 ActiveX를 의미함): Axprogid.dll

참고참고

ActiveX 컨트롤의 멤버 이름이 .NET Framework에 정의된 이름과 일치하는 경우 Aximp.exe에서 AxHost 파생 클래스를 만들 때 해당 멤버 이름 앞에 "Ctl"이 붙습니다. 예를 들어, ActiveX 컨트롤에 이름이 "Layout"인 멤버가 있을 경우 .NET Framework에 Layout이라는 이벤트가 이미 정의되어 있으므로 AxHost 파생 클래스에서 이 멤버의 이름이 "CtlLayout"으로 변경됩니다.

생성된 파일은 Ildasm.exe(MSIL 디스어셈블러)와 같은 도구를 사용하여 검사할 수 있습니다.

Aximp.exe를 사용하여 ActiveX WebBrowser 컨트롤에 대한 .NET 어셈블리(shdocvw.dll)를 생성할 수는 없습니다.

shdocvw.dll을 대상으로 Aximp.exe를 실행하면 도구가 실행되는 디렉터리에 shdocvw.dll이라는 다른 파일이 만들어집니다. 이렇게 생성된 파일이 Documents 및 Settings 디렉터리에 있으면 Microsoft Internet Explorer 및 Windows 탐색기에 문제가 발생합니다. 컴퓨터가 다시 부팅되면 Windows는 system32 디렉터리보다 Documents and Settings 디렉터리에서 먼저 shdocvw.dll 복사본을 찾습니다. 그러면 Documents and Settings의 복사본을 사용하여 관리되는 래퍼를 로드하려고 시도합니다. Internet Explorer 및 Windows 탐색기는 system32 디렉터리에 있는 shdocvw.dll 버전의 렌더링 엔진에 따라 작동하므로 이 경우 제대로 작동하지 않게 됩니다. 이러한 문제가 발생하면 Documents 및 Settings 디렉터리에 있는 shdocvw.dll 복사본을 삭제한 다음 컴퓨터를 다시 부팅합니다.

shdocvw.dll과 함께 Aximp.exe를 사용하여 응용 프로그램 개발에 사용할 .NET 어셈블리를 만드는 경우에도 문제가 발생할 수 있습니다. 이러한 경우 응용 프로그램에서 shdocvw.dll의 시스템 버전과 생성된 버전을 모두 로드하고 시스템 버전을 우선 적용하게 됩니다. 이때 WebBrowser ActiveX 컬렉션 내에서 웹 페이지를 로드하려고 하면 사용자에게 열기/저장 대화 상자가 표시될 수 있습니다. 사용자가 열기를 클릭하면 웹 페이지가 Internet Explorer에서 열립니다. 이 문제는 Internet Explorer 버전 6 또는 이전 버전을 실행하는 컴퓨터에서만 발생합니다. 이 문제를 방지하려면 관리되는 WebBrowser 컨트롤을 사용하거나 방법: 형식 라이브러리에 참조 추가의 설명에 따라 Visual Studio를 사용하여 관리되는 shdocvw.dll을 생성합니다.

다음 명령을 사용하여 미디어 플레이어 컨트롤 msdxm.ocx를 위한 MediaPlayer.dll 및 AxMediaPlayer.dll을 생성합니다.

aximp c:\systemroot\system32\msdxm.ocx

커뮤니티 추가 항목

추가
표시:
© 2014 Microsoft