关于DeviceIoControl的调用解决方法
发布时间:2011-06-29 18:06:21 文章来源:www.iduyao.cn 采编人员:星星草
关于DeviceIoControl的调用
我要实现对U盘的某个特定的扇区进行读写。
FUNCTION Long DeviceIoControl(Long hDevice, Long dwIoControlCode, Blob lpInBuffer, Long nInBufferSize, REF DISK_GEOMETRY lpOutBuffer, Long nOutBufferSize, REF Long lpBytesReturned, Long lpOverlapped) LIBRARY "kernel32"
FUNCTION Long CreateFile(String lpFileName, Long dwDesiredAccess, Long dwShareMode, Long lpSecurityAttributes, Long dwCreationDisposition, Long dwFlagsAndAttributes, Long hTemplateFile) LIBRARY "kernel32" ALIAS FOR "CreateFileA"
CONSTANT Long FSCTL_LOCK_VOLUME = 589848
CONSTANT Long GENERIC_WRITE = 1073741824
首先: createfile:
ll_hDevice = CreateFile("\\.\PHYSICALDRIVE" + String(3), GENERIC_WRITE, 2 , 0, 4, 0, 0)
再下面 锁卷DeviceIoControl( ll_hDevice, FSCTL_LOCK_VOLUME, 0, 0, 0, 0, ll_BytesReturned,0) 保存程序时,
报错: C0052: Bad argument for function: devieciocontrol。
大家帮忙看看什么问题呀, 或者有没有例程给我参考一下。
------解决方案--------------------
第3个参数是Blob lpInBuffer
第5个参数是REF DISK_GEOMETRY lpOutBuffer //这是一个结构体,你要先定义的,同时它是ref类型的,必须使用变量为参数,不能使用常量
这两个参数你都写错了类型
------解决方案--------------------
第5个参数是REF DISK_GEOMETRY lpOutBuffer
由于是ref的,所以调用时参数必须一致
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
pb里关于数据窗口继承的问题
我的pb里设了一个母数据窗口,规定了样式,颜色,怎么让其他数据窗口都继承这个母dw,不用重复设颜色,样式呢
...
-
如何制作PB中查找的窗口,可以变透明的,而且还始终在最上面的窗口?
如何制作PB中查找的窗口,可以变透明的,而且还始终在最上面的窗口?
-...
-
powerbuilder 控件句柄转换,求教!!
问题:
比如我通过handle取得了一个button的句柄。
那么我能否根据这个句柄的值,又反操作还原这...
-
TAB控件能不能设置成不是3D的?
就类似于多行编辑控件的Border设置为false,变成平面的效果。找不到在哪里设置
------解决方案-----...
-
???新增按钮的问题
设置一个window窗口有个“新增”按钮,如何做出点击新增按钮,编号(varchar2类型)自动+1,点一下变成2,然后录完信息,再打开...
-
如何用回车键enter获得焦点
一个数据录入窗口,如何输完一个数据,按回车键跳到下一个要输入数据的地方 就和tab一样
------解决方案...
-
ole控件 Microsoft Web Browser
我用Microsoft Web Browser这个控件写了一个浏览器 但是不能运行脚本 对于那些需要在本地运行...
-
PB如何做透明的文本
我现在工作空间,应用程序,窗口都创建好了。也加了文本“用户名”,从网上看了要创建可视用户对象,粘贴了代码。但...
-
mdi窗口的sheet从normal变为max时闪烁
我的mdi的sheet默认打开后最大化,在sheet的resize事件中构造着把所有控件按比例伸缩,但每次...
-
如何使getfileopenname函数打开的窗口居中?
如何使getfileopenname函数打开的窗口居中?谢谢
------解决方案--------------------
...