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

Вниз

Как из OLE объекта вытащить имена его методов ?   Найти похожие ветки 

 
ANB ©   (2006-05-05 19:24) [0]

По справке я не понял даже как GetIDsOfNames пользоваться.
Но она уже требует на вход имя метода. А как эти имена достать ?
В IDispath всего то 4 функции, но понятна только GetTypeInfoCount.


 
jack128 ©   (2006-05-05 19:40) [1]

ANB ©   (05.05.06 19:24)
А как эти имена достать ?

я так понял дока и tlb файлы - в расчет не принимаются?  Тогда через эти два метода:

function GetTypeInfoCount(out Count: Integer): HResult; stdcall;
function GetTypeInfo(Index, LocaleID: Integer; out TypeInfo): HResult; stdcall;

Только никто не обязан эти методы реальзовывать ;-) А так на сайте app вроде были статейки Тенцера, где этот момент расмотрен..


 
ANB ©   (2006-05-05 19:43) [2]


> я так понял дока и tlb файлы - в расчет не принимаются?

Взять бы еще где эту доку.
Если точнее - мне нужно поработать с объектом Document браузера (хотя бы и IE).
Если есть готовая дока по его методам, буду рад за ссылку.


> А так на сайте app вроде были статейки Тенцера

Это где ?


 
Sergey Masloff   (2006-05-05 19:47) [3]

ANB ©   (05.05.06 19:43) [2]
>Если точнее - мне нужно поработать с объектом Document браузера
А MSDN что не помогает?


 
Sergey Masloff   (2006-05-05 19:48) [4]

Просто но получишь ты список имен методов. Там у некоторых по полтора десятка параметров. И что с ними делать потом?


 
jack128 ©   (2006-05-05 19:57) [5]

Где то здесь.  http://podgoretsky.com/ddp.html

Но тебе это не поможет, см Сергей Маслов.


 
ANB ©   (2006-05-05 20:02) [6]


> А MSDN что не помогает?

Я им пользоваться не умею :( выдает гору мусора, в которой ничего не понятно. А там эта тема есть (про работу с IE как OLE объектом) ? Тогда завтра полезу.


 
Sergey Masloff   (2006-05-05 20:24) [7]

ANB ©   (05.05.06 20:02) [6]
Там на эту тему МОРЕ в том числе СЕРИИ статей буквально от и до.
А что сделать-то надо?


 
jack128 ©   (2006-05-05 20:27) [8]

угу.  http://podgoretsky.com/ftp/Docs/Delphi/Tenser/TenserAll.zip - 9.zip  Там кратенько описано, как использовать  этот Document , ну и оттуда же поймешь, где искать конкретную информацию в msdn


 
Sergey Masloff   (2006-05-05 20:42) [9]

Accessing the Internet Explorer Object Model
What"s New in Internet Explorer 5.5 (Script)
Например это названия топиков там кое-что есть


 
AbrosimovA ©   (2006-05-06 08:11) [10]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ComObj, AxCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   ListBox1: TListBox;
   Edit1: TEdit;
   Label1: TLabel;
   Label3: TLabel;
   Edit3: TEdit;
   Label4: TLabel;
   procedure Button1Click(Sender: TObject);
   procedure FormClose(Sender: TObject; var Action: TCloseAction);
 private
  ServerName: string[255];
 public
 end;

var
 Form1: TForm1;
 Srv,Obj: IDispatch;
 ID,DID: cardinal;
 Name: string;

implementation

{$R *.dfm}
uses ActiveX;

Function GetID(Dispatch: IDispatch; Name:String; var DID:Cardinal):Integer;
var
 P: WideString;
 NameRefs: array[0..32 - 1] of PWideChar;
begin
 P:=Name;
 NameRefs[0]:=PWideChar(P);
 Result:=Dispatch.GetIDsOfNames(GUID_NULL, @NameRefs, 1,
   LOCALE_SYSTEM_DEFAULT, @DID);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 ListBox1.Clear;
 Edit3.Clear;
 ServerName:=Edit1.Text;
 try
  Srv:=CreateOleObject(ServerName);
 except
  Exit;
 end;
 EnumDispatchProperties(Srv, GUID_NULL, VT_EMPTY, ListBox1.Items);
 ID:=GetID(Srv, Name, DID);
 Edit3.Text:=IntToStr(ID);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Srv:=nil;
end;

end.


 
wal ©   (2006-05-06 09:02) [11]


> А там эта тема есть (про работу с IE как OLE объектом) ?

http://msdn.microsoft.com/workshop/browser/webbrowser/reference/objects/webbrowser.asp

http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_document.asp


 
evvcom ©   (2006-05-06 09:17) [12]


> Я им пользоваться не умею :(

Да, с непривычки очень тяжело. А через интернет, если не халява, то еще и дорого. Сразу не найдешь, что нужно. Лучше установить на винт эту огромную справку от мелких и мягких. Последний MSDN какой видел был на DVD вместе с новым Visual Studio. Дома у меня версия еще от 2004 года 1,5 Гига занимает. :o) А там ищещь объектную модель IE.
Еще может помочь поиск по форумам WEB-программистов или конкретные скрипты с любых сайтов, где ты заметишь какое-нибудь интересное поведение броузера. В том же DHTML, JavaScript, VBScript используется та же объектная модель броузера.


 
Sergey Masloff   (2006-05-06 09:35) [13]

evvcom ©   (06.05.06 09:17) [12]
У меня например 5 MSDN ов одновременно стоит
2001
2003
2005
2003 for VS.NET2003
2005 for VS.NET2005
Причем различия реальные в них ;-) Правда 2001 практически ен пользуюсь уже. А так уже второй шкаф скоро придется начинать под диски с MSDN


 
evvcom ©   (2006-05-06 09:44) [14]

А нафиг столько? Последний ставишь и делов. В нем же различия между старыми версиями продуктов (тот же IE) указаны. В моем MSDN все собрано (ну что было выпущено MS на тот момент) и офис, и IE, и VS (Си, басик, фокс) и WinAPI. Да чего там только нет! И даже .NET.


 
Sergey Masloff   (2006-05-06 09:49) [15]

evvcom ©   (06.05.06 09:44) [14]
Не совсем так. Справка - да, практически все есть. Но
1) С VS 6.0 интегрируется только 2001
2) Если по собственно справке в новых версиях все есть то статьи и примеры отличаются. Так что у меня алгоритм поиска по нисходящей - сначала в самой свежей потом вниз. И несколько раз ТАК выручало что теперь вопрос просто не стоит.


 
ANB ©   (2006-05-06 17:54) [16]


> А что сделать-то надо?

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

Хотя я как раз нашел ветки с похожим вопросом и в ней ссылку на раздел в MSDN. Сижу - разбираюсь.
ЗЫ. Дома есть MSDN 2004. А на работе пока мне новый комп не купят - он у меня просто не влезет. Правда инет халаявый.



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

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

Наверх




Память: 0.49 MB
Время: 0.013 c
2-1146570773
jenya_rus
2006-05-02 15:52
2006.05.21
Побайтная загрузка файла...


2-1145299365
Glex
2006-04-17 22:42
2006.05.21
Вопроса по record


2-1146475009
Максо
2006-05-01 13:16
2006.05.21
Image


6-1138373276
BSimon
2006-01-27 17:47
2006.05.21
Вопрос по TidHTTP (Indy)


2-1146402413
Ezorcist
2006-04-30 17:06
2006.05.21
Узнать разрешение экрана





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