阅读:1662回复:8
在下使用delphi编写filedisk应用程序,问题望DX不吝赐教!!!
在下使用delphi编写filedisk应用程序,调用definedosdevice成功,第二次调用createfile应返回成功,但总是返回INVALID_HANDLE_VALUE,不知为何,望DX不吝赐教!!!
|
|
沙发#
发布于:2004-06-01 16:52
应该上definedosdevice函数引用问题,后两个参数怎么设定,分别是什么意思? :(
|
|
板凳#
发布于:2004-06-01 18:50
VC的一样
|
|
|
地板#
发布于:2004-06-03 11:31
多谢,在下 菜 得很!
在filedisk中open_file_information 结构定义 UCHAR FileName[1]; 不知delphi中如何定义什么类型?调用DeviceIoControl老是出错,应该是 filename问题吧? |
|
地下室#
发布于:2004-06-03 11:35
allocmem(sizeof(tOPEN_FILE_INFORMATION) + strlen(\'e:\\temp\\file2.img\') + 7);
strcopy(@(OpenFileInformation.filename),\'\\\\.\\e:\\temp\\file2.img\'); openfileinformation.Read_only:=false; openfileinformation.FileSize:=2*1024*1024; openfileinformation.Filenamelength:=21; IF DeviceIoControl(device,$8000e000,@openfileinformation, sizeof(Topen_file_information)+openfileinformation.filenamelength-1, nil,0,bytesreturned,nil) then showmessage(\'fffffffffffffffff,ok\'); 调用DeviceIoControl还是出错? :( :( :( |
|
5楼#
发布于:2004-06-04 14:00
UCHAR FileName[1];
对应delphi中 filename:array[0..0]of char; 怪? |
|
6楼#
发布于:2004-06-04 14:17
应该是吧,
UCHAR FileName[1]; 意思就是一个下标从 0 开始成员个数为 1 的 无符号8位字符 类型数组. |
|
|
7楼#
发布于:2004-06-04 16:43
若文件名为e:\\temp\\file1.img,如何传给openfileinformation.filename呢?
strcopy(OpenFileInformation.filename,\'\\\\.\\e:\\temp\\file1.img\'); 还是不行!!! 拜托DX :( :( :( |
|
8楼#
发布于:2004-06-04 16:59
\\\\.\\e:\\temp\\file1.img\'应该是双斜杠吧
|
|