【发布时间】:2017-07-20 23:48:50
【问题描述】:
我想将所有文件从 test1 复制到 test2。代码编译但没有任何反应。
#include <iostream>
#include <stdlib.h>
#include <windows.h>
using namespace std;
int main()
{
string input1 = "C:\\test1\\";
string input2 = "C:\\test2\\";
MoveFile(input1.c_str(), input2.c_str());
}
我正在考虑 xcopy 但它不接受预定义的字符串。有解决办法吗?
【问题讨论】:
-
检查
MoveFile的返回值,当你看到它说失败时,使用GetLastError找出原因。 -
根据
MoveFile()文档:“lpNewFileName[in] 文件或目录的新名称。新名称不得已存在。A新文件可能位于不同的文件系统或驱动器上。新目录必须位于同一驱动器上。"test2目录是否已存在?考虑使用SHFileOperation()或IFileOperation而不是MoveFile()。 -
如果这两个都是目录,那么你希望发生的事情就不会发生。