亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? dcb.cs

?? 用C#實(shí)現(xiàn)的取得CellID和LAC的程序源代碼!
?? CS
字號(hào):
/*=====================================================================
  File:      DCB.cs

  Summary:   Provides a class that wraps the native Win32 DCB structure. 

  ---------------------------------------------------------------------
  This file is part of the Microsoft .NET Framework SDK Code Samples.

  Copyright (C) Microsoft Corporation.  All rights reserved.

  This source code is intended only as a supplement to Microsoft
  Development Tools and/or on-line documentation.  See these other
  materials for detailed information regarding Microsoft code samples.

  THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  PARTICULAR PURPOSE.
=====================================================================*/

using System;
using System.Text;
using System.IO;
using System.Runtime.InteropServices;

namespace NiceTracker.Serial
{

	//
	// The Win32 DCB structure is implemented below in a C# class.
	//

	[StructLayout(LayoutKind.Sequential)]
	public class DCB 
	{
		//
		// Note the layout of the Win32 DCB structure in native code and that
		// it contains bitfields. I use a UInt32 to contain the bit field
		// and then use properties to expose the individual bits at bools or
		// appropriate flags (as in the case of fDtrControl and fRtsControl).
		// 
        
		//
		// typedef struct _DCB { 
		//     DWORD DCBlength; 
		//     DWORD BaudRate; 
		//     DWORD fBinary: 1; 
		//     DWORD fParity: 1; 
		//     DWORD fOutxCtsFlow:1; 
		//     DWORD fOutxDsrFlow:1; 
		//     DWORD fDtrControl:2; 
		//          #define DTR_CONTROL_DISABLE    0x00
		//          #define DTR_CONTROL_ENABLE     0x01
		//          #define DTR_CONTROL_HANDSHAKE  0x02
		//     DWORD fDsrSensitivity:1; 
		//     DWORD fTXContinueOnXoff:1; 
		//     DWORD fOutX: 1; 
		//     DWORD fInX: 1; 
		//     DWORD fErrorChar: 1; 
		//     DWORD fNull: 1; 
		//     DWORD fRtsControl:2; 
		//          #define RTS_CONTROL_DISABLE    0x00
		//          #define RTS_CONTROL_ENABLE     0x01
		//          #define RTS_CONTROL_HANDSHAKE  0x02
		//          #define RTS_CONTROL_TOGGLE     0x03
		//     DWORD fAbortOnError:1; 
		//     DWORD fDummy2:17; 
		//     WORD wReserved; 
		//     WORD XonLim; 
		//     WORD XoffLim; 
		//     BYTE ByteSize; 
		//     BYTE Parity; 
		//     BYTE StopBits; 
		//     char XonChar; 
		//     char XoffChar; 
		//     char ErrorChar; 
		//     char EofChar; 
		//     char EvtChar; 
		//     WORD wReserved1; 
		// } DCB; 
		//

		//
		// Enumeration for fDtrControl bit field. Underlying type only needs
		// to be a byte since we only have 2-bits of information.
		//
		public enum DtrControlFlags : byte 
		{
			Disable = 0,
			Enable =1 ,
			Handshake = 2
		}

		//
		// Enumeration for fRtsControl bit field. Underlying type only needs
		// to be a byte since we only have 2-bits of information.
		//
		public enum RtsControlFlags : byte 
		{
			Disable = 0,
			Enable = 1,
			Handshake = 2,
			Toggle = 3
		}

		public DCB()
		{
			//
			// Initialize the length of the structure. Marshal.SizeOf returns
			// the size of the unmanaged object (basically the object that
			// gets marshalled).
			//
			this.DCBlength = (uint)Marshal.SizeOf(this);
		}

		private   UInt32 DCBlength;
		public   UInt32 BaudRate;
		internal UInt32 Control;
		internal UInt16 wReserved;
		public   UInt16 XonLim;
		public   UInt16 XoffLim;
		public   byte   ByteSize;
		public   byte   Parity;
		public   byte   StopBits;
		public   sbyte  XonChar;
		public   sbyte  XoffChar;
		public   sbyte  ErrorChar;
		public   sbyte  EofChar;
		public   sbyte  EvtChar;
		internal UInt16 wReserved1;

		//
		// We need to have reserved fields to preserve the size of the 
		// underlying structure to match the Win32 structure when it is 
		// marshaled. Use these fields to suppress compiler warnings.
		//
		internal void _SuppressCompilerWarnings()
		{
			wReserved +=0;
			wReserved1 +=0;
		}
        
		// Helper constants for manipulating the bit fields.
		private readonly UInt32 fBinaryMask             = 0x00000001;
		private readonly Int32  fBinaryShift            = 0;
		private readonly UInt32 fParityMask             = 0x00000002;
		private readonly Int32  fParityShift            = 1;
		private readonly UInt32 fOutxCtsFlowMask        = 0x00000004;
		private readonly Int32  fOutxCtsFlowShift       = 2;
		private readonly UInt32 fOutxDsrFlowMask        = 0x00000008;
		private readonly Int32  fOutxDsrFlowShift       = 3;
		private readonly UInt32 fDtrControlMask         = 0x00000030;
		private readonly Int32  fDtrControlShift        = 4;
		private readonly UInt32 fDsrSensitivityMask     = 0x00000040;
		private readonly Int32  fDsrSensitivityShift    = 6;
		private readonly UInt32 fTXContinueOnXoffMask   = 0x00000080;
		private readonly Int32  fTXContinueOnXoffShift  = 7;
		private readonly UInt32 fOutXMask               = 0x00000100;
		private readonly Int32  fOutXShift              = 8;
		private readonly UInt32 fInXMask                = 0x00000200;
		private readonly Int32  fInXShift               = 9;
		private readonly UInt32 fErrorCharMask          = 0x00000400;
		private readonly Int32  fErrorCharShift         = 10;
		private readonly UInt32 fNullMask               = 0x00000800;
		private readonly Int32  fNullShift              = 11;
		private readonly UInt32 fRtsControlMask         = 0x00003000;
		private readonly Int32  fRtsControlShift        = 12;
		private readonly UInt32 fAbortOnErrorMask       = 0x00004000;
		private readonly Int32  fAbortOnErrorShift      = 14;

		public bool fBinary 
		{
			get { return ((Control & fBinaryMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fBinaryShift); }
		}
		public bool fParity 
		{
			get { return ((Control & fParityMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fParityShift); }
		}
		public bool fOutxCtsFlow 
		{
			get { return ((Control & fOutxCtsFlowMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fOutxCtsFlowShift); }
		}
		public bool fOutxDsrFlow 
		{
			get { return ((Control & fOutxDsrFlowMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fOutxDsrFlowShift); }
		}
		public DtrControlFlags fDtrControl 
		{
			get { return (DtrControlFlags)((Control & fDtrControlMask) >> fDtrControlShift); }
			set { Control |= (Convert.ToUInt32(value) << fDtrControlShift); }
		}
		public bool fDsrSensitivity 
		{
			get { return ((Control & fDsrSensitivityMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fDsrSensitivityShift); }
		}
		public bool fTXContinueOnXoff 
		{
			get { return ((Control & fTXContinueOnXoffMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fTXContinueOnXoffShift); }
		}
		public bool fOutX 
		{
			get { return ((Control & fOutXMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fOutXShift); }
		}
		public bool fInX 
		{
			get { return ((Control & fInXMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fInXShift); }
		}
		public bool fErrorChar 
		{
			get { return ((Control & fErrorCharMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fErrorCharShift); }
		}
		public bool fNull 
		{
			get { return ((Control & fNullMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fNullShift); }
		}
		public RtsControlFlags fRtsControl 
		{
			get { return (RtsControlFlags)((Control & fRtsControlMask) >> fRtsControlShift); }
			set { Control |= (Convert.ToUInt32(value) << fRtsControlShift); }
		}
		public bool fAbortOnError 
		{
			get { return ((Control & fAbortOnErrorMask) != 0); }
			set { Control |= (Convert.ToUInt32(value) << fAbortOnErrorShift); }
		}
        
		//
		// Method to dump the DCB to take a look and help debug issues.
		//
		public override String ToString() 
		{
			StringBuilder sb = new StringBuilder();

			sb.Append("DCB:\r\n");
			sb.AppendFormat(null, "  BaudRate:     {0}\r\n", BaudRate);
			sb.AppendFormat(null, "  Control:      0x{0:x}\r\n", Control);
			sb.AppendFormat(null, "    fBinary:           {0}\r\n", fBinary);
			sb.AppendFormat(null, "    fParity:           {0}\r\n", fParity);
			sb.AppendFormat(null, "    fOutxCtsFlow:      {0}\r\n", fOutxCtsFlow);
			sb.AppendFormat(null, "    fOutxDsrFlow:      {0}\r\n", fOutxDsrFlow);
			sb.AppendFormat(null, "    fDtrControl:       {0}\r\n", fDtrControl);
			sb.AppendFormat(null, "    fDsrSensitivity:   {0}\r\n", fDsrSensitivity);
			sb.AppendFormat(null, "    fTXContinueOnXoff: {0}\r\n", fTXContinueOnXoff);
			sb.AppendFormat(null, "    fOutX:             {0}\r\n", fOutX);
			sb.AppendFormat(null, "    fInX:              {0}\r\n", fInX);
			sb.AppendFormat(null, "    fNull:             {0}\r\n", fNull);
			sb.AppendFormat(null, "    fRtsControl:       {0}\r\n", fRtsControl);
			sb.AppendFormat(null, "    fAbortOnError:     {0}\r\n", fAbortOnError);
			sb.AppendFormat(null, "  XonLim:       {0}\r\n", XonLim);
			sb.AppendFormat(null, "  XoffLim:      {0}\r\n", XoffLim);
			sb.AppendFormat(null, "  ByteSize:     {0}\r\n", ByteSize);
			sb.AppendFormat(null, "  Parity:       {0}\r\n", Parity);
			sb.AppendFormat(null, "  StopBits:     {0}\r\n", StopBits);
			sb.AppendFormat(null, "  XonChar:      {0}\r\n", XonChar);
			sb.AppendFormat(null, "  XoffChar:     {0}\r\n", XoffChar);
			sb.AppendFormat(null, "  ErrorChar:    {0}\r\n", ErrorChar);
			sb.AppendFormat(null, "  EofChar:      {0}\r\n", EofChar);
			sb.AppendFormat(null, "  EvtChar:      {0}\r\n", EvtChar);

			return sb.ToString();
		}
	}
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看免费成人| 亚洲伦理在线精品| 精品捆绑美女sm三区| 3d成人h动漫网站入口| 在线观看视频欧美| 欧美综合视频在线观看| 色老汉一区二区三区| 91在线一区二区| av在线播放一区二区三区| 成人免费高清在线| www.66久久| 99久久er热在这里只有精品15| 成人亚洲精品久久久久软件| 成人国产免费视频| www.av亚洲| 色欧美片视频在线观看| 在线中文字幕一区二区| 欧美主播一区二区三区美女| 欧美中文字幕一二三区视频| 欧美调教femdomvk| 日韩欧美一二三| 久久久久99精品国产片| 国产精品久久久久久久久免费桃花 | 极品销魂美女一区二区三区| 国内精品久久久久影院薰衣草| 国产在线麻豆精品观看| 懂色av中文字幕一区二区三区| 99精品欧美一区二区三区综合在线| caoporn国产一区二区| 在线国产电影不卡| 91精品国产欧美日韩| 久久美女艺术照精彩视频福利播放 | 99久久免费国产| 欧洲精品中文字幕| 日韩一区二区影院| 国产蜜臀av在线一区二区三区| 国产视频在线观看一区二区三区| 亚洲天堂成人网| 欧美a级一区二区| 国产成人在线色| 欧美丝袜自拍制服另类| 日韩一级完整毛片| 国产精品人妖ts系列视频| 亚洲综合免费观看高清完整版 | 秋霞电影一区二区| 粉嫩av一区二区三区| 色欧美日韩亚洲| 欧美电影免费观看高清完整版| 国产精品每日更新| 视频一区二区国产| 成人免费视频网站在线观看| 欧美视频一区在线观看| 中文字幕欧美日韩一区| 午夜精品一区二区三区免费视频| 国产精品一区二区久久精品爱涩| 色婷婷综合五月| 久久精品视频一区二区三区| 亚洲香肠在线观看| 国产suv一区二区三区88区| 欧美日本韩国一区二区三区视频| 国产日产亚洲精品系列| 视频一区在线视频| 色综合久久九月婷婷色综合| 欧美成人精品1314www| 亚洲欧美电影一区二区| 国内精品久久久久影院薰衣草| 欧美在线你懂的| 亚洲国产高清aⅴ视频| 欧美aaaaaa午夜精品| 色综合天天天天做夜夜夜夜做| 精品国产乱码久久久久久久| 亚洲国产成人高清精品| 大胆亚洲人体视频| 欧美不卡一区二区三区四区| 亚洲综合网站在线观看| 成人国产在线观看| 久久综合色一综合色88| 日韩**一区毛片| 欧美日韩中文精品| 亚洲日穴在线视频| 成人不卡免费av| 久久久久国产精品麻豆ai换脸| 视频一区欧美日韩| 欧美性生活久久| 亚洲免费看黄网站| 99久久精品国产毛片| 久久精品网站免费观看| 九九视频精品免费| 欧美一区二区在线观看| 亚洲一级不卡视频| 91免费在线看| 亚洲欧洲99久久| 成人理论电影网| 中文字幕乱码久久午夜不卡 | 欧美精品在线一区二区三区| 日韩美女啊v在线免费观看| 国产91丝袜在线18| 亚洲国产成人私人影院tom| 国产一区二区主播在线| 精品少妇一区二区三区在线视频| 美日韩一级片在线观看| 91精品免费在线| 日本少妇一区二区| 欧美日本在线播放| 日韩黄色一级片| 69久久99精品久久久久婷婷 | 91亚洲男人天堂| 中文字幕在线观看一区二区| 成人国产精品免费观看动漫| 中文字幕欧美日韩一区| 不卡一二三区首页| ...av二区三区久久精品| 99热国产精品| 亚洲一区二区欧美激情| 欧美色图激情小说| 图片区小说区国产精品视频| 91精品国产免费久久综合| 六月丁香婷婷色狠狠久久| 久久午夜免费电影| 国产成人av电影在线观看| 国产精品入口麻豆原神| 91视频观看视频| 亚洲国产日韩精品| 91精品国产高清一区二区三区| 麻豆91精品视频| 久久久一区二区三区| www.一区二区| 亚洲成人综合在线| 精品少妇一区二区三区视频免付费 | 欧美成va人片在线观看| 国产高清精品网站| 亚洲日本在线天堂| 欧美精品1区2区| 国产制服丝袜一区| 亚洲视频一区二区免费在线观看| 欧美在线你懂的| 国内成人自拍视频| 亚洲色图色小说| 欧美一区二区美女| 成人18视频日本| 天天色综合成人网| 国产亚洲一区字幕| 色狠狠桃花综合| 精品中文字幕一区二区| 中文成人av在线| 欧美久久久一区| 国产福利不卡视频| 亚洲在线观看免费视频| 精品少妇一区二区三区免费观看| 成人动漫视频在线| 三级一区在线视频先锋| 中文一区二区完整视频在线观看| 色av成人天堂桃色av| 久久se精品一区精品二区| 中文字幕一区二区三区在线播放 | 国产欧美一区二区三区在线看蜜臀| 99精品视频在线免费观看| 午夜精品久久久久久久蜜桃app| 精品国产麻豆免费人成网站| 91麻豆福利精品推荐| 日韩av不卡一区二区| 中文字幕一区三区| 日韩一区二区三区在线观看| 不卡一卡二卡三乱码免费网站 | 欧美日韩一级视频| 国产精品一区2区| 视频一区二区国产| 亚洲色图另类专区| 337p日本欧洲亚洲大胆色噜噜| 欧美主播一区二区三区美女| 国产精品一卡二| 日本vs亚洲vs韩国一区三区二区| 国产精品二区一区二区aⅴ污介绍| 日韩欧美在线123| 91电影在线观看| 成人午夜电影久久影院| 麻豆国产欧美一区二区三区| 亚洲一区二区三区小说| 国产精品丝袜91| 精品国产乱码久久久久久闺蜜| 欧美午夜精品久久久久久超碰 | 久久你懂得1024| 911精品产国品一二三产区| 99国产精品久久久久久久久久| 麻豆一区二区三区| 亚洲1区2区3区视频| 亚洲猫色日本管| 日本一区二区免费在线| 日韩欧美亚洲国产精品字幕久久久| 色婷婷av一区二区三区之一色屋| 成人午夜免费av| 国产精品99久久久久久久vr| 日韩国产欧美在线播放| 亚洲午夜免费视频| 亚洲综合色成人| 一区二区三区在线免费| 亚洲精品成人悠悠色影视| 国产精品二区一区二区aⅴ污介绍| 国产三级一区二区| 久久精品视频免费观看|