Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês
Esta documentação foi arquivada e não está sendo atualizada.

Como: Componentes de licença e controles

O .NET Framework fornece uma modelo de licenciamento que é idêntico para Tudo componentes e os controles, incluindo controles Windows Forms e controles servidor ASP.NET e é totalmente compatível com o licenciamento para controles Microsoft ActiveX®.

With licensing, you, as the componente or Controlar autor, can help protect your intellectual propriedade by verifying that a desenvolvedor is Authorized to Use Your componente OR Controlar.Is this verificação Mais em tempo de design Important, when a desenvolvedor incorporates Your componente or controle into an aplicativo, than em tempo de execução.When a desenvolvedor uses legally Your componente licenciado OR Controlar em tempo de design, aplicativo 's the desenvolvedor gets a executar-licença tempo that the desenvolvedor can Distribute freely.

Você ter muitos outros níveis de licenciamento suporte com o modelo de licenciamento.The modelo separates the Logic validação from the componente OR Controlar.Um provedor de licença concede licenças e executa a lógica de validação.O provedor é uma classe que deriva de System.ComponentModel.LicenseProvider.As etapas que você deve tomar para ativar o licenciamento são simples.

Quando você usa a implementação de padrão de LicenseProvider fornecido pelo LicFileLicenseProvider, o arquivo de licença está formatado da seguinte maneira:

  • The name of the arquivo must be the nome totalmente qualificado, including the Namespace, of the classe with the extensão de nome de arquivo .LIC. Por exemplo:

    Namespace1.Class1.LIC

  • The de conteúdo of the arquivo licença should Contain the seguinte Text Cadeia de Caracteres:

    "myClassName é um componente licenciado".

    myClassName é o nome totalmente qualificado da classe. Por exemplo:

    "Namespace1.Class1 é um componente licenciado".

The seguinte Código apresentação examples a controle Windows Forms and an controle servidor ASP.NET that implementar a maiúsculas e minúsculas Simple of Licensing.

Para ativar o licenciamento para o componente ou controle

  1. Aplicar a LicenseProviderAttribute to the classe.

  2. Chame Validate ou IsValid no construtor.

  3. CALL Dispose on any Concedido licença in the finalizador of the classe or before is the finalizador chamado.

Os exemplos de código a seguir usam a licença internos provedor classe LicFileLicenseProvider, que permite que você use arquivos de licença de texto e imita o comportamento de licenciamento com (ActiveX).Cenários de licenciamento mais complexos, como chamar um serviço da Web em XML para limitar o número de instâncias de um componente, exigem tipos diferentes de provedores de licença.

using System;
using System.ComponentModel;
using System.Windows.Forms;


// Adds the LicenseProviderAttribute to the control.
[LicenseProvider(typeof(LicFileLicenseProvider))]
public class MyControl : Control 
{

   // Creates a new, null license.
   private License license = null;

   public MyControl () 
   {

      // Adds Validate to the control's constructor.
      license = LicenseManager.Validate(typeof(MyControl), this);

      // Insert code to perform other instance creation tasks here.
   }

   protected override void Dispose(bool disposing) 
   {
      if(disposing)
      {
         if (license != null) 
         {
            license.Dispose();
            license = null;
         }
      }
   }

}


import System.*;
import System.ComponentModel.*;
import System.Windows.Forms.*;


// Adds the LicenseProviderAttribute to the control.
/** @attribute LicenseProvider(LicFileLicenseProvider.class)
 */
public class MyControl extends Control
{
    // Creates a new, null license.
    private License license = null;

    public MyControl()
    {
        // Adds Validate to the control's constructor.
        license = LicenseManager.Validate(MyControl.class.ToType(), this);

        // Insert code to perform other instance creation tasks here.
    } 

    protected void Dispose(boolean disposing)
    {
        if (disposing) {
            if (license != null) {
                license.Dispose();
                license = null;
            }
        }
    } 
} 


using System;
using System.ComponentModel;
using System.Web.UI;

// Adds the LicenseProviderAttribute to the control.
public class MyServerControl : Control 
{
    // Creates a new, null license.
    private License license = null;

    public MyServerControl() 
    {
        // Adds Validate to the control's constructor.
        license = LicenseManager.Validate(typeof(MyServerControl), this);

        // Insert code to perform other instance creation tasks here.
    }

    public override void Dispose() 
    {      
        if (license != null) 
        {
            license.Dispose();
            license = null;
        }

        base.Dispose();
    }    
}


import System.*;
import System.ComponentModel.*;
import System.Web.UI.*;

// Adds the LicenseProviderAttribute to the control.
/** @attribute LicenseProvider(LicFileLicenseProvider.class)
 */
public class MyControl extends Control
{
	// Creates a new, null license.
	private License license = null;

	public MyControl()
	{
		// Adds Validate to the control's constructor.
		license = LicenseManager.Validate(MyControl.class.ToType(), this);

		// Insert code to perform other instance creation tasks here.
	} 

	protected void Dispose(boolean disposing)
	{
		if (license != null) 
		{
			license.Dispose();
			license = null;
		}

		super.Dispose();
	}
} 


Mostrar: