在新建工程中,把psock.pas加进来,然后编译,这样就得到psock.dcu

解决方案 »

  1.   

    可是编译时候他说缺少 这个文件
    nmfifobuffer.dcu你有编译好的文件吗?
    另副
    。Delphi本身自带的FastNEt公司的NMUDP控件就是一个UDP协议的用户数据包控件。 
    不过要注意的是如果你使用了这个控件必须退出程序才能关闭计算机,因为TNMXXX控件有BUG。所有nm控件的基础 PowerSocket用到的ThreadTimer,用到一个隐藏的窗口(类为TmrWindowClass)处理有硬伤。出问题的地方: 
    Psock::TThreadTimer::WndProc(var msg:TMessage) 
    if msg.message=WM_TIMER then   //他自己处理 
      msg.result:=0 
    else 
       msg.result:=DefWindowProc(0,....) 
    end 
    问题就出在调用DefWindowProc时,传输的HWND参数居然是常数0,这样实际上DefWindowProc是不能工作的,对任何输入的消息的调用均返回0,包括WM-QUERYENDSESSION,所以不能退出windows。由于DefWindowProc的不正常调用,实际上除WM_TIMER,其他消息由DefWindowProc处理都是无效的。 
    解决的办法是在PSock.pas在TThreadTimer.Wndproc内Result:=DefWindowProc(0,Msg,WPARAM,LPARAM);改为:Result:=DefWindowProc(FWindow Handle,Msg,WPARAM,LPARAM);