Verwenden von COM-Objekten in Active Server Pages

Sie können COM-Objekte in ASP-Anwendungen (Active Server Pages) skripten. Hierzu müssen Sie zunächst eine Instanz des Objekts erstellen, indem Sie entweder das OBJECT-Tag verwenden oder die CreateObject-Methode des ASP Server-Objekts aufrufen. Nachdem ein COM-Objekt erstellt wurde, können Sie es in nachfolgenden Skripts auf der ASP-Seite verwenden.

Mit ASP können Sie mit vielen verschiedenen Typen von Skript-Engines arbeiten, von denen jede eine andere Skriptsprache unterstützt. ASP enthält VBScript- und JScript-Skript-Engines. Sie können auch Skript-Engines, die von anderen Unternehmen zur Unterstützung von Sprachen wie PerlScript, PScript, Python und anderen entwickelt wurden, anschließen.

Wenn Sie die Skriptsprache für eine ASP-Seite nicht festlegen, ist VBScript die Standardeinstellung. Um eine andere Skriptsprache als VBScript anzugeben, fügen Sie oben auf jeder ASP-Seite eine Zeile wie die folgende ein:

<%@ LANGUAGE=JScript %>
 

Um ein COM-Objekt auf einer ASP-Seite zu verwenden, müssen Sie zuerst eine Instanz dieses Objekts erstellen. Dazu verwenden Sie das OBJECT-Tag und geben den Wert "SERVER" für das RUNAT-Attribut an, wie im folgenden Beispiel gezeigt. Standardmäßig erstellt das OBJECT-Tag eine Instanz des -Objekts auf dem Client. Wenn Sie das RUNAT-Attribut auf SERVER festlegen, wird das -Objekt auf dem Server erstellt. Das -Objekt muss auf dem Server ausgeführt werden, damit es von ASP verwendet werden kann.

<OBJECT 
RUNAT=SERVER 
ID=MyAds 
CLASSID="Clsid:1621F7C0-60AC-11CF-9427-444553540000">
</OBJECT> 
 

Sie können auch eine Instanz eines COM-Objekts auf einer ASP-Seite erstellen, indem Sie die CreateObject-Methode des ASP Server-Objekts aufrufen. Die Verwendung von Server.CreateObject ist langsamer als das Erstellen des Objekts mit einem OBJECT-Tag. Es ist jedoch etwas besser lesbar, da es den programmgesteuerten Bezeichner anstelle des Klassenbezeichners des COM-Objekts angibt. Das Server-Objekt wird von ASP verfügbar gemacht und muss nicht erstellt werden. Das Aufrufen von Server.CreateObject wird in den folgenden Beispielen veranschaulicht. Das erste Beispiel ist VBScript:

<% 
  Set MyAds = Server.CreateObject("MSWC.AdRotator") 
%>
 

Das nächste Beispiel ist JScript:

<% 
  var MyAds = Server.CreateObject("MSWC.AdRotator") 
%>
 

Der Aufruf von CreateObject ist langsamer als die Verwendung des OBJECT-Tags zum Erstellen eines COM-Objekts. In Anwendungen, in denen die Leistung entscheidend ist, sollten Sie das OBJECT-Tag verwenden.

Nachdem Sie eine Instanz des COM-Objekts erstellt haben, können Sie sie in Skripts verwenden. Dies wird im folgenden VBScript-Beispiel veranschaulicht, das den Wert der Border-Eigenschaft des COM-Objekts festlegt.

<% MyAds.Border = 0 %>
 

Skripterstellung mit COM-Objekten