青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 195,  comments - 30,  trackbacks - 0

http://blog.csdn.net/Core_Star/archive/2010/03/30/5433862.aspx
C#中方括號可用于數(shù)組,索引、屬性,更重要的是用于外部DLL類庫的引用。

1. C#實現(xiàn).NET組件與COM組件的互操作

    [DllImport("kernel32.dll")]這叫引入kernel32.dll這個動C#中方括號可用于數(shù)組,索引、屬性,更重要的是用于外部DLL類庫的引用。

1. C#實現(xiàn).NET組件與COM組件的互操作

    [DllImport("kernel32.dll")]這叫引入kernel32.dll這個動態(tài)連接庫。
這個動態(tài)連接庫里面包含了很多WindowsAPI函數(shù),如果你想使用這面的函數(shù),就需要這么引入。舉個例子:
[DllImport("kernel32.dll")]
private static extern void 函數(shù)名(參數(shù),[參數(shù)]);
函數(shù)名就是一個屬于kernel32.dll里的一個函數(shù)。完了你就可以用那個函數(shù)了。

.NET組件中使用目前存在的COM組件
對于.NET來講,使用COM組件就要簡單一些。..NET提供了大量的類庫來方便的實現(xiàn)同COM的相互操作,其中很重要的一個名稱空間就是:System.Runtime.InteropServices。通過這個名稱空間的名字我們也可以從字面上看出,"互操作服務"。System.Runtime.InteropServices這個名稱空間提供了一系列的類來對COM對象進行操作。

需要注意的是,在調(diào)用COM組件之前,我們需要在.NET程序中引用名稱空間:System.Runtime.InteropServices 。因為我們需要使用這個名稱空間所提供的一個方法:DllImport。

例子: 內(nèi)存,硬盤的利用率

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace Windows.Help
{
    public partial class SystemInfo : Form
    {
        public SystemInfo()
        {
            InitializeComponent();
        }
        [DllImport("kernel32")]
        public static extern void GetWindowsDirectory(StringBuilder WinDir, int count);
        [DllImport("kernel32")]
        public static extern void GetSystemDirectory(StringBuilder SysDir, int count);
        [DllImport("kernel32")]
        public static extern void GetSystemInfo(ref CPU_INFO cpuinfo);
        [DllImport("kernel32")]
        public static extern void GlobalMemoryStatus(ref MEMORY_INFO meminfo);
        [DllImport("kernel32")]
        public static extern void GetSystemTime(ref SYSTEMTIME_INFO stinfo);
        //定義CPU的信息結(jié)構(gòu)
        [StructLayout(LayoutKind.Sequential)]
        public struct CPU_INFO
        {
            public uint dwOemId;
            public uint dwPageSize;
            public uint lpMinimumApplicationAddress;
            public uint lpMaximumApplicationAddress;
            public uint dwActiveProcessorMask;
            public uint dwNumberOfProcessors;
            public uint dwProcessorType;
            public uint dwAllocationGranularity;
            public uint dwProcessorLevel;
            public uint dwProcessorRevision;
        }
        //定義內(nèi)存的信息結(jié)構(gòu)
        [StructLayout(LayoutKind.Sequential)]
        public struct MEMORY_INFO
        {
            public uint dwLength;
            public uint dwMemoryLoad;
            public uint dwTotalPhys;
            public uint dwAvailPhys;
            public uint dwTotalPageFile;
            public uint dwAvailPageFile;
            public uint dwTotalVirtual;
            public uint dwAvailVirtual;
        }
        //定義系統(tǒng)時間的信息結(jié)構(gòu)
        [StructLayout(LayoutKind.Sequential)]
        public struct SYSTEMTIME_INFO
        {
            public ushort wYear;
            public ushort wMonth;
            public ushort wDayOfWeek;
            public ushort wDay;
            public ushort wHour;
            public ushort wMinute;
            public ushort wSecond;
            public ushort wMilliseconds;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            //調(diào)用GetWindowsDirectory和GetSystemDirectory函數(shù)分別取得Windows路徑和系統(tǒng)路徑
            const int nChars = 128;
            StringBuilder Buff = new StringBuilder(nChars);
            GetWindowsDirectory(Buff, nChars);
            WindowsDirectory.Text = "Windows路徑:" + Buff.ToString();
            GetSystemDirectory(Buff, nChars);
            SystemDirectory.Text = " 系統(tǒng)路徑:" + Buff.ToString();
            //調(diào)用GetSystemInfo函數(shù)獲取CPU的相關(guān)信息
            CPU_INFO CpuInfo;
            CpuInfo = new CPU_INFO();
            GetSystemInfo(ref CpuInfo);
            NumberOfProcessors.Text = "本計算機中有" + CpuInfo.dwNumberOfProcessors.ToString() + "個CPU";
            ProcessorType.Text = "CPU的類型為" + CpuInfo.dwProcessorType.ToString();
            ProcessorLevel.Text = "CPU等級為" + CpuInfo.dwProcessorLevel.ToString();
            OemId.Text = "CPU的OEM ID為" + CpuInfo.dwOemId.ToString();
            PageSize.Text = "CPU中的頁面大小為" + CpuInfo.dwPageSize.ToString();
            //調(diào)用GlobalMemoryStatus函數(shù)獲取內(nèi)存的相關(guān)信息
            MEMORY_INFO MemInfo;
            MemInfo = new MEMORY_INFO();
            GlobalMemoryStatus(ref MemInfo);
            MemoryLoad.Text = MemInfo.dwMemoryLoad.ToString() + "%的內(nèi)存正在使用";
            TotalPhys.Text = "物理內(nèi)存共有" + MemInfo.dwTotalPhys.ToString() + "字節(jié)";
            AvailPhys.Text = "可使用的物理內(nèi)存有" + MemInfo.dwAvailPhys.ToString() + "字節(jié)";
            TotalPageFile.Text = "交換文件總大小為" + MemInfo.dwTotalPageFile.ToString() + "字節(jié)";
            AvailPageFile.Text = "尚可交換文件大小為" + MemInfo.dwAvailPageFile.ToString() + "字節(jié)";
            TotalVirtual.Text = "總虛擬內(nèi)存有" + MemInfo.dwTotalVirtual.ToString() + "字節(jié)";
            AvailVirtual.Text = "未用虛擬內(nèi)存有" + MemInfo.dwAvailVirtual.ToString() + "字節(jié)";
            //調(diào)用GetSystemTime函數(shù)獲取系統(tǒng)時間信息
            SYSTEMTIME_INFO StInfo;
            StInfo = new SYSTEMTIME_INFO();
            GetSystemTime(ref StInfo);
            Date.Text = StInfo.wYear.ToString() + "年" + StInfo.wMonth.ToString() + "月" + StInfo.wDay.ToString() + "日";
            Time.Text = (StInfo.wHour + 8).ToString() + "點" + StInfo.wMinute.ToString() + "分" + StInfo.wSecond.ToString() + "秒";
        }
        private void button2_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}

2. 數(shù)組、索引器中的應用

type    類型。   
array    數(shù)組。   

indexexpr     索引表達式。   
 備注 
  數(shù)組類型是一種后跟  []  的類型: 
   
  int[]  fib;  //  fib  is  of  type  int[],  "array  of  int" 
  fib  =  new  int[100];  //  create  a  100-element  int  array 
  若要訪問數(shù)組的一個元素,則用方括號括起所需元素的索引: 
   
  fib[0]  =  fib[1]  =  1; 
  for(  int  i=2;  i <100;  ++i  )  fib[i]  =  fib[i-1]  +  fib[i-2]; 
  如果數(shù)組索引超出范圍,則會引發(fā)異常。 
   
  不能重載數(shù)組索引運算符;但類型可以定義包含一個或多個參數(shù)的索引器和屬性。索引器參數(shù)括在方括號中(就像數(shù)組索引一樣),但索引器參數(shù)可聲明為任何類型(與數(shù)組索引不同,數(shù)組索引必須為整數(shù))。 
   
  例如,.NET  Framework  定義一個哈希表類型,該類型將鍵和任意類型的值關(guān)聯(lián)在一起。 
   
  Collections.Hashtable  h  =    new  Collections.Hashtable(); 
  h["a"]  =  123;  //  note:  using  a  string  as  the  index

3. 方括號用于指定屬性

attribute(AllowMultiple=true)] 
  public  class  Attr  { 
  } 
  可使用方括號來索引指針后面的存儲位置(請參見  A.2  指針類型): 
   
  unsafe  fixed  (  int*  p  =  fib  )      //  p  points  to  fib  from  earlier  example 
  { 
        p[0]  =  p[1]  =  1; 
        for(  int  i=2;  i <100;  ++i  )  p[i]  =  p[i-1]  +  p[i-2]; 
  } 
  不執(zhí)行邊界檢查。 
    [ToolBoxItem(false)]表示不在IDE工具箱的控件集合中顯示。

[ParseChildren(true)] 它是用來告訴解析器   頁面聲明語法中位于
指定標簽內(nèi)的內(nèi)容(子標簽)是否是看作該控件的屬性還是當作一個子控件的標簽。true  這里true 是當作子標簽的意思。
ToolBoxData 的意思是當你將這個控件從tool  box   中拖放到WEBFORM中時在aspx文件的    HTML代碼中添加的對該控件的定義。這里的控件是 : kj_gridview
{0}是控件的標記的前綴
就是你托這個控件到頁面上 時候
他就自動添加<{0}:Div runat=server></{0}:Div>
這個{0}是你定義的 1、[StandardParameter(“ProcessID“)]2、[System.Web.Services.WebMethod(EnableSession=true)]3、[Guid(“D301882E-46D1-4e83-BF15-67028B94A68D“)]4、[Category(“Drp“)]5、[DBDefineAttribute(“Banks.XML“)][Serializable]6、[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]這些是類或方法的屬性這個在大型的軟件開發(fā)中是很有用的,如項目中要用到的一個模塊是通用的,我們就可以將其單獨抽出來做成控件,這個時候類或是方法的屬性就有用了加上這些后使控件類在使用的時候就會有相應的列項提示等等

posted on 2011-03-08 14:03 luis 閱讀(681) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2011年3月>
272812345
6789101112
13141516171819
20212223242526
272829303112
3456789

常用鏈接

留言簿(3)

隨筆分類

隨筆檔案

文章分類

文章檔案

友情鏈接

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美一区二区三区在| 久久久99久久精品女同性| 亚洲欧美一区二区视频| 欧美日韩午夜剧场| 亚洲新中文字幕| 亚洲男人影院| 亚洲国产小视频| 亚洲免费av电影| 国产亚洲精品综合一区91| 欧美中文在线免费| 久久久综合激的五月天| 亚洲欧美激情视频在线观看一区二区三区 | 亚洲一区二区三| 亚洲一区综合| 亚洲精品少妇网址| 亚洲视频在线观看一区| 伊人久久婷婷色综合98网| 亚洲人成人77777线观看| 欧美精品一线| 久久久久综合一区二区三区| 欧美承认网站| 麻豆国产精品777777在线| 欧美剧在线观看| 欧美福利视频在线观看| 亚洲午夜91| 你懂的视频一区二区| 久久国产精品亚洲77777| 欧美精品自拍| 亚洲高清在线观看| 亚洲国产裸拍裸体视频在线观看乱了中文| 99精品99久久久久久宅男| 亚洲精品资源| 欧美成年人在线观看| 亚洲黄色成人| 一本久道久久综合狠狠爱| 欧美高清在线视频| 亚洲欧洲精品一区二区三区波多野1战4| 国内精品模特av私拍在线观看| 亚洲特色特黄| 久久精品一二三区| 亚洲黑丝在线| 欧美日韩三区| 亚洲欧美日韩网| 美乳少妇欧美精品| 日韩视频专区| 国产亚洲美州欧州综合国| 欧美中文字幕不卡| 亚洲国产影院| 香蕉久久国产| 亚洲激情另类| 国产精品中文字幕在线观看| 久久三级视频| 一区二区三区高清视频在线观看| 亚洲精品久久久久| 亚洲视频免费看| 久久色在线播放| 亚洲乱码一区二区| 亚洲高清在线视频| 亚洲乱码久久| 欧美激情精品久久久久久免费印度| 精品51国产黑色丝袜高跟鞋| 久久精品国产清自在天天线| 国产日韩欧美高清| 欧美成人精品一区二区三区| 日韩天堂av| 免费人成精品欧美精品| 亚洲视频精选| 激情综合网址| 国产精品日韩一区二区| 久久国产精品色婷婷| 在线视频亚洲| 久久久久久久久蜜桃| 欧美一区二区观看视频| 中文欧美日韩| 亚洲欧美一区二区精品久久久 | 欧美视频在线观看一区| 欧美高清免费| 欧美日韩一区二区视频在线 | 亚洲欧美综合v| 亚洲欧美卡通另类91av| 99精品国产一区二区青青牛奶 | 99国产精品一区| 亚洲中字黄色| 一区二区三区色| 欧美大片在线看免费观看| 日韩一级不卡| 欧美精品一区二区久久婷婷| 亚洲国产一区二区视频| 久久精品国产久精国产爱| 亚洲国产精品一区二区第四页av| 欧美成人a∨高清免费观看| 欧美二区视频| 日韩一级片网址| 亚洲欧美日韩国产综合精品二区| 久久久久久9999| 欧美日韩在线精品| 伊人久久亚洲热| 久久综合999| 午夜精品国产精品大乳美女| 久久久久高清| 欧美激情欧美狂野欧美精品| 国产伦一区二区三区色一情| 最新国产成人av网站网址麻豆| 最新成人av网站| 免费成人av在线| 亚洲一区影院| 欧美日韩中字| 一本大道久久a久久精品综合| 亚洲一区二区影院| 亚洲国产毛片完整版 | 欧美日本一区二区高清播放视频| 欧美日韩成人在线播放| 在线精品国产欧美| 久久午夜电影网| 欧美在线视屏| 韩国视频理论视频久久| 性欧美大战久久久久久久免费观看| 日韩视频免费观看高清完整版| 欧美国产日韩一区二区三区| 亚洲一区尤物| 亚洲尤物在线| 亚洲精品美女91| 夜夜精品视频一区二区| 国产一区二区剧情av在线| 亚洲高清在线观看| 黄色精品一二区| 午夜精品免费视频| 亚洲在线不卡| 在线国产精品播放| 亚洲精品国产无天堂网2021| 欧美日韩a区| 久久久久综合| 欧美精品18| 久久aⅴ国产欧美74aaa| 久久久久综合| 性欧美8khd高清极品| 亚洲午夜日本在线观看| 欧美一区二区精品久久911| 亚洲精品社区| 久久久久国产一区二区三区四区 | 欧美国产一区在线| 国产精品高清一区二区三区| 久久这里有精品视频| 国产精品国产三级国产普通话99| 久久久久国产精品一区二区| 欧美日韩在线不卡| 久久综合图片| 国产日韩在线播放| 中日韩男男gay无套| 一区二区三区久久精品| 欧美成人资源| 欧美成年人视频网站欧美| 国产精品亚洲美女av网站| 一本色道久久88精品综合| 亚洲区免费影片| 免费h精品视频在线播放| 免费在线看一区| 国产在线不卡| 久久久久国产精品麻豆ai换脸| 午夜在线播放视频欧美| 国产精品国产自产拍高清av王其| 亚洲精选在线观看| 亚洲午夜小视频| 国产精品美女xx| 欧美专区在线观看| 美女网站久久| 亚洲高清不卡av| 欧美日韩国产精品自在自线| 夜色激情一区二区| 性感少妇一区| 1204国产成人精品视频| 欧美91精品| 中文网丁香综合网| 噜噜噜91成人网| 一区二区三区视频在线观看| 国产精品色婷婷| 久色婷婷小香蕉久久| 日韩一区二区福利| 久久久久久穴| 一本大道久久精品懂色aⅴ| 国产女人水真多18毛片18精品视频| 欧美亚洲视频在线看网址| 欧美福利电影网| 欧美精品一区二区三区一线天视频| aa日韩免费精品视频一| 久久久久久久久一区二区| 一本色道久久综合一区| 在线高清一区| 国内精品久久久| 国产精品国码视频| 欧美日韩国产精品一卡| 免费一级欧美片在线播放| 久久精品噜噜噜成人av农村| 亚洲视频香蕉人妖| 日韩一级裸体免费视频| 一区二区三区久久久| 亚洲欧洲一二三| 亚洲激情六月丁香| 最新高清无码专区| 亚洲韩国青草视频|