Я использую этот код для создания браузера CefSharp в моем приложении winform:
ChromiumWebBrowser browser = new ChromiumWebBrowser("");
RequestContextSettings requestContextSettings = new RequestContextSettings { CachePath = "mycachepath" };
browser.RequestContext = new RequestContext(requestContextSettings, new CustomRequestContextHandler());
И вот код, который я использую для очистки этого браузера:
if (instaBrowser != null)
{
if (browserPanel.Controls.Contains(browser))
browserPanel.Controls.Remove(browser);
if (browser.RequestContext != null)
browser.RequestContext.Dispose();
if (!browser.IsDisposed)
browser.Dispose();
browser = null;
}
Несмотря на то, что я очищаю этот браузер, при попытке очистить путь кеша через пару секунд я получаю ошибку:
The process cannot access the file 'Visited Links' because it is being used by another process.
Удалить функцию пути кеша:
String cachePath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"\Users\" + userName;
if (Directory.Exists(cachePath))
{
Directory.Delete(cachePath, true);
}
Есть идеи, в чем может быть проблема?