Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Функция Getobject не видит открытый экземпляр приложения
 
Dinoxromniy, конкретно в моем случае я кажется выяснил, что это за скрытый экземпляр.
Поначалу подумал, что это из-за того, что эксель открыл файл в защищенном режиме, а после закрытия не выгрузился. Но после перезагрузки с открытием другого файла проблема снова появилась. В общем выяснил почти со 100% уверенностью, что источник проблемы крылся в проводнике. У него есть т.н. "область просмотра", которую можно включить в любой папке, эта область позволяет просматривать содержимое файлов. При выделении файла она дергает соответствующее приложение и отображает его красиво, как в приложении. И вот после такого просмотра акад в очередной раз зацепил пустой экземпляр без документов (в панели задач его нет), полез в диспетчер задач и вот он, висит. Завершил процесс, открыл нужный документ и акад успешно увидел этот единственный нужный экземпляр. Если у Вас проблемы выборочно на разных компьютерах, посмотрите, не включена ли там эта область просмотра. Еще она может быть включена в стандартном окне открытия файла, и тоже может вести себя так же.
Функция Getobject не видит открытый экземпляр приложения
 
Dinoxromniy, добрый день!
Вы нашли решение? После установки 2021 офиса столкнулся с той же проблемой.
Всегда из акада связывался с экселем через GetObject(, "Excel.Application"). И далее обычно работал с активной книгой/листом.
Как я понимаю, библиотека объектов та же, что и в предыдущих версиях, т.к. в Reference ничего кроме "Microsoft Excel 16.0 Object Library" системой не предоставляется.
Правда у меня ссылка на экземпляр уже открытого приложения в автокаде создается (его видно в окне Locals), т.е. сам объект приложения присваивается, но при этом все переменные, касающиеся открытого содержимого (ActiveWindow, ActiveWorkbook ActiveSheet и т.д.) равны Nothing, некоторые коллекции (sheets, cells) равны <Application-defined or object-defined error>, коллекции Windows и Workbooks пустые (count = 0).
Как будто после присвоения объекта автокад видит только оболочку, либо по GetObject изначально создает новый экземпляр (но, судя по хэлпу, это исключено функция getobject либо создает ссылку на открытый экземпляр, либо выдает ошибку).
Изменено: Gr.Om - 02.05.2024 21:20:14
Страницы: 1
Наверх