Есть PHP-cкрипт, который загружает Excel-файл (на сервере), производит кое-какие с ним операции (добавление текста ячейки) и сохраняет снова на сервер (в последствии пользователь может загрузить его к себе на локальный компьютер).
Возможны варианты, когда Excel-файл содержит макросы и не содержит их. Так вот - проблема возникает только в том случае, когда этот Excel-документ содержит макросы. А именно - в этом случае сохранить документ на сервер не удается и выдается сообщение:
E_WARNING: (null)(): Invoke() failed: Exception occurred. Source: Microsoft Excel Description: Документ не сохранен. in C:\\...download_repair.php on line 260
$exApp = new COM("Excel.Application");
# открытие файла xls-файл
$wrkBook = $exApp->Workbooks->Open($locationPathTo);
#Дейстивия
...
#Дейстивия
#Пытаемся сохранить... Именно здесь происходит ошибка, если
#файл содержит макросы...
$wrkBook->SaveAs($file_name_save);
# освободим объект из памяти
$wrkBook->Release();
unset($wrkBook);
$wrkBook = null;
Чем можно вылечить. Админы посоветовали посмотреть в сторону конфигурации dcom и как-то перенастроить security для этого com-объекта.
(Web Сервер - IIS)
PS. До завтра нужно срочно решить проблемку...