Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Продвижение и оптимизация сайтов > AxtiveX


Автор: proger 15.1.2006, 11:48
Хочу на дельфи написать свои ActiveX(с ним нет проблемм, работает) и потом в PHP вызвать его, но не знаю как его устанавить на клиенти и вызвать из него методы!

Автор: Mal Hack 15.1.2006, 12:25
К ПХП отнощения не имеет. AciveX вызывается из HTML.

Автор: proger 15.1.2006, 12:32
вызвать из него методы! - ЭТО ПХП!

Автор: Mal Hack 15.1.2006, 12:36
На сколько я помню, AX работает у клиента, а не на сервере.
PHP с этим чудом не работает точно.

Автор: proger 15.1.2006, 13:16
вот смотри:
Код

$ax = new COM("word.application");
$ax->visible=1;

Добавлено @ 13:18
И почемуто он запускается на стороне сервера а не на клиенте!

Автор: Mal Hack 15.1.2006, 15:14
COM это КОМ, ActiveX, тут малость не причем.
com_invoke

Автор: proger 16.1.2006, 09:46
$ax = new COM("word.application");
$ax->visible=1;
А это правильный способ?

Автор: proger 16.1.2006, 15:14
Код

$word = new COM("word.application") or die("Unable to instantiate Word");
echo "Loaded Word, version {$word->Version}\n";
//bring it to front
$word->Visible = 1;

//open an empty document
$word->Documents->Add();

//do some weird stuff
$word->Selection->TypeText("This is a test...");
$word->Documents[1]->SaveAs("Useless test.doc");

//closing word
$word->Quit();

//free the object
$word = null;
// starting word
Когда я запускаю у клиента данную страницу, ворд запускается на сервере а не на клиенте, почему???

Автор: Sun 16.1.2006, 15:26
Цитата(proger @ 16.1.2006, 12:14 Найти цитируемый пост)

Когда я запускаю у клиента данную страницу, ворд запускается на сервере а не на клиенте, почему???

Потому что код PHP интерпретируется на стороне сервера. PHP поддерживает OLE Automation на платформе Windows. Если ты хочешь выполнение ActiveX на клиенте, тебе нужно использовать не PHP а JScript или VBScript встроенный в твою html-страничку либо html-тэг OBJECT.

Автор: proger 19.1.2006, 09:24
Sun
А можно пример как выполнить на стороне клиента?

Автор: Sun 19.1.2006, 12:05
Пример вставки AcitveX (Quick Time ActiveX control) в страницу при помощи тэга OBJECT
Код

<OBJECT CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" WIDTH="160"HEIGHT="144"
CODEBASE="http://www.apple.com/qtactivex/qtplugin.cab"> 
<PARAM name="SRC" VALUE="sample.mov"> 
<PARAM name="AUTOPLAY" VALUE="true"> 
<PARAM name="CONTROLLER" VALUE="false"> 
<EMBED SRC="sample.mov" WIDTH="160" HEIGHT="144" AUTOPLAY="true" CONTROLLER="false" PLUGINSPAGE="http://www.apple.com/quicktime/download/"> 
</EMBED><OBJECT> 


Пример запуска OLE Automation из VBScript
http://www.asppainter.com/methods/regionsample.html

Этот скрипт также можно вмонтировать в вэб-страницу при помощи тэга SCRIPT, но для его запуска в настройках IE должен быть разрешен запуск ActiveX. При запуске скрипта IE выдает предупреждение.

Еще про ActiveX читай тут
http://www.codenet.ru/progr/other/activex.php

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)