国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

COM/DCOM中如何傳遞數組:

2019-11-18 18:48:46
字體:
來源:轉載
供稿:網友
   因為COM/DCOM對象都不在Client程序運行的內存空間(內進程COM對象除外,即便如此,為了統一接口,內進程的COM也不得傳遞指針),而且在Win32中所有的程序都有自己獨立的2GB的內存空間,程序與程序之間傳遞指針(內存地址)是毫無意義的,而數組、字符串等大量的數據在程序中都是分配一定的內存空間,然后用指針加內存偏移量來存取數據的,這時,如何在COM/DCOM對象中如何傳遞呢?
    在Win32中引入了一新變量Variant,可以通過Variant傳遞數組。具體的實現方法,用Delphi實現為:

    Server(COM/DCOM程序)端:
    PRocedure TTestDCOM.Send4(Size: Integer; D1: OleVariant);
    type
         TData=array [0..999] of Byte;
    Var
         Data:TData;
         i:Integer;
    begin
         for i:=0 to Size-1 do begin
              Data[i]:=D1[i];
         end;
    end;


  Cleint端:

    Var
        D1:OleVariant;
    begin
        D1:=VarArrayCreate([0,99],varByte);

        {
        D1[1]:=45;
           .... //將值存入D1中

            }
        S.Send4(99,D1); //S是TestDCOM對象
    end;

上一篇:制作類似WinAmp一樣的“磁性”窗口

下一篇:可以計算到的控件

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 鄂托克前旗| 南丹县| 新巴尔虎右旗| 布尔津县| 武穴市| 龙州县| 江孜县| 宝应县| 临澧县| 东阳市| 蓬莱市| 应城市| 阳信县| 防城港市| 上虞市| 盐山县| 福贡县| 铜川市| 息烽县| 青川县| 万荣县| 綦江县| 扎鲁特旗| 尼玛县| 七台河市| 隆回县| 始兴县| 中西区| 普格县| 德阳市| 道孚县| 高州市| 安国市| 米易县| 句容市| 平潭县| 汤阴县| 嘉定区| 邯郸县| 木兰县| 东丰县|