DLL返回字符给主程序

来源:互联网 发布:防弹少年团amas知乎 编辑:程序博客网 时间:2024/06/07 10:21

dll想返回内容给主程序时,最好让主程序分配好内存,然后把分配好的内存和内存大小传给DLL,DLL在内存中填好数据

例如:

  ---dll------

int __stdcall GetDLLContent(char* Buf = NULL, int BufSize = 0) 

{

  if (Buf && BufSize)

  {

     //将需要返回的内容拷由到Buf中,直到bufSize

   //返回真正拷贝的字节大小

  }

  else

  {

      返回需要分配的内存大小

  }

/// 主程序

int bufSize = GetDLLContent();

char* buffer;

buffer = malloc(sizeof(char) * bufSize);

int numRead = GetDLLContent(buffer, bufSize);

//使用buffer,直到numRead

free(buffer);

}

原创粉丝点击