ByRef FingerBuf As string
站在用戶的角度思考問題,與客戶深入溝通,找到臨夏網(wǎng)站設計與臨夏網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站設計、網(wǎng)站建設、外貿(mào)網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、主機域名、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務覆蓋臨夏地區(qū)。
指針傳遞要用 ByRef,另外 FingerBuf 參數(shù)需要緩存區(qū),不得小于256×304字節(jié)
這個應該是打印機命令格式,不同的打印機命令格式不盡相同,你可以找這一款打印機的命令說明看一看,一般光盤里有帶的,或者到官網(wǎng)上下也可以。下面一些你可以先看看:
英文模式下的命令
代碼 功能
CR 回車
ESC ! 設置打印方式
ESC % 選擇或取消用戶自定義字符集
ESC 定義用戶自定義字符集
ESC * 設置位映射方式
ESC @ 初始化打印機
ESC ~ LED ON/OFF
ESC 返回行首
ESC 2 選擇行間距為1/6英寸
ESC 3 設置行進為最小間距
ESC BEL 蜂鳴器ON/OFF
ESC C 設置單頁長度
ESC c0 選擇打印頁
ESC c1 選擇行間距
ESC c3 選擇紙結(jié)束信號輸出
ESC c4 選擇打印紙及檢測器(終止打印)
ESC c5 禁止/使能面板開關
ESC c6 禁止/使能ON-LINE開關
ESC d 打印及N行進紙
ESC D 設置TAB位置
ESC e 打印病退回N行
ESC f 設單頁等待時間
ESC F 選擇或取消單頁退紙區(qū)
ESC i 全切割
ESC J 以最小間距進行打印和進紙
ESC K 以最小間距進行打印和退紙
ESC l 選擇或取消倒過來的字符
ESC m 局部切割
ESC o 印章
ESC p 產(chǎn)生指定脈沖
ESC q 釋放紙
ESC r 選擇打印顏色
ESC R 選擇國際字符子集
ESC SP 設置右邊界
ESC t 選擇字符碼表
ESC U 選擇或取消單向打印
ESC V 發(fā)送打印機狀態(tài)
ESC z 設置或取消兩頁并行打印
FF 打印送出單頁
HT 水平TAB
LF 換行
RS 流水TAB
中文模式下的命令
代碼 功能
FS – n 設置中文字符下劃線模式開關
FS ! n 選擇中文字體
FS 選擇中文字符模式
FS . 取消中文模式
EPSON打印控制指令集
打印命令 功能
格式: ASCII: 以標準ASCII字符序列表示
十進制: 以十進制數(shù)字序列表示
十六進制: 以十六進制數(shù)字序列表示
說明:該命令功能和使用說明。
HT 水平制表
格式: ASCII: HT
十進制: 09
十六進制: 09
說明:
打印位置進行到下一水平制表位置。
如果當前打印位置超過了最后一個水平制表位置,則HT命令不被執(zhí)行。
水平制表位置由 ESC D命令設置。
LF 打印并換行
格式: ASCII: LF
十進制: 10
十六進制: 0A
說明:
打印存放在行編輯緩存中的一行數(shù)據(jù)并按當前設定的行距向前走紙一行。ESC2,ESC3指令可設定行距的長短。
如果行編輯緩存空,則只按當前設定的行距向前走紙一行。
CR 打印回車
格式: ASCII: CR
十進制: 13
十六進制: 0D
說明:
當打印在行編輯緩存中的一行數(shù)據(jù)之后,不進行走紙操作。
DLE EOT n 實時狀態(tài)傳送
格式: ASCII: DLE EOT n
十進制: 16 04 n
十六進制: 10 04
說明:
1 ≤ n ≤ 4
傳送以實時的方式,n代表被選擇的打印機狀態(tài),基于下列參數(shù):
n = 1: 打印機狀態(tài)
n = 2: 脫機狀態(tài)
n = 3: 錯誤狀態(tài)
n = 4: 紙檢測器狀態(tài)
返回的字節(jié)每位設置如下:
n = 1: 打印機狀態(tài)
n = 2: 脫機狀態(tài)
n = 3: 錯誤狀態(tài)
n = 4: 紙檢測器狀態(tài)
DLE ENQ n 對打印機的實時請求
格式: ASCII: DLE ENQ n
十進制: 16 05 n
十六進制: 10 5
說明:
n = 0, n = 2
打印機對主機請求作出反應,n值定義如下:
n = 0: 恢復到聯(lián)機狀態(tài)
n = 2: 清除接收和打印緩沖區(qū),并恢復錯誤.
ESC SP n 設置字符右間距
格式: ASCII: ESC SP n
十進制: 2732 n
十六進制: 1B20 n
說明:
以半點為設定單位(1/144英寸),設置字符右邊間距為n個半點距。
默認值n=0。
ESC ! n 設置字符打印方式
格式: ASCII: ESC ! n
十進制: 2733 n
十六進制: 1B21 n
說明:
0≤n≤255
ESC ! n是綜合性的字符打印方式設置命令,用于選擇打印字符的大小和下劃線。
打印參數(shù)n的每位定義為:
位 功能 值
0 1
0 字模選擇 7×9 5×7
1 無定義
2 無定義
3 著重模式 取消 設定
4 倍 高 取消 設定
5 倍 寬 取消 設定
6 無定義
7 下劃線 取消 設定
默認值n=0,
ESC % n 允許/禁止用戶自定義字符
格式: ASCII: ESC % n
十進制: 2737 n
十六進制: 1B25 n
說明:
參數(shù)n為一個字節(jié),只有最低位有效。
當n=<*******1>B時,選擇用戶自定義字符集;
當n=<*******0>B時,選擇內(nèi)部字符集。
0≤n≤255,默認值n=0。
ESC 設置用戶自定義字符
格式: ASCII: ESC y n m x d1 d2……db
十進制: 27 38 y n m x d1 d2……db
十六進制: 1B 26 y n m x d1 d2……db
說明:
該命令用于自定義字符。各參數(shù)為:
y:字符的縱向字節(jié)數(shù)。這里取 y=1,2。
n:自定義字符集的起始ASCII碼,n≥32。
m:自定義字符集的終止ASCII碼,m≤127。自定義字符個數(shù)為m-n+1,最多可定義96個字符。
當只有一個自定義字符時,取m=n。
a:自定義字符的水平方向的點數(shù)。
d1 d2……db:自定義字符的數(shù)據(jù)。每個字符 y×x個字節(jié),m-n+1個自定義字符共有:
(y×x)×(m-n+1)個字節(jié)。
每個自定義字符數(shù)據(jù)的格式:
d1 d3 … d(y×x)×(m-n+1)-1
d2 d4 … d(y×x)×(m-n+1)
樣例如下:
發(fā)送的命令如下:
ESC y c1 c2 X p1 p2 p3 d4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14
Code 1B 26 02 20 20 07 1F 80 20 00 44 00 80 00 44 00 20 00 1F 80
ESC * 設置圖形點陣
格式: ASCII: ESC * m n1 n2 D1,D2 … Dk
十進制: 27 42 m n1 n2 D1,D2 … Dk
十六進制: 1B 2A m n1 n2 D1,D2 … Dk
說明:
該命令用來設置點陣圖形模式(m)和橫向圖形點陣。
m = 0,1: 表示打印密度。
0≤n1≤255,0≤n2≤1,0≤Dk≤255,k= n1+ n2×256。
n1,n2為兩位十六進制數(shù),n1這低字節(jié),n2這高字節(jié),k= n1+ n2×256,表示該命令下載的要打印圖形的橫向點數(shù),該值應小于打印機的最大行寬打印點數(shù)。如果下送的點圖數(shù)據(jù)超出一行的最大行寬打印點數(shù)時,超出的部分被忽略。
m 垂直方向點數(shù) 點密度 最大點數(shù) 圖形打印模式
0 8 單密度 210 相鄰點打印
1 8 雙密度 420 相鄰點不打印
Dk 定義為:
ESC -?n 設置/取消下劃線模式
格式: ASCII: ESC - n
十進制: 27 45 n
十六進制: 1B 2D n
說明:
n = 0, 1, 48, 49
n = 0 or 48,取消下劃線模式。
n = 1 or 49, 設置下劃線模式。
ESC 2 設定1/6英寸換行量
格式: ASCII: ESC 2
十進制: 2750
十六進制: 1B32
說明:
此指令將打印機的換行量設定為1/6英寸。
ESC 3 n 設定 n/144英寸換行量
格式: ASCII: ESC 3n
十進制: 2751 n
十六進制: 1B33 n
說明:
此指令將打印機的換行量設定為 n/144英寸。
n=1 - 255。
ESC 〈 打印頭歸位
格式: ASCII: ESC 〈
十進制: 2760
十六進制: 1B3C
說明:
執(zhí)行該指令后,打針頭會回到原位(home的位置)。
ESC =?n 設備設置/取消
格式: ASCII: ESC = n
十進制: 27 61 n
十六進制: 1B 3D n
說明:
1 ≤?n ≤?3
默認 n = 1
位 功能 值
0 1
0 打印機選擇 取消 設定
1 顧顯選擇 取消 設定
2 無定義
3 無定義
4 無定義
5 無定義
6 無定義
7 無定義
ESC ??n 取消用戶自定義字符
格式: ASCII: ESC ? n
十進制: 27 63 n
十六進制: 1B 3F n
說明:
32 ≤?n ≤?126
ESC @ 初始化打印機
格式: ASCII: ESC @
十進制: 2764
十六進制: 1B40
說明:
該命令初始化打印機:使打印機恢復到最初的聯(lián)機狀態(tài),清除以前留下的程序。
ESC D NULL 消除所有的水平制表位置
格式: ASCII: ESC D NULL
十進制: 27 68 0
十六進制: 1B44 0
說明:
ESC D NUL命令消除所有的水平制表位置,之后再執(zhí)行的HT命令將無效。
命令(ASCII) 十六進制 功能說明
HT 9 打印位置進行到下一水平制表位置
LF 0a 打印行緩沖器里的內(nèi)容,并向前走紙一行
CR 0D 打印回車
ESC SP 1B 20 n 設置字符右邊的字間距為n個半點距(1/140英寸)
DLE EOT n 10 04 實時狀態(tài)傳送
DLE ENQ n 10 5 對打印機的實時請求
ESC SP n 1B 20 n 設置字符右間距
ESC ! n 1B 21 n 設置字符打印方式
ESC % n 1B 25 n 允許/禁止用戶自定義字符
ESC 1B 26 設置用戶自定義字符
ESC * 1B 2A 設置圖形點陣
ESC - n 1B 2D n 設置/取消下劃線模式
ESC 2 1B 32 設定1/6英寸換行量
ESC 3 n 1B 33 n 設定 n/144英寸換行量
ESC 〈 1B 3C 打印頭歸位
ESC = n 1B 3D n 設備設置/取消
ESC ? n 1B 3F n 取消用戶自定義字符
ESC @ 1B 40 初始化打印機
ESC D NULL 1B 44 0 消除所有的水平制表位置
ESC E n 1B 45 0 設置/取消著重模式
ESC G n 1B 47 0 設置/取消重疊模式
ESC J n 1B 4A n 執(zhí)行n/144英寸走紙
ESC K n 1B 4B n 打印并反向走紙
ESC R n 1B 52 n 選擇國際字符集
ESC U n 1B 55 n 設置/取消單向打印
ESC a n 1B 61 n 選擇對齊模式
ESC c 3 n 1B 63 33 n 輸出紙盡傳感器
ESC c 4 n 1B 63 34 n 設定缺紙時停止打印
ESC c 5 n 1B 63 35 n 允許/禁止走紙按鍵
ESC d n 1B 64 n 打印并進紙n字符行
ESC e n 1B 65 n 打印并反向進紙n字符行
ESC p 1B 70 產(chǎn)生錢箱驅(qū)動脈沖
ESC r n 1B 72 n 選擇打印顏色
ESC t n 1B 73 n 選擇字符集
ESC { n 1B 7B n 設置/取消倒向打印模式
FS ! 1B 75 n 漢字綜合選擇
FS & 1C 26 進入漢字打印方式
FS ~ S 1C 7E 53 n 選擇漢字打印速度
FS · 1C 2E 退出漢字打印方式
FS 2 1C 32 用戶自定義漢字
FS ? c1 c2 1C 3F c1 c2 取消用戶自定義漢字
FS C n 1C 43 n 設定日文漢字編碼系統(tǒng)
FS S n1 n2 1C 53 n1 n2 設定全角漢字字間距
FS W n 1C 57 n 設定/取消四倍角漢字模式
GS ( F pL pH a m nL nH 1D 28 設置黑標定位偏移量
GS In 1D 49 n 傳送打印機ID
GS V 1D 56 m 走紙到切紙位置
1D 56 m n
GS a n 1D 61 n 設定/取消自動返回狀態(tài)
GS r n 1D 72 n 狀態(tài)傳送
GS z 1D 7A 設置聯(lián)機恢復等待時間
.NET開發(fā)框架的幾個主要組成部分:首先是整個開發(fā)框架的基礎,即通用語言運行時以及它所提供的一組基礎類庫;在開發(fā)技術(shù)方面,.NET提供了全新的數(shù)據(jù)庫訪問技術(shù)ADO .NET,以及網(wǎng)絡應用開發(fā)技術(shù)ASP .NET和Windows編程技術(shù)Win Forms;在開發(fā)語言方面,.NET提供了VB,VC++,C#, Jscript等多種語言支持;而Visual Studio .NET則是全面支持.NET的開發(fā)工具。下面就讓我們來一步步的來了解它們:
通用語言運行時,即Common Language Runtime 。Microsoft .NET 給開發(fā)人員帶來了一種全新的開發(fā)框架,而通用語言運行時則處于這個框架的最低層,是這個框架的基礎。開發(fā)人員對于所謂的C運行時、VB運行時、Jave虛擬機這些概念已經(jīng)非常熟悉了,而通用語言運行時則為多種語言提供了一種統(tǒng)一的運行環(huán)境。另外它還提供了更多的功能和特性,比如統(tǒng)一和簡化的編程模型,用戶不必迷惑于Win32 API和COM;避免了DLL的版本和更新問題(常稱為DLL地獄),從而大大簡化了應用程序的發(fā)布和升級;多種語言之間的交互,例如我們甚至可以在VB中使用C++編寫的類;自動的內(nèi)存和資源管理等等。Microsoft .NET正是基于通用語言運行時,實現(xiàn)了這些開發(fā)人員夢寐以求的功能。
基于通用語言運行時開發(fā)的代碼稱為受控代碼,它的運行步驟大體如下:首先使用一種通用語言運行時支持的編程語言編寫源代碼,然后使用針對通用語言運行時的編譯器生成獨立于機器的微軟中間語言(Microsoft Intermediate Language),同時產(chǎn)生運行所需的元數(shù)據(jù),在代碼運行時再使用即時編譯器(Just In Time Compiler)生成相應的機器代碼來執(zhí)行。
當然對于開發(fā)者而言,他們除了關心通用語言運行時提供那么多新特性外,它究竟給開發(fā)者提供了什么樣的編程接口,這就是基礎類庫(Base Class Library)。這組基礎類庫包括了從輸入輸出到數(shù)據(jù)訪問等各方面,提供了一個統(tǒng)一的面向?qū)ο蟮摹哟位摹⒖蓴U展的編程接口。它使用一種點號分隔的方法,使得查找和使用類庫非常容易。例如基礎類庫中的根,它的命名空間是System,提供數(shù)據(jù)訪問的類庫的命名空間是System.Data。在使用時,開發(fā)者只需在自己的應用中添加所需的基礎類庫的引用,然后就可以使用這個類庫中的所有方法、屬性等等。跟傳統(tǒng)的Windows編程相比,使用和擴展基礎類庫都非常容易,這使得開發(fā)者能夠高效、快速的構(gòu)建基于下一代互聯(lián)網(wǎng)的網(wǎng)絡應用。
幾乎所有的應用程序都需要訪問從簡單的文本文件到大型的關系型數(shù)據(jù)庫等各種不同類型的數(shù)據(jù) 。在Microsoft .NET中訪問數(shù)據(jù)庫的技術(shù)是ADO .NET。ADO .NET提供了一組用來連接到數(shù)據(jù)庫,運行命令,返回記錄集的類庫,與從前的ADO(ActiveX Data Object)相比,Connection和Command對象很類似,而ADO .NET的革新主要體現(xiàn)在如下幾個方面:
首先,ADO .NET提供了對XML的強大支持,這也是ADO .NET的一個主要設計目標。在ADO .NET中通過XMLReader,XMLWriter, XMLNavigator, XMLDocument等可以方便的創(chuàng)建和使用XML數(shù)據(jù),并且支持W3C 的 XSLT、DTD、XDR等標準。ADO .NET對XML的支持也為XML成為Microsoft .NET中數(shù)據(jù)交換的統(tǒng)一格式提供了基礎。
其次,ADO .NET引入了DataSet的概念,這是一個駐于內(nèi)存的數(shù)據(jù)緩沖區(qū),它提供了數(shù)據(jù)的關系型視圖。不管數(shù)據(jù)來源于一個關系型的數(shù)據(jù)庫,還是來源于一個XML文檔,我們都可以用一個統(tǒng)一的編程模型來創(chuàng)建和使用它。它替代了原有的Recordset的對象,提高了程序的交互性和可擴展性,尤其適合于分布式的應用場合。
另外,ADO .NET中還引入了一些新的對象,例如DataReader可以用來高效率的讀取數(shù)據(jù),產(chǎn)生一個只讀的記錄集等等。簡而言之,ADO .NET通過一系列新的對象和編程模型,并與XML緊密結(jié)合,使得在Microsoft .NET中的數(shù)據(jù)操作十分方便和高效。 ASP .NET是Microsoft .NET中的網(wǎng)絡編程結(jié)構(gòu),它使得建造、運行和發(fā)布網(wǎng)絡應用非常方便和高效 。我們可以從以下幾個方面來了解ASP .NET:
1. ASP .NET網(wǎng)絡表單
ASP .NET網(wǎng)絡表單的設計目的就是使得開發(fā)者能夠非常容易的創(chuàng)建網(wǎng)絡表單,它把VB中的快速開發(fā)模型引入到網(wǎng)絡開發(fā)中來,從而大大簡化了網(wǎng)絡應用的開發(fā)。具體的說:在ASP .NET中可以支持多種語言,不僅僅支持腳本語言,通用語言運行時支持的所有語言在ASP .NET中都可以使用;代碼和內(nèi)容分開,在現(xiàn)在的ASP(Active Server Pages)開發(fā)中,內(nèi)容和腳本交錯,維護和升級很困難,將他們分開可以使得開發(fā)人員和設計人員能夠更好的分工合作,提高開發(fā)效率;另外在ASP .NET中通過引入服務器端控件,將類似VB的快速開發(fā)應用到了網(wǎng)絡開發(fā)中來,這樣大大提高了構(gòu)建網(wǎng)絡表單效率,并且服務器端控件是可擴展的,開發(fā)者可以建造自己需要的的服務器端控件。
2. ASP .NET網(wǎng)絡服務
網(wǎng)絡服務(Web Service)是下一代可編程網(wǎng)絡的核心,它實際上就是一個可命名的網(wǎng)絡資源,可用來在Internet 范圍內(nèi)方便的表現(xiàn)和使用對象,就像使用今天的 COM對象一樣,不同的是使用和表現(xiàn)網(wǎng)絡服務是通過SOAP(簡單對象訪問協(xié)議)甚至HTTP來實現(xiàn)的。在ASP .NET中,建造和使用網(wǎng)絡服務都非常方便:
在ASP .NET中建造網(wǎng)絡服務就是編寫一個后綴為.ASMX的文件,在這個文件中加入想要表現(xiàn)出來的方法就可以了,網(wǎng)絡服務的建造者不需要了解SOAP,XML的細節(jié),只需要把精力集中在自己的服務本身,這也為獨立軟件服務開發(fā)商提供了很好的機會;使用網(wǎng)絡服務最簡單的方式就是使用HTTP協(xié)議(HTTP GET 或HTTP POST),用戶只需要直接訪問網(wǎng)絡服務(.ASMX文件)的URL即可;當然用戶還可以通過SOAP在自己的應用中更靈活的使用網(wǎng)絡服務。
3. ASP .NET應用框架
ASP .NET應用不再是解釋腳本,而是編譯運行,再加上靈活的緩沖技術(shù),從根本上提高了性能;由于ASP .NET的應用框架基于通用語言運行時,發(fā)布一個網(wǎng)絡應用,僅僅是一個拷貝文件的過程,即使是組件的發(fā)布也是如此,更新和刪除網(wǎng)絡應用,可以直接替換/刪除文件;開發(fā)者可以將應用的配置信息存放XML格式的文件中,管理員和開發(fā)者對應用程序的管理可以分開進行;提供了更多樣的認證和安全管理方式;在可靠性等多方面都有很大提高。
傳統(tǒng)的基于Windows的應用(Win Forms),它仍然是Microsoft .NET戰(zhàn)略中不可或缺的一部分。在Microsoft .NET中開發(fā)傳統(tǒng)的基于Windows的應用程序時,除了可以利用現(xiàn)有的技術(shù)例如ActiveX控件以及豐富的Windows接口外,還可以基于通用語言運行時開發(fā),可以使用ADO .NET、網(wǎng)絡服務等,這樣也可以實現(xiàn)諸如避免DLL地獄、多語言支持等.NET的新特性。從上面的介紹中我們已經(jīng)知道Microsoft .NET開發(fā)框架支持多種語言,在目前的測試版中已經(jīng)支持 VB,C++,C#和Jscript四種語言以及它們之間的深層次交互
。而且微軟支持第三方生產(chǎn)針對Microsoft .NET的編譯器和開發(fā)工具,這也就是說幾乎所有市場上的編程語言都有可能應用于Microsoft .NET開發(fā)框架。這樣開發(fā)者可以任意選擇自己喜愛的語言,這種開放和交互的特性正是開發(fā)者所熱愛的。
需要特別指出的是,微軟在Microsoft .NET中推出了全新的C#語言,這種全新的面向?qū)ο蟮恼Z言使得開發(fā)者可以快速的構(gòu)建從底層系統(tǒng)級到高層商業(yè)組件的不同應用。C#在保證了強大的功能和靈活性的同時,給C和C++帶來了類似于VB的快速開發(fā),并且它還針對.NET作了特別設計,比如C#允許XML數(shù)據(jù)直接映射為它的數(shù)據(jù)類型等等,這些特性結(jié)合起來使得C#成為優(yōu)秀的下一代網(wǎng)絡編程語言。
與此同時Microsoft .NET對原有的VB和C++也做了很大的改進,使得它們更加適應Microsoft .NET開發(fā)框架的需求。例如在Visual Basic .NET中增加了繼承等面向?qū)ο蟮奶匦裕Y(jié)構(gòu)化的出錯處理等等;可管理的C++擴展,大大提高了利用C++來開發(fā)Microsoft .NET應用的效率等。
Visual Studio .NET作為微軟的下一代開發(fā)工具,它和.NET 開發(fā)框架緊密結(jié)合,是構(gòu)建下一代互聯(lián)網(wǎng)應用的優(yōu)秀工具,目前已經(jīng)有Beta測試版面世。Visual Studio .NET通過提供一個統(tǒng)一的集成開發(fā)環(huán)境及工具,大大提高了開發(fā)者的效率;集成了多種語言支持;簡化了服務器端的開發(fā);提供了高效地創(chuàng)建和使用網(wǎng)絡服務的方法等等。 .NET框架的一個主要目的是使COM開發(fā)變得更加容易
。COM開發(fā)過程中最難的一件事是處理COM基本結(jié)構(gòu)。因此,為了簡化COM開發(fā),.NET框架實際上已自動處理了所有在開發(fā)人員看來是與“COM”緊密相關的任務,包括引用計算、接口描述以及注冊。 必須認識到,這并不意味著.NET框架組件不是COM組件。事實上,使用Visual Studio 6.0的COM開發(fā)人員可以調(diào)用.NET框架組件,并且在他們看來,后者更像是擁有iUnknown數(shù)據(jù)的COM組件。相反,使用Visual Studio.NET的.NET框架開發(fā)人員則將COM組件視作.NET框架組件。
為了避免引起誤解,這里需對這種關系加以特別說明:COM開發(fā)人員必須手動去做大多數(shù).NET框架開發(fā)人員可以在運行時自動執(zhí)行的事情。例如,必須手寫COM組件的安全性模塊,且無法自動管理模塊占用的內(nèi)存,而在安裝COM組件時,注冊條目必須放進Windows注冊表中。對.NET框架而言,運行時實現(xiàn)了這些功能的自動化。例如,組件本身是自我描述型的,因而無需注冊到Windows注冊表中便能安裝。
當把COM與Microsoft事務服務器(MTS)和分布式COM(DCOM)結(jié)合在一起時,就變成了COM+。COM+提供了一組面向中間層的服務。特別是COM+提供了進程管理功能和數(shù)據(jù)庫與對象連接池處理功能。在將來的版本中,它還將提供一種稱為分區(qū)的功能——專門為應用程序服務提供商設計的更強大的進程隔離功能。
COM+服務主要面向中間層應用程序開發(fā),并主要為大型分布式應用程序提供可靠性和可擴展性。這些服務是對.NET框架所提供服務的補充;通過.NET框架類,可以直接訪問這些服務。 .NET框架有幾個要素值得一提
。首先是它的安全系統(tǒng)和配置系統(tǒng)。這兩個系統(tǒng)協(xié)同工作,有力地遏止了運行不安全代碼的可能性,并大幅度減少了號稱“DLL Hell”的對應用程序進行配置時所面臨的挑戰(zhàn)。
安全系統(tǒng)是一個高度細化、基于事實的系統(tǒng),它賦予開發(fā)人員和管理員多種代碼處理權(quán)限(而不僅僅是“on”或“off”)。將來,還會根據(jù)代碼本身的核心要素來決定如何實施上述權(quán)限。
例如,當.NET框架應用程序被下載到某一系統(tǒng)中時,它會申請一組權(quán)限(諸如對臨時目錄的寫入權(quán)限)。運行時將收集有關應用程序的事實信息(諸如:它是從何處下載的、是否用了有效簽名、甚至它訪問系統(tǒng)的準確程度),并按管理策略決定是否允許應用程序運行。運行時甚至還可告之應用程序它無法授權(quán)申請的所有權(quán)限,并允許應用程序自行決定是否繼續(xù)運行。
有這種安全系統(tǒng)作保障,許多應用程序配置問題便會迎刃而解。開發(fā)人員和管理員(最終是用戶)所面臨的最大挑戰(zhàn)之一是版本的管理問題。如果在您新裝了某個應用程序之后,一切都限于癱瘓狀態(tài),而在這之前系統(tǒng)一直運行得非常良好,那么最大的可能是新安裝的應用程序重寫了一些共享庫,并極有可能修正了現(xiàn)有應用程序正使用的程序錯誤。這種情況出現(xiàn)的頻率很高,以致人們將它稱為:“DLL Hell”。
.NET框架擁有的幾項高級功能可以徹底消除“DLL Hell”現(xiàn)象。首先,它有一個非常強大的內(nèi)部命名系統(tǒng),能夠有效地防止兩個庫因互相重名而被錯當為對方的情況發(fā)生。除此之外,它還提供一項被稱作“并行”配置的新功能。如果前例中新安裝的應用程序確實重寫了共享庫,現(xiàn)有應用程序可對該庫進行修復。等現(xiàn)有應用程序再次啟動時,它會檢查所有的共享文件。如果發(fā)現(xiàn)文件被更改,同時這些更改又是不兼容的,則它可以請求運行時提取一個它可以使用的版本。得益于強大的安全系統(tǒng),運行時可以安全地執(zhí)行該操作,這樣應用程序就完成了本身的修復工作。
總之,Microsoft .NET開發(fā)框架在通用語言運行時的基礎上,給開發(fā)者提供了完善的基礎類庫、下一代的數(shù)據(jù)庫訪問技術(shù)ADO .NET、網(wǎng)絡開發(fā)技術(shù)ASP .NET,開發(fā)者可以使用多種語言及Visual Studio .NET來快速構(gòu)建下一代的網(wǎng)絡應用。隨著相關的互聯(lián)網(wǎng)標準及技術(shù)的普及,可以預言將會有越來越多的開發(fā)者采用這種開發(fā)結(jié)構(gòu),開發(fā)出豐富多樣的下一代互聯(lián)網(wǎng)應用來。
當前題目:vb.net有緩沖區(qū)么 vbnet override
轉(zhuǎn)載來于:http://www.chinadenli.net/article44/dddsche.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設、ChatGPT、網(wǎng)站設計、手機網(wǎng)站建設、全網(wǎng)營銷推廣、自適應網(wǎng)站
聲明:本網(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)