C# : CEF操作
Posted 慧由心生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# : CEF操作相关的知识,希望对你有一定的参考价值。
代码挺差的,仅供学习、参考
class CEFGlueLoader { class CefAppImpl : CefApp { protected override void OnBeforeCommandLineProcessing(string processType, CefCommandLine commandLine) { commandLine.AppendArgument("enable-npapi"); commandLine.AppendSwitch("enable-media-stream", "enable-media-stream"); commandLine.AppendSwitch("process-per-site"); commandLine.AppendSwitch("ppapi-flash-version", "23.0.0.185");//PepperFlash\\manifest.json中的version commandLine.AppendSwitch("ppapi-flash-path", "PepperFlash\\\\pepflashplayer.dll"); } } public static void InitCEF() { #if !_ORG_MANAGER && !_MBMAKER CefRuntime.Load(); string[] args = new string[0]; var mainArgs = new CefMainArgs(args); var app = new CefAppImpl(); var exitCode = CefRuntime.ExecuteProcess(mainArgs, app); System.Diagnostics.Trace.WriteLine("CefRuntime.ExecuteProcess return: " + exitCode); if (exitCode != -1) { return; } var settings = new CefSettings { BrowserSubprocessPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"bin\\Cef3Process.exe"), SingleProcess = false, MultiThreadedMessageLoop = true, LogSeverity = CefLogSeverity.Default, LogFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"log\\CefGlue.log"), CachePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"cache"), CommandLineArgsDisabled = true, Locale = "zh_CN", LocalesDirPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"bin\\locales"), RemoteDebuggingPort = 7789, }; CefRuntime.Initialize(mainArgs, settings, app); if (!settings.MultiThreadedMessageLoop) { System.Windows.Forms.Application.Idle += (sender, e) => { CefRuntime.DoMessageLoopWork(); }; } #endif } private static string GetPath(string v) { return Path.GetFullPath(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, v)); } public static void ShutDownCEF() { #if !_ORG_MANAGER && !_MBMAKER try { CefRuntime.Shutdown(); } catch (Exception) { } #endif } }
以上是关于C# : CEF操作的主要内容,如果未能解决你的问题,请参考以下文章