请指点,为什么总是出错?(50分)

  • 主题发起人 主题发起人 kkitty
  • 开始时间 开始时间
K

kkitty

Unregistered / Unconfirmed
GUEST, unregistred user!
type
PNeededSAVE = ^ TTNeededSaved;
TTNeededSaved = record
printed :Boolean;
MSG_id :LongWord;
end;
PTraceQ = ^TTrace;
TTrace = packed Record
Task_id : Integer;

n_TgNetId : LongWord;

n_msgid : LongWord
procdure yyy( );
var Fprinted :PNeededSAVE;
FPData : PTraceQ;
MSGid :Longword;
begin
//我想把MSGid的值给 Fprinted^.MSG_id ,但是以下几中都出错,为什么,我怎么实现呢?

方法1: Fprinted^.MSG_id := MSGid;
//出错//MSGid已经被初始化过了
方法2: MSGCount := sizeof(fpData^.n_msgid);
Move( fpData^.n_msgid , Fprinted^.MSG_id ,MSGCount);//出错
方法3: StrCat(pchar(fpData^.n_msgid ) ,pchar(MSGid)) ;//出错
Fprinted^.printed := True;//出错
请高手赐教!谢谢了
 
主要是未分配空间。
new(Fprinted);
Fprinted^.MSG_id := MSGid;
showmessage(inttostr(Fprinted^.MSG_id));
dispose(Fprinted);
 
我想把 Fprinted^.printed := True ,但是此语句出错,我如何实现用MOVE怎么写呢?
 
后退
顶部