Windows学习旅程(一)

  昨天在调用
  BOOL WriteFile(
  HANDLE
hFile,                    // handle to file to write to
  LPCVOID lpBuffer,                // pointer to data to write to file
  DWORD nNumberOfBytesToWrite,     // number of bytes to write
  LPDWORD lpNumberOfBytesWritten// pointer to number of bytes written
  LPOVERLAPPED lpOverlapped        // pointer to structure for overlapped I/O
);
API的时候,我想把不同类型的数据一下写入到Buffer里去,比如说我有个类如下:

class FileHelper
{
   
public ULONGLONG fileAddress;
   
public PCHAR fileName;
}
我想把fileAddress,fileName 写到一个Buffer里面,然后再把这个Buffer写入到文件里面去,对于这种要适应多类型的Buffer 只能定义PVOID(*Void)类型的一个Buffer,如果只写一次那就挺好办的,但是问题是我这儿有一个序列的FileHelper-FileHelper*,我需要循环FileHelper*,把数组里的所有Field写入到Buffer里去,这就需要写入到Buffer(PVOID类型)去一次就要偏移Buffer到尾端,但是PVOID类型的Buffer是根本是不支持指针偏移的,因为PVOID的类型是不确定,步长就不能确定,所以偏移就等于是天方夜谭了。
    哎,我想这个肯定能一下子把一个不同的类型写入到一个Buffer里去,然后再重这个Buffer里写入到File里面去,想不出其它办法,于是找部门经理求救,他给我说了一下,我也没听懂,郁闷啊,本来想再问,想一想算了吧,还是自己解决吧,不然要被他说我不动脑筋了,结果还是没有按照我的方式解决问题。。。
    昨晚回家后,好好反思了一下,自重海兵走了以后,每天都给女朋友打电话,一打就是30分钟~2小时,电话费也打出了天文数字,好久没有看书了啊。。。<深入浅出MFC>看了一大半丢在哪儿半个月没有翻它了。刚买的<Window核心编程>,<算法导论>就写了一个名字,它们都还在郁闷的等待我去照顾它们啊,呵呵。于是痛下决心,忍受孤独,看看我喜欢的技术书籍。我会把天天学习Windows编程的过程记录在此地,一,提醒自己要天天给自己充电二,便于以后查阅整理。

posted on 2007-11-16 09:30  john.huang  阅读(210)  评论(0编辑  收藏  举报

导航