大家看一下我的一段代码:
     procedure TForm1.FormCreate(Sender: TObject);
      var
      lpdata:pnotifyicondata  ;
       begin
       registerhotkey(form1.Handle,0,mod_shift or mod_control,65);
       lpdata:=new(pnotifyicondataA);
       Lpdata.cbsize:=88;
       lpdata.wnd:=form1.handle;
       lpdata.hicon:=form1.icon.handle;
       lpdata.ucallbackmessage:=wm_iconmessage ;
       lpdata.uid:=0;
       lpdata.sztip:='屏幕捕捉';
       lpdata.uflags:=nif_icon or nif_message or nif_tip;
shell_notifyicon(nim_add,lpdata);
dispose(lpdata);
end;   但是我在运行时,在lpdata:pnotifyicondata 处,就出现了错误,说是没有声明pnotifyicondata ,我想问一下关于shell_api 的第二个参数该如何使用呢?
   小弟在线等!!

解决方案 »

  1.   

    你有没有使用ShellAPI单元啊?
      

  2.   

    多谢了!! 小弟感激不禁!
         还有就是 lpdata:=new(pnotifyicondataA); 中的 pnotifyicondataA 是什么意思啊?
        我在声明部分没有声明它呀?
      

  3.   

    PNOTIFYICONDATA中“p....”开始的类型表明一个指针变量,
    而Api帮助不会提供一个指针的help,它只会提供你一个指向数据块
    的帮助。所以你应当查NOTIFYICONDATA,而不是PNOTIFYICONDATA。
      

  4.   

    可以现在在 lpdata.ucallbackmessage:=wm_iconmessage  出有出现了错误 
      编译器说是没有声明 wm_iconmessage  该如何办呢?
      小弟多谢了!
      

  5.   

    是的,小弟就是在学着做一个托盘程序,可是现在
       lpdata.ucallbackmessage:=wm_iconmessage  出有出现了错误 
      编译器说是没有声明 wm_iconmessage  该如何办呢?
        小弟在线等,请赐教!!!
      

  6.   

    本来就没有wm_iconmessage这条消息的;你自定义的?