Skip to content

Commit 60a1e61

Browse files
committed
Upgrade to 3.2704.1429 - Required for following changes as cef.redist targets files have changed
Update CefSharp.Common.targets so it copies the cef.redist packages Add support for Win32 target (obviously uses x86 files) Update CefSharp.Native.props to copy the files also for local builds Add AnyCPU target Add CefLoader helper class for AssemblyResolver
1 parent 0276844 commit 60a1e61

25 files changed

+251
-29
lines changed

CefSharp.BrowserSubprocess.Core/CefSharp.BrowserSubprocess.Core.vcxproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3-
<Import Project="..\packages\cef.sdk.3.2704.1418\build\cef.sdk.props" Condition="Exists('..\packages\cef.sdk.3.2704.1418\build\cef.sdk.props')" />
3+
<Import Project="..\packages\cef.sdk.3.2704.1429\build\cef.sdk.props" Condition="Exists('..\packages\cef.sdk.3.2704.1429\build\cef.sdk.props')" />
44
<ItemGroup Label="ProjectConfigurations">
55
<ProjectConfiguration Include="Debug|Win32">
66
<Configuration>Debug</Configuration>
@@ -67,7 +67,7 @@
6767
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
6868
</ImportGroup>
6969
<PropertyGroup Label="UserMacros">
70-
<NuGetPackageImportStamp>e9271c37</NuGetPackageImportStamp>
70+
<NuGetPackageImportStamp>bd305cd7</NuGetPackageImportStamp>
7171
</PropertyGroup>
7272
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
7373
<LinkIncremental>true</LinkIncremental>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<packages>
3-
<package id="cef.sdk" version="3.2704.1418" targetFramework="Native" />
3+
<package id="cef.sdk" version="3.2704.1429" targetFramework="Native" />
44
</packages>

CefSharp.Core/CefSharp.Core.vcxproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3-
<Import Project="..\packages\cef.sdk.3.2704.1418\build\cef.sdk.props" Condition="Exists('..\packages\cef.sdk.3.2704.1418\build\cef.sdk.props')" />
3+
<Import Project="..\packages\cef.sdk.3.2704.1429\build\cef.sdk.props" Condition="Exists('..\packages\cef.sdk.3.2704.1429\build\cef.sdk.props')" />
44
<ItemGroup Label="ProjectConfigurations">
55
<ProjectConfiguration Include="Debug|Win32">
66
<Configuration>Debug</Configuration>
@@ -67,7 +67,7 @@
6767
<PropertyGroup Label="UserMacros" />
6868
<PropertyGroup>
6969
<_ProjectFileVersion>11.0.51106.1</_ProjectFileVersion>
70-
<NuGetPackageImportStamp>2ebb2af2</NuGetPackageImportStamp>
70+
<NuGetPackageImportStamp>dac520a5</NuGetPackageImportStamp>
7171
</PropertyGroup>
7272
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
7373
<OutDir>bin\$(Platform)\$(Configuration)\</OutDir>

CefSharp.Core/packages.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<packages>
3-
<package id="cef.sdk" version="3.2704.1418" targetFramework="Native" />
3+
<package id="cef.sdk" version="3.2704.1429" targetFramework="Native" />
44
</packages>

CefSharp.Native.props

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,22 @@
77
</ItemGroup>
88
<Copy SourceFiles="@(SubProcessFiles)" DestinationFolder="$(TargetDir)" />
99
</Target>
10-
</Project>
10+
11+
<Target Name="CefSharpCopyLibs86" BeforeTargets="AfterBuild" Condition="'$(Platform)' == 'x86'">
12+
<Message Importance="high" Text="Copying cef.redist x86 binaries" />
13+
<Copy SourceFiles="@(CefBinaries32)" DestinationFolder="$(TargetDir)" SkipUnchangedFiles="true" />
14+
<Message Importance="high" Text="Copying cef.redist x86 pak files" />
15+
<Copy SourceFiles="@(CefPakFiles32)" DestinationFolder="$(TargetDir)" SkipUnchangedFiles="true" />
16+
<Message Importance="high" Text="Copying cef.redist x86 locales " />
17+
<Copy SourceFiles="@(CefLocales32)" DestinationFolder="$(TargetDir)\locales" SkipUnchangedFiles="true" />
18+
</Target>
19+
20+
<Target Name="CefSharpCopyLibs64" BeforeTargets="AfterBuild" Condition="'$(Platform)' == 'x64'">
21+
<Message Importance="high" Text="Copying cef.redist x64 binaries" />
22+
<Copy SourceFiles="@(CefBinaries64)" DestinationFolder="$(TargetDir)" SkipUnchangedFiles="true" />
23+
<Message Importance="high" Text="Copying cef.redist x64 pak files" />
24+
<Copy SourceFiles="@(CefPakFiles64)" DestinationFolder="$(TargetDir)" SkipUnchangedFiles="true" />
25+
<Message Importance="high" Text="Copying cef.redist x64 locales " />
26+
<Copy SourceFiles="@(CefLocales64)" DestinationFolder="$(TargetDir)\locales" SkipUnchangedFiles="true" />
27+
</Target>
28+
</Project>

CefSharp.OffScreen.Example/CefSharp.OffScreen.Example.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<FileAlignment>512</FileAlignment>
1414
<TargetFrameworkProfile>
1515
</TargetFrameworkProfile>
16-
<NuGetPackageImportStamp>f7c3e354</NuGetPackageImportStamp>
16+
<NuGetPackageImportStamp>6a989588</NuGetPackageImportStamp>
1717
</PropertyGroup>
1818
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
1919
<DebugSymbols>true</DebugSymbols>
@@ -94,6 +94,6 @@
9494
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
9595
<Import Project="$(SolutionDir)\CefSharp.props" />
9696
<Import Project="$(SolutionDir)\CefSharp.Native.props" />
97-
<Import Project="..\packages\cef.redist.x64.3.2704.1418\build\cef.redist.x64.targets" Condition="Exists('..\packages\cef.redist.x64.3.2704.1418\build\cef.redist.x64.targets')" />
98-
<Import Project="..\packages\cef.redist.x86.3.2704.1418\build\cef.redist.x86.targets" Condition="Exists('..\packages\cef.redist.x86.3.2704.1418\build\cef.redist.x86.targets')" />
97+
<Import Project="..\packages\cef.redist.x86.3.2704.1429\build\cef.redist.x86.targets" Condition="Exists('..\packages\cef.redist.x86.3.2704.1429\build\cef.redist.x86.targets')" />
98+
<Import Project="..\packages\cef.redist.x64.3.2704.1429\build\cef.redist.x64.targets" Condition="Exists('..\packages\cef.redist.x64.3.2704.1429\build\cef.redist.x64.targets')" />
9999
</Project>
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<packages>
3-
<package id="cef.redist.x64" version="3.2704.1418" targetFramework="net452" />
4-
<package id="cef.redist.x86" version="3.2704.1418" targetFramework="net452" />
3+
<package id="cef.redist.x64" version="3.2704.1429" targetFramework="net452" />
4+
<package id="cef.redist.x86" version="3.2704.1429" targetFramework="net452" />
55
</packages>

CefSharp.WinForms.Example/CefSharp.WinForms.Example.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<OldToolsVersion>3.5</OldToolsVersion>
2222
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
2323
<TargetFrameworkProfile />
24-
<NuGetPackageImportStamp>b35484a6</NuGetPackageImportStamp>
24+
<NuGetPackageImportStamp>39ab83f1</NuGetPackageImportStamp>
2525
</PropertyGroup>
2626
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
2727
<PlatformTarget>x64</PlatformTarget>
@@ -182,6 +182,6 @@
182182
<Import Project="$(SolutionDir)\CefSharp.Native.props" />
183183
<Import Project="..\packages\cef.redist.x64.3.2272.30\build\cef.redist.x64.targets" Condition="Exists('..\packages\cef.redist.x64.3.2272.30\build\cef.redist.x64.targets')" />
184184
<Import Project="..\packages\cef.redist.x86.3.2272.30\build\cef.redist.x86.targets" Condition="Exists('..\packages\cef.redist.x86.3.2272.30\build\cef.redist.x86.targets')" />
185-
<Import Project="..\packages\cef.redist.x64.3.2704.1418\build\cef.redist.x64.targets" Condition="Exists('..\packages\cef.redist.x64.3.2704.1418\build\cef.redist.x64.targets')" />
186-
<Import Project="..\packages\cef.redist.x86.3.2704.1418\build\cef.redist.x86.targets" Condition="Exists('..\packages\cef.redist.x86.3.2704.1418\build\cef.redist.x86.targets')" />
185+
<Import Project="..\packages\cef.redist.x86.3.2704.1429\build\cef.redist.x86.targets" Condition="Exists('..\packages\cef.redist.x86.3.2704.1429\build\cef.redist.x86.targets')" />
186+
<Import Project="..\packages\cef.redist.x64.3.2704.1429\build\cef.redist.x64.targets" Condition="Exists('..\packages\cef.redist.x64.3.2704.1429\build\cef.redist.x64.targets')" />
187187
</Project>
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<packages>
3-
<package id="cef.redist.x64" version="3.2704.1418" targetFramework="net452" />
4-
<package id="cef.redist.x86" version="3.2704.1418" targetFramework="net452" />
3+
<package id="cef.redist.x64" version="3.2704.1429" targetFramework="net452" />
4+
<package id="cef.redist.x86" version="3.2704.1429" targetFramework="net452" />
55
</packages>

CefSharp.Wpf.Example/CefSharp.Wpf.Example.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<OldToolsVersion>3.5</OldToolsVersion>
2222
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
2323
<TargetFrameworkProfile />
24-
<NuGetPackageImportStamp>e08d0872</NuGetPackageImportStamp>
24+
<NuGetPackageImportStamp>73c79eb8</NuGetPackageImportStamp>
2525
</PropertyGroup>
2626
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
2727
<DebugSymbols>true</DebugSymbols>
@@ -180,6 +180,6 @@
180180
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
181181
<Import Project="$(SolutionDir)\CefSharp.props" />
182182
<Import Project="$(SolutionDir)\CefSharp.Native.props" />
183-
<Import Project="..\packages\cef.redist.x64.3.2704.1418\build\cef.redist.x64.targets" Condition="Exists('..\packages\cef.redist.x64.3.2704.1418\build\cef.redist.x64.targets')" />
184-
<Import Project="..\packages\cef.redist.x86.3.2704.1418\build\cef.redist.x86.targets" Condition="Exists('..\packages\cef.redist.x86.3.2704.1418\build\cef.redist.x86.targets')" />
183+
<Import Project="..\packages\cef.redist.x86.3.2704.1429\build\cef.redist.x86.targets" Condition="Exists('..\packages\cef.redist.x86.3.2704.1429\build\cef.redist.x86.targets')" />
184+
<Import Project="..\packages\cef.redist.x64.3.2704.1429\build\cef.redist.x64.targets" Condition="Exists('..\packages\cef.redist.x64.3.2704.1429\build\cef.redist.x64.targets')" />
185185
</Project>

CefSharp.Wpf.Example/packages.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<packages>
3-
<package id="cef.redist.x64" version="3.2704.1418" targetFramework="net452" />
4-
<package id="cef.redist.x86" version="3.2704.1418" targetFramework="net452" />
3+
<package id="cef.redist.x64" version="3.2704.1429" targetFramework="net452" />
4+
<package id="cef.redist.x86" version="3.2704.1429" targetFramework="net452" />
55
<package id="CommonServiceLocator" version="1.3" targetFramework="net45" />
66
<package id="MvvmLightLibs" version="5.1.1.0" targetFramework="net45" />
77
</packages>

CefSharp/CefLoader.cs

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
// Copyright © 2010-2016 The CefSharp Authors. All rights reserved.
2+
//
3+
// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
4+
5+
using System;
6+
using System.IO;
7+
using System.Reflection;
8+
9+
namespace CefSharp
10+
{
11+
/// <summary>
12+
/// Used for AnyCPU Support to resolve Assemblies and Dependencies
13+
/// </summary>
14+
public static class CefLoader
15+
{
16+
/// <summary>
17+
/// RegisterCefSharpAssemblyResolver
18+
/// </summary>
19+
public static void RegisterCefSharpAssemblyResolver()
20+
{
21+
AppDomain.CurrentDomain.AssemblyResolve += Resolver;
22+
}
23+
24+
/// <summary>
25+
/// UnRegisterCefSharpAssemblyResolver
26+
/// </summary>
27+
public static void UnRegisterCefSharpAssemblyResolver()
28+
{
29+
AppDomain.CurrentDomain.AssemblyResolve -= Resolver;
30+
}
31+
32+
/// <summary>
33+
/// Helper method to map the CefSharp.BrowserSubProcess.exe file
34+
/// based on current process bitness (x64 or x86)
35+
/// </summary>
36+
/// <returns></returns>
37+
public static string GetBrowserSubProcessPath()
38+
{
39+
var path = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase,
40+
Environment.Is64BitProcess ? "x64" : "x86",
41+
"CefSharp.BrowserSubprocess.exe");
42+
43+
if(File.Exists(path))
44+
{
45+
throw new FileNotFoundException("Unable to locate", path);
46+
}
47+
48+
return path;
49+
}
50+
51+
private static Assembly Resolver(object sender, ResolveEventArgs args)
52+
{
53+
if (args.Name.StartsWith("CefSharp"))
54+
{
55+
string assemblyName = args.Name.Split(new[] { ',' }, 2)[0] + ".dll";
56+
string archSpecificPath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase,
57+
Environment.Is64BitProcess ? "x64" : "x86",
58+
assemblyName);
59+
60+
return File.Exists(archSpecificPath) ? Assembly.LoadFile(archSpecificPath) : null;
61+
}
62+
63+
return null;
64+
}
65+
}
66+
}

CefSharp/CefSharp.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@
7676
<Compile Include="CefGeoPositionErrorCode.cs" />
7777
<Compile Include="CefJsDialogType.cs" />
7878
<Compile Include="CefLibraryHandle.cs" />
79+
<Compile Include="CefLoader.cs" />
7980
<Compile Include="CefMenuCommand.cs" />
8081
<Compile Include="CefPdfPrintMarginType.cs" />
8182
<Compile Include="ContextMenuEditState.cs" />

CefSharp3.sln

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,13 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NuGet", "NuGet", "{A23AA466
4444
NuGet\CefSharp.Common.targets = NuGet\CefSharp.Common.targets
4545
NuGet\CefSharp.OffScreen.nuspec = NuGet\CefSharp.OffScreen.nuspec
4646
NuGet\CefSharp.OffScreen.props = NuGet\CefSharp.OffScreen.props
47+
NuGet\CefSharp.OffScreen.targets = NuGet\CefSharp.OffScreen.targets
4748
NuGet\CefSharp.WinForms.nuspec = NuGet\CefSharp.WinForms.nuspec
4849
NuGet\CefSharp.WinForms.props = NuGet\CefSharp.WinForms.props
50+
NuGet\CefSharp.WinForms.targets = NuGet\CefSharp.WinForms.targets
4951
NuGet\CefSharp.Wpf.nuspec = NuGet\CefSharp.Wpf.nuspec
5052
NuGet\CefSharp.Wpf.props = NuGet\CefSharp.Wpf.props
53+
NuGet\CefSharp.Wpf.targets = NuGet\CefSharp.Wpf.targets
5154
NuGet\Readme.txt = NuGet\Readme.txt
5255
EndProjectSection
5356
EndProject

NuGet/CefSharp.Common.props

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,27 @@
33
<ItemGroup>
44
<Reference Include="CefSharp" Condition="'$(Platform)' == 'x86'">
55
<HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x86\CefSharp.dll</HintPath>
6+
<Private>True</Private>
67
</Reference>
78
<Reference Include="CefSharp" Condition="'$(Platform)' == 'x64'">
89
<HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x64\CefSharp.dll</HintPath>
10+
<Private>True</Private>
11+
</Reference>
12+
<Reference Include="CefSharp" Condition="'$(Platform)' == 'AnyCPU'">
13+
<HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x86\CefSharp.dll</HintPath>
14+
<Private>False</Private>
915
</Reference>
1016
<Reference Include="CefSharp.Core" Condition="'$(Platform)' == 'x86'">
1117
<HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x86\CefSharp.Core.dll</HintPath>
18+
<Private>True</Private>
1219
</Reference>
1320
<Reference Include="CefSharp.Core" Condition="'$(Platform)' == 'x64'">
1421
<HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x64\CefSharp.Core.dll</HintPath>
22+
<Private>True</Private>
23+
</Reference>
24+
<Reference Include="CefSharp.Core" Condition="'$(Platform)' == 'AnyCPU'">
25+
<HintPath>$(MSBuildThisFileDirectory)..\CefSharp\x86\CefSharp.Core.dll</HintPath>
26+
<Private>False</Private>
1527
</Reference>
1628
</ItemGroup>
1729
</Project>

0 commit comments

Comments
 (0)