Название: Узнать, есть ли COM объект Отправлено: Zmey от Февраль 09, 2006, 20:43 Как определить, есть ли в системе COM объект {16aa0b9e-79ac-43b5-86ca-ab961fbeed5f} ?
Название: Узнать, есть ли COM объект Отправлено: Makc от Февраль 10, 2006, 08:52 в 4.0.1
QAxObject ax; ax.setControl("{16aa0b9e-79ac-43b5-86ca-ab961fbeed5f}"); if(ax.isNull()) //нет объекта else //есть объект Название: Узнать, есть ли COM объект Отправлено: Zmey от Февраль 10, 2006, 12:14 Не работает. ax.isNull() всегда возращает true. Пробовал и ax.setControl("{16aa0b9e-79ac-43b5-86ca-ab961fbeed5f}");, и ax.setControl("Photoshop.Application");
Название: Узнать, есть ли COM объект Отправлено: Dimchansky от Февраль 10, 2006, 18:10 Цитата: "Zmey" Не работает. ax.isNull() всегда возращает true. Пробовал и ax.setControl("{16aa0b9e-79ac-43b5-86ca-ab961fbeed5f}");, и ax.setControl("Photoshop.Application"); Код: // main.cpp файл проекта: Код: TEMPLATE = app Так работает? Вместо Excel.Application впишите Excel.IsTheBest. Изменился ответ программы? Название: Узнать, есть ли COM объект Отправлено: Zmey от Февраль 11, 2006, 16:17 Спасибо. Понял, в чем ошибся. Я писал OleInitialize(NULL); после QAxObject ax;
Название: Узнать, есть ли COM объект Отправлено: Dimchansky от Февраль 11, 2006, 16:46 Цитата: "Zmey" Спасибо. Понял, в чем ошибся. Я писал OleInitialize(NULL); после QAxObject ax; Не за что. :) Код я выдрал из dumpdoc. Все ответы в исходниках. :wink: Название: Узнать, есть ли COM объект Отправлено: Zmey от Февраль 11, 2006, 18:36 А можно сделать так, чтобы этот код не загружал Excel?
Название: Узнать, есть ли COM объект Отправлено: Dimchansky от Февраль 11, 2006, 20:16 Цитата: "Zmey" А можно сделать так, чтобы этот код не загружал Excel? В смысле не загружал? А разве при запуске этого кода запускается и окно Excell? Не должно этого происходить. Ведь при зауске программы : Код: dumpdoc Excell.Application выводится документация по методам Excell.Application, a сам Excell не запускается. Или ты имеешь ввиду, чтобы в системе даже не создавалось невидимых объектов Excell.Application (хотя я в этом не уверен)? Тогда может имеет смыл посмотреть на ключи в реестре, как это делается в примере Qt\4.1.0\tools\activeqt\testcon? Название: Узнать, есть ли COM объект Отправлено: Zmey от Февраль 11, 2006, 20:42 Насчет Excel не знаю, но Photoshop CS2, InDesign CS2 загружаются, появляется окно. Illustrator CS2 загружается, но окна нет. А грузятся они долго. Сделал через чтение из реестра, если не получится через QAxObject или типа того, то придется оставить так.
|