-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nuget Package Restructure #3319
Comments
The https://ci.appveyor.com/project/cefsharp/cefsharp/builds/36859715/job/lmn6djbvfijk3fui#L591 Reverted to using the full It's likely the older version of |
It might be possible to hack something together where a |
For ClickOnce specifying <CefSharpBuildAction>Content</CefSharpBuildAction> in your project file before the .targets file should allow for resources to be included in your ClickOnce installer. The default None copies files to a dependant project, say you have CefSharp installed in your Class library, the files will be included in projects that directly reference this project file (Only one level deep). Same as the Content/None options listed at https://docs.microsoft.com/en-us/visualstudio/ide/build-actions?view=vs-2019#build-action-values Issue #3319
Adding a PropertyGroup to each Chose/When block appears to be enough to get the files copied successfully. Still needs more testing Issue #3319
This comment has been minimized.
This comment has been minimized.
To better support Add the following to a <CefSharpBuildAction>Content</CefSharpBuildAction> IMPORTANT :
|
The first set of
The rest of the changes related to updating the documentation will be tracked as part of #3343 |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
@amaitland i don't know whether should i file a new bug. when i create new project with <PackageReference Include="CefSharp.WinForms.NETCore" Version="98.1.210" /> build it and run, then crash with nothing tips. when i change the project name to other one, it works like a charm. i think the reason should be that the output dll |
Please don't open a bug. You will need to give your project a unique name. This is not something I can fix. |
Hello and thanks for the awesome library! Does the above explained also include the file Thx again. |
Summary
To resolve a few long standing issues and to better support
.Net Core
going forward I'm restructuring theNuget Packages
, this includes the inclusion ofCefSharp.Core.Runtime.dll
, this is actually the currentCefSharp.Core.dll
with a new managed dll calledCefSharp.Core.dll
which allows me to switch (at least mostly) to havingCefSharp.Core.runtime.dll
as a runtime only dependency.UPDATE
Whilst it is no longer necessary to close
Visual Studio
for the references to show up (dotnet/project-system#4158) the runtime dependencies,libcef.dll
etc still aren't copied until the project is closed/reopened when usingpackages.config
style projects. UsingPackageReference
works correctly and is the recommended option. Please note you can usePackageReference
with oldernon SDK Style
projects (ones that would typically have usedpackages.config
) underVS2017/2019
.CefSharp.Core.Runtime.dll will need to be distributed with your application.
Breaking Changes
x86/x64
) dlls have been converted toAnyCPU
:CefSharp.dll
CefSharp.WinForms.dll
CefSharp.Wpf.dll
CefSharp.OffScreen.dll
Specifying
$(CefSharpTargetDir)
inMSBuild
will no longer move these files to a sub folder as they are now included in thelib\net452
folder within theNuget
package (this is the standard). Movinglibcef.dll
and it's many other resources is still possible.Details
.Net Core/5.0
CefSharp.Core.dll
is now written inC#
withCefSharp.Core.Runtime.dll
being the runtime dependency that provides theMixed Mode CLI/C++
implementation.AnyCPU
targetingpacakges.config
based projects having to reload the solution for the dependencies to show up (Building project with CefSharp fails to build until I restart visual studio dotnet/project-system#4158)$(Platform)
at the solution level ($PlatformTarget) at project level is now sufficientlibcef.dll
is loaded.VC++
is installed.GitLink
Changes:
Rename
CefSharp.Core.dll
toCefSharp.Core.Runtime.dll
Public API
methods it exposes are hidden fromVisual Studio Intellisense
CefSharp.Core.dll
(AnyCPU
class library).Add
CefSharp.Core.dll
AnyCPU
) dll that provides the publicAPI
.Net Core
there will be aCLR Module Initializer
to loadlibcef.dll
from the relevant location where requiredVC++
is installedKnown Issues:
Specifying<CefSharpTargetDir/>
inMSBuild
doesn't currently copyCefSharp.dll
to the subfolder which is required by theBrowserSubProcess
.Temp workaround is to copy$(CefSharpCommonManagedDlls)
to the subfolder via a customAfterBuild Target
.Additional
.csproj.nuget.g.props
files in theobj
directory have a$(NuGetProjectStyle)
which might be better than the current'$(UsingMicrosoftNETSdk)' != 'true'
check to determine if aSDK Style(PackageReference
) project.PR #3311
The text was updated successfully, but these errors were encountered: