如题,用CreateFile等API可以再XP下直接读写硬盘扇区,
可是再VISTA下面就不行了,我用别人说的写个脚本MANIFEST
的方法也不行,只能读不能写,还有说用驱动成功写的,但是
怎么写驱动啊,有懂的教一下,不胜感激!

ding

写一个脚本放在程序的同一个目录下即可。 
   
  1、脚本文件的文件名:与程序名相同,再加上后缀“.manifest”; 
   
  2、内容: 
   
  <?xml  version="1.0"  encoding="UTF-8"  standalone="yes"?> 
  <assembly  xmlns="urn:schemas-microsoft-com:asm.v1"  manifestVersion="1.0"> 
      <dependency> 
              <dependentAssembly> 
                        <assemblyIdentity 
                                  type="win32" 
                                  name="Microsoft.Windows.Common-Controls" 
                                  version="6.0.0.0" 
                                  processorArchitecture="X86" 
                                  publicKeyToken="6595b64144ccf1df" 
                                  language="*" 
                                                  /> 
                </dependentAssembly> 
        </dependency> 
              <trustInfo  xmlns="urn:schemas-microsoft-com:asm.v2"> 
                      <security> 
                          <requestedPrivileges> 
                                <requestedExecutionLevel   
                                  level="requireAdministrator"   
                                  uiAccess="false"/> 
                          </requestedPrivileges> 
                      </security> 
              </trustInfo> 
  </assembly> 
   
  3、现在双击程序,在弹出的对话框中选择“Allow”即可。

补充一下:比如你的程序名称为“AAA.exe”,  则脚本文件名就为“AAA.exe.manifest”

如果不行可能是因为你先前运行程序时,并没有这个“manifest”文件,可能在系统中给你设置了一个默认配置(这点还没深入研究)!有个变能方法: 
   
  1、更改你的程序名称; 
  2、同时创建与该程序名称相同的“manifest”文件。请注意我前面讲的命名规则!!!!! 
   
  又或者: 
   
  鼠标右键单击程序图标,在弹出的菜单中选择“Run  as  Administrator”也行,在接下来的对话框中选择“Allow”即可。

楼上你说的这个方法我早试过了,你内容的原帖我老早就看过了,都说了这个方法试了不行,有没有其他的办法

UP

UP

up

难度挺高 ,顶顶

你用winIO试下吧,有源程序的。
我使用的是从Rang3进入Rang0的方式,直接发出硬盘操作指令,能成功读写指定的扇区,可以将一个硬盘的数据彻底毁灭。

该回复于2008-07-10 02:38:05被版主删除