導航:首頁 > 編程語言 > phpdll

phpdll

發布時間:2022-01-14 09:17:57

1. 如何處理php調用外部DLL

就是修改服務端axis bug,首先想到的就是自定義一個servlet然後繼承AxisServlet,改寫getSoapAction 代碼,但是會發現getSoapAction是private的,所以只能整個AxisServlet代碼修改getSoapAction部分(只需把寫AxisFault部分代碼放在最後面,注意上面中的if語句中,soapAction.length()==0 要改一下,因為如果soapAction為空這樣會拋出空指針異常的。),然後修改web.xml中配置的servlet為自定義的類路徑。

2. 如何在PHP中調用自己編寫的DLL庫中的函數介面

在 DLL工程中的 cpp中函數定義如下:

extern "C" _declspec (dllexport )
int fun(int a, char b)
{
return a + b;
}
第一種方法 隱式調用:

調用的 DLL的主工程的 文件中代碼如下:

// 先把 lib 鏈接進來
#pragma comment (lib , "..//Debug//FuncDll.lib" )

// 外部聲明的 add 函數
extern "C" _declspec (dllimport )
int fun(int a, char b);

int TestDll()
{
// 直接調用 fun函數
printf("%d/n" , fun(5, 2));

return 0;
}
第二種方法 顯式調用:
調用的 DLL的主工程的 文件中代碼如下:

int TestDLL()
{
HMODULE hMole = NULL;
typedef int (*Func)(int a, int b);

// 動態載入 DLL 文件
hMole = LoadLibrary(_TEXT("..//Debug//FuncDll.dll" ));

// 獲取 fun函數地址
Func fAdd = (Func)GetProcAddress(hMole, "fun" );

// 使用函數指針
printf("%d/n" , fAdd(3, 1));

// 釋放指針
FreeLibrary(hMole);

return 0;
}

3. PHP如何調用.dll文件呀

如果你確定你的擴展*.dll能在php
正確使用的話,首先需要把這個.dll文件復制到php的安裝目錄\ext文件夾下,然後修改php.ini文件,在
;;;;;;;;;;;;;;;;;;;;;;
;
Dynamic
Extensions
;
;;;;;;;;;;;;;;;;;;;;;;
配置節上,按照格式extension
=
a.dll添加該dll文件的引用,然後重新啟動承載php的web伺服器即可。

4. 怎樣把PHP代碼編譯成DLL文件

在大型機數據集中每一行就代表一條記錄
那麼就可以不用分別讀取,並且我還真的沒有試過分別讀取
先假定你的輸入文件記錄長度為80
你可以直接把輸入文件定義為
FD FILE1
........
.
01 INPUT-REC PIC X(80).
這樣讀取進來
然後就可以通過
UNSTRING INPUT-REC
DELIMITED BY SPACE
INTO 變數。
這樣來實現讀取。
而第一行為了轉化為數字,可用FUNCTION NUMVAL(變數)
這樣把字元形式轉化為數字
這樣就可可以了
如果還不懂就問吧

補充:數據集長度的大小不確定
在大型機裡面數據集是以記錄為單位來存放的,一行就是一個記錄
如果是定長,比如80,那麼在FD 下INPUT-REC PIC X(80)
變長要復雜點
那麼不管一行是多少,比如記錄長度是80,格式是fb
那麼第一行是9(5),就是存放的5個數字
比如 12345----------數字後面就是空格
其他行是X(6)那麼
比如ABCDEG------------字元後面也是空格
我們把輸入文件對應的記錄定義為
INPUT-REC PIC X(80)
那麼我們想要取得前面的東西就可以
UNSTRING INPUT-REC
DELIMITED BY SPACE
INTO 變數
要不你把題目描述具體些,寫出來,我來把代碼寫一下

5. php調用dll文件裡面的函數

1、首先從www.php.net網站上下載php源碼,此處以php-5.2.17版本為例,下載後解壓至E:盤根目錄下(目錄可以自己隨意定)。
2、下載安裝VC++ 6.0,因為PHP源碼是利用6.0版本寫的,所以使用這個版本編譯不會出現意外,別的版本未測試。
3、把VC++ 6.0安裝目錄中的 Microsoft Visual Studio\Common\MSDev98\Bin 絕對路徑添加到系統環境變數中。
4、進入E:\php-5.2.17\ext目錄,復制skeleton文件夾,並重命名為要開發擴展的名字,本例為「myfun」。
5、重命名skeleton.c為myfun.c,skeleton.dsp為myfun.dsp
6、編輯myfun目錄中的php_skeleton.h、myfun.c、myfun.dsp這三個文件,替換內容中所有extname為myfun,EXTNAME為MYFUN。(一定要嚴格區分大小寫)
下面就進入到編碼階段:
7、打開php_skeleton.h文件(頭文件),找到PHP_FUNCTION(confirm_myfun_compiled);,在 PHP_FUNCTION(confirm_myfun_compiled);,下面編寫PHP_FUNCTION(mb_MessageBox);,聲 明一個mb_MessageBox函數,此函數的作用僅是輸出js彈出一個alert消息框,用於測試。
8、下面定義函數入口,打開myfun.c文件,找到PHP_FE(confirm_myfun_compiled,NULL) ;,在下面編寫 PHP_FE(mb_MessageBox,NULL),此處注意一下,PHP_FE是定義的一個宏,所以後面不用加引號。
9、在myfun.c最後面編寫函數的實體部分:

PHP_FUNCTION(mb_MessageBox)
{
char *arg = NULL;
int arg_len, len;
char *strg;

if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &arg, &arg_len) == FAILURE) {
return;
}

len = spprintf(&strg, 0, "<script>alert('%s')</script>",arg); //此處正是輸入的js代碼
RETURN_STRINGL(strg, len, 0);
}

到這代碼書寫就完成了,下面開始編譯:
10、開始->運行,輸入CMD,打開命令行窗口。
11、進入myfun的目錄,輸入 msdev myfun.dsp /MAKE "myfun - Win32 Release_TS",回車編譯。
12、如果沒有錯誤,在E:\php-5.2.17下會生成一個Release_TS文件夾,在裡面就可以找到php_myfun.dll文件。
至此擴展dll開發完成,下面在php中進行測試:
13、把php_myfun.dll復制到原php目錄中的ext文件夾內。
14、打開php.ini文件,添加當前dll的擴展 extension=php_myfun.dll
15、重啟apache,在網站目錄下新建一文件,輸入以下內容:
<?php
echo mb_MessageBox("測試PHP擴展DLL by 馬犇");
?>
瀏覽即可看到效果

6. php項目中如何引入CCBRSA.dll

可能使用了模板技術
頁面布局應該在例外文件夾
如果是這樣,那一般布局文件是htm、html、tpl、*.tpl.php等文件

7. PHP里沒mysql.dll怎麼辦

呵呵,看這情況是你的php.ini里沒打開php_mysql.dll

確保php.ini里打開php_mysql.dll,即去掉前邊的符號即可

php.ini應該在C:/windows/system32下

另外在PHP的按照目錄下有個ext文件夾,裡面也有這個mysql的擴展文件,可供使用

8. mt4 php dll 通信

是dll吧,我也不太確定,我認為你應該去找一下這方面的資料看看,後盾網啊這些地方都有的

9. php添加擴展dll文件

你這個dll是你自己編譯出來的還是網上下載的?請確保和你當前的php版本相符,然後放到ext目錄,打開php.ini加上一句extension=xx.dll,最後重啟Apache···然後看看你的phpinfo有沒有相應的信息

10. 那位有PHP 調用外部DLL經驗

做成 php 的擴展,就可以調用了。

把做好的dll文件放在php的擴展模塊路徑下面,然後在php.ini文件中追加

extension=extname.dll

如果dll文件沒問題,接著就可以在php文件中直接調用其中的函數了。

以下這個地址的文章教你怎麼做php的擴展:
http://www.devarticles.com/c/a/Cplusplus/Developing-Custom-PHP-Extensions-Part-1/

閱讀全文

與phpdll相關的資料

熱點內容
朔源碼燕窩會假嗎 瀏覽:279
php是否支持gd 瀏覽:925
旅遊查攻略下載什麼app 瀏覽:774
ps存儲不在原始文件夾 瀏覽:37
android直播開發CSDN 瀏覽:750
apacheaddtypephp 瀏覽:501
女程序員美劇 瀏覽:639
安卓怎麼隱身登錄王者榮耀 瀏覽:854
通達信前五源碼編寫 瀏覽:19
gcc怎麼編譯qt程序 瀏覽:925
華為文件夾命名大全 瀏覽:383
php無限分類循環 瀏覽:41
北漂程序員營養餐 瀏覽:105
掃描件pdf轉換成圖片 瀏覽:58
忍者必須死伺服器升級到什麼時候 瀏覽:339
鹼基最多配對演算法 瀏覽:829
命令和決定表彰上的區別 瀏覽:152
全國醫保服務平台app叫什麼 瀏覽:319
php輸出表單 瀏覽:237
西門子r變數編程入門 瀏覽:374