首页 > 解决方案 > vb6 文件写入限制似乎是 0x4000

问题描述

我有文件写入似乎停止 0x4000 的问题

For wrtCntr = 0 To lpNumDataBytesReturned - 1
    WriteDataBuffer_trans(wrtCntr) = TransposeBits(ReadDataBuffer(wrtCntr))
    Put #4, , WriteDataBuffer_trans(wrtCntr)
Next wrtCntr
 '' Ret = WriteFile(FileH, WriteDataBuffer_trans(0), lpNumDataBytesReturned, lpNumDataBytesReturnedCopy, 0&)

文件大小总是停在 0x4000,我无法让它更进一步。我写信给%TEMP%

任何人都有任何想法。我认为这是 VB6 的问题,它设置了最高有效位,该值被认为是负数,但无论我尝试什么,它都不会写入。

文件已打开

sPathUser = Environ$("TEMP") & "\rd_out.txt"

打开 sPathUser 进行二进制访问写入 #4

谢谢你,马丁

标签: vb6

解决方案


我能够让文件增长,你是对的,我有一个错误导致程序以 16Mb 的文件大小过早退出。有时,如果将整数设置为 0x8000,它会被读取为负数。我以为我已经清除了它们,但错过了一个。谢谢您的回复。


推荐阅读