- 主题:怎么把命令行参数传递给CreateFile函数
我的代码是这样写的,编译的时候报错啊
if( argc < 2 )
{
printf("usage: %s %s/n", argv[0], "infile");
exit(1);
}
HANDLE hFile = CreateFile(&argv[1],
GENERIC_READ,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
--
FROM 124.78.9.*
我把代码改成了这样,参数传出来了。可是编译的时候
最后的一行还是报错,哪里错了啊?
if( argc < 2 )
{
printf("usage: %s %s\n", argv[0], "infile");
exit(1);
}
strcpy(lpFileName, argv[1]);
printf("%s",lpFileName);
HANDLE hFile = CreateFile(lpFileName,
GENERIC_READ,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
【 在 javame (yimin) 的大作中提到: 】
: 我的代码是这样写的,编译的时候报错啊
: if( argc < 2 )
: {
: ...................
--
FROM 124.78.9.*
问题解决了,因为我写的是C语言程序,所以
HANDLE hFile
不合法,把声明提前就解决问题了。
【 在 z16166 的大作中提到: 】
: 编译错误信息也不贴?
: CreateFileW vs CreateFileA
--
FROM 124.78.9.*
我是用vc2010命令行编译的,刚才又用vc 6.0测试也能编译通过。
【 在 z16166 (Netguy) 的大作中提到: 】
: 你看看楼主,经常鼓捣一些所谓的精简版体积小的编译器,不知道哪里淘来的老古董。。。
: 提问也经常是丈二和尚摸不着头脑的,不知道用的啥编译器,就只能先猜
--
FROM 124.78.9.*