CreateFile(lpFileName, GENERIC_WRITE,0, NULL, CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL | FILE_FLAG_SEQUENTIAL_SCAN, NULL);想用个变量传到lpFileName中创建bmp。
我用固定值时只要将 lpFileName="C:\\screen.bmp"就可以了。
现在我打算要创建几个bmp,所以是个变量,比如i=0,就创建C:\\1.bmp;i++,根据i的变化创建不同文件名的bmp
应该如何写呢?
我用固定值时只要将 lpFileName="C:\\screen.bmp"就可以了。
现在我打算要创建几个bmp,所以是个变量,比如i=0,就创建C:\\1.bmp;i++,根据i的变化创建不同文件名的bmp
应该如何写呢?
for(int i=0;i<10;i++)
{
strFileName.Format("%d.bmp",i);
CreateFile(strFileName, GENERIC_WRITE,0, NULL, CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL | FILE_FLAG_SEQUENTIAL_SCAN, NULL);
}
编译后出现错误:
不能将参数 2 从“CString”转换为“LPSTR”
另外,能不能改路径啊?
CString strPath = _T("C://")
CString strFullPath = _T("");
strFileName.Format("%d.bmp",i);
strFullPath = strPath + strFileName;
CString strFileName;
for(int i=0;i < 10;i++)
{
strFileName.Format("%d.bmp",i);
CreateFile(strFileName.GetBuffer(0), GENERIC_WRITE,0, NULL,
CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL | FILE_FLAG_SEQUENTIAL_SCAN, NULL);
strFileName.ReleaseBuffer();
}//或者用char*
char strFileName[MAX_PATH];
for(int i=0;i < 10;i++)
{
sprintf(strFileName, "C:\\%d.bmp", i);
CreateFile(strFileName.GetBuffer(0), GENERIC_WRITE,0, NULL,
CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL | FILE_FLAG_SEQUENTIAL_SCAN, NULL);
}