Показать сообщение отдельно
Старый 24.03.2017, 16:36   #1  
Pandasama is offline
Pandasama
Участник
 
459 / 138 (5) +++++
Регистрация: 11.08.2014
Адрес: Барнаул
Завершить процесс Excel 2013
Товарищи, после некоторых действий с Excel 2013 - не могу избавиться от висящего процесса.

Например, вот такой код (чуть модифицированный ComExcelDocument_RU::excelVersion() ) оставляет после себя висеть процесс.
X++:
static void Job25(Args _args)
{
    ComExcelDocument_RU excelDocument;
    COM                 comDocument;
    COM                 comApplication;
    real                excelVersion;

    try
    {
        excelDocument = ComExcelDocument_RU::construct();
        excelDocument.newFile('', false);
        comDocument = excelDocument.getComDocument();
        if (comDocument)
        {
            comApplication = comDocument.application();
            if (comApplication)
            {
                excelVersion = str2num(comApplication.version());
            }
        }
        //excelDocument.closeDocument();
        excelDocument.quitApplication(true);
    }
    catch (Exception::Internal)
    {
        excelDocument.closeDocument();
        if (comDocument == null || comApplication == null)
        {
            throw error("@SYS98748");
        }
    }

    info(strFmt("%1", excelVersion));
}
На Ax2009 + Офис 2010 - процесс после выполнения кода не остается.
На Ax2009, Ax2012, Ax2012R3 + Офис 2013 - процесс после выполнения кода остается.

Может быть кто-то сталкивался и знает как лечить?