用SDK实现简单的文件拷贝等操作

王朝vc·作者佚名  2006-01-08
宽屏版  字体: |||超大  

今天,本栏目转了一篇关于文件拷贝等操作的文章(在WIN95中实现文件拷贝的编程方法)。里面的实例是用MFC创建的,在加以理解的情况下,我试着用SDK来实现,方法很简单,也很实用。现将整个过程讲解如下:

1. 建立一个项目,打开VC6,选择File|New...在New对话框的Projects选项卡中选择Win32 Application,在Project name输入项目名称,按OK,在第二个对话框里选择A simple Win32 application,按Finish,这样就建立一个具有Winmain函数的SDK程序了。

2. 我们将文件的拷贝放在一个函数里完成,函数的定义如下:

void OnFileCopy(HWND hwnd)

{

int nOk;

char pFrom[] = "c:\\My Documents\\test.mp3\0"; //原文件路径和文件名

char pTo[] = "c:\\windows\\desktop\\test.mp3\0"; //设置目标路径和文件名

char strTitle[] = "文件正在拷贝..."; //进度条标题

SHFILEOPSTRUCT FileOp;

FileOp.hwnd = hwnd;

FileOp.wFunc = FO_COPY; //执行文件拷贝

FileOp.pFrom = pFrom;

FileOp.pTo = pTo;

FileOp.fFlags = FOF_ALLOWUNDO;

FileOp.hNameMappings = NULL;

FileOp.lpszProgressTitle = strTitle;

nOk = SHFileOperation(&FileOp);

if(nOk)

MessageBox(hwnd, "文件拷贝失败!!", "FileCopy", NULL);

else

MessageBox(hwnd, "文件拷贝成功!!", "FileCopy", NULL);

if(FileOp.fAnyOperationsAborted)

MessageBox(hwnd, "取消文件拷贝或文件拷贝时失败!!", "FileCopy", NULL);

}

我们假设在程序启动时就完成文件的拷贝工作,所以我们只需在WM_CREATE消息调用以上函数即可:

OnFileCopy(hwnd);

其中hwnd是程序的句柄。

以上程序功能是实现把C盘My Documents目录下的test.mp3拷贝到桌面上,源代码可以到《程序代码》里下载。

2001-8-31 15:57

文件下载: 点击下载 [4.44KB],[rar格式,下载 Winrar300sc ]

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有