聲明:本文是對borland公司delphi7在線幫助的翻譯。原文版權歸borland公司所有,中文翻譯版權歸作者所有。本文可以在不經作者授權的情況下進行轉載,但必須注明作者,且不得用於商業用途;用於商業用途需經作者授權,聯系方式:[email protected]。如果您認為作者的翻譯有錯誤或不妥之處,或文字校對有錯誤之處,請向作者發電子郵件聯系,作者將不勝感激。
作者:fengzhengren(風筝)
時間:2005年5月16日
Delphi7的新特性
1、概述
Delphi7在以下方面增加了新特性或有所增強:
IDE(集成開發環境)
Web
COM
Database(數據庫)
Component library(控件庫)
Runtime library(運行時庫)
Compiler(編譯器)
Rave Reports(Rava報表)
ModelMaker
Documentation(文檔)
注意:一些特性未提供給Delphi的某些版本。
2、 IDE變化
IDE在以下方面增加了新特性:
2.1 編譯器信息
新的View|Additional Message Info菜單項可以顯示提示信息窗口,通過窗口你可以從Borland公司的網站上下載和查看關於編譯器的信息。
新的Project|Options|Compiler Messages頁面使你對在哪種情況下產生編譯警告有更強的控制能力。
2.2 控件面板變化
增加了打開CLX應用程序時才顯示的system頁面。
新的Indy Intercepts和Indy I/O Handlers頁面提供開放源碼的網絡協議控件(專業版和企業版)。
新的IW Standard、IW Data、IW Client Side和IW Control頁提供IntraWeb控件開發基於Web的應用程序。
新的Rave頁面提供控件以在你開發的程序中增加報表生成功能。
如果控件頁面通過水平滾動才能顯示其余的控件圖標的話,會出現下拉菜單按鈕列出其余的控件圖標。
2.3 代碼提示變化
代碼提示的速度變快並允許你通過在代碼提示列表中使用CTRL+單擊該標識符浏覽其聲明。
新的HTML代碼提示在代碼編輯窗口自動顯示有效的HTML元素和屬性(專業版和企業版)。
通過使用OpenTools API,可以建立定制的代碼提示管理器。細節參考“Extending the IDE”一節。
菜單項Tools|Editor Options|Code Insight page允許你對代碼提示工具的符號顯示設置顏色。
2.4調試器變化
查看列表做了如下變動:
為簡化調試,多表格允許你將查看對象放入查看組。增加查看組,右鍵單擊查看列表選擇Add Group選項。
增加查看對象名稱和數值列,是否顯示表頭可以通過右鍵單擊查看列表選擇Show Column Headers實現。
增加復選框控制查看對象的是否顯示。
菜單項Tools|Debugger Options|Event Log page增加了下列新選項:
通過設置事件日志的顏色可以使不同的事件消息顯示不同的顏色。
模塊(exe、dll、ocx等)在被編譯的進程裝載或卸載時自動在事件日志中寫入消息記錄。以前,是否將這些事件記入日志可以通過該選項控制。
Run Parameters對話框增加了工作目錄選項,允許你為編譯進程指定文件夾名稱。
2.5其他改進
在工程管理器中,你可以通過右鍵單擊工程組中的工程選擇“Make All from Here”或“Build All from Here”編譯工程組中的部分工程。
3、WEB技術變化
Delphi已經包括進了AtoZed 軟件公司的IntraWeb控件,你可以使用IntraWeb的標准窗口工具開發Web服務器應用程序,你也可以使用IntraWeb開發Web Broker和WebSnap網頁應用程序,更多內容,請參考“用IntraWeb創建web服務器應用程序”一節。Delphi企業版包括完整的IntraWeb產品,專業版包括IntraWeb產品的一部分。
Delphi已經支持作為Web Broker、WebSnap和SOAP對象類型的Apache2。
Borland公司不提倡使用Win-CGI作為web服務器應用程序和web服務的的對象類型,而推薦使用規則的CGI、ISAPI/NSAPI或Apache對象類型代替。
Web服務得到以下加強:
3.1 新的UDDI浏覽器
新的UDDI浏覽器可以定位和導入基於整個UDDI注冊的WSDL文檔。
3.2 SOAP頭
新類和接口使你可以向在服務器和客戶端傳輸信息的SOAP信封讀取或插入頭信息。更多內容請參考“定義和使用SOAP頭”和“在客戶端應用程序處理SOAP頭”。
3.3 附件
Web服務應用程序(包括客戶端和服務器應用程序)已經能操縱附件。附件(TSOAPAttachment的子類)作為多種形式的一部分以SOAP編碼傳送信息,當應用程序收到附件後,將其保存在臨時文件中,供應用程序使用。
3.4類型支持
你可以通過重載Tremotable類新增加的兩個虛方法ObjectToSOAP和SOAPToObject定制遠程類和和它們的SOAP請求之間的交換。
處理響應web服務請求時發生異常的異常對象(EremotableException實例)包含了更多SOAP錯誤包的信息。
當注冊調用接口時,類型定義以遠程類別注冊的方式自動注冊。
TXSDecimal增加了AsBcd屬性可以在XML和本地類型之間輕松轉換,同樣地,TXSHexBinary增加了AsByteArray屬性。描述時間值的遠程類現在改為以秒為單位而不是毫秒。
3.5其他加強
THTTPReqResp增加的新事件允許你在發送HTTP信息之前截取信息,並且允許你在發送或接收長信息時監控進度。
THTTPSoapPascalInvoker類發布事件允許你編寫代碼在調用者執行請求之前或之後執行。
增加了對調用接口和WSDL文檔之間映射的控制。TWSDLHTMLPublish類增加了幾個事件以控制產生的WSDL文檔。你可以識別函數返回值和參數名、命名空間的使用、默認的SOAP之間的映射。在客戶端,文字編碼增加了對RPC-style編碼方式的支持。
新增接口IRIOAccess使你可以訪問實現了調用接口的遠程接口對象。
IOPConvert接口增加了Encoding屬性,使你可以在客戶端和Web服務提供者之間傳輸編碼信息時指定字符集。
某些WEB服務的改變對DataSnap應用程序有一定影響,細節請參考“數據庫技術的改變”一節。
TLinkedRIO類的構造函數對你調用的每個方法自動產生單獨的文件名使調試更加方便。
TOPToSoapDomConvert類增加了兩個事件用於調試SOAP包。
自定義的調用接口可以使用重載方法。
4、COM技術的變化(僅delphi專業版和企業版)
使用導入類型庫對話框(工程à導入類型庫)可以為.NET編譯建立聯合類包裝。使用微軟的.NET框架你可以使用普通COM服務器的結果包裝。
5、數據庫技術的變化(僅delphi專業版和企業版)
更新了Informix SE、Oracle9i、DB2 7.2、InterBase 6.5和MySQL 3.23.49的dbExpress驅動,並增加了MSSQL 2000的驅動。
增加了新的數據庫控件,同時改變了一些原有的控件,細節參見“控件庫改變”一節。
Borland公司不提倡使用SQL Links,後續版本對SQL Links的支持不再加強,並且在2002年後的版本中將放棄對SQL Links的支持。Borland公司推薦使用dbExpress訪問SQL Server數據庫。
DataSnap(僅delphi企業版)
在DataSnap應用中,IAppServer已經變為IAppServerSOAP,以使IAppServer接口更加明確。TSoapConnection類的UseSOAPAdapter屬性可以用於為使用早期Delphi版本開發的服務器應用程序編寫客戶端。TSoapConnection類也發布了幾個新事件使你在處理WEB服務請求時可以在幾個方面定制你的客戶端應用程序。
你可以使用SOAPServerIID屬性或向URL的終端增加數據模塊接口,明確鑒別有多個數據模塊的應用服務器的SOAP數據模塊。
你可以使用SOAP連接控件的SOAPServerIID屬性和GetSOAPServer方法擴展應用服務器接口。
DataSnap不再支持CORBA連接。
6、控件庫變化
6.1WindowsXP主題支持(Delphi專業版和企業版)
VCL應用程序支持Wiondows第6版通用控件,你的應用程序查找到合適的裝載文件後會在WindowsXP系統上自動使用新的Windows控件。
6.2新增單元
新的DBClientActns單元包括3個新的動作控件TClientDataSetApply、TClientDataSetUndo和TClientDataSetRevert,用於和client datasets一起工作。
6.3新增控件
控件面板的dbExpress頁新增TSimpleDataSet控件供簡單的兩層數據庫應用程序使用(TSimpleDataSet代替了TSQLClientDataSet)。
控件面板的Dialogs頁新增TPageSetupDialog控件提供Wiondow標准頁面設置對話框。
控件面板的Additional頁新增TXPColorMap、TStandardColorMap和TTwilightColorMap以建立彩色菜單和工具條。
新CLX版本控件面板的System頁增加了新的路徑和文件控件。
控件面板的Indy Intercepts和Indy I/O Handlers頁提供了網絡協議(專業版和企業版)。
6.4改動的控件
CLX版本的TOpenDialog和TSaveDialog控件增加了額外的特性如支持文件預覽。
VCL版本的TCustomForm控件增加了ScreenSnap和SnapBuffer兩個屬性,以控制當窗口移動時是否吸附於屏幕邊緣。
TCustomComboBoxEx控件增加了AutoCompleteOptions屬性使下拉框可以響應用戶按鍵。
從TOpenDialog和TQtDialog繼承下來的CLX對話框對象通過設置UseNativeDialog屬性為true,可以使用Windows通用對話框代替Qt對話框。
6.5不提倡使用的控件
請參考Delphi7文件夾下的readme.txt文檔。
7、運行時庫的改變
7.1 Classes單元
增加了新異常類EfileStreamError,EfileStreamError和EFOpenError繼承自此類。此類有一個文件名參數,因此,現在的異常信息包含了發生異常的文件的文件名。
TStrings類增加了ValueFromIndex和NameValueSeparator兩個新屬性。
TThread類的CheckThreadError方法已經由private變為public。
7.2 Math單元
該單元的ClearExceptions過程增加了RaisePending這一默認參數。
7.3 StdConvs單元
StdConvs單元增加了重量單位stones(英石,合14磅)。
7.4 StrUtils單元
StrUtils單元有如下變化以支持多字節字符集(MBCS)。
以前的LeftStr、RightStr和MidStr 函數以AnsiString 作為參數和返回值,不支持MBCS字符串。現在每個函數都已經被一對重載函數代替,一個以AnsiString 作為參數和返回值,另一個以WideString作為參數和返回值。這些新函數可以正確地操作MBCS字符串。這個變化打破了用這些函數存儲和得到單字節水平字符串的編碼規則,這些代碼必須更新為使用新的下面描述的單字節函數。
新函數LeftBStr、RightBStr和MidBStr提供單字節水平字符串操作代替以前的LeftStr、RightStr和MidStr。
新函數AnsiLeftStr、AnsiRightStr和AnsiMidStr和新的AnsiStr操作函數LeftStr、RightStr和MidStr是一樣的,除了它們沒有被相同的WideString函數重載。
StrUtils單元新增字符串查找函數PosEx。
7.5 SysUtils單元
SysUtils單元新增線程安全的重載函數用於格式化和解析數字、日期時間值和貨幣類型值。它們之所以是線程安全的是因為從TformatSettings類的數據結構中獲取局部信息而不是全局變量。數據結構在使用前必須移植,新函數GetLocaleFormatSettings用於從指定位置移植數據結構。
7.6 VarCmplx單元
VarCmplx單元新增函數VarComplexLog2、VarComplexLog10、VarComplexLogN、 VarComplexTimesImaginary和 VarComplexTimesReal。
7.7 Variants單元
新增VarIsError和VarAsError函數。
異常EvariantError現在是由變量類型代碼拋出的異常類的基礎。
新增幾個不同的全局控制變量NullEqualityRule、 NullMagnitudeRule、NullStrictConvert、NullAsStringValue和 PackVarCreation。
8、編譯器的變化
Delphi的dcc32編譯器新增三個編譯警告:Unsafe_Type、Unsafe_Code和Unsafe_Cast。這些警告在默認情況下是關閉的,通過編譯器指示{$WARN UNSAFE_CODE ON}、編譯器命令行開關(dcc32 -W+UNSAFE_CODE)或通過Project|Options|Compiler Messages page可以使其打開。
9、Rave報表支持
Delphi現在包括進了來自Nevrona公司的Rave報表,在你開發的應用程序中加入報表控件,可以使使用者生成報表。更多信息請參考“創建Rave報表”一節。
10、ModelMaker支持(專業版和企業版)
ModelMaker工具可以簡化類和接口的設計、構造和維護,ModelMaker包含的工具,可以創建UML樣式圖,用於創建和修改工程源代碼。
Delphi企業版包括ModelMaker軟件公司的ModelMaker,專業版包括試用期為30天的ModelMaker,但它們的功能是一樣的。
11、文檔變化
所有的PDF、HTML和INT文檔由delphi伴隨工具盤發布,而不再是安裝盤。你可以直接從光盤查看文檔或復制到你的文件夾,伴隨工具盤包括以下文檔:
文檔介紹
在工具盤中的存放路徑
Using Delphi (the Quick Start, Developer’s Guide, Component Writer’s Guide, Delphi Language Guide, and object hierarchy posters)
Online+PDF DocsBorland
Step-by-step instructions on creating Delphi applications
Online+PDF DocsBorlandTutorials
IDL2Pas
Online+PDF DocsBorlandIDL2Pas
Interfaces
Online+PDF DocsBorlandInterface Docs
IntraWeb
Online+PDF DocsIntraweb
ModelMaker
Online+PDF DocsModelMaker
Rave Reports
Online+PDF DocsRave
由於《開發人員指南》大小的限制,第五部分“創建定制控件”不再包括在該書內,而單獨編為《創建新控件作者指南》,這本新書可以從在線幫助中獲得也可以從伴隨工具光盤獲得PDF文檔。
Object Pascal語言現在稱為delphi語言,在線幫助和文檔也做了相應的更該。
為確保delphi指南繼續有效,它們已經從《快速開始》和《開發人員指南》中移出,你可以從伴隨工具光盤獲得PDF文檔。
一些delphi在線幫助主題包含為Kylix和C++Builder用戶提供的c++語法和代碼示例,作為delphi開發人員,可以不用理會。