我现在做了个WEB版的软件,客户买过去后 我要他装在指定那一台电脑上面,这个我想(读取电脑的CPU,硬盘编号这些),在其他电脑上部署不能用,还有就是要限制访问这个软件的人数, 谁能告诉一下怎么做啊

解决方案 »

  1.   

    本帖最后由 bdmh 于 2012-12-25 15:16:03 编辑
      

  2.   

    最好是获得客户机信息,在通过转义生成一个软件注册码。
    要是写在软件中就写死了,你可以编译出一个注册的DLL接口,或是写在注册表中,或是记录在数据库文件中。
    不知道我这样说对不对!
      

  3.   

    可不可以弄个xxxx.key这样的啊??
      

  4.   

     // 取得设备硬盘的卷标号   
            public static string GetDiskVolumeSerialNumber()  
            {  
                ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");  
                ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid='C:'");  
                disk.Get();  
                return disk.GetPropertyValue("VolumeSerialNumber").ToString();  
            }  下面是我博客的一篇文章,希望对你有所帮助:
    http://blog.csdn.net/bohemianlife/article/details/8435218
      
            //获得CPU的序列号   
            public static string getCpu()  
            {  
                string strCpu = null;  
                ManagementClass myCpu = new ManagementClass("win32_Processor");  
                ManagementObjectCollection myCpuConnection = myCpu.GetInstances();  
                foreach (ManagementObject myObject in myCpuConnection)  
                {  
                    strCpu = myObject.Properties["Processorid"].Value.ToString();  
                    break;  
                }  
                return strCpu;  
            }  
      

  5.   

    最好的办法,给用户发个usbkey,你的软件和usbkey交互,现在usbkey才20元一个。
      

  6.   

    最好是获得客户机信息,在通过转义生成一个软件注册码。
    要是写在软件中就写死了,你可以编译出一个注册的DLL接口,或是写在注册表中,或是记录在数据库文件中。
    不知道我这样说对不对!