易截截图软件、单文件、免安装、纯绿色、仅160KB

会C#调用C dll的进

C语言函数声明为:
bool bSendMsg(HANDLE hComm,char *szMsg,char *szPhNbr,char *szSCA,int iSMSFormat,char *szNextMsg,char *szErrInfo);

入口参数:hComm 串口句柄,szMsg 待发的短信内容,szSCA 短信中心号码,iSMSFormat 短信编码格式
出口参数:szNextMsg 超长部分的待发内容, sErrInfo 出错信息

其中szSCA是结构体
struct STRUCommInfo
{
      int iBaudRate;
      char szSCA[30];
};
我的c#声明为

[DllImport("SMSCom.dll", EntryPoint = "bSendMsg")]
public static extern bool bSendMsg(IntPtr hComm,string szMsg,string szPhNbr,string szSCA,int iSMSFormat,  StringBuilder szNextMsg, StringBuilder szErrInfo);
   


结构体为:
[StructLayout(LayoutKind.Sequential)]
    public struct STRUCommInfo
    {
      public  int iBaudRate;
      [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 30)]   
      public string szSCA;
    }

调用方法:

其中stru.szSCA通过上个函数调用,已返回 “8613800555500”
CallDll.bSendMsg(ptr, "在干嘛呢", "15215553319", stru.szSCA, 0, sd, sc);
然后报:尝试读取或写入受保护的内存错误,期待高手看下我的代码参数是否传错了


不能沉下去啊

帮顶 希望会的 看看
{{--


相关问答:

用C或C++如何编写求解3D魔方程序 - C/C++ / C++ 语言

请问用C或C++如何编写求解3D魔方的程序,该从何开始?
谢谢各位,帮忙提点建议吧。

http://www.mofang.net/code/176/182/6581.html

我只能突破60秒!唉。

我刚过40秒

google的android中有个OpenGL ES + ......

向高手请教fortran 调用C 的问题

我现在要些一个fortran调用C接口的问题,但是不知道 C语言里面分配的指针怎么付给fortran,又不能在fortran立马先分配好,业务上不允许。
我写了个测试的例子。但是不行。
test.c
#include <stdio.h>
#incl ......

C# DataSet导出xml 批处理(循环)得怎么处理

DataSet导出xml 批处理(循环)得怎么处理
XML文件
<A>
      <B>
        <C>
        </C>
  &nb ......

C/S项目架构设计----求助 - Java / Java SE

本人正在用Java做一个C/S架构的项目, 
可是由于项目比较大,前期对架构的设计尤其重要,因为后期可能随时会加个功能或者去掉某些功能。 
所以特地寻求如何设计C/S的架构使程序更加面向对象更加易于维 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号