我现在用VC写了一个消息发送程序,用DELPHI写一个消息接收程序.
现在VC的程序是这样发送的
PostMessage(MYhWnd,WM_SENDMY_MSG,0,lpar);
其中lpar是一个指针量,指向一个字符串.
在DELPHI接收的时候.使用函数
 procedure Tform1.usemsg( var Message:TMessage);
但是Message.LParam是一个整形的量.
如何变回一个指针量?
如何读取这个指针中的字符串,变成为一个string类型的变量?
由于对DELPHI不太熟悉,希望高手赐教,不胜感激.

解决方案 »

  1.   

    用:
    PChar(Message.Lparam);
    就可以了!
      

  2.   

    好象不可以啊?
     tjff2000(fengyun)你没明白我的意思,我是要把Message.Lparam这个整形转换为一个指向那里的一个字符串string类型。
    如何转换啊?
    用PChar转换成的类型不符合要求啊。
    后面要怎么转换啊?
      

  3.   

    你VC中传递消息传递的是一个字符串指针啊,接受消息的时候接到的lParam肯定也是字符串指针的头地址啊,你就使用p :=PChar(Msg.lParam)就可以得到字符串了啊!p是一个PChar类型,如果你要转换为string你就ShowMessage(StrPas(p));
      

  4.   

    TO Linux2001(我想买手提电脑啊!)
    你说的方法我试过了,但是不行,消息接收过来所指向的地址为空.
    我认为应该是不同地址空间的问题.
    zjybestzjybest(zjybestzjybest)说的用文件映射的方法我想应该是可行的.
    呵呵.
    我用的方法是传送字符的ASCII码,进行直接转换.
    好了,这个问题应该这样就可以解决了.