从c++ dll返回文件流到Centura团队开发人员



我找到了一个C/c++ QRCode库,并希望将其用作。dll。一个简单地称为"qrcode"的函数将char szSourceString[], char OUT_FILE[]作为参数。SourceString是要转换的文本,OUT_FILE是文件名。这个函数写入。bmp.
在Gupta/Centura Team Developer 5.2中,我需要使用.dll,我需要将这些参数传递为"LPSTR"。上面提到的工作很好,但我正在寻找一种方法来返回文件流,而不是编写。bmp,我必须再次在Centura中打开以进一步处理它。

在c++库中文件是这样写的:

if (!(fopen_s(&f, OUT_FILE, "wb")))
        {
        fwrite(&kFileHeader, sizeof(BITMAPFILEHEADER), 1, f);
        fwrite(&kInfoHeader, sizeof(BITMAPINFOHEADER), 1, f);
        fwrite(pRGBData, sizeof(unsigned char), unDataBytes, f);
        fclose(f);

我想把unsigned char*pRGBData返回到我从Centura调用它的地方。我不知道该怎么做/使用哪种数据类型。我试图将pRGBData转换为std::string并返回它,但在从Centura调用函数时崩溃。我不知道转换本身是否可以正常工作,或者它只是因为我选择了错误的数据类型而崩溃。作为Centura-"String"我能超越"HARRAYHstring, lpstring, lpcstr, lpcwstr, lpvoid, lpwstr "。有人能帮我一下吗?

将其作为字节数组返回,并在Gupta中使用Receive String LPCSTR

相关内容

  • 没有找到相关文章

最新更新