进行网络传输时,为什么windows下临时文件夹的空间会变大???~~~~~~~在线等!!! ( 积分: 100 )

  • 主题发起人 主题发起人 guitarboy
  • 开始时间 开始时间
G

guitarboy

Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序主要负责进行网络间的文件传输,传输的大体方法是基于tcp/ip协议,是申请个如char[1024]个空间做buffer,突然发现在进行传输的时候windows的internet临时文件夹的空间会膨胀,传输结束后空间会释放掉。但看不到具体是什么文件,只是文件夹的空间会变大。请教各位高手,这现象是为什么???它为什么会在c盘下使用空间,而我存放文件的地方是d盘呀~~~!!!
 
我的程序主要负责进行网络间的文件传输,传输的大体方法是基于tcp/ip协议,是申请个如char[1024]个空间做buffer,突然发现在进行传输的时候windows的internet临时文件夹的空间会膨胀,传输结束后空间会释放掉。但看不到具体是什么文件,只是文件夹的空间会变大。请教各位高手,这现象是为什么???它为什么会在c盘下使用空间,而我存放文件的地方是d盘呀~~~!!!
 
好像ie的下载就是先放在临时文件夹,下完之后再剪贴到你下载时指定的路径
 
不可能,Socket本身只是操作内存(建立缓冲),除非你使用了组件之类的,它做了这些事情(写盘)。
 
我程序中是从ftp读文件的段落:
var
buf :array [0..4095] of char;
realread,realwrite :DWORD;
begin
...
...
if internetreadfile(Handle,@buf,4096,RealRead) =false then ......
...
...
if writefile(Hfile,buf,realread,realwrite,nil) = false then .....

会不会是我用char数组做buffer,而没有用malloc什么的分配空间做buffer造成的呢??
还是同过ftp就会生成临时文件呢???
 
internetreadfile这个函数的问题,系统自己的问题,这个问题不用考虑吧
 
就像迷糊说的那样~~~!用windows的函数进行ftp的传输就是在C:/Documents and Settings/Administrator/Local Settings/Temporary Internet Files中,有个临时文件。可以手动的从internet管理中,临时文件--删除文件把它删掉!ftp是一个单独的协议。有兴趣你可以研究下:)
 
读取一定的到缓冲区后才写到硬盘里,这样对硬盘有好处,不像BT读一点写一点,
 
多人接受答案了。
 
后退
顶部