Range.Find.Execute -> Слишком длинный строковый параметр
От: YUKLA  
Дата: 06.12.04 23:07
Оценка:
Уважаемые Господа!

Есть функция:

Procedure FindAndReplaceInWordDoc(WD:TWordDocument;Const oStr,nStr:string);
Var
 oldString, newString, Replace:OleVariant;
Begin
//Замена всех строк oStr на строку nStr в открытом документе Word2000
 Replace  :=wdReplaceAll;   oldString:=oStr;         newString:=nStr;
 WD.Range.Find.Execute(oldString, EmptyParam, EmptyParam, EmptyParam,
                              EmptyParam, EmptyParam, EmptyParam, EmptyParam,
                               EmptyParam, newString, Replace,EmptyParam,EmptyParam,EmptyParam,EmptyParam);
End;


Она используется ШИРОКО в коде нескольких программ. Происходит замена некоторых строк из шаблона (например @Up ) на строки, сформированные программой.
Среда — Delphi 5 + SP#1, Word 2000 + SP#3, используются компоненты те, что для Office 2000 (dcloffice2k50.bpl).

В случае если длина строки больше 255 символов получаем надпись "Слишком длинный строковый параметр". Что делать?

Не подскажите ли, как обойти данное ограничение?

С уважением.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.