Пример #1
0
            public override void Encode_in(NdrBuffer _dst)
            {
                scmanager_handle.Encode(_dst);
                _dst.Enc_ndr_string(service_name);
                _dst.Enc_ndr_referent(display_name, 1);
                if (display_name != null)
                {
                    _dst.Enc_ndr_string(display_name);
                }
                _dst.Enc_ndr_long(access_mask);
                _dst.Enc_ndr_long(service_type);
                _dst.Enc_ndr_long(start_type);
                _dst.Enc_ndr_long(error_control);
                _dst.Enc_ndr_string(binary_path_name);
                _dst.Enc_ndr_referent(load_order_group, 1);
                if (load_order_group != null)
                {
                    _dst.Enc_ndr_string(load_order_group);
                }
                _dst.Enc_ndr_referent(lpdwTagId, 1);
                if (lpdwTagId != null)
                {
                    lpdwTagId.Encode(_dst);
                }
                _dst.Enc_ndr_referent(lpDependencies, 1);
                if (lpDependencies != null)
                {
                    int _lpDependenciess = dependency_size;
                    _dst.Enc_ndr_long(_lpDependenciess);
                    int _lpDependenciesi = _dst.Index;
                    _dst.Advance(1 * _lpDependenciess);

                    _dst = _dst.Derive(_lpDependenciesi);
                    for (int _i = 0; _i < _lpDependenciess; _i++)
                    {
                        _dst.Enc_ndr_small(lpDependencies[_i]);
                    }
                }
                _dst.Enc_ndr_long(dependency_size);
                _dst.Enc_ndr_referent(lpServiceStartName, 1);
                if (lpServiceStartName != null)
                {
                    _dst.Enc_ndr_string(lpServiceStartName);
                }
                _dst.Enc_ndr_referent(password, 1);
                if (password != null)
                {
                    int _passwords = password_size;
                    _dst.Enc_ndr_long(_passwords);
                    int _passwordi = _dst.Index;
                    _dst.Advance(1 * _passwords);

                    _dst = _dst.Derive(_passwordi);
                    for (int _i = 0; _i < _passwords; _i++)
                    {
                        _dst.Enc_ndr_small(password[_i]);
                    }
                }
                _dst.Enc_ndr_long(password_size);
            }
Пример #2
0
 /// <exception cref="SharpCifs.Dcerpc.Ndr.NdrException"></exception>
 public override void Encode_in(NdrBuffer dst)
 {
     dst.Enc_ndr_string(DfsName);
     dst.Enc_ndr_long(Level);
     dst.Enc_ndr_long(Prefmaxlen);
     dst.Enc_ndr_referent(Info, 1);
     if (Info != null)
     {
         Info.Encode(dst);
     }
     dst.Enc_ndr_referent(Totalentries, 1);
     if (Totalentries != null)
     {
         Totalentries.Encode(dst);
     }
 }