首页 新闻 会员 周边 捐助

还是刚才的问题,谢谢( 学习奋斗)同学。c++的dll引入到.NET中来。如何引用?参数如何转换?

0
悬赏园豆:20 [已关闭问题]

这个问题还是没解决了,再拿出来请教网友们。

多谢这位同学 学习奋斗

原帖:http://space.cnblogs.com/question/11161/

问题补充:

函数功能:发送交易请求到服务端,并接收服务端应答。

格式:int ClientSendAndRecv (Char:Invoker,Char *ServerIp,int ServerPort,

int WaitTime,void * pSendBuf,int iSendLen,

void * pRecvBuf,int BufLen); stdcall;

参数说明:Invoker:  发起端标识,请填写:‘0’

         ServerIp::CS端服务器地址,字符串类型;

         ServerPort:CS端交易服务端口,整数类型;

         WaitTime:通讯超时,整数类型;

         pSendBuf:待发送数据指针;

         iSendLen:发送数据的长度;

         pRecvBuf:接收数据的缓冲区指针;

         BufLen:接收数据的缓冲区长度。

引入:

[DllImport("HsClient.dll")] 
        public static extern int ClientSendAndRecv(byte Invoker, string ServerIp, int ServerPort, int WaitTime, IntPtr pSendBuf, int iSendLen, IntPtr RecvBuf, int BufLen); 

[DllImport("HsClient.dll")]         public static extern int ClientSendAndRecv(byte Invoker, string ServerIp, int ServerPort, int WaitTime, IntPtr pSendBuf, int iSendLen, IntPtr RecvBuf, int BufLen); 

调用:

 IntPtr ss = new IntPtr();

            IntPtr cc = new IntPtr();

 

           int result=  ClientSendAndRecv(0, "192.168.1.15", 3000, 30, ss, 3000, cc, 500);

           MessageBox.Show(result.ToString());

 

 

调用时出现错误:无法加载 DLL“HsClient.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。

该dll我放到system32,bin下都放了。权限也加上了,就是不能用,一直都报上边的错误。

恳请网友帮我解答下。

谢谢。如果有需要我可以把dll发给你。

 

大青岛的主页 大青岛 | 初学一级 | 园豆:142
提问于:2009-12-18 10:23
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册