Tools om het web vast te leggen en te converteren

Schermafbeelding van websites en meer met een COM-objectASP.NET API

De ASP.NET DLL is ook een COM-object dat betekent dat het geheel GrabzIt ASP.NET API kan in veel omgevingen worden gebruikt, zolang de doelcomputer ook het volledige .NET Framework heeft geïnstalleerd. Het kan bijvoorbeeld worden gebruikt om een ​​web-schermafbeelding te maken van een macro, CScript, JScript, Classic ASP, C ++ programma of een andere COM-compatibele programmeertaal.

Ermee beginnen

Om GrabzIt als COM-object te gaan gebruiken, installeert u eerst de . NET Framework en download dan de ASP.NET-bibliotheek. Pak vervolgens de bestanden RegisterCOM.bat en GrabzIt.dll uit into dezelfde map als uw app.

Vervolgens moet het GrabzIt COM-object worden geregistreerd. Dit kan zoals gewoonlijk worden gedaan met regasm.exe. Of u kunt de RegisterCOM.bat het dossier. Klik met de rechtermuisknop op RegisterCOM.bat en selecteer Als administrator uitvoeren. Kies vervolgens om het COM-object te registreren als 64- of 32-bitcomponent. Controleer of het bat-bestand aangeeft dat het COM-object succesvol is geregistreerd voordat u het venster sluit.

Voorbeelden met het GrabzIt COM-object

Nadat de DLL is geregistreerd, kan deze nergens in het systeem worden gebruikt. De methoden en klassen die beschikbaar zijn gemaakt via de COM-component van GrabzIt, zijn gemarkeerd met COM in de ASP.NET-documentatie.

Hieronder ziet u een eenvoudig voorbeeld van een screenshot van Google met JScript. Vergeet niet ervoor te zorgen dat het script voldoende rechten heeft om de screenshot in de opgegeven map op te slaan.

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;
}

Om het bovenstaande JScript-voorbeeld uit te voeren, save het naar een bestand bijvoorbeeld als screenshot.js en open vervolgens een opdrachtregelvenster. Navigeer naar de bestandslocatie. Voer vervolgens het commando uit wscript screenshot.js.

Vervolgens zal hetzelfde COM-object worden gebruikt in een meer gecompliceerd voorbeeld met Classic ASP. Het is je misschien opgevallen dat de eigenschap Country, een opsomming in de .NET-bibliotheek van GrabzIt, is ingesteld op 1. Dit komt omdat enums niet beschikbaar zijn in Classic ASP en de numerieke waarden van enums die zijn opgegeven in de ASP.NET-documentatie, moet worden gebruikt bij het gebruik van de COM-component van GrabzIt.

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")

Fout: ongeldige procedureaanroep of argument

Dit betekent dat de procedure fout is of dat een argument onjuist is. Met het COM-object van GrabzIt is het belangrijk om ervoor te zorgen dat alle argumenten worden gespecificeerd. Daarom is in het eerste voorbeeld de ImageOptions object wordt doorgegeven aan URLToImage methode, hoewel er geen opties zijn ingesteld.