再送100分!(共200分啊)(100分)

  • 主题发起人 主题发起人 张远
  • 开始时间 开始时间

张远

Unregistered / Unconfirmed
GUEST, unregistred user!
应用程序怎样得知用户读写软盘?
怎样在程序中禁止用户读写?请高手支招。
 
要用hook吧@_@
 
g

把软驱去掉:-)
 
在程序中?我想他要读写的话,总归需要通过OpenDialog或者
SaveDialog,或者自己输入、从列表框选择等等操作,在程序
中把他想读写的文件的全路径得到,判断盘符是不是A或者B,
就可以了。至于网络邻居上的软盘,就不知道怎么弄了。
 
; 查找下win32sdk 吧!有这样一个函数的,我不记得了。
 
:(
我会错意了。
 
to 面条:@^@是什么意思?
 
要用程序控制别人读写磁盘这个非常的简单,操作者要进行这些动作总要用到键盘和
mouse吧,你把它全禁止不就行了。
 
下面这个函数可以监测驱动器是否就绪。(
function DiskInDrive(Drive: Char): Boolean;
var ErrorMode: word;
begin
{ make it upper case }
if Drive in ['a'..'z'] then Dec(Drive, $20);
{ make sure it's a letter }
if not (Drive in ['A'..'Z']) then
raise EConvertError.Create('Not a valid drive ID');
{ turn off critical errors }
ErrorMode := SetErrorMode(SEM_FailCriticalErrors);
try
{ drive 1 = a, 2 = b, 3 = c, etc. }
if DiskSize(Ord(Drive) - $40) = -1 then
Result := False
else
Result := True;
finally
{ restore old error mode }
SetErrorMode(ErrorMode);
end;
end;
如果不想让别日读取软驱,将返回值一律设为false即可
 
Liu JZX:
当用户插入软盘到驱动器时,能否主动通知应用程序?
 
我有一篇英文文章
Shell Notifications
Getting Windows to Share Some of Its Secrets
就是解决怎么让程序知道系统发生了变化。但没法贴上来。
告诉我你的Email,我寄给你。
 
Win 32 API about:
"Device Messages and Device Change Events"
.....
For each event, the system broadcasts a WM_DEVICECHANGE message to all applications and installable drivers. In this message, the wParam parameter identifies the event type and the lParam parameter is usually the address of event-specific data.
.....
The system sends a DBT_QUERYCHANGECONFIG message to request permission to change the current configuration (dock or undock). Any application can return BROADCAST_QUERY_DENY to deny the request and cancel the change. If an application denies the request,
.....

符合你的需要吗??
 
是在不行就在Delphi中加入汇编语言,很有效,具体怎么作难不住你的
 
是否可以这样,当有磁盘操作时,Int 13H函数有回应,通过其产生一事件。
另,40:46CH还是47CH是进行磁盘检测的,病毒就是用此方法,是否可借鉴?。
 
同意Jams的观点
另,40:46CH是进行磁盘检测的
 
你就在delphi程序段中嵌入汇编吧。不是很难的。我的一个朋友曾经把汇编写到了
delphi中做了一个实验台的程序。是大量的汇编,就是用delphi写了一个封面。呵呵。
另外你也可以通过其他的有关win32的程序说明,找找看了啊!!
 
Smart FDISK源码,对硬盘分区、扩展 Int13H调用、FAT 文件系统有兴趣的同学
可以研究一下。
http://www.gbsource.net/delphi/code/sfdisk-2.05r2-32bit.zip

这是个在华源网站上带的一个源程序,如果有帮助的话就下来一个看看吧

^O^
 
DreamTiger 把你的那篇“怎么让程序知道系统发生了变化”的文章给我一份
好吗, :-) 谢谢你啦。

e_mail to : foley@yeah.net
 
后退
顶部