各位大哥,小弟第一次弄dll,出现如上错误,不知道怎么解决,请帮帮忙啊!
-------------------------------------------------
dll定义如下:
[DllImport("HCNetSDK.dll")]
public static extern Int32 NET_DVR_RealPlay(long lUserID,ref StructClass.NET_DVR_CLIENTINFO lpClientInfo);-----------------------------
结构定义如下:
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
public struct NET_DVR_CLIENTINFO
{
public long lChannel;          //通道号
public long lLinkMode;         //最高位(31)为0表示主码流,为1表示子码流,0-30位表示码流连接方式: 0:TCP方式,1:UDP方式,2:多播方式,3 - RTP方式,4-音视频分开(TCP)
public IntPtr hPlayWnd;           //播放窗口的句柄,为NULL表示不播放图象
public string sMultiCastIP;    //多播组地址
}-----------------------------
调用如下:
Int32 lRealPlayHandle = Class1.NET_DVR_RealPlay(lLogUID,ref m_NET_DVR_CLIENTINFO);

解决方案 »

  1.   

    不明白葡萄的意思
    我调用的是c++的dll
      

  2.   

    HCNetSDK.dll放到系统system32目录下试试
      

  3.   

    放到system32下面出现加载错误
    自己顶
    急啊
    高手们帮帮忙
      

  4.   

    是不是我说得不够清晰啊
    c++是如下定义的:
    --------------------------
    dll定义:
    NET_DVR_API LONG __stdcall NET_DVR_RealPlay(LONG lUserID,LPNET_DVR_CLIENTINFO lpClientInfo);
    --------------------------
    结构定义如下:
    typedef struct{
    LONG lChannel;//通道号
    LONG lLinkMode;//最高位(31)为0表示主码流,为1表示子码流,0-30位表示码流连接方式: 0:TCP方式,1:UDP方式,2:多播方式,3 - RTP方式,4-音视频分开(TCP)
    HWND hPlayWnd;//播放窗口的句柄,为NULL表示不播放图象
    char* sMultiCastIP;//多播组地址
    }NET_DVR_CLIENTINFO,*LPNET_DVR_CLIENTINFO;
    高手们帮帮忙啊,真的很着急