Javascript 예제 튜토리얼(20) OLE 자동화(2)

黄舟
풀어 주다: 2016-12-19 17:23:06
원래의
1248명이 탐색했습니다.

javaScript에서 OLE 자동화 사용

2. 바인딩이란 무엇입니까

객체 모델의 속성, 메서드 및 이벤트를 사용하려면 먼저 프로그래밍 방식 참조를 생성해야 합니다. 적용하려는 속성, 메서드 또는 이벤트가 포함되어 있습니다. 개체에 대한 참조를 보유하는 로컬 개체 변수를 선언하여 이를 수행할 수 있습니다. 그런 다음 지역 변수에 대한 개체의 적용을 지정합니다.

VB 및 VBScript는 CreateObject() 함수를 사용하여 Jscript가 ActiveXObject() 생성자를 사용할 때 자동화 개체에 대한 참조를 허용하고 반환합니다.

실제로 바인딩은 Visual Basic 코드가 다른 응용 프로그램의 개체에 액세스하는 방법을 의미합니다. 한 응용 프로그램에서 자동화를 사용하여 다른 응용 프로그램의 개체를 조작하는 경우 Visaul Basic 코드를 작성하는 응용 프로그램은 자동화 컨트롤러입니다. 개체를 처리하는 응용 프로그램은 자동화 서버입니다. 자동화 컨트롤러가 자동화 서버에서 제공하는 개체를 가리키는 변수를 만들 때 Visual Basic에서는 개체가 존재하는지, 개체에 사용되는 속성과 메서드가 올바르게 지정되었는지 확인해야 합니다. 이 확인 프로세스를 "바인딩"이라고 합니다. Visual Basic 프로그램 개발자가 알아야 할 바인딩에는 후기 바인딩과 초기 바인딩이라는 두 가지 유형이 있습니다.

늦은 바인딩

늦은 바인딩은 런타임 시 발생하며 초기 바인딩보다 느립니다. 런타임에 바인딩된 자동화 코드에서 Visual Basic은 해당 개체가 포함된 코드 줄을 실행할 때마다 개체와 해당 메서드 및 속성을 쿼리해야 합니다. 개체와 개체의 메서드 및 속성이 올바르게 지정되었는지 확인하려면 Visual Basic에서 개체를 지원하는 운영 체제와 응용 프로그램을 확인해야 합니다. Visual Basic 코드를 살펴보겠습니다.

Dim wdApp As Object

Set wdApp = CreateObject("Word.application")


wdApp 변수는 다음과 같습니다. 일반 유형의 객체로 정의됩니다. 변수가 선언되면 Visual Basic은 그것이 어떤 개체 유형인지 알지 못하므로 해당 개체에 대해 일정량의 메모리를 따로 확보해야 합니다. 특정 개체 참조가 일반 변수에 할당되므로 응용 프로그램은 개체의 인터페이스가 무엇으로 구성되어 있는지 알 수 없습니다. 런타임에만 애플리케이션이 사용자 인터페이스에 바인딩됩니다. 따라서 새 개체를 참조할 때마다 Visual Baisc는 시스템 레지스트리를 확인하여 개체에 대한 정보를 얻어야 합니다.

얼리 바인딩

얼리 바인딩은 자동화 성능을 저하시키는 좋은 솔루션입니다. 초기 바인딩은 런타임이 아닌 컴파일 타임에 발생하므로 컴파일 단계에서 코드를 저장하면 코드가 실행되기 전에 바인딩이 완료됩니다. 초기 바인딩을 사용할 때 Visual Basic은 개체 정보를 지속적으로 확인할 필요가 없지만 응용 프로그램이 실행될 때 개체를 사용합니다.

또한 모든 자동화 서버가 초기 바인딩을 지원하는 것은 아닙니다. 자동화 서버는 서버 개체, 메서드 및 속성에 대한 정보가 포함된 형식 라이브러리를 지원해야 합니다. 초기 바인딩을 활용하려면 자동화 서버의 형식 라이브러리에 대한 참조를 설정해야 합니다. Visual Basic은 형식 라이브러리를 메모리에 로드하여 이러한 개체를 식별하고 코드가 컴파일될 때 바인딩할 수 있도록 합니다. 다음 코드 조각은 객체에 대한 초기 바인딩 인터페이스를 생성하는 방법을 보여줍니다.

Dim wdApp As Word.Application

Set wdApp = CreateObject("Word.Application")

위 내용은 Javascript 예제 튜토리얼(20) OLE 자동화(2) 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿