Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Поиск в Word'е - ошибка - Заглушке переданы неправильные данные [D7, WinXP]


IGo ©   (2006-11-20 16:04:00) 

Добрый день!

Осуществляю в Delphi поиск в документе Word следующим образом :
var
SearchText : OLEVariant;
...    WordApplication1.Selection.Find.Execute(SearchText,EmptyParam,EmptyParam,EmptyPa ram,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam ,EmptyParam,EmptyParam,EmptyParam,EmptyParam);

Но вместо поиска появляется ошибка "Заглушке переданы неправильные данные" с укзкнием на эту строчку. Остальные действия с word'ом работают.
Как быть?
Спасибо


IGo   (2006-11-21 13:33:00) [1]

Я пробовал это с самого начала. И макросы в ворде смотрел. Но ничего не помогает.
Буду искать другие варианты решения.
Спасибо


Shirson   (2006-11-21 09:56:00) [2]

Ненужно искать описание поиска в Word через Delphi. Нужно найти в директории офиса chm файл с хелпом по VBA и посмотреть там.
У меня MSW2k, VBAWRD9.CHM

With Selection.Find
   .Forward = True
   .Wrap = wdFindStop
   .Text = "Hello"
   .Execute
End With


WordApplication1.Selection.Find.Forward:=True;
WordApplication1.Selection.Find.Text:='Hello';
WordApplication1.Selection.Find.Execute;


Что-то вроде того. Правда, я не пользуюсь для этого компонентам.


IGo   (2006-11-20 16:44:00) [3]

Нет, не уверен. Но толкового описания поиска в Word'е через дельфи я не нашёл. Только примеры с этой процедурой, но там она использовалась для поиска и замены. Соответственно я убрал параметры замены и всё. Я пробовал играть с другими параметрами, но результат тот же.


clickmaker   (2006-11-20 16:41:00) [4]


> [7] IGo   (20.11.06 16:39)
> Ошибся : не word2002, а wordXP

это синонимы.
Значит, не нравится ему EmptyParam. Уверен, что обязателен только первый?


IGo   (2006-11-20 16:39:00) [5]

Ошибся : не word2002, а wordXP


IGo   (2006-11-20 16:38:00) [6]

подцепил word2002. Параметры действительно немного другие. Но результат не изменился.


clickmaker   (2006-11-20 16:30:00) [7]


> [4] IGo   (20.11.06 16:28)
> unit - word2000
> офис - 2002
>
> Т.е. если я использую unit word2000

я тебе так сходу не могу сказать. Надо сравнивать методы. Может параметр добавили или убрали, может тип поменяли.
Попробуй сымпортировать библиотеку типов от 2002 офиса и сравни с 2000


IGo   (2006-11-20 16:28:00) [8]

unit - word2000
офис - 2002

Т.е. если я использую unit word2000, а на пк офис другой, то я с ним не смогу работать из Delphi?


clickmaker   (2006-11-20 16:25:00) [9]


> [2] IGo   (20.11.06 16:22)

Unit от какого офиса? И фактически с каким офисом работаешь?


IGo   (2006-11-20 16:22:00) [10]

to clickmaker

> такое бывает при несоответствии версии клиентской библиотеки
> типов (tlb) версии сервера


и что можно сделать?


clickmaker   (2006-11-20 16:14:00) [11]

такое бывает при несоответствии версии клиентской библиотеки типов (tlb) версии сервера


Наверх

Титульная страница Поиск, карта сайта Написать письмо