寫JavaScript實 現(xiàn)數(shù)值計算,例如: _variant_t outpar=pScriptControl->Eval(_bstr_t("1+4*5")); 這樣的數(shù)值計算不涉及js調(diào)用腳本外部的對象,例子到處可見,但是應(yīng)用范圍非常窄小。也就是說,從現(xiàn)有的文獻來看,用VC調(diào)用 JavaScript 都是 JavaScript 單向的,但是從來沒見過把VC中的現(xiàn)有的對象交給 JavaScript 反過來調(diào)用(也就是雙向調(diào)用)。有些人已經(jīng)實現(xiàn)或者看到, JavaScript 可以通過 obj = new ActiveXObject(...);的方式,把用VC編寫COM,然后讓 JavaScript 創(chuàng)建調(diào)用,但是,這樣new出來的對象,仍然不是VC應(yīng)用的現(xiàn)有對象。如果要調(diào)用現(xiàn)有對象,需要通過被new的COM對象間接調(diào)用才行,而且應(yīng)用程序被調(diào)用的對象也是COM規(guī)范。如果通過COM來實現(xiàn)這個難題,應(yīng)用程序結(jié)構(gòu)比較復(fù)雜,JavaScript 創(chuàng)建COM,所創(chuàng)建的COM能訪問應(yīng)用程序?qū)ο蟆?BR> 所以要擴大 JavaScript 的應(yīng)用范圍,必須實現(xiàn)這樣的核心問題:雙向調(diào)用。
雙向調(diào)用的一個分解問題是,VC對象如何進入腳本呢?下面介紹一種實現(xiàn)方法。
雙向調(diào)用的一個分解問題是,VC對象如何進入腳本呢?下面介紹一種實現(xiàn)方法。