lhzh114
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2008-12-27
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
阅读:1662回复:8

在下使用delphi编写filedisk应用程序,问题望DX不吝赐教!!!

楼主#
更多 发布于:2004-06-01 15:32
在下使用delphi编写filedisk应用程序,调用definedosdevice成功,第二次调用createfile应返回成功,但总是返回INVALID_HANDLE_VALUE,不知为何,望DX不吝赐教!!!
lhzh114
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2008-12-27
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-06-01 16:52
应该上definedosdevice函数引用问题,后两个参数怎么设定,分别是什么意思? :(
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
板凳#
发布于:2004-06-01 18:50
VC的一样
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
lhzh114
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2008-12-27
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-06-03 11:31
多谢,在下 菜 得很!
在filedisk中open_file_information 结构定义
UCHAR FileName[1];
不知delphi中如何定义什么类型?调用DeviceIoControl老是出错,应该是 filename问题吧?
lhzh114
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2008-12-27
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
地下室#
发布于: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还是出错? :( :( :(
p2o5x
驱动牛犊
驱动牛犊
  • 注册日期2004-06-04
  • 最后登录2005-05-28
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-06-04 14:00
UCHAR FileName[1];
对应delphi中 filename:array[0..0]of char;
怪?
he_x_p
驱动小牛
驱动小牛
  • 注册日期2002-11-15
  • 最后登录2005-07-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-06-04 14:17
应该是吧,
UCHAR FileName[1];
意思就是一个下标从 0 开始成员个数为 1 的 无符号8位字符 类型数组.
乘着梦的翅膀, 借助黎明时柔和的阳光, 化着一只自由自在的冲天鸟, 在有梦的地方潇洒地飞翔......
lhzh114
驱动牛犊
驱动牛犊
  • 注册日期2004-02-20
  • 最后登录2008-12-27
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-06-04 16:43
若文件名为e:\\temp\\file1.img,如何传给openfileinformation.filename呢?

strcopy(OpenFileInformation.filename,\'\\\\.\\e:\\temp\\file1.img\');

还是不行!!!

拜托DX

 :( :( :(
limeng1975
驱动牛犊
驱动牛犊
  • 注册日期2004-03-08
  • 最后登录2013-04-11
  • 粉丝0
  • 关注0
  • 积分51分
  • 威望6点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-06-04 16:59
\\\\.\\e:\\temp\\file1.img\'应该是双斜杠吧
游客

返回顶部