我试图使用Fortran和/或C++代码将一个文件从C:\Windows\System32 32文件夹复制到C:\Windows\SysWOW64 64文件夹。
Fortran代码:
call system ('copy C:\Windows\System32\filename.extension C:\Windows\SysWOW64\filename.extension')
endC++代码:
#include <iostream>
#include<stdlib.h>
#include<string.h>
using namespace std;
int main() {
system('copy C:\Windows\System32\filename.extension C:\Windows\SysWOW64\filename.extension');
return 0;
}以上代码的执行将返回如下错误:
The system cannot find the file specified.当我进入
copy C:\Windows\System32\filename.extension C:\Windows\SysWOW64\filename.extension在管理员模式下的命令提示符中,它工作正常并返回
1 file(s) copied.是否知道如何使用Fortran和/或C++编程语言将文件从C:\Windows\System32 32文件夹复制到C:\Windows\SysWOW64 64文件夹?
非常感谢您在这件事上的时间和帮助,
贝伯根
发布于 2022-06-07 06:55:15
在Windows上,有一个名为CopyFile的API。C++中的示例:
std::wstring source = L"C:\\Windows\\System32\\filename.extension";
std::wstring dest = L"C:\\Windows\\SysWOW64\\filename.extension";
BOOL result = CopyFileW(source.c_str(), dest.c_str(), TRUE);
DWORD dwLastError = result : 0 : GetLastError();当编译为64位可执行文件并在64位Windows上运行时,上面的代码将很好地工作。不过,请注意:
https://stackoverflow.com/questions/72526904
复制相似问题