csharp/tyranid/WindowsRpcClients/Win10_1809/appxdeploymentserver.dll/ff9fd3c4-742e-45e0-91dd-2f5bc632a1df_1.0.cs

ff9fd3c4-742e-45e0-91dd-2f5bc632a1df_1.0.cs
//------------------------------------------------------------------------------
// 
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.42000
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// 
//------------------------------------------------------------------------------

// Source Executable: c:\windows\system32\AppXDeploymentServer.dll
// Interface ID: ff9fd3c4-742e-45e0-91dd-2f5bc632a1df
// Interface Version: 1.0



namespace rpc_ff9fd3c4_742e_45e0_91dd_2f5bc632a1df_1_0
{
    
    #region Marshal Helpers
    internal clast _Marshal_Helper : NtApiDotNet.Ndr.Marshal.NdrMarshalBuffer
    {
        public void Write_0(Struct_0 p0)
        {
            WriteStruct(p0);
        }
        public void Write_1(string[] p0, long p1)
        {
            WriteConformantStringArray(p0, new System.Action(this.WriteTerminatedString), p1);
        }
        public void Write_2(string[] p0, long p1)
        {
            WriteConformantStringArray(p0, new System.Action(this.WriteTerminatedString), p1);
        }
        public void Write_3(string[] p0, long p1)
        {
            WriteConformantStringArray(p0, new System.Action(this.WriteTerminatedString), p1);
        }
        public void Write_4(NtApiDotNet.NtEvent p0)
        {
            WriteSystemHandle(p0);
        }
        public void Write_5(NtApiDotNet.NtEvent[] p0, long p1)
        {
            WriteConformantArrayCallback(p0, new System.Action(this.Write_4), p1);
        }
    }
    internal clast _Unmarshal_Helper : NtApiDotNet.Ndr.Marshal.NdrUnmarshalBuffer
    {
        public _Unmarshal_Helper(NtApiDotNet.Win32.Rpc.RpcClientResponse r) : 
                base(r.NdrBuffer, r.Handles, r.DataRepresentation)
        {
        }
        public _Unmarshal_Helper(byte[] ba) : 
                base(ba)
        {
        }
        public Struct_0 Read_0()
        {
            return ReadStruct();
        }
        public string[] Read_1()
        {
            return ReadConformantStringArray(new System.Func(this.ReadConformantVaryingString));
        }
        public string[] Read_2()
        {
            return ReadConformantStringArray(new System.Func(this.ReadConformantVaryingString));
        }
        public string[] Read_3()
        {
            return ReadConformantStringArray(new System.Func(this.ReadConformantVaryingString));
        }
        public NtApiDotNet.NtEvent Read_4()
        {
            return ReadSystemHandle();
        }
        public NtApiDotNet.NtEvent[] Read_5()
        {
            return ReadConformantArrayCallback(new System.Func(this.Read_4));
        }
    }
    #endregion
    #region Complex Types
    public struct Struct_0 : NtApiDotNet.Ndr.Marshal.INdrStructure
    {
        void NtApiDotNet.Ndr.Marshal.INdrStructure.Marshal(NtApiDotNet.Ndr.Marshal.NdrMarshalBuffer m)
        {
            Marshal(((_Marshal_Helper)(m)));
        }
        private void Marshal(_Marshal_Helper m)
        {
            m.WriteEmbeddedPointer(Member0, new System.Action(m.WriteTerminatedString));
            m.WriteEnum16(Member8);
            m.WriteInt32(MemberC);
            m.WriteEmbeddedPointer(Member10, new System.Action(m.Write_0));
        }
        void NtApiDotNet.Ndr.Marshal.INdrStructure.Unmarshal(NtApiDotNet.Ndr.Marshal.NdrUnmarshalBuffer u)
        {
            Unmarshal(((_Unmarshal_Helper)(u)));
        }
        private void Unmarshal(_Unmarshal_Helper u)
        {
            Member0 = u.ReadEmbeddedPointer(new System.Func(u.ReadConformantVaryingString), false);
            Member8 = u.ReadEnum16();
            MemberC = u.ReadInt32();
            Member10 = u.ReadEmbeddedPointer(new System.Func(u.Read_0), false);
        }
        int NtApiDotNet.Ndr.Marshal.INdrStructure.GetAlignment()
        {
            return 4;
        }
        public NtApiDotNet.Ndr.Marshal.NdrEmbeddedPointer Member0;
        public NtApiDotNet.Ndr.Marshal.NdrEnum16 Member8;
        public int MemberC;
        public NtApiDotNet.Ndr.Marshal.NdrEmbeddedPointer Member10;
        public static Struct_0 CreateDefault()
        {
            return new Struct_0();
        }
        public Struct_0(string Member0, NtApiDotNet.Ndr.Marshal.NdrEnum16 Member8, int MemberC, System.Nullable Member10)
        {
            this.Member0 = Member0;
            this.Member8 = Member8;
            this.MemberC = MemberC;
            this.Member10 = Member10;
        }
    }
    #endregion
    #region Client Implementation
    public sealed clast Client : NtApiDotNet.Win32.Rpc.RpcClientBase
    {
        public Client() : 
                base("ff9fd3c4-742e-45e0-91dd-2f5bc632a1df", 1, 0)
        {
        }
        private _Unmarshal_Helper SendReceive(int p, _Marshal_Helper m)
        {
            return new _Unmarshal_Helper(SendReceive(p, m.DataRepresentation, m.ToArray(), m.Handles));
        }
        // async
        public int AppXApplyTrustLabelToFolder(int p0, string[] p1, string p2, NtApiDotNet.Ndr.Marshal.NdrEnum16 p3)
        {
            _Marshal_Helper m = new _Marshal_Helper();
            m.WriteInt32(p0);
            m.Write_1(NtApiDotNet.Win32.Rpc.RpcUtils.CheckNull(p1, "p1"), p0);
            m.WriteReferent(p2, new System.Action(m.WriteTerminatedString));
            m.WriteEnum16(p3);
            _Unmarshal_Helper u = SendReceive(0, m);
            return u.ReadInt32();
        }
        public int AppXApplyTrustLabelToFolder_1(NtApiDotNet.Ndr.Marshal.NdrEnum16 p0, string p1, string p2, string[] p3, int p4, string p5, out System.Nullable p6)
        {
            _Marshal_Helper m = new _Marshal_Helper();
            m.WriteEnum16(p0);
            m.WriteTerminatedString(NtApiDotNet.Win32.Rpc.RpcUtils.CheckNull(p1, "p1"));
            m.WriteReferent(p2, new System.Action(m.WriteTerminatedString));
            m.WriteReferent(p3, new System.Action(m.Write_2), p4);
            m.WriteInt32(p4);
            m.WriteReferent(p5, new System.Action(m.WriteTerminatedAnsiString));
            _Unmarshal_Helper u = SendReceive(1, m);
            p6 = u.ReadReferentValue(new System.Func(u.Read_0), false);
            return u.ReadInt32();
        }
        public int AppXApplyTrustLabelToFolder_2(string p0, sbyte p1, int p2, string[] p3, out NtApiDotNet.NtEvent[] p4)
        {
            _Marshal_Helper m = new _Marshal_Helper();
            m.WriteReferent(p0, new System.Action(m.WriteTerminatedString));
            m.WriteSByte(p1);
            m.WriteInt32(p2);
            m.Write_3(NtApiDotNet.Win32.Rpc.RpcUtils.CheckNull(p3, "p3"), p2);
            _Unmarshal_Helper u = SendReceive(2, m);
            p4 = u.Read_5();
            return u.ReadInt32();
        }
    }
    #endregion
}