文章出處

   當你看到這個命名空間的時候,別因為是VB的東西就匆忙關掉網頁,那將會是您的損失,此命名空間中的資源最初目的是為了簡化VB.NET開發而創建的,所以Microsoft.VisualBasic并不屬于System命名空間,而是獨立存在的。雖然是為了VB而建的,但并不妨礙我們在C#中使用它。

   Microsoft.VisualBasic命名空間的資源,可以幫助我們方便、快捷的實用一些常用的計算機軟/硬件及網絡資源,提高開發中的效率。

     對于本地計算機資源的使用,我們可能會著重關注Microsoft.VisualBasic.Devices命名空間,在這里包含了與本機設備和操作系統相關的資源。

     使用這些資源,我們必須在項目中添加它們的引用。可以通過菜單“項目”->“添加引用”,在“.NET”頁選中“Microsoft.VisualBasic”,然后“確定”完成。然后,別忘了在代碼文件中使用它們

     在這里我們主要關注一下Microsoft.VisualBasic.Devices命名空間中的資源,主要包括:

  • Audio類                                                                                    
  • Clock類
  • Computer類
  • ComputerInfo類
  • Keyboard類
  • Mouse類
  • Network類
  • Ports類
  • ServerComputer類

關于這些資源的詳細說明,大家可以參考MSDN Library。下面,我們將通過幾種典型的應用了解下如何在C#代碼中使用這些資源。

獲取操作系統與內存信息

      為了實現本功能,我們使用了ComputerInfo類,下面代碼顯示當前計算機的系統名稱和版本,以及內存相關的信息。

using Microsoft.VisualBasic;
using Microsoft.VisualBasic.Devices;
namespace Microsoft.VisualBasic_Demo
{
    class Program
    {
        //將字節轉換為兆字節
        static ulong ByteToMb(ulong byteValue)
        {
            return byteValue / 1048576;
        }
        static void Main(string[] args)
        {
            ComputerInfo myPcInfo = new ComputerInfo();

            Console.WriteLine("操作系統:{0}", myPcInfo.OSFullName);
            Console.WriteLine("版本:{0}", myPcInfo.OSVersion);

            Console.WriteLine("全部物理內存:{0}",
                ByteToMb(myPcInfo.TotalPhysicalMemory));
            Console.WriteLine("全部虛擬內存:{0}",
                ByteToMb(myPcInfo.TotalVirtualMemory));
            Console.WriteLine("可用物理內存:{0}",
                ByteToMb(myPcInfo.AvailablePhysicalMemory));
            Console.WriteLine("可用虛擬內存:{0}",
                ByteToMb(myPcInfo.AvailableVirtualMemory));


            Console.Read();
        }
    }
}

 

運行結果如下:

QQ截圖20130928131212

如果你的軟件對操作系統版本或內存有特殊的要求,使用這些信息可以方便地進行相關信息的判斷。如果你需要得到更多關于Windows的相關信息,如計算機名稱(ComputerName)、當前登錄名

(UserName)等,可以使用位于System.Windows.Forms命名空間中的SystemInformation類來獲取。

播放波形文件

     位于Microsoft.VisualBasic.Devices命名空間下的Audio類可以幫助我們快速地播放波形音頻文件。波形文件是一種無損的音頻文件,在很多場合都可使用,其中,在Windows系統中的系統聲音就是使用波形文件。

     在Audio類中,我們主要使用Play()方法播放波形文件。代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.VisualBasic;
using Microsoft.VisualBasic.Devices;
namespace Microsoft.VisualBasic_Demo
{
    class Program
    {
        static void Main(string[] args)
        {
            //播放聲音
            Audio myAudio = new Audio();
            myAudio.Play(@"c:\test.wav", AudioPlayMode.Background);
            Console.Read();
        }
    }
}

      代碼很簡單,目的就是播放位于“C:\”中的”test.wav”波形文件。文件不存在或者格式不支持時,會產生異常,所以,在正式代碼中,你應該使用try-catch語句結構。

       Play()方法的兩個參數,第一個是需要播放文件的路徑。第二個參數指定了播放模式(Mode),由AudioPlayMode枚舉類型指定,主要有如下選項:

  • Background,在后臺中播放聲音。這是默認值,上述代碼可以直接寫成”
    myAudio.Play(@"c:\test.wav");“。
  • BackgroundLoop,在后臺中循環播放,直到調用Stop()方法為止。
  • WaitToComplete,播放聲音,直到聲音播放完成才繼續執行其他代碼。

 

 

網絡基本應用

    有時,需要在軟件中判斷網絡是否暢通,或者上傳或下載文件,這時,可以使用Microsoft.VisualBasic.Devices命名空間的Network類。

Network類只要包括如下常用資源:

  • IsAvaiable屬性,判斷計算機是否已聯網,如果網絡暢通,則此屬性返回true,否則,
    返回false。
  • Ping()方法,用于測試與另一臺計算機的連接是否暢通。參數可以是URL、計算機名或IP地址。
  • DownloadFile()方法,從指定的網絡位置下載文件。一般情況下,第一個參數指定需要下載文件的網絡位置,第二個參數指定本地存放位置。
  • UploadFile()方法,向指定的網絡位置上傳文件。一般情況下,第一個參數指定需要上傳文件的本地位置,第二個參數指定上傳到的網絡位置。

文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()