我有一个简单的自定义协议方案,我想将它与 CefSharp 一起用于在 Windows 中“启动”一个文件。该方案有效,但我找不到阻止 chromium 导航到该文件 url 的方法(在下面的代码中由 Process.Start 成功调用它之后)。我已经尝试了 CefReturnValue 和 callback.Dispose 和 request.Dispose 的几乎所有组合
这是代码:
public override CefReturnValue ProcessRequestAsync(IRequest request, ICallback callback)
{
var uri = new Uri(request.Url);
string requestedPath = WebUtility.UrlDecode(uri.AbsolutePath);
if (requestedPath.StartsWith("///"))
requestedPath = requestedPath.Substring(3).Replace("/", @"\");
if (File.Exists(requestedPath))
Process.Start(requestedPath);
callback.Dispose();
return CefReturnValue.Cancel;
}
有谁知道如何防止后续导航?