Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 29050|Antwoord: 2

[WinForm] Gebruik CefSharp om websites in C# te bezoeken

[Link kopiëren]
Geplaatst op 02-04-2019 20:31:40 | | | |
Ik wil eigenlijk CefSharp gebruiken om toegang te krijgen tot webpagina's en dan de html-broncode ophalen voor analyse; als je de ingebouwde webbrowser-bediening gebruikt, kunnen er wat fouten in js-incompatibiliteit zijn.

CefSharp stelt je in staat om Chromium in .NET-applicaties te integreren. Het is een lichtgewicht .NET-wrapper rond het Chromium Embedded Framework (CEF) van Marshall A. Greenblatt. Ongeveer 30% van de bindings is geschreven in C++/CLI, en het grootste deel van de code hier is in C#. Het kan worden gebruikt vanuit C# of VB of elke andere CLR-taal. CefSharp biedt WPF- en WinForms-webbrowsercontrole-implementaties.

GitHub-adres:De hyperlink-login is zichtbaar.

Eerst gebruik ik VS om een nieuw Winform-project te maken met de volgende omgeving:

  • . .NET frameworkversie: 4.6.2
  • Visual Studio 2013: En hoger, ik gebruik hier vs2017



Het nuget-commando is als volgt:

Na voltooiing voegt het programma automatisch afhankelijkheidspakketten toe als volgt:

<?xml version="1.0" encoding="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>

Na voltooiing van de installatie zal het compilatieproject de volgende fout rapporteren:

CefSharp.Common bevat onbeheerde resources, stel je project- en oplossingsplatform in op x86 of x64. Alternatief, voor AnyCPU-ondersteuning, zieDe hyperlink-login is zichtbaar.

Ik zag een oplossing op internet die zegt dat je het actieve oplossingsplatform moet veranderen naar x86 (CEF kan zich niet aanpassen aan x86 | x64, je moet een doelwit kiezen), en het doelplatform moet ook consistent zijn met het oplossingsplatform.
Vanaf CefSharp 51 kun je CefSharp met AnyCPU gebruiken, maar het werkt niet alleen omdat je in twee specifieke bestanden wat wijzigingen moet doen.

Volgens de methode van netizens zou het opgelost moeten worden, ik heb het niet geprobeerd, eigenlijk ondersteunt cef al AnyCPU, maar het moet worden geconfigureerd, het configuratieschema is als volgt:

1: Klik eerst met de rechtermuisknop op het project, verwijder de oplossing, bewerk het .csproj-bestand van het project, en voeg het toe aan <PropertyGroup>de eerste node:



2: Nadat de toevoeging is voltooid, laad je het project opnieuw en voeg je de volgende configuratie toe in app.config:



3: Voordat je Cef.Initialize aanroept, configureer je het opstartpad van de browser met de volgende code:

Oplossingsreferentie:De hyperlink-login is zichtbaar.

De voltooide code is als volgt:


Voer projecten uit:


Weg:https://ourcodeworld.com/article ... informs-application

(Einde)







Vorig:java krijgt het Object eigenschapstype, eigenschapsnaam en eigenschapswaarde
Volgend:Visual Studio 2019 offline download en installatie tutorial
Geplaatst op 02-04-2019 20:46:35 |
Steun de eigenaar, bedankt voor het delen.
Geplaatst op 08-04-2019 23:44:58 |
Ik heb CefSharp goed gevolgd, maar ik heb geen beter en eenvoudiger voorbeeld om te begrijpen. Bedankt voor het delen
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com