AkelPad.ConnectObject (+ActiveX)

Подсоединиться к событиям объекта.

ConnectObject(oEventSource, pPrefix[, vIID])

Параметры

oEventSourceОбъект, к которому необходимо подсоединиться.
pPrefixПрефикс для функций, куда будут приходить события.
vIIDIID интерфейса событий.
- vIID может быть строкой в формате "{00000000-0000-0000-0000-000000000000}".
- vIID может быть указателем. Пример:
var lpDIID_DWebBrowserEvents2=AkelPad.MemAlloc(16 /*sizeof(IID)*/);
oSys.Call("ole32::IIDFromString", "{34A715A0-6587-11D0-924A-0020AFC7AC4D}", lpDIID_DWebBrowserEvents2);
- Если vIID не указан, подсоединиться ко всем возможным интерфейсам объекта.

Возвращаемое значение


Число. Количество интерфейсов, к которым успешно удалось подключиться.

Пример

var oIE = new ActiveXObject("InternetExplorer.Application");
var oSys = AkelPad.SystemFunction();

if (AkelPad.ConnectObject(oIE, "IE_", "{34A715A0-6587-11D0-924A-0020AFC7AC4D}" /*DIID_DWebBrowserEvents2*/ )) {
oIE.Visible = true;
    oIE.Navigate("http://akelpad.sourceforge.net/");
    AkelPad.WindowGetMessage();
    AkelPad.DisconnectObject(oIE);
}
oIE.Quit();

function IE_DocumentComplete(pDisp, URL) {
    AkelPad.MessageBox(oIE.HWND, URL, WScript.ScriptName, 0 /*MB_OK*/ );
    oSys.Call("user32::PostQuitMessage", 0);
}