新建了一个单元,里面要用到自定义的消息,结果就出现 Unknow directive:‘Message’的错误。各位大神帮帮忙,我是初学、、、
解决方案 »
- 线程交互,会不会两个线程同时挂起?
- SQL 有没有直接计算百分比的语句?
- Delphi如何实现VB中type的定义?!!!
- 表单名在变量FormName中,如何运行该表单呢?
- 了解一下各位目前都是做什么软件的?(散分)
- 如何解决查询中的问题
- delphi中用idsmtp发送邮件有错误
- dbgrid内有5个lookup字段,如果要添加新纪录,应如何操作及写sql语句?
- Delphi的Dll内窗口调用与控件调用
- 各位大牛谁有Delphi写的Webserver的例子?不要Webservice的例子
- 请问如何使用Delphi把带分界符的文本导入到DB数据库中?
- 调用MySql带有返回参数的存储过程,获取返回参数值?
例
const
WM_MyDLLDATA=WM_USER+1000;private
procdure CLIENT_CLOSE(var MSG:TMSG);message WM_MyDLLDATA;....implementationprocdure CLIENT_CLOSE(var MSG:TMSG); 这里不要再有message WM_MyDLLDATA;
begin
....
end;
interface
、、、
const
WM_MyMsg = WM_USER+100;var
procedure TrayIconMsg(var Msg : TMessage); Message : WM_MyMsg;
、、、实现部分还没写呢,试着编译是就出错了
interfaceconst
WM_MyMsg = WM_USER+100;var
//这里是声明变量的部分,所以不可以。
procedure TrayIconMsg(var Msg : TMessage); Message : WM_MyMsg;TMessage你需要uses Windows
估计楼主是在一个PAS文件中直接建立的这个自定义消息过程,这违背了第一行的原则。
在单元文件中想建立自定义消息,可以通过某个对象,例:类,通过建立该类的一个方法来实现。如果是一个表单,例Form1,在该表单的单元文件unit1的private中建立楼主的自定义消息,则不会报错。楼主可以做个试验:如果将private中定义的那个自定义消息过程移到 var form1:TForm1的下一行定义,编译时同样会出错。