delphi如何调用vc写的 ATL Com中的hwnd型参数? procedure SetVideoHwnd(var hWnd: _RemotableHandle);到了delphi下会这样
然后我想把一个按钮的句柄产给它
VideoCap1.SetVideoHwnd( BitBtn3.Handle);[Error] dephleVideoCapture.pas(41): Types of actual and formal var parameters must be identical
请问该如何解决

解决方案 »

  1.   

    谢谢
    就是我用atl 在vc下面写了一个com,在这个com中有一个接口要传进一个hwnd类型的数值。在vc下是这样使用的。
    定义
    [id(4), helpstring("method SetVideoHwnd")] HRESULT SetVideoHwnd(HWND  hWnd);
    使用:
    m_test->SetVideoHwnd(m_myVideoPicture.GetSafeHwnd());
    在delphi下安装后在tlb文件里
     procedure SetVideoHwnd(var hWnd: _RemotableHandle);现在我要在里传入一个panel的句柄。
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    VideoCap1.SetVideoHwnd( “怎么传”);
    end;老是编译不过
      

  2.   

    Delphi里的handle就是VC里的HWND,强制转一下看看?
    idl里的参数类型定义成和HWND兼容的就可以