ホームページ > バックエンド開発 > PHPチュートリアル > php は C++ DLL を呼び出します

php は C++ DLL を呼び出します

WBOY
リリース: 2016-06-23 14:39:37
オリジナル
1320 人が閲覧しました

ダイナミック ライブラリで呼び出される関数

extern "C" int __stdcall GameRegister(char* szSystemInfo, char *szRegCode, char *szLicense);
ログイン後にコピー


PHP コード
<?php                $dw = new Com("DynamicWrapper");				$dw->Register("EducationGameRegister.dll", "GameRegister", 'i=sss', "f=s", "r=u"); 								$reg_code = "";				$ch = $dw->GameRegister("P2G9YFWGZW68G","2597367cea95b2cf0aace3bd5059c33e",&$reg_code);								echo "Return Value:".$ch;				echo "Register Code:".$reg_code;	            ?>
ログイン後にコピー


実行時に次のエラーが発生します:
致命的なエラー: キャッチされない例外 'com_Exception' とメッセージ 'エラー [0x80070057] パラメータが正しくありません。 ' D:WAMPWWWindex.php:11 のスタック トレース: #0 D:WAMPWWWindex.php(11): com->Register('EducationGameRe...', 'GameRegister', 'i=sss', 'f=s ', 'r=l') #1 {main} が D:WAMPWWWindex.php の 11 行目でスローされました

PHP に連絡するのは初めてです。見てみるのを手伝ってください。ありがとう!


ディスカッションへの返信 (解決策)

プロトタイプではパラメータがポインタである必要があり、com はポインタを渡すことができません

PHP は C++ を呼び出すこともできます。聞いたことはありません。専門家を待ってください

$ch = $dw-> ;GameRegister("P2G9YFWGZW68G","2597367cea95b2cf0aace3bd5059c33e",$reg_code);
????

これも機能しません。

私もこの問題に遭遇しました、元の投稿者はそれを解決しましたか?

私もこの問題に遭遇しました、元の投稿者はそれを解決しましたか?

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート