⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000011.htm

📁 水木清华关于C++Builder程序的代码
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<HTML><HEAD>  <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人:&nbsp;Zeemon&nbsp;(踏遍青山),&nbsp;信区:&nbsp;Visual&nbsp;<BR>标&nbsp;&nbsp;题:&nbsp;Borland&nbsp;C++&nbsp;Builder&nbsp;3.0的心得&nbsp;<BR>发信站:&nbsp;BBS&nbsp;水木清华站&nbsp;(Tue&nbsp;Mar&nbsp;31&nbsp;13:45:23&nbsp;1998)&nbsp;<BR>&nbsp;<BR>orland&nbsp;C++&nbsp;Builder&nbsp;3.0&nbsp;的更新程序及我的小小心得:&nbsp;<BR>&nbsp;<BR>//Borland&nbsp;C++&nbsp;Builder&nbsp;OnLine&nbsp;台湾&nbsp;<BR>&nbsp;<BR>Bcb&nbsp;3.0千呼万唤,&nbsp;终於诞生了,&nbsp;&nbsp;<BR>您一定好奇3.0多了那些东西呢?&nbsp;<BR>我个人认为这版本是标准的BC++&nbsp;5.02和Delphi&nbsp;3.02的合成版(当然Bcb也多了几样她所&nbsp;<BR>独有的)由於这是宝兰在短短时间内开发出的,&nbsp;不是很尽完&quot;&quot;,&nbsp;有些地方使用起来真的&nbsp;<BR>很...&nbsp;<BR>期待更新的修正版快些出来.&nbsp;<BR>&nbsp;<BR>//看来BCB3.0也很难用啊?!&nbsp;:((&nbsp;<BR>&nbsp;<BR>&nbsp;一:&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;DownLoad&nbsp;&nbsp;Microsoft&nbsp;SDK&nbsp;Help&nbsp;更新档案&nbsp;<BR>&nbsp;<BR>不分版本&nbsp;BcbHlp01.ZIP&nbsp;[5,661,939&nbsp;Byte]&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;解压缩後将95GUIDE.CNT,&nbsp;SETUPAPI.CNT,&nbsp;SOCK2.CNT,&nbsp;and&nbsp;WIN32.HLP&nbsp;的档案复制到&nbsp;&nbsp;<BR>\CBuilder3\Borland&nbsp;Shared\MSHelp\之下,&nbsp;&nbsp;&nbsp;哇!&nbsp;您一定想要&nbsp;Help-&gt;Index&nbsp;可查询&nbsp;&nbsp;<BR>WIN32.HLP吧!&nbsp;<BR>&nbsp;&nbsp;我最近发现改&nbsp;bcb3.cfg没有用了,&nbsp;用OpenHelp&nbsp;把&nbsp;WIN32.HLP加入更惨,&nbsp;<BR>&nbsp;<BR>//??&nbsp;!!帮助的BUG没有改善啊?!还多了一个.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;这点我已在Borland&nbsp;NewsGroup看到TeamB说没有办法了.除非为来Borland把Help&nbsp;&nbsp;<BR>File改为&nbsp;Html格式&nbsp;&nbsp;如您常查SDK&nbsp;Help(我就是如此),&nbsp;我只有建议您使用&nbsp;<BR>MSDN&nbsp;Leabel&nbsp;1的光碟吧!(还好才几百元)&nbsp;<BR>&nbsp;二:&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;我最近把Bcb&nbsp;1.0及Delphi&nbsp;2.0的程式转移到&nbsp;Bcb&nbsp;3.0,&nbsp;只能用一个惨字形容&nbsp;<BR>&nbsp;&nbsp;&nbsp;不过我是活该,&nbsp;不先看\CBuilder\ReadMe.hlp&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;****&nbsp;所以请一定要先看这个Upgrade&nbsp;通知,&nbsp;尤其是Bcb&nbsp;1.0&nbsp;To&nbsp;3.0这一篇&nbsp;*****&nbsp;<BR>&nbsp;三:&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;BCB&nbsp;3.0已支援了Microsoft&nbsp;Foundation&nbsp;Classes&nbsp;version&nbsp;4.21&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;您可由&nbsp;\CBuilder3\Include\Mfc\afxver_.h&nbsp;这档案查看到MFC的版本,&nbsp;<BR>&nbsp;&nbsp;&nbsp;由此可知&nbsp;Bcb&nbsp;3.0是由&nbsp;BC++&nbsp;5.02与&nbsp;Delphi&nbsp;3.0合成的一个版本&nbsp;<BR>&nbsp;&nbsp;&nbsp;(Ps.&nbsp;不知Borland&nbsp;以後还是否会继续出BC++)&nbsp;<BR>&nbsp;&nbsp;&nbsp;本版Bcb并不附&nbsp;MFC的相关Help&nbsp;File,&nbsp;故得知MFC的版本满重要的,&nbsp;以免您使用到未&nbsp;<BR>支援的功能&nbsp;<BR>&nbsp;&nbsp;&nbsp;另MFC的Source&nbsp;Code&nbsp;在&nbsp;\CBuilder3\Cource\Mfc\&nbsp;目录下,&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;另MFC的范例在&nbsp;\CBuilder3\Examples\Mfc\&nbsp;目录下,&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;但这些皆为纯MFC&nbsp;Sample,&nbsp;并无与&nbsp;VCL&nbsp;共用的范例&nbsp;<BR>&nbsp;&nbsp;&nbsp;正确方式我正努力中.&nbsp;<BR>&nbsp;四:&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;如您的Project很大且您又写了许多的自定VCL&nbsp;,&nbsp;重要的是您刚买了Bcb&nbsp;3.0&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;我强烈的建议您先另外安装一个硬碟来测试您的程式升级,&nbsp;<BR>&nbsp;&nbsp;&nbsp;然後一个一个测试您的VCL&nbsp;Componment,&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;尤其有许多的Delphi&nbsp;2.0的程式已无法在Bcb及Delphi&nbsp;3.0中执行&nbsp;<BR>&nbsp;&nbsp;&nbsp;我还发现某一&nbsp;Delphi&nbsp;2.0&nbsp;的VCL&nbsp;Componment&nbsp;改到Bcb时From只使用单一Componment时,&nbsp;<BR>&nbsp;&nbsp;&nbsp;Compiler及使用皆没问题,&nbsp;但From多加几个其她Componment就&nbsp;Compiler&nbsp;Error了.&nbsp;<BR>&nbsp;&nbsp;&nbsp;为何如此,&nbsp;我也不知道,如您莽撞的直接升级,&nbsp;我可保证您事倍功半.&nbsp;<BR>&nbsp;&nbsp;&nbsp;至於更新那些我会一一的在下面道出,&nbsp;&nbsp;<BR>&nbsp;五:&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;本版已附赠了新版的&nbsp;TASM32.EXE&nbsp;<BR>&nbsp;&nbsp;&nbsp;已後使用者不用再多花一次钱了&nbsp;<BR>&nbsp;&nbsp;&nbsp;参数的下法可参考&nbsp;\CBuilder3\Examples\WinTools\&nbsp;这个范例程式,&nbsp;满有用的&nbsp;<BR>&nbsp;六:&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这次Bcb&nbsp;3.0&nbsp;新提供了一个把&nbsp;MS的COFF格式的(.Lib)&nbsp;档案转成Borland&nbsp;的&nbsp;OMF&nbsp;&nbsp;<BR>格式的(.Lib)档案&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;程式名称为&nbsp;\CBuilder3\Bin\Coff2omf.exe&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REM&nbsp;====&nbsp;Copy&nbsp;MS-VC&nbsp;Release&nbsp;Mode&nbsp;DLL&nbsp;&amp;&nbsp;Include&nbsp;File&nbsp;&nbsp;====&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COPY&nbsp;C:\CBuilder3\Projects\MyDll\Release\MyDll.Dll&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COPY&nbsp;C:\CBuilder3\Projects\MyDll\Release\MyDll.Lib&nbsp;MyDllD.Lib&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REM&nbsp;====&nbsp;MS-VC&nbsp;Coff&nbsp;Format&nbsp;Libary&nbsp;To&nbsp;Borland&nbsp;Omf&nbsp;Libary&nbsp;File&nbsp;Format&nbsp;====&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C:\CBuilder3\Bin\Coff2Omf.exe&nbsp;MyDllD.Lib&nbsp;MyDll.lib&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REM&nbsp;IMPLIB.EXE&nbsp;MyDll.Lib&nbsp;MyDll.Dll&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这方式与IMPLIB.exe使用方式有些类似,&nbsp;但Bcb&nbsp;这边的&nbsp;MyDll.h宣告档不同喔!&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;您可能须重新修改一下.(通常问题出在&nbsp;extern&nbsp;&quot;c&quot;&nbsp;或&nbsp;_stdcall&nbsp;这宣告语法上)&nbsp;<BR>七:&nbsp;&nbsp;<BR>这次Bcb&nbsp;3.0&nbsp;也新提供了一个把标准的RC&nbsp;档中所附的Form转成&nbsp;Bcb&nbsp;的TForm&nbsp;<BR>如您以有VC或BC的.rc档不仿测一下&nbsp;<BR>位置於IDE下的&nbsp;Tools-&gt;Import&nbsp;Rc&nbsp;Scripts...&nbsp;&nbsp;<BR>八:&nbsp;&nbsp;<BR>Borland这次在Bcb&nbsp;3.0後,&nbsp;把&nbsp;\Examples\Controls\Source&nbsp;下的&nbsp;C++&nbsp;VCL&nbsp;Componment&nbsp;&nbsp;<BR>改了Class名称了,在旧的Class前都多加了一个&nbsp;C&nbsp;如&nbsp;TCalendar&nbsp;==&gt;&nbsp;TCCalendar&nbsp;,&nbsp;&nbsp;<BR>TColorGrid&nbsp;==&gt;&nbsp;TCColorGrid&nbsp;&nbsp;<BR>哇!&nbsp;如您Bcb&nbsp;1.0有用到的,&nbsp;要手动去改程式喔!&nbsp;加油!&nbsp;<BR>&nbsp;<BR>九:&nbsp;&nbsp;<BR>在Direct&nbsp;X上Bcb&nbsp;3这次附了好几个Sample&nbsp;,&nbsp;我测过後都没有问题.&nbsp;<BR>目录於&nbsp;\Examples\Controls\DDraw\&nbsp;下.&nbsp;&nbsp;<BR>十:&nbsp;&nbsp;<BR>Bcb&nbsp;这次新增了DYNAMIC&nbsp;这保留字,&nbsp;&nbsp;<BR>旧版的原用&nbsp;visual&nbsp;的宣告会因Delphi&nbsp;VCL&nbsp;source&nbsp;code而有所改变.&nbsp;<BR>详细解释请看Onle&nbsp;Help&nbsp;<BR>范例如下:&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DYNAMIC&nbsp;void&nbsp;__fastcall&nbsp;KeyPress(char&nbsp;&amp;Key);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DYNAMIC&nbsp;void&nbsp;__fastcall&nbsp;DoExit(void);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DYNAMIC&nbsp;void&nbsp;__fastcall&nbsp;DoEnter(void);&nbsp;<BR>&nbsp;<BR>十一:&nbsp;&nbsp;<BR>TreeView-&gt;Customsort&nbsp;的用法&nbsp;(台湾宝兰提供)&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;打开&nbsp;\CBuilder3\include\vcl\Comctrls.hpp&nbsp;这档&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.&nbsp;在第24行後加入一行&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(请注意:&nbsp;参数是三个&nbsp;int,&nbsp;别的型态都不行喔!)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;typedef&nbsp;int&nbsp;(CALLBACK&nbsp;*MYPFNTVCOMPARE)(int&nbsp;IParam1,&nbsp;int&nbsp;IParam2,&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;IParamSort);&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;修改後如下:&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//--&nbsp;user&nbsp;supplied&nbsp;-----------------------------------------------------------&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;typedef&nbsp;int&nbsp;(CALLBACK&nbsp;*MYPFNTVCOMPARE)(int&nbsp;IParam1,&nbsp;int&nbsp;IParam2,&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;IParamSort);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;namespace&nbsp;Comctrls&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;....&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.&nbsp;修改第759行&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;原为&nbsp;&nbsp;&nbsp;bool&nbsp;__fastcall&nbsp;CustomSort(PFNTVCOMPARE&nbsp;SortProc,&nbsp;int&nbsp;Data);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;修改为&nbsp;bool&nbsp;__fastcall&nbsp;CustomSort(MYPFNTVCOMPARE&nbsp;SortProc,&nbsp;int&nbsp;Data);&nbsp;<BR>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -