Exemple #1
0
 internal static byte[] BuildAdsBuffer(ITcAdsHeader adsHeader, byte[] adsData)
 {
     byte[] buffer = null;
     if (adsHeader != null)
     {
         int num = Marshal.SizeOf(adsHeader);
         buffer = (adsData == null) ? new byte[num] : new byte[num + adsData.Length];
         BinaryWriter writer = new BinaryWriter(new MemoryStream(buffer));
         adsHeader.WriteToBuffer(writer);
         if (adsData != null)
         {
             writer.Write(adsData);
         }
     }
     return(buffer);
 }
Exemple #2
0
        private AdsErrorCode AdsResponse(AmsAddress rAddr, uint invokeId, ushort serviceId, uint cbLength, ITcAdsHeader adsHeader, byte[] adsData)
        {
            TcAmsHeader amsHeader = new TcAmsHeader(rAddr, this.Address, serviceId, 5, ((uint)Marshal.SizeOf(adsHeader)) + cbLength, 0, invokeId);

            return(this._amsServer.Send(new TcAmsCommand(amsHeader, TcAdsParser.BuildAdsBuffer(adsHeader, adsData))));
        }
Exemple #3
0
        private AdsErrorCode AdsRequest(AmsAddress rAddr, uint invokeId, ushort serviceId, uint cbLength, ITcAdsHeader adsHeader, byte[] adsData)
        {
            uint num = 0;

            if (adsHeader != null)
            {
                num = (uint)Marshal.SizeOf(adsHeader);
            }
            TcAmsHeader amsHeader = new TcAmsHeader(rAddr, this.Address, serviceId, 4, num + cbLength, 0, invokeId);

            return(this._amsServer.Send(new TcAmsCommand(amsHeader, TcAdsParser.BuildAdsBuffer(adsHeader, adsData))));
        }