Доступ к MS Word через OLE из веб-сервиса
От: Alex4004  
Дата: 12.10.11 11:24
Оценка:
Из веб-сервиса (cgi) вызывается такой код:

...
var
  WordApp:OleVariant;
  ...
begin
     ...

      CoInitialize(nil);

      WordApp:=CreateOleObject('Word.Application');
      WriteToLogFile('1');
      try
        WordApp.DisplayAlerts:=false;
        WriteToLogFile('2');
        WordApp.Documents.add;    //тут вылетает exception
        WriteToLogFile('3');

        ...

      except on E: Exception do
        begin
          WriteToLogFile(E.Message);
          sf:=wdDoNotSaveChanges;
          WordApp.Quit(sf);
          WordApp:=Unassigned;
          CoUninitialize;
        end;
      end;

     ...


В логе появляется следующее:

1
2
Ошибка в Word


Если вызывать этот же код не из веб-сервиса, то все работает.

Пробовал достучаться к ворду через компонент TWordDocument — на строчке добавления документа (или открытия существующего, без разницы) сервис просто зависает.

P.S. Я не знаток Delphi, но информативность сообщения об ошибке меня больше всего напрягает в этой истории Может я что-то не так делаю?
Re: Доступ к MS Word через OLE из веб-сервиса
От: bnk СССР http://unmanagedvisio.com/
Дата: 12.10.11 11:26
Оценка:
Здравствуйте, Alex4004, Вы писали:

A> Может я что-то не так делаю?


http://support.microsoft.com/kb/257757/ru
Re[2]: Доступ к MS Word через OLE из веб-сервиса
От: Alex4004  
Дата: 12.10.11 12:01
Оценка:
Здравствуйте, bnk, Вы писали:

bnk>http://support.microsoft.com/kb/257757/ru


Спасибо, не знал, что все настолько плохо...

Т.е. рекомендуете прекратить все попытки решить данную задачу средствами MS Office? Тогда, может быть, что-нибудь проверенное из сторонних разработок порекомендуете?
Re[3]: Доступ к MS Word через OLE из веб-сервиса
От: bnk СССР http://unmanagedvisio.com/
Дата: 12.10.11 14:12
Оценка:
Здравствуйте, Alex4004, Вы писали:

A>Т.е. рекомендуете прекратить все попытки решить данную задачу средствами MS Office? Тогда, может быть, что-нибудь проверенное из сторонних разработок порекомендуете?


А в чем задача-то состоит?
Re[4]: Доступ к MS Word через OLE из веб-сервиса
От: Аноним  
Дата: 13.10.11 07:17
Оценка:
Есть несколько приложений на delphi, выполняющих различные части одной задачи. Среди них одно — генератор отчетов. Задача состоит в том, чтобы предоставить доступ к данному функционалу через интернет. Т.е. пишется веб-интерфейс, а все приложения переписываются под веб-сервисы. Все шло нормально, но случилась заминка на программе генератора отчетов, которая использует MS Word.

Здравствуйте, bnk, Вы писали:

bnk>А в чем задача-то состоит?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.