VC中使用VISA读示波器数据

用VISA的viRead读示波器内存的波形数据,设置的每次读数据个数1024个,内存中有数据10240个,循环调用viRead时,第一次能返回1024个数据,但第二次以后就读不到了,为什么?
还有,viRead读到的数据格式是"#90000xxxxxmmmm…"其中#90000xxxxx是数据头,xxxxx代表读到的数据点数,mmmmm…是二进制数据。我往.csv文件里写这些数据时用fstream的write(),写进去还是图一这样的,我想要的是数字。怎么回事?
还有就是程序只有在调试状态下单步执行viRead才能返回数据,直接运行就提示超时,怎么回事?图片说明

http://download.csdn.net/download/gaoerxun/3175614

这个read之前给示波器发送的是截屏指令,返回的是BMP的标准数据流,直接用readtofile更好