各位老鸟,小弟有一段程序是用来读取硬盘物理序列号的,
在当前用户(操作系统)为管理员权限时,就可以读取成功
如果当前用户为普通用户时,则读取不成功,
请问这是什么原因,
有什么解决之道呀

解决方案 »

  1.   

    将程序提升为system权限试试,不过我没有试过。
      

  2.   

    编程实现:
    http://blog.csdn.net/chenhui530/archive/2007/12/13/1932599.aspx
      

  3.   

    http://blog.csdn.net/chenhui530/archive/2007/09/30/1807937.aspx
      

  4.   

    最近碰到个钉子用户,要求程序不在administrator下运行,可我的软件在注册时,读的是硬盘序列号加上函数加密,现在发现不在administrator下,硬盘序列号读不到,请问各位有什么好办法?
      

  5.   

    按照10楼老马说的,可以创建一个服务程序来执行,并提升为system权限,这就可以了。
    德国佬的硬盘碎片整理程序:O&O Defrag86Server 为什么那么好用,就是因为编写了一个服务程序oodag.exe ,其运行权限为system。
    在受限用户和标准用户下你可以发现任务管理器中均有很多system权限进程。
      

  6.   

    读硬盘的物理序列号,在普通用户下是读取不到的,
    只有在administrator下才可以读取得
      

  7.   

    VB创建系统服务:
    http://topic.csdn.net/u/20090612/09/37c7905d-b89f-426c-af93-ce9f6938de90.html
      

  8.   

    实在不行调用fsutil试试吧。(不要鄙视我)