設(shè)為首頁收藏本站Access中國

Office中國論壇/Access中國論壇

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

tag 標(biāo)簽: vb6或vba的現(xiàn)代框架

相關(guān)帖子

版塊 作者 回復(fù)/查看 最后發(fā)表

沒有相關(guān)內(nèi)容

相關(guān)日志

分享 菜鳥初學(xué)vb系列篇---大夢初醒
熱度 2 ganlinlao 2013-10-21 21:00
使用 VBRichClient 庫 ====================   世上竟然還有如此牛人(Olaf Schmidt)為VB開發(fā)了如此牛的擴(kuò)展庫!它還有一個偉大的目標(biāo): 擺脫 Microsoft COM 的依賴,更容易實現(xiàn)平臺移植性(基于新的經(jīng)典VB編譯器),現(xiàn)在的 VBRichClient正是為達(dá)到該目標(biāo)的一個去耦框架。 它能做什么?簡單說能提供以下VB沒有或很難實現(xiàn)的功能:多線程、函數(shù)指針調(diào)用、數(shù)組列表、高級集合類 內(nèi)存數(shù)據(jù)庫、XML DOM/SAX訪問、子類化、公式計算、SGDI封裝、各種加密和壓縮算法、文件處理、網(wǎng)絡(luò)Socket、 簡單下載、JSON、JPG壓縮解碼、音頻設(shè)備訪問、物理引擎、Webkit瀏覽器、QLite數(shù)據(jù)庫、基于Cairo的2D繪圖、 打印、RPC、Web服務(wù)器…… 多到你想不到的功能,而且一直在不斷擴(kuò)展中。 VBRichClient 官方網(wǎng)站 http://www.VBRichClient.com/ 歡迎登陸以上網(wǎng)站,關(guān)注最新消息,還有其它更多內(nèi)容。這里有經(jīng)典VB的未來! 由于官網(wǎng)也沒有太多的幫助文檔,所以只能通過摸索逐步熟悉該庫的使用,好在涉及命名都比較通俗易懂, 雖然沒有文檔,理解起來基本也沒有太大難度。還有通過非官方網(wǎng)站,可以下載到 3.0 版本的庫,里面有不少 示例可以參考。 1、VBRichClient 的引用 是的,你完全可以不對它進(jìn)行引用!就可以使用它的功能!參考【使用 DirectCOM 庫】 當(dāng)然你也可以按熟悉的常規(guī)方法,通過注冊引用該庫 2、VBRichClient 的分發(fā) 如果采用引用方式使用,則需要將 vbRichClient5.dll 和 vb_cairo_sqlite.dll 一起復(fù)制到程序目錄,并 對 vbRichClient5.dll 進(jìn)行注冊。 如果采用免注冊方法使用,則還需要將 DirectCOM.dll 一并復(fù)制到程序目錄或System目錄。 3、VBRichClient 的使用 VBRichClient 是個相當(dāng)龐大的庫,需要花一些時間熟悉里面的類,最簡單的辦法就是使用其中的 cConstructor 類直接“生產(chǎn)”其它的對象。使用 DirectCOM 免注冊使用,則必須使用 cConstructor 訪問其他類。 dim rcConstructor as object dim rcMemDB as object set rcConstructor = DirectCom_Create("vbRichClient5.dll", "cConstructor") set rcMemDB = rcConstructor.MemDB() rcMemDB.xxx 4、cConstructor 成員列表 ● ArrayList 簡介:創(chuàng)建數(shù)組列表對象,支持動態(tài)添加、移除,也可以當(dāng)隊列或者棧來用,支持排序 原型:Function ArrayList(vType As VbVarType, ParamArray P() As Variant) As cArrayList ● AudioCaptureClient 簡介:創(chuàng)建捕捉音頻對象 原型:Function AudioCaptureClient() As cAudioCaptureClient ● AudioRenderClient 簡介:創(chuàng)建播放音頻對象 原型:Function AudioRenderClient() As cAudioRenderClient ● Cairo 簡介:創(chuàng)建 Cairo 2D 繪圖對象,支持許多高級繪圖函數(shù),比如反鋸齒,透明,文字,變形…… 原型:Function Cairo() As cCairo ● cdeclCall 簡介:以CDECLCALL約定調(diào)用函數(shù)指針 原型:Function cdeclCall(retType As enmRetType, pFunc As Long, ParamArray P() As Variant) ● cdeclCallDirect 簡介:以CDECLCALL約定調(diào)用函數(shù)指針,與cdeclCall區(qū)別不明 原型:Function cdeclCallDirect(retType As enmRetType, pFunc As Long, pArgs As Long, ArgsByteCount As Long) ● CleanupRichClientDll 簡介:清空VBRichClient的臨時文件?未驗證 原型:Sub CleanupRichClientDll() ● ClipBoard 簡介:創(chuàng)建剪切板對象,比VB自帶的對象好用 原型:Function ClipBoard() As cUniClipBoard ● CodePageMapping 簡介:創(chuàng)建編碼和代碼頁映射對象 原型:Function CodePageMapping() As cCodePageMapping ● Collection 簡介:創(chuàng)建集合對象,該對象比VB自帶的Collection和Scripting.Dictionary有更多的功能 原型:Function Collection( , , , ) As cCollection ● ControlPoints 簡介:創(chuàng)建控制點對象,用來在2D繪圖中控制形狀或曲線的參數(shù) 原型:Function ControlPoints() As cControlPoints ● Converter 簡介:創(chuàng)建轉(zhuǎn)換數(shù)據(jù)庫對象 原型:Function Converter( ) As cConverter ● CreateInstanceUnk 簡介:通過注冊表中的 ClsID 和 IID 直接創(chuàng)建COM對象 原型:Function CreateInstanceUnk(ClsID As String, IID As String) As IUnknown ● Crypt 簡介:創(chuàng)建加密對象,該對象支持各種常見加密解密算法和壓縮算法 原型:Function Crypt() As cCrypt ● DataObjectFiles 簡介:創(chuàng)建數(shù)據(jù)對象文件 原型:Function DataObjectFiles() As cDataObjectFiles ● DataSource 簡介:創(chuàng)建數(shù)據(jù)源對象 原型:Function DataSource() As cDataSource ● DC 簡介:創(chuàng)建設(shè)備上下文對象,GDI繪圖用 原型:Function DC( , ) As cDC ● DDB 簡介:創(chuàng)建設(shè)備相關(guān)位圖對象,GDI繪圖用 原型:Function DDB( , , , ) As cDDB ● DIB 簡介:創(chuàng)建設(shè)備無關(guān)位圖對象,GDI繪圖用 原型:Function DIB( , , , , , , ) As cDIB ● Displays 簡介:創(chuàng)建顯示器對象,支持多顯示器,獲取顯示器硬件參數(shù) 原型:Function Displays() As cDisplays ● Downloads 簡介:創(chuàng)建簡單下載對象,支持進(jìn)度報告 原型:Function Downloads() As cDownloads ● EventCollection 簡介:創(chuàng)建事件集合對象,作用暫未知 原型:Function EventCollection() As cEventCollection ● Formula 簡介:創(chuàng)建公式對象,對包含計算公式的字符串求值 原型:Function Formula() As cFormula ● FSO 簡介:創(chuàng)建文件系統(tǒng)對象,與Scripting.FileSystemObject類似,但有更多新功能,比如打開保存文件對話框、獲取臨時文件、獲取各種特殊文件夾…… 原型:Function FSO( ) As cFSO ● GestureConfigList 簡介:作用暫未知 原型:Function GestureConfigList() As cGestureConfigList ● GetCPUCoresCount 簡介:獲取CPU核心數(shù) 原型:Function GetCPUCoresCount() As Long ● GetFuncPtr 簡介:獲取直接從DLL文件獲取函數(shù)指針 原型:Function GetFuncPtr(LibNameOrFullPathOrHandle, FunctionName As String, ) As Long ● GetStringFromPointerW 簡介:從指針?biāo)竷?nèi)存獲取字符串 原型:Function GetStringFromPointerW(WStrPtr As Long, ) As String ● HPTimer 簡介:獲取時間 原型:Function HPTimer() As Double ● IsVistaPlus 簡介:是否為 Windows Vista 系統(tǒng) 原型:Function IsVistaPlus() As Boolean ● IsWin7Plus 簡介:是否為 Windows 7 系統(tǒng) 原型:Function IsWin7Plus() As Boolean ● IsWin8Plus 簡介:是否為 Windows 8 系統(tǒng) 原型:Function IsWin8Plus() As Boolean ● IsXPPlus 簡介:是否為 Windows XP 系統(tǒng) 原型:Function IsXPPlus() As Boolean ● JPG 簡介:創(chuàng)建JPEG解壓縮對象 原型:Function JPG() As cJPG ● JSONArray 簡介:創(chuàng)建 JSON 數(shù)組對象 原型:Function JSONArray() As cCollection ● JSONDecodeToCollection 簡介:將 JSON 轉(zhuǎn)換為 集合 對象 原型:Function JSONDecodeToCollection(strJSON As String, , ) As cCollection ● JSONDecodeToCollectionUTF8 簡介:將 JSON 轉(zhuǎn)換為 集合對象,JSON字符串為UTF-8編碼 原型:Function JSONDecodeToCollectionUTF8(UTF8Bytes() As Byte, , ) As cCollection ● JSONObject 簡介:創(chuàng)建 JSON 對象 對象 原型:Function JSONObject() As cCollection ● KeyWatcher 簡介:創(chuàng)建鍵盤監(jiān)聽器對象 原型:Function KeyWatcher(VKeysCommaSeparated As String, , ) As cKeyWatcher ● MemCopy 簡介:拷貝內(nèi)存 原型:Sub MemCopy(pDst As Long, pSrc As Long, Bytes As Long) ● MemDB 簡介:創(chuàng)建內(nèi)存數(shù)據(jù)庫對象 原型:Function MemDB() As cMemDB ● MMDeviceEnumerator 簡介:創(chuàng)建多媒體硬件枚舉器對象 原型:Function () As cMMDeviceEnumerator ● MP3Resource 簡介:創(chuàng)建MP3資源對象,使用方法未知 原型:Function MP3Resource() As cMP3Resource ● OneShotTimer 簡介:創(chuàng)建觸發(fā)器型定時器 原型:Function OneShotTimer() As cOneShotTimer ● OOEmbed 簡介:創(chuàng)建Open Office對象,未驗證 原型:Function OOEmbed( , , ) As cOOEmbed ● PhysicsEngine 簡介:創(chuàng)建物理引擎對象,常用于游戲開發(fā) 原型:Function PhysicsEngine() As cPhysicsEngine ● Properties 簡介:創(chuàng)建屬性對象 原型:Function Properties() As cProperties ● Recordset 簡介:創(chuàng)建數(shù)據(jù)庫記錄對象 原型:Function Recordset( , ) As cRecordset ● RegFree 簡介:創(chuàng)建COM免注冊對象,支持多線程 原型:Function RegFree() As cRegFree ● ReportDocument 簡介:創(chuàng)建打印文檔對象 原型:Function ReportDocument( , , ) As cReportDocument ● ReportPage 簡介:創(chuàng)建打印頁對象 原型:Function ReportPage( , ) As cReportPage ● RPCConnection 簡介:創(chuàng)建RPC調(diào)用連接對象 原型:Function RPCConnection( , , , , , ) As cRPCConnection ● RPCListener 簡介:創(chuàng)建RPC調(diào)用監(jiān)聽器對象 原型:Function RPCListener( , , , , , , , , , , ) As cRPCListener ● ShellLink 簡介:創(chuàng)建快捷方式對象 原型:Function ShellLink() As cShellLink ● SimpleDOM 簡介:創(chuàng)建 XML DOM 對象 原型:Function SimpleDOM( , ) As cSimpleDOM ● SimpleSax 簡介:創(chuàng)建 XML SAX 對象 原型:Function SimpleSax() As cSimpleSax ● SMBScan 簡介:創(chuàng)建 SMB 服務(wù)器掃描器對象 原型:Function SMBScan() As cSMBScan ● SortedDictionary 簡介:創(chuàng)建有序字典對象 原型:Function SortedDictionary( , ) As cSortedDictionary ● stdCall 簡介:以STDCALL約定調(diào)用函數(shù)指針 原型:Function stdCall(retType As enmRetType, pFunc As Long, ParamArray P() As Variant) ● stdCall 簡介:以STDCALL約定調(diào)用函數(shù)指針,與stdCall區(qū)別不明 原型:Function stdCallDirect(retType As enmRetType, pFunc As Long, pArgs As Long, ArgsByteCount As Long) ● Stream 簡介:創(chuàng)建數(shù)據(jù)流對象,類似于ADO中的Stream對象 原型:Function Stream() As cStream ● StringBuilder 簡介:創(chuàng)建字符串構(gòu)造器對象,快速組合字符串 原型:Function StringBuilder() As cStringBuilder ● StringCompare 簡介:創(chuàng)建字符串比較器對象,支持多種方式比較 原型:Function StringCompare() As cStringCompare ● SubClass 簡介:創(chuàng)建就子類化對象,VB中用處太大了 原型:Function SubClass() As cSubClass ● SVG 簡介:創(chuàng)建 SVG 格式分析器對象 原型:Function SVG() As cSVG ● TCPClient 簡介:創(chuàng)建 TCP 客戶端對象 原型:Function TCPClient() As cTCPClient ● TCPServer 簡介:創(chuàng)建 TCP 服務(wù)端對象 原型:Function TCPServer( , , , , ) As cTCPServer ● TDD 簡介:創(chuàng)建類自動化測試對象 原型:Function TDD( , ) As cTDD ● Timer 簡介:創(chuàng)建定時器對象,不需要窗體 原型:Function Timer( , , ) As cTimer ● Timing 簡介:作用未知 原型:Function Timing( ) As String ● UDP 簡介:創(chuàng)建 UDP 網(wǎng)絡(luò)對象 原型:Function UDP() As cUDP ● vtblCall 簡介:以虛擬函數(shù)表調(diào)用函數(shù) 原型:Function vtblCall(retType As VbVarType, punk As Long, vtblIdx As Long, ParamArray P() As Variant) ● WebArchive 簡介:創(chuàng)建WEB文檔對象,配合WebServer對象使用 原型:Function WebArchive( ) As cWebArchive ● WebKit 簡介:創(chuàng)建 WebKit 瀏覽器對象,需要在官網(wǎng)下載 WebKit 插件包,只有一個5M文件 原型:Function WebKit( , ) As cWebKit ● WebServer 簡介:創(chuàng)建Web服務(wù)器對象,可以實現(xiàn)簡單的Web服務(wù) 原型:Function WebServer() As cWebServer 更多類的用法,基本都可以見名知意,雖然沒有文檔,還是拜 Olaf Schmidt 大牛的福,才有了這么多 好用的工具。其中有不少類都可以改變以往VB的開發(fā)模型,提高開發(fā)和運行效率。 另外,VBRichClient 還有不少子項目托管在 GitHub,VB愛好者可以去關(guān)注下,千萬別讓 VBRichClient 失去 用戶,別讓 Olaf Schmidt 失去開發(fā)的動力,讓 VBRichClient 更好的發(fā)展!
個人分類: vb入門|10170 次閱讀|2 個評論

QQ|站長郵箱|小黑屋|手機(jī)版|Office中國/Access中國 ( 粵ICP備10043721號-1 )  

GMT+8, 2025-7-17 00:20 , Processed in 0.067882 second(s), 13 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

返回頂部