![]() |
#2
rjsp2019-11-26 09:07
|

#include<windows.h>
#include<stdio.h>
#include<wchar.h>
using namespace std;
int main(int argc, PTCHAR argv[]) {
/*
删除文件 api.exe -d 文件路径
复制文件 api.exe -c 路径1 路径2
移动/重命名文件 api.exe 路径1 路径2
*/
if (0 == lstrcmp(L"-d", argv[1]) && argc == 3) { // 满足条件是否是 第二个参数为-d 并且 命令行参数的个数为3 该函数结束的两个值都是为LPCWSTR
DeleteFile(argv[2]); //unicode的时候 接收的值为 LPCWSTR
printf("删除成功");
}
else {
printf("删除失败");
}
printf("argv[0]:%ls\n", argv[0]);
printf("argv[1]:%ls\n", argv[1]);
printf("argv[2]:%ls\n", argv[2]);
printf("参数数量为:%d", argc);
system("pause");
return 0;
}
#include<stdio.h>
#include<wchar.h>
using namespace std;
int main(int argc, PTCHAR argv[]) {
/*
删除文件 api.exe -d 文件路径
复制文件 api.exe -c 路径1 路径2
移动/重命名文件 api.exe 路径1 路径2
*/
if (0 == lstrcmp(L"-d", argv[1]) && argc == 3) { // 满足条件是否是 第二个参数为-d 并且 命令行参数的个数为3 该函数结束的两个值都是为LPCWSTR
DeleteFile(argv[2]); //unicode的时候 接收的值为 LPCWSTR
printf("删除成功");
}
else {
printf("删除失败");
}
printf("argv[0]:%ls\n", argv[0]);
printf("argv[1]:%ls\n", argv[1]);
printf("argv[2]:%ls\n", argv[2]);
printf("参数数量为:%d", argc);
system("pause");
return 0;
}
发现删除不了,命令为 1.exe -d 1.txt 发现报错失败,然后尝试打印argv[0] 1 2 发现都为空 为什么哇