PB中有一个DLL,用来获得CPU ID号等硬件信息的,用来生成注册码的,
现在遇到一个问题就是这个DLL我想在.NET中使用它,请问能引用吗?如果可以引用的话那该怎么引用呢?谢谢了!

解决方案 »

  1.   

    .net 的不用,用PB的?
    //取CPU号
    private string GetCpuID() 
    {
    try
    {
    ManagementClass mc = new ManagementClass("Win32_Processor");
    ManagementObjectCollection moc = mc.GetInstances();string strCpuID = null ;
    foreach( ManagementObject mo in moc ) 
    {
    strCpuID = mo.Properties["ProcessorId"].Value.ToString();
    if(!"".Equals(strCpuID))
    {
    break;
    }
    }
    return strCpuID;
    }
    catch
    {
    return "";
    }
    }//取第一块硬盘号
    private string GetHardDiskID() 
    {
    try
    {
    ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
    string strHardDiskID = null ;
    foreach(ManagementObject mo in searcher.Get()) 
    {    
    //SerialNumber,ModuleNumber
    strHardDiskID = mo["SerialNumber"].ToString().Trim();
    if(!"".Equals(strHardDiskID))
    {
    break;
    }
    }
    return strHardDiskID ;
    }
    catch
    {
    return "";
    }
    }//end //取第一块网卡号
    private string GetNetworkID() 
    {
    try
    {
    ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration");
    string strNetworkID = null ;
    foreach(ManagementObject mo in searcher.Get()) 
    {    
    strNetworkID = mo["MACAddress"].ToString().Trim();
    if(!"".Equals(strNetworkID))
    {
    break;          
    }
    }
    return strNetworkID ;
    }
    catch
    {
    return "";
    }
    }//end ///////////读主板序列号
    private string GetBaseBoardID() 
    {
    try
    {
    ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT   *   FROM   Win32_BaseBoard");
    string strBaseBoardID = null ;
    foreach (ManagementObject share in searcher.Get())
    {//Console.WriteLine("     主板:");
    //Console.WriteLine("     Manufacturer: "+share["Manufacturer"].ToString());
    //Console.WriteLine("     Product:      "+share["Product"].ToString());
    //Console.WriteLine("     SerialNumber: "+share["SerialNumber"].ToString());
    strBaseBoardID = share["SerialNumber"].ToString().Trim();
    if (!"".Equals(strBaseBoardID))
    {
    break;   
    }
    }
    return strBaseBoardID;
    }
    catch
    {
    return "";
    }
    }