【问题标题】:Is there a size limit on WritePrivateProfileStruct?WritePrivateProfileStruct 有大小限制吗?
【发布时间】:2010-03-22 17:32:59
【问题描述】:

我正在尝试使用WritePrivateProfileStringWritePrivateProfileStruct 函数编写一个INI 文件。

我发现当字节数相对较低时,WritePrivateProfileStructGetPrivateProfileStruct 可以正常工作,但如果字节数较高(在我的情况下为 62554 字节),Write 函数似乎可以工作,但 @987654326 @函数没有。

我没有在 MS 文档中找到这些函数的大小限制。为什么会这样?

【问题讨论】:

  • “什么”是为什么它不起作用。
  • 哪个函数失败了,GetPrivateProfileStructA 还是GetPrivateProfileStructW
  • 我与GetPrivateProfileStructA合作

标签: c++ winapi registry


【解决方案1】:

是的,我复制。我可以读回的最大缓冲区是 32766 字节。较大的值会产生 ERROR_BAD_LENGTH。使用校验和和终止零,在我看来它使用的是 (32766+2) * 2 = 65536 字节长的内部缓冲区。有点道理,这是一个遗留的 16 位 API。

真的应该考虑使用常规文件。但一种解决方法是将缓冲区一分为二。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-01
    • 2011-03-13
    相关资源
    最近更新 更多