急~~QTP运行测试程序的“读写文件”操作时出错
测试程序是MFC的,程序单独运行的时候没有问题,但是用QTP录制就出现问题了。录制时程序运行到读和写操作fwrite,fread就会弹出错误报告。不知道是程序的问题,正巧被挖掘出来,还是QTP这边的问题?就是读到这样的代码出错:
fwrite( pszFileData,1,strlen(pszFileData), file);
或者是
fread( pszFileData, 1, 64*1024 , file);
D:\Documents and Settings\liangc.HVTEAM\桌面\111.bmp
[ 本帖最后由 lchappy 于 2009-1-14 11:12 编辑 ] 先使用close在write fwrite之前先打开的,close的话就写不进去了吧。。。。
FILE* file = fopen( ".\\参数\\INI.ini","wt"); 把全部发上来看看 void SetUpDlg::OnBnClickedButton11() //下载参数INI
{
char *pszFileData = new char;
EnterCriticalSection( &m_txt);
if( HV_GetIniFile( m_HV, pszFileData, 1024*1024) == S_OK )
AfxMessageBox("下载INI成功!");
CString strTemp = pszFileData;
strTemp.Replace( "\n" ,"\r\n");
strcpy( pszFileData, (LPCSTR)(LPCTSTR)strTemp );
FILE* efile = fopen( ".\\参数\\INI.ini","wt");
fwrite( pszFileData,1,strlen(pszFileData), efile);
LeaveCriticalSection(&m_txt);
fclose(efile);
delete[] pszFileData;
}
void SetUpDlg::OnBnClickedButton13() //上传参数INI
{
char *pszFileData = new char;
FILE* file = fopen( ".\\参数\\上传INI.ini" ,"rb");
DWORD32 dwFileSize = static_cast< DWORD32 >( fread( pszFileData, 1, 64*1024 , file) );
pszFileData[ dwFileSize ] = '\0';
if (HV_SetIniFile( m_HV, pszFileData ) == S_OK )
AfxMessageBox("上传INI成功!");
fclose( file );
delete[] pszFileData;
} 没明白。搂主的意思是qtp到这操作出错?
如果手动执行也出错,肯定是MFC代码的错误。当然这部分文件操作并未使用MFC的库函数。 程序单独运行未出错。。但是在QTP脚本中录制和运行就会出错。。经确认是在文件读写语句上过不去 知道了!问题出在文件路径上,把表示上层目录的“.”改成实际的“D:\\”就可以了,可是为什么呢!为什么程序中的“.”在QTP录制时会出错呢!???
页:
[1]