請問getcomputername |
尚未結案
|
jichang
一般會員 發表:9 回覆:12 積分:4 註冊:2004-02-11 發送簡訊給我 |
各位大大:
小弟初用Delphi,有很多地方不太會,想請問,當小弟在下列程式少了
GetMem(CName, CSize);
一行時,執行時並沒有任何錯誤,但當要關閉畫面時,卻出現錯誤訊息,
Exception EAcessViolation in Module tmpfrm.exe at 0001B153. 想請問這是什麼原因? procedure tmpfrm.GetInfor;
var
CName : PChar;
CSize : DWord;
begin
CSize := 255;
GetMem(CName, CSize);
if getcomputername(CName, CSize) then
label5.Caption := CName
else
label5.Caption := 'Unkown';
end;
|
jest0024
高階會員 發表:11 回覆:310 積分:224 註冊:2002-11-24 發送簡訊給我 |
引言: 各位大大: 小弟初用Delphi,有很多地方不太會,想請問,當小弟在下列程式少了 GetMem(CName, CSize); 一行時,執行時並沒有任何錯誤,但當要關閉畫面時,卻出現錯誤訊息, Exception EAcessViolation in Module tmpfrm.exe at 0001B153. 想請問這是什麼原因? procedure tmpfrm.GetInfor; var CName : PChar; CSize : DWord; begin CSize := 255; GetMem(CName, CSize); if getcomputername(CName, CSize) then label5.Caption := CName else label5.Caption := 'Unkown'; FreeMem(CName); //記得釋放記憶體!! end;應該不是這兒發生的錯誤吧!? 是不是你在Destroy事件或是關閉的事件中有使用已經釋放掉的物件!? 學而時習之不亦樂乎! |
babyfish4
一般會員 發表:2 回覆:40 積分:18 註冊:2003-08-04 發送簡訊給我 |
引言: 各位大大: 小弟初用Delphi,有很多地方不太會,想請問,當小弟在下列程式少了 GetMem(CName, CSize); 一行時,執行時並沒有任何錯誤,但當要關閉畫面時,卻出現錯誤訊息, Exception EAcessViolation in Module tmpfrm.exe at 0001B153. 想請問這是什麼原因? procedure tmpfrm.GetInfor; var CName : PChar; CSize : DWord; begin CSize := 255; GetMem(CName, CSize); if getcomputername(CName, CSize) then label5.Caption := CName else label5.Caption := 'Unkown'; FreeMem(CName,CSize)//加入這行; //Delphi 5,6 不加此行執行不會有錯誤訊息 //可是用Delphi 7 不加此行執行會有錯誤訊息 end; |
jichang
一般會員 發表:9 回覆:12 積分:4 註冊:2004-02-11 發送簡訊給我 |
|
jest0024
高階會員 發表:11 回覆:310 積分:224 註冊:2002-11-24 發送簡訊給我 |
引言: 各位大大,大家誤會了,我不是說FreeMem(CName)那行,我是說少了GetMem(CName, CSize),不過托大家的福,我知道要FreeMem(Mem)了,感激感激,再請大家幫我解惑一下,謝謝。既然少了GetMem(CName, CSize)這一行!? 那CName是代表什麼意思呢!?...指向一個未知的指標!! 既然都已指向未知指標了,還能發生什麼錯誤?指標是要靠自己維護的.. 另一種宣告 var CName : Array[0..255]of Char; 學而時習之不亦樂乎! |
deity
尊榮會員 發表:90 回覆:876 積分:678 註冊:2003-05-09 發送簡訊給我 |
|
jichang
一般會員 發表:9 回覆:12 積分:4 註冊:2004-02-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |