Ole-Automatisierung in Javascript verwenden
2. Was ist verbindlich
Bevor Sie die Eigenschaften, Methoden und Ereignisse eines Objektmodells verwenden können, müssen Sie zunächst eine programmatische Referenz erstellen das die Eigenschaften, Methoden oder Ereignisse enthält, die Sie anwenden möchten. Sie können dies tun, indem Sie eine lokale Objektvariable deklarieren, die einen Verweis auf das Objekt enthält. Anschließend geben Sie die Anwendung eines Objekts für die lokale Variable an.
VB und VBScript verwenden die CreateObject()-Funktion, um einen Verweis auf ein Automatisierungsobjekt zuzulassen und zurückzugeben, wenn Jscript den ActiveXObject()-Konstruktor verwendet.
Tatsächlich bezieht sich Bindung auf die Methode, mit der Visual Basic-Code auf Objekte in anderen Anwendungen zugreift. Wenn Sie die Automatisierung einer Anwendung verwenden, um Objekte in einer anderen Anwendung zu manipulieren, ist die Anwendung, in der Sie Visaul Basic-Code schreiben, ein Automatisierungscontroller. Die Anwendung, in der Sie Objekte verarbeiten, ist der Automatisierungsserver. Wenn ein Automatisierungscontroller eine Variable erstellt, die auf ein vom Automatisierungsserver bereitgestelltes Objekt verweist, muss Visual Basic überprüfen, ob das Objekt vorhanden ist und alle für das Objekt verwendeten Eigenschaften und Methoden korrekt angegeben sind. Dieser Überprüfungsprozess wird als „verbindlich“ bezeichnet. Es gibt zwei Arten von Bindungen, die Entwickler von Visual Basic-Programmen kennen sollten: späte Bindung und frühe Bindung.
Späte Bindung
Die späte Bindung erfolgt zur Laufzeit und ist langsamer als die frühe Bindung. In spät gebundenem Automatisierungscode muss Visual Basic das Objekt und seine Methoden und Eigenschaften jedes Mal abfragen, wenn eine Codezeile ausgeführt wird, die dieses Objekt enthält. Um zu überprüfen, ob das Objekt und seine Methoden und Eigenschaften korrekt angegeben sind, muss Visual Basic beim Betriebssystem und der Anwendung, die das Objekt unterstützt, nachfragen. Schauen wir uns einen Teil des Visual Basic-Codes an:
Dim wdApp As Object
Set wdApp = CreateObject("Word.application")
Die wdApp-Variable ist definiert als Objekte allgemeinen Typs. Wenn die Variable deklariert wird, weiß Visual Basic nicht, um welchen Objekttyp es sich handelt, daher müssen Sie eine bestimmte Menge Speicher für das Objekt reservieren. Da gewöhnlichen Variablen bestimmte Objektreferenzen zugewiesen werden, hat die Anwendung keine Möglichkeit zu wissen, woraus die Schnittstelle des Objekts besteht. Erst zur Laufzeit ist die Anwendung an die Benutzeroberfläche gebunden. Daher muss Visual Baisc jedes Mal, wenn Sie auf ein neues Objekt verweisen, die Systemregistrierung überprüfen, um Informationen über das Objekt zu erhalten.
Frühe Bindung
Frühe Bindung ist eine gute Lösung, um die Automatisierungsleistung zu verlangsamen. Die frühe Bindung erfolgt zur Kompilierungszeit und nicht zur Laufzeit. Wenn Ihr Code also während der Kompilierungsphase gespeichert wird, wird die Bindung abgeschlossen, bevor der Code ausgeführt wird. Bei Verwendung der frühen Bindung muss Visual Basic die Objektinformationen nicht kontinuierlich überprüfen, sondern verwendet das Objekt, während die Anwendung ausgeführt wird.
Außerdem unterstützen nicht alle Automatisierungsserver die frühe Bindung. Der Automatisierungsserver muss eine Typbibliothek unterstützen, die Informationen zu Serverobjekten, Methoden und Eigenschaften enthält. Um die frühe Bindung nutzen zu können, müssen Sie einen Verweis auf die Typbibliothek des Automatisierungsservers festlegen. Visual Basic lädt die Typbibliothek in den Speicher, wodurch diese Objekte identifiziert und beim Kompilieren des Codes gebunden werden können. Der folgende Codeausschnitt zeigt, wie eine frühe Bindungsschnittstelle für ein Objekt erstellt wird:
Dim wdApp As Word.Application
Set wdApp = CreateObject("Word.Application")
Das Obige ist der Inhalt des Javascript-Beispiel-Tutorials (20) OLE-Automatisierung (2). Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!