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

Вниз

Проблема с OLE акробата   Найти похожие ветки 

 
Е-Моё имя   (2003-09-02 11:34) [0]

делаю
PDDoc:=CreateOleObject("AcroExch.PDDoc");
...
textSel:=PDDoc.CreateTextSelect(Page,Rect);
Numtext:=textSel.GetNumText;
textsel.GetBoundingRect();
грит- метод GetBoundingRect not supported by automation object
((((((((
в доке он есть
импортнул бблиотеку типов, там интерфейс такой:
CAcroPDTextSelect = dispinterface
["{9B4CD3EF-4981-101B-9CA8-9240CE2738AE}"]
function Destroy: Integer; dispid 1;
function GetNumText: Integer; dispid 2;
function GetBoundingRect: IDispatch; dispid 3;
function GetPage: Integer; dispid 4;
function GetText(nTextIndex: Integer): WideString; dispid 5;
end;
все как в доке
почему метод недоступен? ваще не врублюсь...
есть у кого какие мысли на этот счет?


 
sniknik   (2003-09-02 12:01) [1]

может потому что у тебя Acrobat Reader, а метод, и в доке описан от полнофункционального?


 
Е-Моё имя   (2003-09-02 12:07) [2]

не, акробат полноценный


 
Е-Моё имя   (2003-09-02 12:08) [3]

кстати, в
textsel.GetBoundingRect();
скобочки поставил от безысходности ;))


 
Е-Моё имя   (2003-09-02 13:15) [4]

чо ш за беда такая? ((((
в бэйсике та же фигня...


 
Е-Моё имя   (2003-09-02 14:11) [5]

савсем нет идей? ((((


 
Е-Моё имя   (2003-09-02 15:28) [6]

ау


 
Sandman25   (2003-09-02 16:42) [7]

Идея только одна - в textsel находится объект, который не поддерживает
CAcroPDTextSelect.
CreateTextSelect создает именно CAcroPDTextSelect?
Можно попытаться это проверить типа (textsel as CAcroPDTextSelect).GetBoundingRect

PS. А вообще я позднее связывание не люблю, именно из-за таких гадостей.

PPS. Может, там есть еще какой-нибудь интерфейс, у которого таки есть GetNumText, но нет GetBoundingRect


 
Е-Моё имя   (2003-09-02 16:50) [8]

AcroExch.PDDoc
CreateTextSelect
Return Value An AcroExch.PDTextSelect containing the text selection.
Returns NULL if the text selection was not created
successfully.

AcroExch.PDTextSelect
GetBoundingRect
Return Value An AcroExch.Rect corresponding to the text selection’s
bounding rectangle
вроде все правильно

Variant as CAcroPDTextSelect не компилица

неа, нету


 
Sandman25   (2003-09-02 16:59) [9]

GetText и прочие методы интерфейса есть?

Я с Acrobat"ом никогда не работал, но может стоит запросить интерфейс у PDDoc? Что-то типа PDDoc.QueryInterface("{9B4CD3EF-4981-101B-9CA8-9240CE2738AE}")?


 
Е-Моё имя   (2003-09-02 17:06) [10]

>>GetText и прочие методы интерфейса есть?
все есть, кроме одного....косяк какой-то...

PDDoc-вариант, не получается у него интерфейс запросить


 
Е-Моё имя   (2003-09-02 17:07) [11]

variant то есть


 
Sandman25   (2003-09-02 17:08) [12]

Попробую сделать небольшой проект, посмотреть своими глазами.


 
Sandman25   (2003-09-02 17:09) [13]

PDDoc можно привести к типу IUnkown?

IUnknown(PDDoc).QueryInterface?


 
Sandman25   (2003-09-02 17:13) [14]

Упс, сделать не могу, у меня только Reader установлен. Ругается, что неправильная строка в CreateOleObject :(


 
Е-Моё имя   (2003-09-02 17:14) [15]

Sandman25 © (02.09.03 17:08)
попробуй, если акробат есть

через IUnknown QueryInterface не отдает нужного


 
Е-Моё имя   (2003-09-02 17:15) [16]

Sandman25 © (02.09.03 17:13)
((((


 
Sandman25   (2003-09-02 17:18) [17]

Может, Вам стоит попробовать сделать небольшой тестовый проект, в котором использовать раннее связывание? Раз уж все равно type library импортирован? :)


 
Е-Моё имя   (2003-09-02 17:21) [18]

Sandman25 © (02.09.03 17:18)
а там одни диспинтерфейсы
как его использовать, ранее-то? классов нет ни одного


 
Sandman25   (2003-09-02 17:33) [19]

Можете прислать мне tlb файл?


 
Sandman25   (2003-09-02 17:34) [20]

Delphi uses dispinterfaces instead of ID binding to take advantage of early binding on dispatch interfaces.


 
Е-Моё имя   (2003-09-02 17:35) [21]

ушло


 
Е-Моё имя   (2003-09-02 17:36) [22]

Sandman25 © (02.09.03 17:34) [20]
и что из этого вытекает? ;)))


 
Sandman25   (2003-09-02 17:49) [23]

[22] Е-Моё имя © (02.09.03 17:36)

Что при импорте библиотеки Delphi создает описание класса, который может использовать раннее связывание.


 
Sandman25   (2003-09-02 18:04) [24]

Посмотрел я этот tlb... Вроде все правильно делаете. Помочь не могу - у самого знаний не хватает.


 
Е-Моё имя   (2003-09-02 18:29) [25]

мда...чож делать-то...


 
Е-Моё имя   (2003-09-03 15:16) [26]

уп



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

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

Наверх




Память: 0.49 MB
Время: 0.012 c
4-71995
__Ed__
2003-07-17 19:33
2003.09.22
Как отловить момент создания нового окна?


1-71618
Dimich1978
2003-09-09 14:03
2003.09.22
ShellExec


9-71455
Призрак_Коммунизма
2003-02-28 09:51
2003.09.22
Крутим спрайт вокруг своей оси


1-71720
Miwa
2003-09-09 23:02
2003.09.22
Каким образом оптимально организовать


7-71977
Dimaxx
2003-07-09 23:35
2003.09.22
Как получить полный путь к папке профиля текущего пользователя?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский