------ #### ryControlsV4 V3.0.2107.0101 - *.[新增]新增Sheng.Winform.Controls部分控件。 #### RyWeb V3.0.2107.0101 - *.[新增]QuickWeb新增引用页设置。 #### MyDbV4 V3.0.2107.0101 - *.[新增]支持忽略大小写的替换功能。
		
			
				
	
	
		
			74 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System;
 | |
| using System.Collections.Generic;
 | |
| using System.Linq;
 | |
| using System.Text;
 | |
| using System.ComponentModel;
 | |
| using Microsoft.Win32;
 | |
| 
 | |
| namespace Sheng.Winform.Controls
 | |
| {
 | |
|     class SEControlLicenseProvider : LicenseProvider
 | |
|     {
 | |
|         /// <summary>
 | |
|         /// 0:未验证
 | |
|         /// 1:验证失败
 | |
|         /// 2:验证通过
 | |
|         /// </summary>
 | |
|         //private static ushort _isValid = 0;
 | |
|         public bool IsValid
 | |
|         {
 | |
|             get
 | |
|             {
 | |
|                 //TODO:SEControlLicenseProvider
 | |
|                 return true;
 | |
|                 //    using (RegistryKey registryKey =
 | |
|                 //        Registry.LocalMachine.CreateSubKey(@"SOFTWARE\Sheng.SIMBE\SEControl"))
 | |
|                 //    {
 | |
|                 //        object license = registryKey.GetValue("License");
 | |
|                 //        if (license == null)
 | |
|                 //        {
 | |
|                 //            _isValid = 1;
 | |
|                 //        }
 | |
|                 //        else
 | |
|                 //        {
 | |
|                 //            if (license.ToString() == "sheng")
 | |
|                 //                _isValid = 2;
 | |
|                 //            else
 | |
|                 //                _isValid = 1;
 | |
|                 //        }
 | |
|                 //    }
 | |
| 
 | |
|                 //return _isValid == 2 ? true : false;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 获取组件的实例或类型的许可证(如果已给定上下文并确定拒绝许可证是否引发异常)。
 | |
|         /// </summary>
 | |
|         /// <param name="context"></param>
 | |
|         /// <param name="type"></param>
 | |
|         /// <param name="instance"></param>
 | |
|         /// <param name="allowExceptions"></param>
 | |
|         /// <returns></returns>
 | |
|         public override License GetLicense(LicenseContext context, Type type, object instance, bool allowExceptions)
 | |
|         {
 | |
|             if (context.UsageMode == LicenseUsageMode.Runtime)
 | |
|             {
 | |
|                 return new SEControlLicense(type);
 | |
|             }
 | |
| 
 | |
|             else if (context.UsageMode == LicenseUsageMode.Designtime)
 | |
|             {
 | |
|                 // 限制编辑模式下的许可证(所谓的开发许可证),在这里添加相应的逻辑
 | |
| 
 | |
|                 if (!IsValid)
 | |
|                     throw new LicenseException(type);
 | |
|                 else
 | |
|                     return new SEControlLicense(type);
 | |
|             }
 | |
| 
 | |
|             return (null);
 | |
|         }
 | |
|     }
 | |
| }
 |