Показать сообщение отдельно
Старый 02.02.2007, 11:32   #16  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2480 (88) +++++++++
Регистрация: 20.08.2005
Еще один способ - отключение реагирования на DDE запросы в процессе-обработчике. Перед закрытием Excel параметр восстановить обратно (В обязательном порядке!!! Иначе открыть файл из проводника не получится).
X++:
static void ExcelImportTest(Args _args)
{
    ComExcelDocument_Ru excel = new ComExcelDocument_Ru();
    com doc;
    com app;
    com sheet;
    com range;
    ComVariant var;
    boolean ignore;
    ;
    excel.open("c:\\Temp\\Test.xls", false);

    doc = excel.getComDocument();
    app = doc.application();
    ignore = app.IgnoreRemoteRequests();
    app.IgnoreRemoteRequests(true);

    try
    {
        sheet = app.activesheet();
        range = sheet.range("A1:J1");
        while (true)
            var = range.value();
    }
    catch
    {
        info("catch"); // из обработки вываливаемся по брейку
    }
    app.IgnoreRemoteRequests(ignore);
    app.quit();
}
Минусы - нельзя будет организовать обмен с Excel через DDE.
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: fomenka (1), gl00mie (3), Romsrs (1).