最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用SAFEARRAY返回的代碼

 更新時間:2007年03月05日 00:00:00   作者:  
前天碰到有人問SAFEARRAY的問題,我正好對VB SCRIPT里面如何得到COM組件返回的數(shù)組感興趣,就試驗(yàn)了一下。

IDE用的是VC7.1

開始都差不多,建立工程,建立COM對象,建立方法:

接口定義:

[id(2), helpstring("method GetArray")] HRESULT GetArray1([out,retval] VARIANT* v);

方法實(shí)現(xiàn):
STDMETHODIMP CATL3::GetArray1(VARIANT * pvaVariant)
{
    std::vector< float> vct;
    vct.push_back(   11.4 );
    vct.push_back(   12.4 );
    vct.push_back(   14.4 );
    CComSafeArray<VARIANT> saMatrix;
    for ( int i = 0 ; i < vct.size(); ++i )
    {
        saMatrix.Add( CComVariant(vct[i]));
    }
    VariantInit(pvaVariant);
    CComVariant var( saMatrix );
    var.Detach( pvaVariant );
    return S_OK;
}

注意的一點(diǎn)就是:VBS或其它腳本環(huán)境中要得到返回數(shù)組參數(shù),數(shù)組中的類型是VARIANT類型。

VBS測試腳本
Dim v4

Cnxn4.Add 1, 2 

v4 = Cnxn4.GetArray1()

Dim x

For x = Lbound(v4) To Ubound( v4 )
 MsgBox v4(x)
Next

相關(guān)文章

最新評論

工布江达县| 玉田县| 凤城市| 洛南县| 新源县| 永新县| 沙田区| 宝坻区| 浮山县| 宝山区| 民和| 迭部县| 娱乐| 泾源县| 和平区| 龙州县| 淮滨县| 永丰县| 涞源县| 阿勒泰市| 宁城县| 祁连县| 错那县| 孟津县| 兴城市| 宝兴县| 凌源市| 搜索| 乌兰县| 聊城市| 庄河市| 利津县| 阿图什市| 沾益县| 登封市| 长宁县| 凌海市| 吉林省| 林口县| 遂溪县| 斗六市|