Ich möchte tatsächlich CefSharp verwenden, um auf Webseiten zuzugreifen, und dann den HTML-Quellcode zur Analyse abrufen; wenn du die eingebaute Webbrowser-Steuerung verwendest, könnten einige Fehler bei js-Inkompatiblen vorkommen.
CefSharp ermöglicht es, Chromium in .NET-Anwendungen einzubetten. Es handelt sich um einen leichtgewichtigen .NET-Wrapper rund um das Chromium Embedded Framework (CEF) von Marshall A. Greenblatt. Etwa 30 % der Bindungen sind in C++/CLI geschrieben, und der Großteil des Codes hier ist in C#. Sie kann aus C#, VB oder jeder anderen CLR-Sprache verwendet werden. CefSharp bietet WPF- und WinForms-Webbrowser-Steuerungsimplementierungen an. GitHub-Adresse:Der Hyperlink-Login ist sichtbar.
Zuerst verwende ich VS, um ein neues Winform-Projekt mit folgender Umgebung zu erstellen:
- . .NET-Framework-Version: 4.6.2
- Visual Studio 2013: Und höher, ich benutze hier vs2017
Der Nuget-Befehl ist wie folgt:
Nach Abschluss der Ausführung fügt das Programm automatisch Abhängigkeitspakete wie folgt hinzu:
<?xml version="1.0" coding="utf-8"?> <packages> <package id="cef.redist.x64" version="3.3578.1870" targetFramework="net462" /> <package id="cef.redist.x86" version="3.3578.1870" targetFramework="net462" /> <package id="CefSharp.Common" version="71.0.2" targetFramework="net462" /> <package id="CefSharp.WinForms" version="71.0.2" targetFramework="net462" /> </packages> Nach Abschluss der Installation meldet das Kompilationsprojekt folgenden Fehler:
CefSharp.Common enthält unverwaltete Ressourcen, setze dein Projekt und deine Lösungsplattform auf x86 oder x64. Alternativ siehe für AnyCPU-UnterstützungDer Hyperlink-Login ist sichtbar. Ich habe im Internet eine Lösung gesehen, die besagt, dass man die aktive Lösungsplattform auf x86 ändern soll (CEF kann sich nicht auf x86 | x64 anpassen, man muss ein Ziel wählen), und die Zielplattform muss ebenfalls mit der Lösungsplattform konsistent sein.
Ab CefSharp 51 kannst du CefSharp mit AnyCPU verwenden, aber das funktioniert nicht allein, weil du in zwei bestimmten Dateien Änderungen vornehmen musst. Nach der Methode der Netizens sollte es gelöst werden, ich habe es nicht versucht, tatsächlich unterstützt cef bereits AnyCPU, aber es muss konfiguriert werden, das Konfigurationsschema ist wie folgt:
1: Zuerst mit der rechten Maustaste auf das Projekt klicken, die Lösung deinstallieren, die .csproj-Datei des Projekts bearbeiten und sie dem <PropertyGroup>ersten Knoten hinzufügen:
2: Nach Abschluss der Ergänzung wird das Projekt neu geladen und folgende Konfiguration in app.config hinzugefügt:
3: Bevor Sie Cef.Initialize aufrufen, konfigurieren Sie den Startpfad des Browsers mit folgendem Code:
Lösungsreferenz:Der Hyperlink-Login ist sichtbar.
Der ausgefüllte Code lautet wie folgt:
Projekte leiten:
Betriebsmittel:https://ourcodeworld.com/article ... informs-application
(Ende)
|