Пример #1
0
        ///  <summary>
        ///  Convert a byte array to a REGISTERMAP structure.
        ///  </summary>
        ///  
        ///  <param name="byteArray"> Buffer to convert. </param>
        ///  
        ///  <returns> REGISTERMAP structure. </returns>
        internal REGISTERMAP ByteArrayToStructure(ref Byte[] byteArray)
        {
            Int32 size;
            REGISTERMAP strRegister = new REGISTERMAP(0);
            IntPtr ptr;

            size = Marshal.SizeOf(strRegister);
            ptr = Marshal.AllocHGlobal(size);

            Marshal.Copy(byteArray, 0, ptr, size);
            strRegister = (REGISTERMAP)Marshal.PtrToStructure(ptr, strRegister.GetType());
            Marshal.FreeHGlobal(ptr);

            return strRegister;
        }
Пример #2
0
        ///  <summary>
        ///  Convert a REGISTERMAP structure to a byte array.
        ///  </summary>
        ///  
        ///  <param name="strRegister"> REGISTERMAP struct to convert. </param>
        ///  
        ///  <returns> Byte-Array. </returns>
        internal Byte[] StructureToByteArray(ref REGISTERMAP strRegister)
        {
            Int32 size;
            Byte[] byteArray;

            size = Marshal.SizeOf(strRegister);
            byteArray = new Byte[size];

            IntPtr ptr = Marshal.AllocHGlobal(size);
            Marshal.StructureToPtr(strRegister, ptr, true);
            Marshal.Copy(ptr, byteArray, 0, size);
            Marshal.FreeHGlobal(ptr);

            return byteArray;
        }
Пример #3
0
 ///  <summary>
 ///  Reset settings to a defined default.
 ///  </summary>
 internal void ResetSettings()
 {
     regConfig = new REGISTERMAP(0x00);
     WriteConfiguration();
     ReadConfiguration();
 }