转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> VB.NET程序 >> 正文
向Visual Basic程序员介绍My命名空间(二)         ★★★★

向Visual Basic程序员介绍My命名空间(二)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1477 更新时间:2009/4/23 18:59:11

My.Computer

My的另一个功能块是Computer对象。My.Computer对象可以让你访问系统底层和应用程序所在硬件平台的信息。示例应用程序的第二个选项卡展示了你在My.Computer对象中能找到的有趣属性。

图三

My.Computer 选项卡

控制这个网格的代码如下:

myAppDS.MyComputer.AddMyComputerRow("Clock", _

   My.Computer.Clock.LocalTime)

myAppDS.MyComputer.AddMyComputerRow("GMT Time", _

   My.Computer.Clock.GmtTime)

myAppDS.MyComputer.AddMyComputerRow("Tick Count", _

   My.Computer.Clock.TickCount)

myAppDS.MyComputer.AddMyComputerRow("GMT Time", _

   My.Computer.EventLogs.Item("Application").ReadEntries().Item(1).Message)

myAppDS.MyComputer.AddMyComputerRow("CRTL Key Down", _

  My.Computer.Keyboard.CtrlKeyDown.ToString())

myAppDS.MyComputer.AddMyComputerRow("Button Count", _

   My.Computer.Mouse.ButtonCount)

myAppDS.MyComputer.AddMyComputerRow("Buttons Swapped", _

   My.Computer.Mouse.ButtonsSwapped)

myAppDS.MyComputer.AddMyComputerRow("Mouse Exists", _

   My.Computer.Mouse.Exists.ToString())

myAppDS.MyComputer.AddMyComputerRow("Wheel Scroll Lines", _

   My.Computer.Mouse.WheelScrollLines.ToString())

myAppDS.MyComputer.AddMyComputerRow("Wheel Exists", _

   My.Computer.Mouse.WheelExists)

myAppDS.MyComputer.AddMyComputerRow("Computer Name", _

   My.Computer.Name)

myAppDS.MyComputer.AddMyComputerRow("Connection Status", _

   My.Computer.Network.ConnectionStatus)

myAppDS.MyComputer.AddMyComputerRow("Connection Status", _

   My.Computer.Network.IPAddresses(0).ToString())

 myAppDS.MyComputer.AddMyComputerRow("Operating System Platform", _

   My.Computer.OperatingSystem.Platform)

myAppDS.MyComputer.AddMyComputerRow("Version", _

   My.Computer.OperatingSystem.Version.Major & "." & _

   My.Computer.OperatingSystem.Version.Minor & "." & _

   My.Computer.OperatingSystem.Version.Revision & "." & _

   My.Computer.OperatingSystem.Version.Build)

myAppDS.MyComputer.AddMyComputerRow("Full Name HKEY_CURRENT_USER", _

   My.Computer.Registry.CurrentUser.FullName)

myAppDS.MyComputer.AddMyComputerRow("Device Name", _

   My.Computer.Screen.DeviceName)

这段代码与控制My.Application选项卡中的网格控件的代码非常相似。用一个类型化的数据集来装载My.Computer对象属性中获得的值,并绑定到一个表格控件。

My.Computer对象的元素不是都能够显示在表格控件里。下表列出的项目包括没有在表格控件里显示的属性或方法。

My.Computer

属性/方法                                              描述

Clock

允许你访问当前中时区时间和本地时间,以及计数刻度。

EventLogs

允许你访问本地事件日志信息以及创建或删除事件日志。

FileSystem

允许你进行许多IO操作,如复制文件、目录,移动文件、目录,读取或写入文件等。一般情况只需要一行代码。

Keyboard

允许你获取当前键盘上某些案件的状态。比如获取CTRL键、SHIFT键或ATL键是否被按下,或者CAPS LOCK/SCROLL LOCK是否处于打开状态等。

Mouse

允许你获取鼠标的状态以及它所附带的特定的硬件特征,如有几个按键,是否带有滚论等。

Name

告诉你当前正运行的本地计算机的名称。

Network

允许你访问本地计算机的IP地址信息,本地计算机的连接状态,还有Ping一个地址的功能。

Operating System

允许你访问本地计算机平台和版本的信息。

Registry

允许你访问注册表,并提供读取和写入注册表的功能。

Screen

允许你访问系统附带的监视器以及显示属性,如BitsPerPixel和WorkingArea等。

My.Computer在开发中的相关应用

My.Computer提供给你很多访问系统底层的功能,你可以用在很多方面。比如你可以用Network属性和其相关的Ping、PingWithDetails方法轻易地Ping一个网络地址。

Dim pingResult As Microsoft.VisualBasic.Net.PingResult = _

   My.Computer.Network.PingWithDetails("www.3leaf.com")

If pingResult.PingSuccesses > 0 Then

   Dim pingDetails As String = "Average Ping Time in MS: " & _

       ingResult.AveragePingTimeInMilliseconds & vbCrLf & _

       "Bytes Received: " & pingResult.BytesReceived.ToString() & vbCrLf & _

       "IP Address: " & pingResult.IPAddress.ToString() & vbCrLf &_

       "Ping Attempts: " & pingResult.PingAttempts.ToString() & vbCrLf & _

       "Ping Successes: " & pingResult.PingSuccesses.ToString()

   MessageBox.Show(pingDetails)

Else

   MessageBox.Show("Ping of www.3leaf.com was not successful")

End If

这段代码最关键的部分是My.Computer.Network.PingWithDetails()。这行代码返回一个PingResult对象,其中包含了标准Ping动作所返回的数据。如果最少一次Ping操作成功的话,平均响应时间,获得的字节数,总Ping数目和成功数目都会显示在一个消息框中。My.Computer.Network还提供一个简化版的Ping,只返回True或False以示Ping成功与否。像这样Ping一个地址的功能可以让你方便地确定是否能与服务器正式建立通信。通过使用My.Computer.Network.ConnectionStatus,你还可以方便地确定当前网络连接的状态。ConnectionStatus属性根据计算机现在是否有网络连接而返回True或False。

My.Computer另一个很好的应用是在需要访问文件系统的时候。My.Computer.FileSystem提供给你更好的访问文件系统的方法,所需的代码比用VB.NET来实现更少。用My.Computer.FileSystem,你可以只用一行代码完成下列任务。

·         在文件后面附加文本。

·         从文件中读取所有文本。

·         复制文件夹时创建所有完整路径所需的父文件夹。

·         移动文件夹时创建所有完整路径所需的父文件夹。

你还能用Microsoft.VisualBasic.FileIO命名空间中的类型简化文件夹、文件和驱动器的操作。这些类型一般都是My.Computer.FileSystem对象的属性和方法返回的类型。

下面的例子是用My在文件末尾附加文本所需的全部代码。

My.Computer.FileSystem.AppendText(filePath, “Hello from " & _
     “My.Computer.FileSystem”)

如果你想读取一个文件的全部文本,只需下列代码即可做到。

My.Computer.FileSystem.ReadAllText(filePath)

复制和移动文件夹变得非常容易。

My.Computer.FileSystem.CopyFolder(sourcePath, targetPath, True, True)

上面这行代码将文件夹从sourcePath复制到targetPath。最后两个布尔型参数指定targetPath是否要覆盖已经存在的文件夹以及指定是否需要创建所需的父文件夹。

刚才提到过FileSystem对象的许多属性和方法都可以返回Drive、Folder或File类型的对象。这些Microsoft.VisualBasic.FileIO名字空间中的对象封装了许多新的属性和方法,可以让一般的编程工作得到简化。比如可以用一行代码可以取得“我得文档”文件夹所在的驱动器。

My.Computer.FileSystem.SpecialFolders.MyDocuments.Drive.DriveName

更重要的是你可以获得“我得文档”文件夹所在的驱动器所剩余的磁盘空间。

My.Computer.FileSystem.SpecialFolders.MyDocuments.Drive.FreeSpace

用文件对象对特定文件或文件夹的操作同样非常容易。比如你可以用一行代码轻松地重名名文件。

My.Computer.FileSystem.SpecialFolders.MyDocuments.Drive.FreeSpace

My.User

My名字空间的下一个功能块是User对象。My.User对象允许你获取当前登录用户的信息如用户名,域名,以

[1] [2]  下一页


[VB.NET程序]Visual Basic 6 逆向工程与反逆向工程 (2)  [VB.NET程序]Visual Basic 6 逆向工程与反逆向工程 (1)
[VB.NET程序]用Visual Basic创建复杂窗体  [VB.NET程序]Visual Basic的类对于面向对象的支持
[VB.NET程序]如何在Visual Basic 6.0 中连接加密的Access数据库  [VB.NET程序]使用Visual Basic操纵XML文档
[VB.NET程序]Visual Basic.Net连各种数据库的几种方法  [VB.NET程序]Visual Basic .NET资源工具包
[VB.NET程序]效率提高两倍!——Visual Basic.net 新力量  [VB.NET程序]复杂和高效——Visual Basic.net新力量
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台