У меня есть время, когда я загружаю файл через GeckoFX60 C #.Он отлично работал в GeckoFX29, но не в 60.
В прошлой версии я использовал этот код:
var fileNames = new IntPtr[1];
fileNames[0] = new Gecko.CustomMarshalers.WStringMarshaler().MarshalManagedToNative("c:\\myfile.jpg");
var domInput = Xpcom.QueryInterface<nsIDOMHTMLInputElement (aux2.DOMElement);
domInput.MozSetFileNameArray(fileNames, (uint)fileNames.Length);
Marshal.ReleaseComObject(domInput);
И тогда я бы вызвал событие изменения:
var ev = webbrowser.Document.CreateEvent("Event");
var webEvent = new Event((mozIDOMWindowProxy)webbrowser.Window.DomWindow, ev.DomEvent as nsISupports);
webEvent.InitEvent("change", true, true);
el2.GetEventTarget().DispatchEvent(ev);
Но сейчас в GeckoFX60 MozSetFileNameArray недоступен.Я попытался его перекомпилировать и включить, но когда я его использую, он падает.
Я заметил, что теперь элемент: HTMLInputElement
Имеет MozSetFileArray и MozSetFileNameArray, но всякий раз, когда я их использую, я получаюошибка.
Кому-нибудь удалось загрузить файл программно с помощью GeckoFX60?Чего я хочу добиться, так это загрузить форму, в которой есть тип ввода = файл, и автоматически завершить ввод и загрузить (без какого-либо взаимодействия с пользователем).
Последние 3 дня я ломал голову, и я надеюсь, что кто-то может помочь:)
Спасибо!