WritePrivateProfileStruct是否有大小限制?
问题描述:
我正在尝试使用WritePrivateProfileString
和WritePrivateProfileStruct
函数编写INI文件。WritePrivateProfileStruct是否有大小限制?
我发现,当字节数是比较低的,WritePrivateProfileStruct
和GetPrivateProfileStruct
做工精细,但具有较高的字节数(在我的案件62554个字节),Write
功能似乎工作,但Get
功能不。
我还没有在MS文档中发现这些函数的大小限制。这是为什么发生?
答
是的,我repro。我可以读回的最大缓冲区是32766字节。较大的值会产生ERROR_BAD_LENGTH。通过校验和和终止零,在我看来,它使用了一个长为(32766 + 2)* 2 = 65536字节的内部缓冲区。有点意义,这是一个传统的16位API。
你真的应该考虑使用一个普通的文件。但是一种解决方法是将缓冲区分成两部分。
“什么”将是它为什么不起作用。 – djeidot 2010-03-22 19:12:12
哪个函数失败,'GetPrivateProfileStructA'或'GetPrivateProfileStructW'? – MSalters 2010-03-23 11:44:41
我正在使用'GetPrivateProfileStructA' – djeidot 2010-03-23 14:39:12