CopyFile文件操作函数的疑问 C++
//windowsAPI函数,#include<iostream>#include"windows.h"usingnamespacestd;intmain(){if(Co...
// windowsAPI函数,
#include <iostream>
#include "windows.h"
using namespace std;
int main()
{
if(CopyFile("e:\\IDE\\abac.txt","f:\\VC",true)!=0)
cout<<"完成了复制";
else
cout<<"复制失败了";
return 0;
}
但是怎么老是提示错误呢。?各位赐教 展开
#include <iostream>
#include "windows.h"
using namespace std;
int main()
{
if(CopyFile("e:\\IDE\\abac.txt","f:\\VC",true)!=0)
cout<<"完成了复制";
else
cout<<"复制失败了";
return 0;
}
但是怎么老是提示错误呢。?各位赐教 展开
展开全部
调用API CopyFile 复制文件,定义于Kernel32.dll。其函数原型如下:
BOOL WINAPI CopyFile(
__in LPCTSTR lpExistingFileName,
__in LPCTSTR lpNewFileName,
__in BOOL bFailIfExists
);
头部的BOOL 说明CopyFile的返回值为布尔值,只有复制成功或复制失败。BOOL类型对应au3中的int型。
第一个参数lpExistingFileName,指定要复制的文件,LPCTSTR为参数类型,对应于Au3中的str。
第二个参数lpNewFileName, 指定新文件名,参数同样对应于AU3中的str。若此参数指定为某文件夹路径而非某文件名,函数将执行失败,错误值将设为5(拒绝访问)。
第三个参数bFailIfExists, 指定一个BOOL值(真或假),用于说明是否覆盖已经存在的文件。真为覆盖,假为不覆盖。
如果新文件已经存在,并且bFailIfExists指定为False,函数则执行失败。如果新文件不存在,则CopyFile函数忽略这个参数。如果函数最终返回0(假),说明函数执行失败。调用GetLastError(定义于Kernel32.dll中)返回其扩展的错误值。
==================
是不是第二个参数有问题?
BOOL WINAPI CopyFile(
__in LPCTSTR lpExistingFileName,
__in LPCTSTR lpNewFileName,
__in BOOL bFailIfExists
);
头部的BOOL 说明CopyFile的返回值为布尔值,只有复制成功或复制失败。BOOL类型对应au3中的int型。
第一个参数lpExistingFileName,指定要复制的文件,LPCTSTR为参数类型,对应于Au3中的str。
第二个参数lpNewFileName, 指定新文件名,参数同样对应于AU3中的str。若此参数指定为某文件夹路径而非某文件名,函数将执行失败,错误值将设为5(拒绝访问)。
第三个参数bFailIfExists, 指定一个BOOL值(真或假),用于说明是否覆盖已经存在的文件。真为覆盖,假为不覆盖。
如果新文件已经存在,并且bFailIfExists指定为False,函数则执行失败。如果新文件不存在,则CopyFile函数忽略这个参数。如果函数最终返回0(假),说明函数执行失败。调用GetLastError(定义于Kernel32.dll中)返回其扩展的错误值。
==================
是不是第二个参数有问题?
展开全部
CopyFile
2C++编辑
函数原型
BOOL CopyFile(LPCTSTR lpExistingFileName,LPCTSTR lpNewFileName,BOOL bFailIfExists );
程序例
1
CopyFile("C:\\File1.txt","C:\\File2.txt",TRUE);
说明
复制文件。
原型:
BOOL CopyFile{
LPCTSTR lpExistingFileName, //源文件名
LPCTSTR lpNewFileName, //目标文件名
BOOL bFailIfExists;
};
参数 类型及说明:
lpExistingFileName String,源文件名
lpNewFileName String,目标文件名
bFailIfExists Long,如果设为TRUE(非零),那么一旦目标文件已经存在,则函数调用会失败。否则目标文件被改写
返回值
Long,非零表示成功,零表示失败。会设置GetLastError
2C++编辑
函数原型
BOOL CopyFile(LPCTSTR lpExistingFileName,LPCTSTR lpNewFileName,BOOL bFailIfExists );
程序例
1
CopyFile("C:\\File1.txt","C:\\File2.txt",TRUE);
说明
复制文件。
原型:
BOOL CopyFile{
LPCTSTR lpExistingFileName, //源文件名
LPCTSTR lpNewFileName, //目标文件名
BOOL bFailIfExists;
};
参数 类型及说明:
lpExistingFileName String,源文件名
lpNewFileName String,目标文件名
bFailIfExists Long,如果设为TRUE(非零),那么一旦目标文件已经存在,则函数调用会失败。否则目标文件被改写
返回值
Long,非零表示成功,零表示失败。会设置GetLastError
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没指定新文件的文件名 This function copies an existing file to a new file. 这是MSDN的说明
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if(CopyFile("e:\\IDE\\abac.txt","f:\\VC",true)!=0)
改为
if(CopyFile("e:\\IDE\\abac.txt","f:\\VC\\abac.txt",true)!=0)
改为
if(CopyFile("e:\\IDE\\abac.txt","f:\\VC\\abac.txt",true)!=0)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询