0 / 0 / 0
Регистрация: 02.07.2014
Сообщений: 6
1

Ошибка при создании документа word из php

02.07.2014, 15:49. Показов 1636. Ответов 11
Метки нет (Все метки)

Запускаю такой простенький скрипт:
PHP
1
2
3
4
5
6
7
8
9
10
<?php
 $xWord=new COM("Word.Application") or die ("Ошибка запуска!");
 $xWord->Visible = 0;
 echo "Версия Word {$xWord->Version}";
 $xWord->Documents->Add();
 $xWord->Selection->TypeText("Hello, World!");
 $xWord->ActiveDocument->SaveAs("C:/Temp/test.doc");
 $xWord->Quit();
 unset($xWord);
?>
и вываливается такая ошибка:
Warning: (null)(): Invoke() failed: Ошибка. Source: Microsoft Word Description: Ошибка команды in D:\Apache\Apache2\htdocs\web\test\test_w1.php on line 7

на серваке установлен Apache2, php4, Windows Server 2008R2, MSOffice2003
при этом на моей машине все отрабатывается без проблем
у меня конфигурация: все тоже только Win7x64

перерыл весь инет, не нашел ни одного похожего случая
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.07.2014, 15:49
Ответы с готовыми решениями:

Ошибка при создании документа word
Спасите мой диплом! Имеется веб-приложение взаимодействующее с базой данных размещённой на...

Out of memory при создании документа Word
Добрый день. Есть простейшая программка, запускающая ms word. using System; using...

Убрать пустые строки при создании Word документа
Добрый день. Подскажите, пожалуйста, как убрать пустые строки в документе? Есть шаблон...

Ошибка в создании документа Word: не обнаружена сборка, хотя MS Office установлен
При помощи запроса данные выбираются с БД и записываются в документ ворд. Проблема в следующим:...

11
3 / 3 / 2
Регистрация: 16.05.2014
Сообщений: 80
02.07.2014, 19:12 2
сравните конфигурацию вашего сервера и сервера хостера, потом попросите у техподдержки поправить(или если у вас есть доступ - поправьте сами)
0
0 / 0 / 0
Регистрация: 02.07.2014
Сообщений: 6
03.07.2014, 12:23  [ТС] 3
Дело в том, что web-сервер крутится в локалке, и конфиги apache и php один в один как и на моей машине
0
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
03.07.2014, 14:50 4
А при чем тут конфиги php или сервера? Ошибка у COM. Если и проверять, то версии com интерфейсов на обеих машинах, если вы говорите, что виндюхи разные, то, возможно, что и интерфейсы. А если они и одинаковые и есть ошибка действительно на 7 строчке(saveAs), то посмотрите, если ли на сервере вообще диск C, папка tmp и есть ли права туда писать.
0
0 / 0 / 0
Регистрация: 02.07.2014
Сообщений: 6
03.07.2014, 15:26  [ТС] 5
По списку процессов видно, что winword запускается от имени системы. Диск есть и права на запись (пользователь система) в каталог есть.
Я мало работал с COM, подскажите как проверить их версии.
0
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,121
03.07.2014, 15:32 6
А версии Ворда на компах одинаковые?
0
0 / 0 / 0
Регистрация: 02.07.2014
Сообщений: 6
03.07.2014, 15:42  [ТС] 7
Одинаковые, даже с одного дистриба устанавливались. В том-то и непонятка, что кроме винды, ну и железа конечно, все одинаковое. Сам apache и все сопутствеющее с ним просто скопировано с сервера на мой комп, с сохранением всех путей, стартанут сервис apache и все работает.
0
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,121
03.07.2014, 15:54 8
А у меня всё работает... Ошибок нет и файл сохраняется...
0
0 / 0 / 0
Регистрация: 02.07.2014
Сообщений: 6
03.07.2014, 16:07  [ТС] 9
Вот и у меня на компе все работает, а на серваке ни в какую... И не могу понять в чем трабл и куда копать.

Добавлено через 10 минут
Попробовал аналогичный пример с Excel, выдает ошибку: Невозможно получить свойство SaveAs класса Workbook, а у меня на компе все отрабатывает без проблем.
0
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,121
03.07.2014, 16:22 10
Я когда первый раз этот код запустил у меня вышла ошибка и как раз на строке под номером 7.
У меня небыло папки temp.
Я в начало скрипта написал
PHP
1
@mkdir("C:/Temp");
и всё запустилось. Попробуйте...
Вот кстати мой сервак http://alexsamos.no-ip.biz/COM_Word/

Добавлено через 2 минуты

Не по теме:

Я знаю твой IP :D 77.40.57.139 Йошкар-Ола :D

0
0 / 0 / 0
Регистрация: 02.07.2014
Сообщений: 6
03.07.2014, 20:31  [ТС] 11
Добавил, таже ерунда. Менял название папки и диск пробовал другой, папку создает, но вываливается с той же ошибкой.

Добавлено через 4 часа 0 минут
и еще не понятно, почему если я ставлю в скрипте $xWord->Visible = 1, окно ворда не появляется.
0
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,121
03.07.2014, 20:41 12
и еще не понятно, почему если я ставлю в скрипте $xWord->Visible = 1, окно ворда не появляется.
Если закомментировать / убрать две последние строки - окно появится (у меня появляется)...
PHP
1
2
3
4
5
6
7
8
9
10
11
<?php
 $xWord=new COM("Word.Application") or die ("Ошибка запуска!");
// $xWord->Visible = 0;
 $xWord->Visible = 1;
 echo "Версия Word {$xWord->Version}";
 $xWord->Documents->Add();
 $xWord->Selection->TypeText("Hello, World!");
 $xWord->ActiveDocument->SaveAs("C:/Temp/test.doc");
// $xWord->Quit();
// unset($xWord);
?>
Иначе окно просто не успевает показаться, а Word уже выключается...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.07.2014, 20:41
Помогаю со студенческими работами здесь

Удалить память при создании документа word из vba excel
Здравствуйте. Я создаю динамически документ ворд через приложение vba excel, далее заполняю его...

При создании нового документа Word в документе уже что то есть
Разбирался с VBA Word. Не знаю, что мог такого сделать, но теперь каждый раз при создании нового...

Ошибка при создании word.document: Microsoft Word (0x800A16C1) Object has been deleted.
Фрагмент кода: Set objDoc = Server.CreateObject('Word.Document')...

Word (2007, 2010): как изменить размер шрифта при создании/изменении стиля таблицы готового документа
В ГОТОВОМ документе мне нужно изменить или создать стиль какой-то таблицы, например, задав разный...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru