|
|
|
| Помогите как c помощью скрипта PHP вызывать функцию динамической компановки | |
|
|
|
|
|
|
|
для: vik_away
(15.11.2004 в 14:50)
| | Имеется ввиду вызов библиотек функцией dl()? | |
|
|
|
|
|
|
|
для: cheops
(15.11.2004 в 15:51)
| | Да с помощью скрипта PHP нужно вызывать динамические библиотеки | |
|
|
|
|
|
|
|
для: vik_away
(16.11.2004 в 10:51)
| | Хм... а в библиотеках что? Расширения PHP подгружаются следующим образом:
<?php
dl(php_mysql.dll);
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(16.11.2004 в 11:04)
| | Имеется C++ оболочка с динамическими библиотеками, PHP скрипт должен вызвать функцию из динамической библиотеки, передав ей определенный набор параметров. | |
|
|
|
|
|
|
|
для: vik_away
(16.11.2004 в 22:21)
| | Если честно не знаю. Всегда когда мне нужно было использовать мощь С++, я писал CGI-программы, с которыми клиент работал без посредников (кроме Web-сервера, конечно). Почему нужно взаимодействовать с динамическими библиотеками именно через PHP? | |
|
|
|
|
|
|
|
для: cheops
(16.11.2004 в 22:29)
| | Это как раз и нужно на WEB | |
|
|
|
|
|
|
|
для: cheops
(16.11.2004 в 11:04)
| | Т.е. есть С++ dll экспортирующая одну функцию(может и несколько ф-ий), которая какую-нибудь лабуду на экран печатает и нужно подцепить из PHP скриптом.
Для теста можно любую-произвольную функцию, и не большую dll. | |
|
|
|
|
|
|
|
для: vik_away
(16.11.2004 в 22:44)
| | Для этого нужно расширение ffi
<?php
$windows = new ffi ("[lib='user32.dll'] int MessageBoxA( int handle, char *text, char *caption, int type );" );
echo $windows->MessageBoxA(0, "Message For You", "Hello World", 1);
?>
|
PS Правда насколько я понял, это не пройдёт с Web-сервером (окошки по-крайней мере), придётся запускать system или обратными кавычками из PHP скрипта, через консольный обработчик PHP. | |
|
|
|
|
|
|
|
для: cheops
(17.11.2004 в 08:23)
| | Выходит ошибка
Fatal error: Class 'ffi' not found in C:\Program Files\Apache Group\Apache2\htdocs\test\test_PHP_1.php on line 2 | |
|
|
|
|
|
|
|
для: vik_away
(17.11.2004 в 16:51)
| | В php.ini должно быть включено расширение php_ffi.dll
PS Этот зверь не распрастраняется в стандартном дистрибутиве, а идёт в дополнительных расширениях (файл называется pecl-5.0.2-Win32.zip). | |
|
|
|
|
|
|
|
для: cheops
(17.11.2004 в 08:23)
| | А нельзя сделать не большой скрипт PHP4(для примера), чтобы дергал в user32.dll библиотеку и выбрасывал на WEB страничку текст | |
|
|
|
|
|
|
|
для: vik_away
(19.11.2004 в 14:47)
| | А что вы хотите извлечь из user32.dll? Пример приведённый выше на Web-сервере работать не будет (т.е. запустить окно на сервере работающем под Windows не получится), он работает только при запуске PHP-скриптов через php.exe имя_скрипта.php. | |
|
|
|