1、vb.net ?完全符合面向?qū)ο蟮木幊陶Z言抽象、封裝、繼承的四大特性,而vb不支持繼承。
創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比烏海網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式烏海網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋烏海地區(qū)。費用合理售后完善,十年實體公司更值得信賴。
2、錯誤處理不同。
vb中只是On Error.....goto和On Errer Resume Next ,這些錯誤稱為非結(jié)構(gòu)化異常處理。而在vb.net中采用的結(jié)構(gòu)化異常處理機制,try...catch....finally控制。
3、兩者產(chǎn)生的窗體不同。
vb.net 允許創(chuàng)建不同類型的應(yīng)用程序,例如,創(chuàng)建ASP.NET和ASP.NET Web 服務(wù)應(yīng)用程序,還允許創(chuàng)建控制臺應(yīng)用程序和作為桌面服務(wù)運行的應(yīng)用程序。但是vb 只能創(chuàng)建Windows窗體。
4、數(shù)據(jù)庫訪問的差別。
vb6.0是通過ADO(Active X Data Objext)來實現(xiàn)對數(shù)據(jù)庫訪問。而vb.net 是通過ADO.NET來訪問數(shù)據(jù)庫。
擴展資料
Visual Basic(簡稱VB)是Microsoft公司開發(fā)的一種通用的基于對象的程序設(shè)計語言,為結(jié)構(gòu)化的、模塊化的、面向?qū)ο蟮摹瑓f(xié)助開發(fā)環(huán)境的事件驅(qū)動為機制的可視化程序設(shè)計語言。是一種可用于微軟自家產(chǎn)品開發(fā)的語言。
“Visual” 指的是開發(fā)圖形用戶界面 (GUI) 的方法——不需編寫大量代碼去描述界面元素的外觀和位置,而只要把預(yù)先建立的對象add到屏幕上的一點即可。
“Basic”指的是 BASIC (Beginners All-Purpose Symbolic Instruction Code) 語言,是一種在計算技術(shù)發(fā)展歷史上應(yīng)用得最為廣泛的語言。
Visual Basic源自于BASIC編程語言。VB擁有圖形用戶界面(GUI)和快速應(yīng)用程序開發(fā)(RAD)系統(tǒng),可以輕易的使用DAO、RDO、ADO連接數(shù)據(jù)庫,或者輕松的創(chuàng)建Active?X控件,用于高效生成類型安全和面向?qū)ο蟮膽?yīng)用程序 。
參考資料:百度百科-Visual Basic
VB對于win32 API的支持還是不錯的。而且比起用C++來說還簡化了不少。建議你看些windows系統(tǒng)機制的資料,比如windows消息處理機制,windows窗口過程的實現(xiàn)等。最好是去看看MFC的教程,會讓你對win32 API有更深入的了解。推薦孫鑫的《VC++深入詳解》,給其他窗體發(fā)送消息,鉤子什么的都有詳細(xì)的解釋。
關(guān)于做鉤子,使用SetWindowsHookEx,UnhookWindowsHookEx,CallNextHookEx,CopyMemory四個win32 API函數(shù),再加上一個自己寫的回調(diào)函數(shù)就可以實現(xiàn)。
控制別的窗體最小化,給其他窗體發(fā)送消息,首先用FindWindow函數(shù)找到目標(biāo)窗體的句柄(對于VB自己的窗體來說Me.hwnd屬性),然后用SendMessage,PostMessage函數(shù)發(fā)送消息。還可以用SetWindowText但是windows消息有幾百種,各種消息的參數(shù)可能是不同的。要查MSDN搞懂你要使用的消息的參數(shù)結(jié)構(gòu)。
代碼:關(guān)閉其他窗口:
模塊中的聲明:
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Const WM_CLOSE = H10 '定義消息常量
窗體中:
Dim hnd As Long '定義一個長整型變量儲存句柄
Private Sub Form_Load()
hnd = FindWindow(vbNullString, "test") '獲取目標(biāo)窗體句柄,這里目標(biāo)窗體的標(biāo)題為"test"
SendMessage hnd, WM_CLOSE, 0, 0 '發(fā)送WM_CLOSE消息關(guān)閉窗體
End Sub
這是典型對.net構(gòu)架不理解造成的!
只要是.net編程,一定使用的是.net類庫,必須是同運行版本的.net支持方可運行。而所謂的vb.net只是說編程的語言層使用的是vb語言而已。該語言在.net構(gòu)架下被編譯成為IL語言(MSIL,嚴(yán)格說來是IL的一個子集)。而上層的語言只是產(chǎn)生軟件時所使用的一個不同語言規(guī)則而已,與IL已經(jīng)沒有任何相關(guān)性了。上層語言無論是C#還是VB,甚至是Java(J#)均只適應(yīng)編程人員的一個策略,與整個構(gòu)造沒有多大的相關(guān)性。
.net的最終目的就是讓不同的語言編程人員能協(xié)同工作,那么語言在其中的區(qū)別沒有多大了,所有的運行核心都是由.net完成的,沒有必須依賴于.net。這是沒有任何疑問的。
vb.net就是.net,只是表示用VB語言人的稱呼,用C#的則稱其為C#.net,但不管是哪種,它是無法脫離.net的。
網(wǎng)站標(biāo)題:vb.net底層程序 vb net
瀏覽地址:http://jinyejixie.com/article4/dosspoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、網(wǎng)站維護、微信公眾號、微信小程序、ChatGPT、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)