一般的には、COMコンポーネントを呼び出すためのCoCreateInstanceを使用することができます。VC ++ COleDispatchDriverラッパークラスで自動的に生成されたインターフェイスのCOMコンポーネントを呼び出すために - しかし、COMコンポーネントのための簡単な方法があり、IDispatchインタフェースを実装しています。
例えば:などのVBScriptステートメントとして、VC ++でのスクリプト文を実行します。
C:システムは、制御を提供し、それによってIScriptControlと呼ばれるインタフェースを提供します\ WINDOWS \ SYSTEM32 \ msscript.ocxは、我々はスクリプトステートメントを実行することができます。
1. VC ++ラッパークラスを自動的に作成
VCとMFCは、プロジェクトの設立をサポートし、「MFCクラスライブラリの種類」を選択し、クラスを追加し、msscript.ocxファイルを選択し、示さ++ようIScriptControlは、右の列に追加: 完了をクリックした後に発生することができ CScriptControlのパッケージを。
2.生成されたクラスを使用して
//
初期化
のCOM
ライブラリを
CoInitialize (NULL )。
//は、
作成
MSScriptControl.ScriptControl
インスタンスを
//
によって名前(プログラムID)
VC ++
ガジェットディレクトリが
OLEVIEW
得ます。
CScriptControl JS ;
もし (JS 。CreateDispatchを("MSScriptControl.ScriptControl" ))
{
//
現在使用されているスクリプト言語を設定します
JS 。put_Language ("JScriptの" );
//
ステートメントを実行する
、
の実装が完了した後
VAR
それすなわち、式の結果が含まれています
VARIANTのvar =のJS 。評価("1.234 + 5.31" );
//
解放インタフェース
JS 。ReleaseDispatch ();
}
//
閉じ
たCOM
ライブラリを
CoUninitializeの();
3.本実施形態の他の使用は、
便利に、ドットコード、これらの式の評価として包装することができます。
便利に、ドットコード、これらの式の評価として包装することができます。
ます。https://www.cnblogs.com/rogee/archive/2011/02/19/1958690.htmlで再現