关于C#:CreateFile和ReadFile

CreateFile & ReadFile

如何打开CreateFile API在Main的argv []中指定的文件名(例如D:\ a.txt)?

1
2
CreateFile( ReadBuffer, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING,
                                FILE_ATTRIBUTE_NORMAL, NULL );


在我看来,您的问题仅仅是您正在尝试调用这样的函数

1
2
3
4
5
Connect(char *filename)
{
    HANDLE hFile = CreateFile(filename, ...);
    ....
}

而且不知道如何掌握第一个命令行参数。 像这样做:

1
2
3
4
5
6
7
8
9
10
11
12
int main(int argc, char *argv[])
{
    if (argc != 2)
    {
        printf("Incorrect number of arguments supplied\
."
)
        return 1;
    }
    Connect(argv[1]);
    .....
    return 0;
}

请注意,argv是一个包含argc个项目的数组,其中每个项目的类型都是char*。 因此,您只需要索引1处的项目。索引0处的项目是流程名称。