Upgrade to 87.1.132 (#130)

* Upgrade to 87.1.12-CI3846

- Upgrade to Net Core 3.1 (Required to use new Net Core packages)
- Migrate to NetCore specific pages

* Upgrade to 87.1.130-pre

* OffScreen - Remove UseWindowsForms from csproj file

No longer required as we use the Drawing nuget package
Also causes a problem with Console.ReadLine

* README.md - Update Net Core Section

* WinForms - Add new SdkStyle .Net 4.7.2 project and solution

TODO: Add OffScreen and WPF project files

* Upgrade to 87.1.131-pre

* Upgrade to 87.1.132
This commit is contained in:
Alex Maitland
2021-02-03 12:06:58 +11:00
committed by GitHub
parent 6b92ff6dd0
commit 95f428829b
18 changed files with 176 additions and 298 deletions

View File

@@ -1,9 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\CefSharp.OffScreen.86.0.241\build\CefSharp.OffScreen.props" Condition="Exists('..\packages\CefSharp.OffScreen.86.0.241\build\CefSharp.OffScreen.props')" />
<Import Project="..\packages\CefSharp.Common.86.0.241\build\CefSharp.Common.props" Condition="Exists('..\packages\CefSharp.Common.86.0.241\build\CefSharp.Common.props')" />
<Import Project="..\packages\cef.redist.x86.86.0.24\build\cef.redist.x86.props" Condition="Exists('..\packages\cef.redist.x86.86.0.24\build\cef.redist.x86.props')" />
<Import Project="..\packages\cef.redist.x64.86.0.24\build\cef.redist.x64.props" Condition="Exists('..\packages\cef.redist.x64.86.0.24\build\cef.redist.x64.props')" />
<Import Project="..\packages\CefSharp.Common.87.1.132\build\CefSharp.Common.props" Condition="Exists('..\packages\CefSharp.Common.87.1.132\build\CefSharp.Common.props')" />
<Import Project="..\packages\cef.redist.x86.87.1.13\build\cef.redist.x86.props" Condition="Exists('..\packages\cef.redist.x86.87.1.13\build\cef.redist.x86.props')" />
<Import Project="..\packages\cef.redist.x64.87.1.13\build\cef.redist.x64.props" Condition="Exists('..\packages\cef.redist.x64.87.1.13\build\cef.redist.x64.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -65,6 +64,18 @@
<ApplicationManifest>app.manifest</ApplicationManifest>
</PropertyGroup>
<ItemGroup>
<Reference Include="CefSharp, Version=87.1.132.0, Culture=neutral, PublicKeyToken=40c4b6fc221f4138">
<HintPath>..\packages\CefSharp.Common.87.1.132\lib\net452\CefSharp.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="CefSharp.Core, Version=87.1.132.0, Culture=neutral, PublicKeyToken=40c4b6fc221f4138">
<HintPath>..\packages\CefSharp.Common.87.1.132\lib\net452\CefSharp.Core.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="CefSharp.OffScreen, Version=87.1.132.0, Culture=neutral, PublicKeyToken=40c4b6fc221f4138">
<HintPath>..\packages\CefSharp.OffScreen.87.1.132\lib\net452\CefSharp.OffScreen.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Drawing" />
@@ -83,6 +94,5 @@
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="..\packages\CefSharp.Common.86.0.241\build\CefSharp.Common.targets" Condition="Exists('..\packages\CefSharp.Common.86.0.241\build\CefSharp.Common.targets')" />
<Import Project="..\packages\CefSharp.OffScreen.86.0.241\build\CefSharp.OffScreen.targets" Condition="Exists('..\packages\CefSharp.OffScreen.86.0.241\build\CefSharp.OffScreen.targets')" />
<Import Project="..\packages\CefSharp.Common.87.1.132\build\CefSharp.Common.targets" Condition="Exists('..\packages\CefSharp.Common.87.1.132\build\CefSharp.Common.targets')" />
</Project>

View File

@@ -11,8 +11,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<UseWindowsForms>true</UseWindowsForms>
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>CefSharp.MinimalExample.OffScreen</RootNamespace>
<ApplicationManifest>app.manifest</ApplicationManifest>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
@@ -29,44 +28,8 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="CefSharp.OffScreen" Version="86.0.241" />
<PackageReference Include="CefSharp.OffScreen.NetCore" Version="87.1.132" />
</ItemGroup>
<ItemGroup>
<!-- TODO: These updates are currently required because CefSharp.OffScreen specifies
<Private>false</Private>, which means these libraries will not be specified in
the .deps.json file, and so the CoreCLR wouldn't load these. -->
<Reference Update="CefSharp">
<Private>true</Private>
</Reference>
<Reference Update="CefSharp.Core">
<Private>true</Private>
</Reference>
<Reference Update="CefSharp.OffScreen">
<Private>true</Private>
</Reference>
</ItemGroup>
<!-- Include CefSharp.BrowserSubprocess.Core so we can selfhost the BrowserSubProcess using our exe -->
<Choose>
<When Condition="'$(PlatformTarget)' == 'x64'">
<ItemGroup>
<Reference Include="CefSharp.BrowserSubprocess.Core">
<HintPath>$(CefSharpBrowserProcessCore64)</HintPath>
<Private>true</Private>
</Reference>
</ItemGroup>
</When>
<!-- x86, Win32 and AnyCPU -->
<Otherwise>
<ItemGroup>
<Reference Include="CefSharp.BrowserSubprocess.Core">
<HintPath>$(CefSharpBrowserProcessCore32)</HintPath>
<Private>true</Private>
</Reference>
</ItemGroup>
</Otherwise>
</Choose>
<Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk.WindowsDesktop" />
</Project>

View File

@@ -23,36 +23,21 @@ namespace CefSharp.MinimalExample.OffScreen
Console.WriteLine("You may see Chromium debugging output, please wait...");
Console.WriteLine();
#if NETCOREAPP
//We are using our current exe as the BrowserSubProcess
//Multiple instances will be spawned to handle all the
//Chromium proceses, render, gpu, network, plugin, etc.
var subProcessExe = new CefSharp.BrowserSubprocess.BrowserSubprocessExecutable();
var result = subProcessExe.Main(args);
if (result > 0)
{
return result;
}
#endif
var settings = new CefSettings()
{
//By default CefSharp will use an in-memory cache, you need to specify a Cache Folder to persist data
CachePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "CefSharp\\Cache")
};
var dependencyCheck = true;
#if NETCOREAPP
//We use our Applications exe as the BrowserSubProcess, multiple copies
//will be spawned
//TODO: The OffScreen implementation is crashing on Exit (WPF/WinForms are working fine).
//So for now this is commented out and the old .Net CefSharp.BrowserSubProcess.exe
//is used.
//var exePath = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
//settings.BrowserSubprocessPath = exePath;
//This should be fixed shortly.
dependencyCheck = false;
#endif
//Perform dependency check to make sure all relevant resources are in our output directory.
Cef.Initialize(settings, performDependencyCheck: true, browserProcessHandler: null);
Cef.Initialize(settings, performDependencyCheck: dependencyCheck, browserProcessHandler: null);
// Create the offscreen Chromium browser.
browser = new ChromiumWebBrowser(testUrl);

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="cef.redist.x64" version="86.0.24" targetFramework="net452" />
<package id="cef.redist.x86" version="86.0.24" targetFramework="net452" />
<package id="CefSharp.Common" version="86.0.241" targetFramework="net452" />
<package id="CefSharp.OffScreen" version="86.0.241" targetFramework="net452" />
<package id="cef.redist.x64" version="87.1.13" targetFramework="net452" />
<package id="cef.redist.x86" version="87.1.13" targetFramework="net452" />
<package id="CefSharp.Common" version="87.1.132" targetFramework="net452" />
<package id="CefSharp.OffScreen" version="87.1.132" targetFramework="net452" />
</packages>