Windows 8上的原始磁盘访问

时间:2014-01-29 14:38:31

标签: java windows-8 admin disk

我在Windows中遇到原始磁盘访问问题。我用Java编写程序,它与USB闪存设备一起工作,读取其MBR等。设备作为RandomAccessFile打开。

如果我打开NetBeans并像往常一样按程序执行,我有异常

Exception in thread "main" java.io.FileNotFoundException: \\.\PhysicalDrive2 (Отказано в доступе)
    at java.io.RandomAccessFile.open(Native Method)
    at java.io.RandomAccessFile.<init>(RandomAccessFile.java:241)
    at java.io.RandomAccessFile.<init>(RandomAccessFile.java:122)
    at main.USBFlashDevice.<init>(Main.java:90)
    at main.Main.main(Main.java:196)
Java Result: 1

如果我以管理员身份执行此操作,一切正常。

当我在某人的PC上像往常一样工作时,如何执行程序和编辑MBR?

1 个答案:

答案 0 :(得分:0)

  

当我在某人的PC上像往常一样工作时,如何执行程序和编辑MBR?

你做不到。这要求应用程序以提升的权限运行。

写入原始光盘设备是一项潜在的危险操作(......因为它可以有效地垃圾文件系统)。因此,具有管理员权限的人员必须授予您的程序运行权限。操作系统坚持

您必须使用admin权限运行该程序。如果你真的在问这个怎么做...你的问题不在话题。尝试询问“superuser.com”。


但我也应该这样说:

  • 写这种东西很危险,可能是个坏主意。使用现有的实用程序;例如由Microsoft或信誉良好的第三方软件提供商提供的。

  • 如果您(真的)需要自己编写,那么在Java中执行它可能是一个糟糕的选择。大多数人会使用C或C ++。