ID do artigo: 173091 - Última revisão: quinta-feira, 1 de julho de 2004 - Revisão: 2.1

Como programaticamente registrar e cancelar registro .ocx arquivos

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Recolher tudo

Sumário

Este artigo descreve como registrar e cancelar o registro de controles ActiveX (.OCXs) através de programação.

O Microsoft Visual Basic é fornecido com vários controles ActiveX (.ocx arquivos). Esses arquivos são automaticamente registrados pelo programa de instalação do Visual Basic durante a instalação. Os desenvolvedores muitas vezes desejarem registrar ou cancelar o registro e/ou esses seus próprios controles à vontade. Isso pode ser feito usando uma ferramenta como RegSvr32.EXE ou ele pode ser feito por meio de programação por meio de código do Visual Basic.

A estrutura de controle ActiveX oferece suporte a pontos de entrada DllRegisterServer e DllUnregisterServer. Esses pontos de entrada podem ser declarados como funções no seu código do Visual Basic e, em seguida, chamados para registrar e cancelar o registro o controle ActiveX.

Mais Informações

O exemplo a seguir demonstra como gravar um módulo de código que pode ser usado para registrar e cancelar o registro de um controle ActiveX, especificamente Microsoft controles comuns do Windows encontrado no ComCtl32.OCX.

Exemplo passo a passo

  1. Crie um novo projeto Standard Exe no Visual Basic.
  2. Adicione um módulo (Module1) para o projeto.
  3. Adicione o seguinte código à seção General Declarations de Module1:
          Public Declare Function RegComCtl32 Lib "ComCtl32.OCX" _
             Alias "DllRegisterServer" () As Long
    
          Public Declare Function UnRegComCtl32 Lib "ComCtl32.OCX" _
             Alias "DllUnregisterServer" () As Long
    
          Public Const S_OK = &H0
    
          Sub RegisterComCtl32()
             On Error GoTo Err_Registration_Failed
             If RegComCtl32 = S_OK Then
                MsgBox "Registered Successfully"
             Else
                MsgBox "Not Registered"
             End If
          Exit Sub
          Err_Registration_Failed:
             MsgBox "Error: " & Err.Number & " " & Err.Description
          End Sub
    
          Sub UnRegisterComCtl32()
             On Error GoTo Err_Unregistration_Failed
             If UnRegComCtl32 = S_OK Then
                MsgBox "Unregistered Successfully"
             Else
                MsgBox "Not Unregistered"
             End If
          Exit Sub
          Err_Unregistration_Failed:
             MsgBox "Error: " & Err.Number & " " & Err.Description
          End Sub
    
    					
  4. Exiba a janela imediata (CTRL+G) e tipo:
    UnRegisterComCtl32
    Pressione a tecla ENTER para cancelar o registro ComCtl32.OCX e, em seguida, digite:
    RegisterComCtl32
    e pressione a tecla ENTER para registrar o controle.
Essas funções agora podem ser chamadas para registrar e cancelar o registro o controle ActiveX, fornecendo funcionalidade semelhante à que RegSvr32.EXE programaticamente. Você pode testar essas funções clicando com o botão direito do mouse na caixa de ferramentas e selecionando componentes a partir do menu pop-up. Uma entrada para o Microsoft Windows Common Controls 5.0 será exibida na guia controles da caixa de diálogo componentes se ComCtl32.OCX é registrado e nenhuma entrada será exibida se ComCtl32.OCX não está registrado.

Observe o seguinte:
  • "RegComCtl32" e "UnRegComCtl32" são nomes definidos pelo usuário e podem ser alterado para atender às suas necessidades.
  • O exemplo passo a passo acima presume que ComCtl32.OCX está localizado na pasta Windows\System da unidade de disco rígida local. Se não estiver localizado lá, você deve especificar o caminho completo para o arquivo .ocx na instrução Declare.
  • "DllRegisterServer" e "DllUnregisterServer" diferenciam maiúsculas de minúsculas. É importante que o caso correto ser usado quando declarar essas funções.

A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic Control Creation Edition
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
Palavras-chave: 
kbmt kbhowto KB173091 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 173091  (http://support.microsoft.com/kb/173091/en-us/ )