Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.03.27;
Скачать: [xml.tar.bz2];

Вниз

COM сервера MS Office,   Найти похожие ветки 

 
asafr   (2003-03-13 18:29) [0]

Работаю с Word97 и Дельфи (закладка "Servers").
Произвожу замену переменных в документе. Все отлично работает, если замену произвести один раз... Если после проведения операции замены открыть WordApplication1.Visible:=True в коде программы или просто открыть Word, например из проводника, а затем закрыть Word, то второй раз программа замены работать не будет. При самом первом обращении в коде к Word (У меня это WordApplication1.Documents.Open(.....)) выдается ошибка:"Сервер RPC недоступен"...
Если не открывать Word, не просматривать его и, произведя изменения, сразу же делать WordDocument1.Close, то операцию замены можно делать сколько угодно раз...
Но мне нужен просмотр изменений... А для этого надо открыть Word... А открыв его, я получаю "Сервер RPC недоступен" при повторном выполнении операции... Цикл замыкается...
Подскажите, что надо сделать для ликвидации этой ошибки?
Заранее всем благодарен...


 
Smashich   (2003-03-13 18:31) [1]

WordApp.Disconnect


 
asafr   (2003-03-13 18:49) [2]

Smashich ©,
Нет... Не получается


 
Smashich   (2003-03-13 18:57) [3]

WordAp:=TWordApplication.Create(nil);
try
WordAp.Options.CheckSpellingAsYouType:=false;
WordAp.Options.CheckGrammarAsYouType:=false;
WordAp.ConnectKind:=ckNewInstance;
try
WordAp.Connect;
except
end;
WordAp.Visible:=false;
WordParam:=Project.TemplDir + Template + ".Dot";//??? ???????...
WordAp.Documents.Add(WordParam,EmptyParam,EmptyParam,EmptyParam);
WordAp.Options.ReplaceSelection:=true;
WordParam2:="Group";
WordParam:=1;
FieldName:=WordAp.ActiveDocument.Bookmarks.Item(WordParam2).Range.Bookmarks.Item(wordParam).Name;
WordAp.ActiveDocument.Bookmarks.Item(WordParam2).Range.Bookmarks.Item(wordParam).Select;
WordAp.Selection.TypeText("O ???!");
WordParam:="O TAK.DOC";
WordAp.ActiveDocument.SaveAs(WordParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);
WordAp.Visible:=true;
WordAp.Activate;
except
on E:Exception do
begin
ShowMessage("?????? ?????? ? Microsoft Word!"#13#10""" + E.Message+""");
WordParam:=false;
WordAp.ActiveDocument.Close(WordParam, EmptyParam, EmptyParam);
WordAp.Disconnect;
end;
end;{}
WordAp.Free;


 
Smashich   (2003-03-13 18:58) [4]

в коде артиефакты есть - не обращай внимания - пропустил при вырезании


 
asafr   (2003-03-14 11:01) [5]

Да... Что то у меня, похоже, все гораздо серьезнее... Вообщем, у меня почти все так же (за некоторым исключением), но ошибка не проходит.....
За ответ - спасибо большое.....


 
asafr   (2003-03-14 17:32) [6]

Ничего серьезного: просто подумать получше надо мне было... Просто перед WordApplication1.Documents.Open(.....)) добавить

WordApplication1:=TWordApplication.Create(Form1);
WordDocument1:=TWordDocument.Create(WordApplication1);



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.03.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.013 c
6-88124
3d[Power]
2003-01-23 08:04
2003.03.27
Sockets, winsock.pas


14-88198
NetBreaker666
2003-03-11 17:15
2003.03.27
Так, кстати, никто здесь USB не программировал ?


14-88209
War
2003-03-11 10:37
2003.03.27
Война за нефть.


1-87984
Arkady
2003-03-18 10:38
2003.03.27
Объявление переменных и нулевое значение


1-88057
SunnyTm
2003-03-14 21:45
2003.03.27
Поиск каталогов по FindFirst





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский