Закрытие объекта Excel ActiveX из JavaScript оставляет excel.exe в памяти

function gbid(s) { return document.getElementById(s); } function GetData(cell,row) { var excel = new ActiveXObject("Excel.Application"); var excel_file = excel.Workbooks.Open("Z:/SunCenter/Medicare Customer Experience/Hub/CaliforniaHUB/Plans/H0562_2013_082_EOC.xlsx"); var excel_sheet = excel.Worksheets("Sheet1"); gbid('span1').innerText = excel_sheet.Cells(1191,1).Value; gbid('span2').innerText = excel_sheet.Cells(1192,1).Value; gbid('span3').innerText = excel_sheet.Cells(1192,3).Value; excel_file.Close() excel.Quit() } 

Всякий раз, когда javascript запускается (onload), он создает процесс в taskmanager / Processes. Проблема в том, что он не закрывает его после использования. Когда я запускаю его снова, он создает еще один. Прямо сейчас он просто извлекает информацию из файла excel, который работает отлично, но он просто не закрывает exe-файл в taskmanager. Я думал, что excel_file.close сделает это, и я даже поставлю еще один, excel.quit , на всякий случай. Извините, я просто хотел убедиться, что это сработало. Я даже отнял у него сейчас только в случае конфликта, но нада. Любая помощь?

Вам нужно вызвать excel.Application.Quit(); вместо просто excel.Quit();

По словам Microsoft, поскольку вы все еще держите ссылку на excel, когда вы вызываете Quit() , Excel не может чисто закрыть. Рекомендация – вызвать Quit() , установить excel = null , а затем запустить CollectGarbage после короткого ожидания:

 var idTmr = ""; function GetData() { //... excel.Quit(); excel = null; idTmr = window.setInterval("Cleanup();",1); } function Cleanup() { window.clearInterval(idTmr); CollectGarbage(); } 

Исходные источники:

http://support.microsoft.com/kb/266088

Гаджет Windows 7 не освобождает объект ActiveX

  • Макросы Excel с Javascript
  • Функция для последней измененной даты ячейки
  • Получить список имен рабочих таблиц с помощью ActiveX для массива в javaScript
  • Как анализировать данные из HTML и экспортировать в Excel в PHP
  • HTML-таблица в Excel Javascript
  • Сохранить JQuery Совместимо с файлом excel на сервере
  • Javascript для экспорта таблицы html в Excel
  • Как открыть таблицу html в xls при нажатии кнопки
  • Как я могу заблокировать первую строку и первый столбец таблицы при прокрутке, возможно, используя JavaScript и CSS?
  • Откройте HTML-страницу в Excel через Javascript
  • Управление Windchill с помощью VBA
  • Interesting Posts
    Давайте будем гением компьютера.