【发布时间】:2021-11-29 00:13:14
【问题描述】:
我正在创建一个可以在线和离线运行任何 Flash 游戏的个人应用程序。我一直在使用带有 Pepperflash 插件的 CefSharp v75.1.143。我尝试了不同的离线 Flash 游戏,它按预期工作。但是当我尝试玩在线 Flash 游戏,特别是 Adventure Quest Worlds 时,游戏卡在 100%。我找不到原因,因为 debug.log 根本没有显示任何错误。
我一直使用的代码是:
private void InitializeChromium()
{
CefSettings settings = new CefSettings();
string PepPath = Path.Combine(Directory.GetCurrentDirectory(), @"resources\plugins\pepflashplayer.dll");
string PepVer = "29.0.0.171";
settings.CefCommandLineArgs.Add("ppapi-flash-path", PepPath);
settings.CefCommandLineArgs.Add("ppapi-flash-version", PepVer);
settings.CefCommandLineArgs["plugin-policy"] = "allow";
Cef.Initialize(settings, performDependencyCheck: true, browserProcessHandler: null);
chromeBrowser = new ChromiumWebBrowser(@"aq.com/game"); //The game that I'm testing
Controls.Add(chromeBrowser);
chromeBrowser.Dock = DockStyle.Fill;
}
我尝试将 pepflashplayer 更改为旧版本,但它不起作用。
我还尝试添加settings.CefCommandLineArgs.Add("disable-web-security", "1"); 和settings.CefCommandLineArgs.Add("allow-file-acccess-from-files", "1");,但仍然出现相同的错误。
我的代码有问题吗?
【问题讨论】:
-
尝试将您拥有的任何离线游戏(并且完美地离线运行)置于在线状态。如果您的系统出现问题,游戏将无法运行。如果它也可以在线运行,那么问题出在那个不想为你运行的游戏中。
-
您可以在 DevTools 中检查错误,github.com/cefsharp/CefSharp/wiki/… 版本 86 是最后一个支持 flash 的,您可能想尝试更新的版本。