私はこれを達成する方法が不思議です。私は何をgoogleにするか分からない。PhpからC++ Windowsアプリケーションにコマンドを送信
ウェブサーバーがあり、ボタン付きのPHPページを作成したい場合。そのボタンをクリックすると、リモートマシン上で実行されているC++アプリケーションが関数を実行します。
これを達成する最も簡単な方法は何ですか?これのライブラリは既に存在しますか?これを開始するにはどうすればいいですか?
ありがとうございました。
私はこれを達成する方法が不思議です。私は何をgoogleにするか分からない。PhpからC++ Windowsアプリケーションにコマンドを送信
ウェブサーバーがあり、ボタン付きのPHPページを作成したい場合。そのボタンをクリックすると、リモートマシン上で実行されているC++アプリケーションが関数を実行します。
これを達成する最も簡単な方法は何ですか?これのライブラリは既に存在しますか?これを開始するにはどうすればいいですか?
ありがとうございました。
使用PHP-バッククォート
http://php.net/manual/de/language.operators.execution.php
あなたは、任意の実行可能ファイルを呼び出し、変数にその出力を取ることができます。
例:
$結果= ` mycppapp.exe `
よろしく
私は質問が開始についてではなく、むしろ既に実行中のアプリケーションを制御すると思いましたか?さらに、元の質問には明らかにWindowsホストは遠隔地であると言われています。だから、バックティックはここでの解決策ではありません。 –
これは私にとってはうまくいくとは思えません。私はそれがすでに実行中のアプリケーションでコード/機能を実行したい。まったく新しいプロセスを開始することはありません。 – mocode9
最良の方法は、特定のポートでリスナーを作成することです。その後、そのポートを介してPHPでリクエストを送信します。これで関数がトリガされます。このhttp://www.sfml-devのような素晴らしいアドオンがあるようです。org /これはそのような努力を簡素化するようだ。 – Daidon
それはあなたのC++アプリに多少依存します。
しかし、基本的な考え方はこれです。
ボタンをクリックするとボタンが定義されます.AJAX GETまたはPOSTをPHPプログラムに開始します(可能なバリエーションがあります。フォーム経由で行うこともできます)。
あなたのPHPは遠隔のWindowsホストへの接続を開始することができ、これは難しいところです。
REST APIを持っていれば、簡単です。あなたは、RESTメッセージを送るためにPHP curlのような簡単なものから始めてもよいでしょう。 リモートコントロールAPIとCLIのみがない場合は、リモートpowershellを使用して起動する必要があります。
このようなものpowershell - execute cmdlet remotely with php
残りはcpprest DLLに依存していたので、私のクライアントはdllをプロジェクトに追加するのを楽しみにしていた。しかし、はい私のC + +アプリケーションは、ネットワークにアクセスしています。私はそれがPHPページに接続する方法を知らない事。たぶん、ボタンがクリックされたときにPHPページで別のPHPページに変数を書き出すことができました。そして、たいていの場合、私のC++アプリケーションをそのページに接続して変数をチェックすることがよくあります。それが本当なら、それは私の機能を実行しました。それが良いか、よりよい方法がありますか? – mocode9
C++アプリケーションのソケットでリッスンを開始できれば、ネットワーク経由でメッセージを受信できます。私はあなたが常にそこにいないかもしれないイベントのためにサーバー側をポーリングするので、良い解決策になるとは思わない。あなたは、C + +やPHPでモックアップシンプルなアプリケーションを行うことができます。 C++は特定のポートでメッセージの受信を開始し、PHPはそのようなメッセージを送信します。 –
リモートマシンはサーバー上で実行されているか、 –
Google for: 'windows communication foundation'、' dcom'、 'リモートコンピュータでのwin32起動プロセス' – selbie
アプリケーションがC言語で書かれているとどうなりますか? – user4581301