[StructLayout(LayoutKind.Sequential)] private class MIXERCONTROL { public int cbStruct; public int dwControlID; public int dwControlType; public int fdwConrol; public int cMultipleItems; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = MIXER_SHORT_NAME_CHARS)] public string szShortName; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = MIXER_LONG_NAME_CHARS)] public string szName; public int lMinimum; public int lMaximum; public long reserved00; public long reserved01; public long reserved02; public long reserved03; public long reserved04; public long reserved05; public long reserved06; public long reserved07; public long reserved08; public long reserved09; public long reserved10; }