• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            悲情土仔一生

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              14 隨筆 :: 0 文章 :: 74 評(píng)論 :: 0 Trackbacks

            在C++Builder中安裝Indy 10.2.3詳細(xì)步驟


            作者:Tuuzed(土仔)    
            版權(quán)聲明:可以任意轉(zhuǎn)載,轉(zhuǎn)載時(shí)請(qǐng)務(wù)必以超鏈接形式標(biāo)明文章原始出處和作者信息及本聲明。
            http://www.shnenglu.com/tuuzed/archive/2008/06/17/53771.html




            一直想自己制作一個(gè)通過(guò)SMTP協(xié)議發(fā)送郵件的小程序,打開(kāi)BCB才知道BCB6中自帶有NMSMTP和IdSMTP兩種控件。NMSMTP只支持比較老的RFC821協(xié)議,通俗來(lái)說(shuō)就是不支持目前SMTP服務(wù)器所需要的EHLO命令(具體可參考RFC1869和RFC2554);而InSMTP是支持較新的RFC協(xié)議的。無(wú)奈的是BCB6原來(lái)自帶的是Indy8套件?好老了,在Indy網(wǎng)頁(yè)中都已經(jīng)到Indy9和Indy10了。目前網(wǎng)上關(guān)于Indy10的討論漸漸多了起來(lái)(英文網(wǎng)站討論的比較多些),但總體說(shuō)來(lái)是不夠,例如在BCB6中如何安裝等等。通過(guò)上網(wǎng)搜索和自己半天的摸索,終于在BCB6中安裝好了最新的Indy 10.2.3版本。

            第一步:下載Indy 10源代碼 。

            Indy是開(kāi)源的項(xiàng)目,是由SubVersion來(lái)管理版本信息。主頁(yè)中有給出鏈接地址:http://www.indyproject.org:8080/svn,進(jìn)去后一定要注意:不要一個(gè)一個(gè)文件下載,要通過(guò)SubVersion系統(tǒng)的打包程序來(lái)打包源代碼,防止遺漏或弄錯(cuò)成了測(cè)試代碼;并只用選擇trunk這個(gè)目錄即可,其他的目錄是給調(diào)試或測(cè)試的人員使用的(主頁(yè)http://www.indyproject.org/Sockets/Download/IndyviaSubversion.EN.aspx上有說(shuō)明),見(jiàn)圖:

            indy1

             

            首先在trunk目錄前打勾,在toggle右邊的下拉框中選擇“Download as zip”,按Go!下載源代碼,保證是最新的了(看右邊目錄的時(shí)間。

            第二步:編譯Indy 10源代碼。

            廢話(huà)一句,這一步首要的是確保你安裝了BCB或DELPHI。解壓下載來(lái)的ZIP文件,進(jìn)入trunk\Lib,這里能看到有一些bat文件和目錄。其中“Fullc6.bat”是我們需要運(yùn)行的安裝文件(C6表示BCB6版本,D6表示DELPHI6等等),以前網(wǎng)上說(shuō)需要對(duì)Indy10的安裝文件Fullc6.bat和某個(gè).hpp文件進(jìn)行改進(jìn)(見(jiàn)ccrun網(wǎng)站上的Indy10源代碼)??赡苁沁@個(gè)版本比較新,我運(yùn)行了一下,只是在最后會(huì)提示“系統(tǒng)找不到指定的文件。”,分析一下bat文件內(nèi)容,是“copy *.rsp ..\..\C6”語(yǔ)句引起的錯(cuò)誤,我找遍了整個(gè)trunk都沒(méi)有.rsp文件,估計(jì)是以前的版本遺留下來(lái)的語(yǔ)句。不放心的話(huà),可以注釋掉bat中的這句語(yǔ)句,編譯一樣能通過(guò),并且成功完成。不出意外,trunk下應(yīng)該就有一個(gè)C6目錄了,這就是我們需要的控件代碼了。

            第三步:卸載BCB6自帶的Indy8控件。

            剛開(kāi)始我沒(méi)有卸載原來(lái)的版本,安裝后進(jìn)行測(cè)試竟然出錯(cuò)了,后來(lái)上網(wǎng)搜索,發(fā)現(xiàn)要卸載原來(lái)的Indy8控件。卸載很簡(jiǎn)單:

            1、進(jìn)入BCB6 IDE-關(guān)閉所有項(xiàng)目“File-Close All”-Component-Install Packages,Remove掉有Indy字樣的控件包,OK退出,再關(guān)閉BCB 6。

            2、將BCB6安裝目錄下的文件刪除或移走。有以下一些文件:\bin\dclindy60.bpl \lib\obj\dclindy.dcp;\lib\obj\dclindy.dcu;\lib\obj\id*.dcu ;\lib\obj\indy.dcp;\lib\obj\indy.dcu;\include\vcl\id*.* 。為了對(duì)INDY8做個(gè)備份,我寫(xiě)了一個(gè)Uninstall的bat文件,先找地方建立一個(gè)目錄,運(yùn)行它就行了,它會(huì)原樣把目錄建起來(lái):

             

             1REM %1=BCB installtion dir
             2mkdir bin
             3mkdir lib
             4cd lib
             5mkdir obj
             6mkdir Debug
             7mkdir Release
             8cd ..\
             9mkdir include
            10cd include
            11mkdir vcl
            12cd ..\
            13MOVE %1\bin\dclindy60.bpl bin\    
            14MOVE %1\lib\obj\dclindy.dcp lib\obj\      
            15MOVE %1\lib\obj\dclindy.dcu lib\obj\      
            16MOVE %1\lib\obj\id*.dcu lib\obj\      
            17MOVE %1\lib\obj\indy.dcp lib\obj\     
            18MOVE %1\lib\obj\indy.dcu lib\obj\   
            19MOVE %1\lib\Debug\indy.* lib\Debug\
            20MOVE %1\lib\Release\indy.* lib\Release\   
            21MOVE %1\include\vcl\id*.* include\vcl\

             
            3、將BCB6安裝目錄下CBuilder6\Source\indy改個(gè)名字吧,加個(gè).old,表示這是老的Indy控件了。

            第四步:安裝Indy10到BCB6 IDE。

            1、Copy 源代碼trunk\C6目錄到BCB6安裝目錄下,我還是放在Source下,把C6改名為Indy10。

            2、運(yùn)行BCB6-關(guān)閉所有項(xiàng)目“File-Close All”-Component-Install Packages-Add,把剛才改名的indy10目錄下的dclIndyCore60.bpl和dclIndyProtocols60.bpl項(xiàng)目加進(jìn)來(lái)。保存設(shè)置后,再選擇Project-Options-Directories/Conditionals-include path和Library path中將indy10的目錄添加進(jìn)來(lái),保存設(shè)置。


            ※以下為2008年08月03日增加※
            3、拷貝IndyProtocols60.bpl,IndyProtocols60.bpi,IndyCore60.bpl,IndyCore60.bpi,IndySystem60.bpl,IndySystem60.bpi共6個(gè)文件到WINDOWS安裝目錄的system32下。
            ※增加結(jié)束※

            第五步:安裝結(jié)束和測(cè)試。

            重啟BCB看看,是不是有Indy10圖標(biāo)出來(lái)了?沒(méi)有的話(huà),可能是漏了哪一部了。再重做一遍看看。如果不出意外,在控件列表最后已經(jīng)有最新的idny控件出來(lái)了,圖標(biāo)好看了很多(僅僅是給設(shè)計(jì)人員看的圖標(biāo))。新建一個(gè)項(xiàng)目,然后拖一個(gè)控件進(jìn)來(lái),在控件上鼠標(biāo)右鍵,可以看看版本號(hào),build項(xiàng)目一下,如果沒(méi)有error,那就證明安裝成功了。

             

             

            額外提示:

            1、Indy是一個(gè)開(kāi)源的項(xiàng)目,不可能保證你的項(xiàng)目它能完全兼容,時(shí)刻注意Indy項(xiàng)目的發(fā)展和更新代碼是關(guān)鍵;

            2、開(kāi)源項(xiàng)目的文檔比較少,主要還是靠網(wǎng)上高人的支持和其他一些開(kāi)發(fā)人員的測(cè)試,主頁(yè)上有文檔下載URL: http://www.projectindy.org/downloads/IndyDocs_10.1.5.0_HtmlHelp.zip。看了一下,是indy10.1.5的,和10.2.3還是有些差別,而且有些方法和屬性不詳細(xì),如果想要進(jìn)一步的支持,好像可以買(mǎi)項(xiàng)目組出的技術(shù)書(shū),具體看主頁(yè)吧。

            3、學(xué)習(xí)無(wú)止境,實(shí)踐出真知。感謝網(wǎng)上所有給我提供參考和幫助的人。

            posted on 2008-06-17 23:28 土仔 閱讀(15486) 評(píng)論(22)  編輯 收藏 引用 所屬分類(lèi): 土仔編程

            評(píng)論

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2008-06-18 09:02 夢(mèng)在天涯
            平時(shí)用C++ builder的嗎,主要是做什么類(lèi)型的項(xiàng)目的哦?  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2008-06-18 12:44 土仔
            @夢(mèng)在天涯
            常用BCB,有時(shí)偶爾用用VC吧。沒(méi)有什么項(xiàng)目,自己玩玩,想到什么就做什么吧。失業(yè)中。。。。。  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2008-06-30 13:11 信任
            平時(shí)喜歡用bcb,當(dāng)然也要看具體的項(xiàng)目了,呵呵  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2008-08-22 14:19 xuliang
            請(qǐng)問(wèn)在c++ builder 2007或delphi 2007怎么安裝,  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2008-08-27 13:10 土仔
            @xuliang
            在Lib里有fulld10.bat,應(yīng)該支持Delphi2007。因?yàn)闆](méi)有裝BCB2007,所以不知道該如何安裝,建議去控件的主頁(yè)上看看。  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-06-29 16:19 魯魯
            土仔大大您好,我有按照文章的內(nèi)容步驟做
            可以正常安裝
            但我一但用到idAntiFreeze元件時(shí)就會(huì)發(fā)生:
            [Linker Fatal error] Unable to open file 'IDANTIFREEZE.OBJ'
            的問(wèn)題,不知大大有沒(méi)有解決的方法?  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-06-29 22:40 土仔
            @魯魯
            首先,要確定你安裝的indy和c++builder的版本號(hào)是多少。indy 10有用最新的嗎?安裝成功后,先不用idAntiFreeze元件,使用其他的元件試試有沒(méi)有同樣的問(wèn)題?

            如果,其他元件也出現(xiàn)這樣的問(wèn)題,建議你把Project-Options-Directories/Conditionals-include path和Library path中的indy10目錄移動(dòng)到第一個(gè)位置試試。  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-06-30 11:08 魯魯
            土仔大您好
            我用IdHTTP元件的話(huà)就沒(méi)有問(wèn)題(不過(guò)仍然不能get網(wǎng)頁(yè)…不知道是哪邊設(shè)定錯(cuò)誤)

            我是用「FULLC6.bat」來(lái)打包的,這個(gè)檔案應(yīng)該沒(méi)有錯(cuò)吧?
            先謝謝土仔大大的回覆了。^ ^  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-06-30 11:09 魯魯
            土仔大您好
            我用IdHTTP元件的話(huà)就沒(méi)有問(wèn)題(不過(guò)仍然不能get網(wǎng)頁(yè)…不知道是哪邊設(shè)定錯(cuò)誤)

            我是用「FULLC6.bat」來(lái)打包的,這個(gè)檔案應(yīng)該沒(méi)有錯(cuò)吧?
            先謝謝土仔大大的回覆了。^ ^  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-06-30 20:56 土仔
            @魯魯
            還是沒(méi)有弄清楚你的C++ BUILDER是什麼版本,如果是6,才能用FULLC6.BAT打包,如果不是,那就不行了。不能get,說(shuō)明功能有缺失。。  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-07-01 08:15 魯魯
            謝謝土仔大大的回覆!
            我也是用BCB6的(因?yàn)楣静唤o買(mǎi)其它版本……Orz)

            不知土仔大還有沒(méi)有在使用indy10來(lái)開(kāi)發(fā)新的軟件,好期待土仔大有新的文章~~~~

            另一方面,我最近也重裝了indy9(2008年最後的版本,不知版次為何)
            發(fā)現(xiàn)indy9跟indy8也有點(diǎn)小小的落差,不過(guò)沒(méi)像indy10這麼難以練習(xí)

            但學(xué)indy10是潮流吧,總不能一直在用舊的東西…
            不好意思,還是小抱怨了一下
            謝謝土仔大大了唷!  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-07-06 10:41 魯魯
            另外,我在bcb6上使用indy10.2.3
            在使用TIdAntiFreeze元件後
            會(huì)出現(xiàn)
            「Linker Fatal Error ......... "idantifreeze.obj"」
            的問(wèn)題
            不知道土仔大大有沒(méi)有遇到過(guò)這樣的問(wèn)題呢?  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-07-18 00:48 土仔
            @魯魯
            不好意思,上個(gè)星期出差剛回。我嘗試了一下,我的INDY10確實(shí)也是這個(gè)問(wèn)題。隨便GOOGLE了一下,網(wǎng)路上的一個(gè)檔IndyFAQ.pdf里有說(shuō)道:
            We had to do something unusual in the Indy packages by putting a run-time unit (IdAntiFreeze) into the design-time package instead of the run-time package so the run-time package would only depend on the RTL and not the visual Component Library. In Borland Delphi, this is not a problem if the IdAntiFreeze was included and because that unit has no design-time code in it at all.
            Unfortunately, this is a problem in C++Builder because you depend upon a .HPP and .OBJ file for
            that unit and in C++Builder, those are not generated for design-time packages at all. For
            C++Builder, we have to trick the Delphi compiler (that's included in C++Builder) into generating the
            .HPP and .OBJ files for IdAntiFreeze using a dummy unit named IdDummyUnit.

            目前我認(rèn)為只能自己用BCC32命令來(lái)生成.OBJ文件才能解決問(wèn)題了。  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-07-27 13:29 魯魯
            謝謝土仔大大的分享,目前我的做法是先改回indy9的最後版本
            感覺(jué)起來(lái)還蠻搭的

            我有另外測(cè)了一下10.5.5的版本,結(jié)果仍是相同,所以應(yīng)該就是沒(méi)辦法正常在bcb6下用了吧…

            最後想再請(qǐng)教土仔大大是利用什麼關(guān)鍵字搜尋的呢?
            我在網(wǎng)路上也找了很久,但沒(méi)看到土仔大提供的這段訊息哩。  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-08-01 13:36 土仔
            @魯魯
            你試試IndyFAQ.pdf這個(gè)關(guān)鍵字看看。如果沒(méi)有找到,發(fā)私人留言給我你的郵箱地址。  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-08-03 19:15 bingyu0914
            問(wèn)下INDY10.2.3中的idFTPServer支持IPV6嗎?為什么我的總有錯(cuò)?  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-08-03 23:46 魯魯
            土仔大大您好,我有在網(wǎng)路上找到IndyFAQ.pdf的這個(gè)檔案
            在您說(shuō)提到的那一段文章之後有這麼一項(xiàng):
            We never did use the IndyC*.bpk packages at all when building the Indy binaries for installations.
            We were simply the Delphi .dpk's along with some special parameters that cause DCC32 to
            generate .OBJ and .HPP files and then making a .LIB file. Now just so there's no
            misunderstanding, you can get C++Builder binaries from Delphi .dpk's and we know of two vendors
            that do this successfully. The processed for building the .BPK's with MAKE is really just the same
            thing because MAKE is just a batch processor that calls the Delphi compiler with the exact
            parameters we are using and having TLIB add the objects to the .LIB files.

            難道是在說(shuō)利用Delphi所編譯出來(lái)的lib給bcb中使用?
            中間提到了很多運(yùn)行時(shí)期以及設(shè)計(jì)時(shí)期的內(nèi)容,無(wú)奈小弟才疏學(xué)淺,看不懂這文章的精華,還請(qǐng)土仔大大賜教了!  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-11-11 13:11 aaaaaaa98
            [Linker Fatal error] Unable to open file 'IDANTIFREEZE.OBJ'
            我用dcc32編譯了idantifreeze.obj,但是出現(xiàn)handlefinally()找不到的錯(cuò)誤,
            無(wú)法解決,請(qǐng)各位同行幫忙  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2009-12-01 22:50 魯魯
            IDANTIFREEZE.OBJ有解了

            Idantifreeze.pas
            包到專(zhuān)案中即可  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2010-06-06 01:39 BlanchardRobyn34
            I took my first <a href="http://lowest-rate-loans.com/topics/business-loans">business loans</a> when I was 32 and this supported me very much. But, I need the auto loan also.   回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2013-04-06 18:49 samples of resume writing
            At whatever time you desire to get high quality samples of resume writing, you must go for the bureaus which are highly popular among the customers for providing errorless papers.  回復(fù)  更多評(píng)論
              

            # re: 在C++Builder中安裝Indy 10.2.3詳細(xì)步驟 2013-06-06 20:51 智能辦公
            以前一直用Delphi,現(xiàn)在想學(xué)習(xí)一下CB,感謝分享!  回復(fù)  更多評(píng)論
              

            亚洲国产成人久久精品99 | 久久99久久无码毛片一区二区| 欧美丰满熟妇BBB久久久| 久久久女人与动物群交毛片| 精品熟女少妇av免费久久| 97精品伊人久久久大香线蕉 | 日本精品久久久久中文字幕8| 久久se精品一区二区| 久久无码一区二区三区少妇| 狠狠综合久久综合88亚洲| 国产美女久久久| 久久青青色综合| 久久96国产精品久久久| 久久久精品人妻一区二区三区蜜桃| 久久久久亚洲AV成人片| 久久免费观看视频| 久久这里只有精品久久| 国产成人精品三上悠亚久久| 青青草国产精品久久久久| 久久亚洲AV成人无码| 久久精品国产精品亚洲艾草网美妙 | 亚洲av成人无码久久精品| 国产免费福利体检区久久| 久久久久亚洲AV无码麻豆| 国产精品乱码久久久久久软件 | 亚洲精品99久久久久中文字幕| 久久精品aⅴ无码中文字字幕重口| 久久久久这里只有精品| 精品久久久久久无码专区| 久久精品国产亚洲av麻豆图片| 久久久噜噜噜久久| 国产精品禁18久久久夂久| 亚洲av日韩精品久久久久久a | 久久99国内精品自在现线| 婷婷国产天堂久久综合五月| 久久人搡人人玩人妻精品首页| 久久99精品国产99久久| 91性高湖久久久久| 91久久香蕉国产熟女线看| 久久精品国产99久久久香蕉| 久久本道综合久久伊人|