读写硬盘硬件接口的资料哪里有?(200分)

W

wuyi

Unregistered / Unconfirmed
GUEST, unregistred user!
请有/知道相关资料的大侠们提供资料或下载地址!
wuyicai@263.net
 
有关读取Win95的物理地址的文章,要否?
 
当然要!
 
我已整理完毕!你是亲自到站点上看呢,还是帖上来?
 
抱歉,你在站名是?不知我能不能联得上?
 
电子技术应用,1999.01
 
文章找到了,可惜是通过编写vxd驱动程序实现的.我想要在ring0状态下直接
读写的代码.
 
HI,读硬盘什么?ID号吧,我有。
JAMES:
把你文章贴出来。
 
http://www.delphibbs.com/delphibbs/DispQ.asp?LID=339210
 
上面我给的地址已经有代码了,基本可以。
想看罗嗦的,这个大概也够了(不过也不是我写的,计算机世界上好像也有):
http://www.delphibbs.com/delphibbs/DispQ.asp?LID=170227
你们为什么对硬盘序列号这么感兴趣呀?
 
温柔一刀:
NT下的读写原理能否讲解一下?已有问题中的我都已看过。
 
DeviceIOControl,设置相应的参数即可。
 
>> 设置相应的参数即可。
怎么设?
 
IOCTL_SCSI_MINIPORT
自己查调用方法吧,这几天太忙了,
都只能说一两句话就下去了。
 
我在DELPHI的SDK帮助,VC的MSDN,及VC的INCLUDE文件均未找到你说的参数. 请你有空的
时候解释具体的调用方法(该参数的实际值)或指点看哪本参考书籍.
 
必须要看DDK,SDK/VC里面是没有的。
 
>>IOCTL_SCSI_MINIPORT
是否只对SCSI硬盘行,不适用于IDE接口的。
 
no,你看一下NT的控制面板,硬盘都是被当作SCSI设备管理的,
IDE的也一样。
 
我的是win2000 pro, 下面的代码请你帮助看一下,运行老是不对。
hVxD := CreateFile('//./PHYSICALDRIVE0',
GENERIC_READ,
FILE_SHARE_READ ,
nil,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
0);
if (hVxD = INVALID_HANDLE_VALUE) then
begin
dwErrorCode := GetLastError();
if (dwErrorCode = ERROR_NOT_SUPPORTED) then
showmessage('Unable to open , devicedo
es not support DeviceIOCTL')
else
showmessage('Unable to open, Error code' + inttohex(dwErrorCode, 4))
end;

if DeviceIoControl(
hVxD, // handle to device of interest
$4D008,//IOCTL_SCSI_MINIPORT, // control code of operation to perform
nil, // pointer to buffer to supply input data
0, // size of input buffer
@buffer, // pointer to buffer to receive output data
sizeof(buffer), // size of output buffer
ReturnLen, // pointer to variable to receive output byte count
nil // pointer to overlapped structure for asynchronous operation
) then
showmessage('succeed')
else
showmessage('failed');
 
我想再听听大侠们的意见!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
531
import
I
顶部