Beispiel #1
0
        private Object QueryProperty(WlanHostedNetworkOpcode opCode)
        {
            IntPtr data;
            uint   dataSize;
            WlanOpcodeValueType opcodeValueType;

            Util.ThrowIfError(
                NativeMethods.WlanHostedNetworkQueryProperty(client.clientHandle, opCode, out dataSize, out data, out opcodeValueType, IntPtr.Zero));
            try {
                switch (opCode)
                {
                case WlanHostedNetworkOpcode.ConnectionSettings:
                    return(Marshal.PtrToStructure(data, typeof(WlanHostedNetworkConnectionSettings)));

                case WlanHostedNetworkOpcode.SecuritySettings:
                    return(Marshal.PtrToStructure(data, typeof(WlanHostedNetworkSecuritySettings)));

                case WlanHostedNetworkOpcode.StationProfile:
                    return(Marshal.PtrToStringUni(data));   //PWSTR

                case WlanHostedNetworkOpcode.Enable:
                    return(Convert.ToBoolean(Marshal.ReadByte(data)));

                default:
                    throw new NotSupportedException();
                }
            } finally {
                NativeMethods.WlanFreeMemory(data);
            }
        }
Beispiel #2
0
        private void SetProperty(WlanHostedNetworkOpcode opCode, Object value)
        {
            IntPtr data;
            int    dataSize = Marshal.SizeOf(value);

            data = Marshal.AllocHGlobal(dataSize);
            switch (opCode)
            {
            case WlanHostedNetworkOpcode.ConnectionSettings:
                Marshal.StructureToPtr(value, data, false);
                //dataSize = Marshal.SizeOf(value);
                break;

            case WlanHostedNetworkOpcode.Enable:
                Marshal.WriteInt32(data, Convert.ToInt32(value));
                //dataSize = sizeof(int);
                break;

            default:
                throw new NotSupportedException();
            }
            try {
                WlanOpcodeValueType opcodeValueType;
                Util.ThrowIfError(
                    NativeMethods.WlanHostedNetworkSetProperty(client.clientHandle, opCode, dataSize, data, out opcodeValueType, IntPtr.Zero));
            } finally {
                Marshal.FreeHGlobal(data);
            }
        }
Beispiel #3
0
 internal static extern uint WlanHostedNetworkSetProperty(
     [In] WlanHandle clientHandle,
     [In] WlanHostedNetworkOpcode opCode,
     uint dataSize,
     IntPtr data,
     [Out] out WlanHostedNetworkReason failReason,
     IntPtr reserved);
Beispiel #4
0
 internal static extern uint WlanHostedNetworkQueryProperty(
     [In] WlanHandle clientHandle,
     [In] WlanHostedNetworkOpcode opCode,
     [Out] out uint dataSize,
     [Out] out IntPtr data,
     [Out] out WlanOpcodeValueType wlanOpcodeValueType,
     IntPtr reserved);
Beispiel #5
0
 internal static extern int WlanHostedNetworkSetProperty(
     [In] IntPtr hClientHandle,
     [In] WlanHostedNetworkOpcode OpCode,
     [In] int pdwDataSize,
     [In] IntPtr ppvData,
     [Out, Optional] out WlanOpcodeValueType pWlanOpcodeValueType,
     [In, Out] IntPtr pvReserved
     );
 public static extern int WlanHostedNetworkSetProperty(IntPtr hClientHandle, WlanHostedNetworkOpcode opCode,
                                                       uint dwDataSize, IntPtr pvData, [Out] out WlanHostedNetworkReason pFailReason, IntPtr pReserved);
 public static extern int WlanHostedNetworkQueryProperty(IntPtr hClientHandle, WlanHostedNetworkOpcode opCode,
                                                         [Out] out uint pDataSize, [Out] out IntPtr ppvData, [Out] out WlanOpcodeValueType pWlanOpcodeValueType,
                                                         IntPtr pReserved);