Tools zum Erfassen und Konvertieren des Webs

Screenshot von Websites und mehr mit einem COM-ObjektASP.NET API

Die ASP.NET-DLL ist ebenfalls ein COM-Objekt, dh das gesamte Objekt GrabzIt ASP.NET API kann in vielen Umgebungen verwendet werden, sofern auf dem Zielcomputer auch das vollständige .NET Framework installiert ist. Zum Beispiel kann es verwendet werden, um einen Web-Screenshot von einem Makro, CScript, JScript, Classic ASP, C ++ oder einer anderen COM-kompatiblen Programmiersprache zu erstellen.

Erste Schritte

Um GrabzIt als COM-Objekt zu verwenden, installieren Sie zuerst das . NET Framework und laden Sie dann die ASP.NET-Bibliothek. Extrahieren Sie dann die Dateien RegisterCOM.bat und GrabzIt.dll into Dasselbe Verzeichnis wie Ihre App.

Als nächstes muss das GrabzIt-COM-Objekt registriert werden. Dies kann entweder mit der Datei regasm.exe wie gewohnt erfolgen. Oder Sie können die RegisterCOM.bat Datei. Klicken Sie einfach mit der rechten Maustaste auf RegisterCOM.bat und wählen Sie Als Administrator ausführen. Wählen Sie dann, das COM-Objekt als 64- oder 32-Bitkomponente zu registrieren. Überprüfen Sie, ob in der Ausgabe der Bat-Datei angegeben ist, dass das COM-Objekt erfolgreich registriert wurde, bevor Sie das Fenster schließen.

Beispiele für die Verwendung des GrabzIt-COM-Objekts

Sobald die DLL registriert wurde, kann sie nirgendwo im System verwendet werden. Die Methoden und Klassen, die über die COM-Komponente von GrabzIt verfügbar gemacht wurden, sind mit gekennzeichnet COM in ASP.NET-Dokumentation.

Unten sehen Sie ein einfaches Beispiel für einen Screenshot von Google mit JScript. Denken Sie daran, sicherzustellen, dass das Skript über ausreichende Rechte verfügt, um den Screenshot im angegebenen Verzeichnis zu speichern.

try
{
    var grabzit = new ActiveXObject("GrabzIt.GrabzItClient");
    var options = new ActiveXObject("GrabzIt.Parameters.ImageOptions");

    grabzit.ApplicationKey = "Sign in to view your Application Key";
    grabzit.ApplicationSecret = "Sign in to view your Application Secret";
    grabzit.URLToImage("https://www.tesla.com", options);
    grabzit.SaveTo("C:\\tmp\\test.jpg");
}
catch(e)
{
    //do something with a exception
    //e.description;
}

So führen Sie das obige JScript-Beispiel aus: save es in eine Datei wie screenshot.js und öffnen Sie dann ein Befehlszeilenfenster. Navigieren Sie zum Dateispeicherort. Führen Sie dann den Befehl aus wscript screenshot.js.

Als Nächstes wird dasselbe COM-Objekt in einem komplexeren Beispiel unter Verwendung von Classic ASP verwendet. Möglicherweise haben Sie bemerkt, dass die Country-Eigenschaft, die eine Aufzählung in der .NET-Bibliothek von GrabzIt darstellt, auf 1 festgelegt ist. Dies liegt daran, dass in Classic ASP keine Aufzählungen verfügbar sind und die numerischen Werte der Aufzählungen in angegeben sind ASP.NET-Dokumentation, muss verwendet werden, wenn die COM-Komponente von GrabzIt verwendet wird.

Dim grabzit 
Dim options

set grabzit = Server.CreateObject("GrabzIt.GrabzItClient")
set options = Server.CreateObject("GrabzIt.Parameters.ImageOptions")

options.OutputWidth = 100
options.OutputHeight = 100
options.Country = 1

grabzit.ApplicationKey = "Sign in to view your Application Key"
grabzit.ApplicationSecret = "Sign in to view your Application Secret"
call grabzit.URLToImage("https://www.tesla.com", (options))
call grabzit.SaveTo("C:\\tmp\\test.jpg")

Fehler: Ungültiger Prozeduraufruf oder ungültiges Argument

Dies bedeutet, dass die Prozedur entweder falsch ist oder ein Argument falsch ist. Beim COM-Objekt von GrabzIt muss sichergestellt sein, dass alle Argumente angegeben sind. Aus diesem Grund wurde im ersten Beispiel die ImageOptions Objekt wird an übergeben URLToImage Methode, obwohl keine Optionen festgelegt sind.