全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2631
推到 Plurk!
推到 Facebook!

我在compile FrmMain時出現的問題

尚未結案
Emotionse
一般會員


發表:1
回覆:2
積分:0
註冊:2005-08-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-05 14:48:57 IP:61.219.xxx.xxx 未訂閱
出現 [Error] Unit_FrmMain.pas(57): E2003 Undeclared identifier: 'ReceiveTimeout' [Error] Unit_FrmMain.pas(58): E2003 Undeclared identifier: 'QueryRecords' 這兩行源碼是 IdDNSResolver.ReceiveTimeout := 10000; IdDNSResolver.QueryRecords := [qtMX]; 請問我這是哪各地方出錯了3Q 我用的是Delphi2005 在Structure中Error 是出現 'TIdDNSResolver ' does not contain a member named 'ReceiveTimeout' 'TIdDNSResolver ' does not contain a member named 'QueryRecords' 發表人 - Emotionse 於 2005/08/05 16:31:29
cashyy
高階會員


發表:117
回覆:322
積分:212
註冊:2004-04-30

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-05 16:18:27 IP:59.104.xxx.xxx 未訂閱
您好! 這是說妳未宣告識別符,也就是說妳是不是少#include這兩個,或者是少Library!    請參考: http://delphi.ktop.com.tw/topic.php?topic_id=21603 這裡面有說到:Undeclared identifier: 未說明的標識符 發表人 - cashyy 於 2005/08/05 16:21:35
cashyy
高階會員


發表:117
回覆:322
積分:212
註冊:2004-04-30

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-05 16:58:22 IP:59.104.xxx.xxx 未訂閱
妳好! 這是說妳的程式沒有包含成員名稱,請問妳的struct有定義這兩個資訊嗎? 或者是少定義? 應該是說,妳IdDNSResolver裡面沒有ReceiveTimeout、QueryRecords IdDNSResolver是物件嗎?還是妳自己定義的Struct呢? 如果是物件,那就表示這物件沒這兩個屬性。 如果是自己的Struct,那就表示妳少定義這兩個! 發表人 - cashyy 於 2005/08/05 17:06:45
h@visli
資深會員


發表:103
回覆:429
積分:431
註冊:2004-02-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-05 17:36:20 IP:222.248.xxx.xxx 未訂閱
出現這种問題,有一种可能是,由於Indy的不同版本之間,在組件的屬性與方法上會有出入的。 如版本號為10的Indy與版本號為9的Indy,兩個版本的某些組件,可能出現屬性不同或是方法的參數變了。 所以如果您把版本9的工程拿到版本10的開發環境中編譯就會出錯,反之亦然。 這都會引發您所見到的類似問題。 您先看看是不是我說的這种情況。 ---------------------------- 於Delphi K.Top之上 博采眾家之長, 奉獻綿薄之力 ---------------------------
------
------------------------
博采眾家之長,奉獻綿薄之力
------------------------
Emotionse
一般會員


發表:1
回覆:2
積分:0
註冊:2005-08-05

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-08-05 18:56:02 IP:61.219.xxx.xxx 未訂閱
當初安裝時我是將Indy選擇版本10的 那我要怎麼將Indy 改為版本9的呢 ?    初學Delphi 很多不懂 請多幫忙
h@visli
資深會員


發表:103
回覆:429
積分:431
註冊:2004-02-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-08-05 19:51:08 IP:222.248.xxx.xxx 未訂閱
引言: 當初安裝時我是將Indy選擇版本10的 那我要怎麼將Indy 改為版本9的呢 ? 初學Delphi 很多不懂 請多幫忙 < face="Verdana, Arial, Helvetica"> 如果真是我所說的版本不同的原故的說,您可以通過下面的方法解決: 1、如果組件屬性(Property)在源程序中刪除新版本中已不存在的舊屬性;如果是事件(Event)參數不符,則把該事件中的代碼先備份,在源程序中清除該事件,再重新寫該事件。 2、如果怕以上操作麻煩,您也可以安裝回原來版本的Indy,方法是從菜單[Component]—[Install Packages...]中刪除已安裝的版本,再把C:\Program Files\Borland\BDS\3.0\source\Win32\Indy9安裝 ---------------------------- 於Delphi K.Top之上 博采眾家之長, 奉獻綿薄之力 ---------------------------
------
------------------------
博采眾家之長,奉獻綿薄之力
------------------------
Emotionse
一般會員


發表:1
回覆:2
積分:0
註冊:2005-08-05

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-08-08 19:57:59 IP:61.219.xxx.xxx 未訂閱
function getserver(email: string): string; var   i: integer; begin   i := pos('@', email);   if i = 0 then raise exception.create(email + '郵箱錯誤');   delete(email, 1, i);   result := GetMxList('111.111.111.111', nil, email);   if result = '' then     raise exception.create('郵件IP端口出錯'); end; 有人能幫我解釋一下這各Function的作動方式嗎? 上面111.111.111.111 這各IP是我亂設的 我在Build *.exe 出來後 不管怎麼設定都是出現"端口出錯" 請前輩們 幫我解答一下 
h@visli
資深會員


發表:103
回覆:429
積分:431
註冊:2004-02-13

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-08-08 21:12:22 IP:222.248.xxx.xxx 未訂閱
GetMxList這個函數是在哪里定義的?作什麼用?能不能把這個函數貼出來。 “我在Build *.exe 出來後 不管怎麼設定都是出現"端口出錯"”應該就是GetMxList返回來的一直是空字串。 ---------------------------- 於Delphi K.Top之上 博采眾家之長, 奉獻綿薄之力 ---------------------------
------
------------------------
博采眾家之長,奉獻綿薄之力
------------------------
系統時間:2024-11-21 23:49:49
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!