阅读:1319回复:5
求deviceiocontrol的详细参数解释。
BOOL DeviceIoControl( HANDLE hDevice, // 设备句柄 DWORD dwIoControlCode, // 控制码 LPVOID lpInBuffer, // 输入数据缓冲区指针 DWORD nInBufferSize, // 输入数据缓冲区长度 LPVOID lpOutBuffer, // 输出数据缓冲区指针 DWORD nOutBufferSize, // 输出数据缓冲区长度 LPDWORD lpBytesReturned, // 输出数据实际长度单元长度 LPOVERLAPPED lpOverlapped // 重叠操作结构指针);
除了第一项设备句柄不需要外,其他每一项的参数都需要,找遍整本win api函数使用手册都找不到,拜谢各位了。 |
|
沙发#
发布于:2005-02-20 00:11
寒,刚刚发觉原来code参数的控制码是可以自己定义的………IOCTL_FILE_DISK_OPEN_FILE就是……那么有没有一些默认的控制码的说明呢?至于下面的其他参数还是需要问。
|
|
板凳#
发布于:2005-02-19 23:51
可能我的表达有错误,我并不是需要像progame wdm那种对每个参数的分析,而是像:
DeviceIoControl( Device, IOCTL_FILE_DISK_OPEN_FILE, OpenFileInformation, sizeof(OPEN_FILE_INFORMATION) + OpenFileInformation->FileNameLength - 1, NULL,//输出数据缓冲区不需要 0, &BytesReturned, NULL ) 如这个调用,我希望知道code参数中IOCTL_FILE_DISK_OPEN_FILE有什么作用,该参数还有很多其他的控制码,各有什么作用,就是这样。剩下的InputData,InputLength等等参数也是想知道一样的事情。就像查api实用手册上的参数列表一样。 不知道有没有这方面的说明? |
|
地板#
发布于:2005-02-19 10:53
谢谢楼上两位
|
|
地下室#
发布于:2005-02-19 08:15
这个还是比较简单的,walter oney的program the wdm 的确不错,你可以看看。
本网站有第一版的中文翻译,你可以看看。 |
|
|
5楼#
发布于:2005-02-19 00:54
找walter oney的program the wdm ,第九章这些!
|
|
|