?
?
?
?? 當你看到這個命名空間的時候,別因為是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();
??????? }
??? }
}
?
運行結果如下:
如果你的軟件對操作系統版本或內存有特殊的要求,使用這些信息可以方便地進行相關信息的判斷。如果你需要得到更多關于windows的相關信息,如計算機名稱(computername)、當前登錄名
(username)等,可以使用位于system.windows.forms命名空間中的systeminformation類來獲取。
播放波形文件
???? 位于microsoft.visualbasic.devices命名空間下的audio類可以幫助
?
此文來自: 馬開東博客 轉載請注明出處 網址: http://www.makaidong.com
我們快速地播放波形音頻文件。波形文件是一種無損的音頻文件,在很多場合都可使用,其中,在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()方法,向指定的網絡位置上傳文件。一般情況下,第一個參數指定需要上傳文件的本地位置,第二個參數指定上傳到的網絡位置。
?
搜索此文相關文章:一個實用的卻被忽略的命名空間:Microsoft.VisualBasic
此文鏈接:http://www.makaidong.com/IT%E5%8D%9A%E5%AE%A2%E5%9B%AD/35753.shtml
轉載請注明出處:一個實用的卻被忽略的命名空間:Microsoft.VisualBasic - 博客園