Ir para conteúdo
Fórum Script Brasil
  • 0

Registrar As Ocx


ramon

Pergunta

Como eu faço para registar as minhas ocx e dll na maquinas dos usuarios que vao utilizar o meu programa.

Tipo eu não criei um setup para instalar a aplicaçao eu to enviando as dll e ocx junto do meu programa na mesma pasta então eu gostaria de saber como eu faço um programinha para registrar estas ocx no sistema do usuario?

Crio um arquivo .bat, .reg ou o que?

O que voces sugirem?

Me da um exemplo se possivel de como resgistrar duas ocx tipo Msconctl.ocx

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

' Add 2 Commandbuttons and a textbox to the form, and paste this code into the form
Option Explicit

Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long
Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long
Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Any, ByVal wParam As Any, ByVal lParam As Any) As Long
Private Const ERROR_SUCCESS = &H0

Private Sub Form_Load()
    Text1.Text = "C:\WINDOWS\SYSTEM\COMCTL32.OCX"
    Command1.Caption = "Register server"
    Command2.Caption = "Unregister server"
End Sub

Private Sub Command1_Click()
    Call RegisterServer(Me.hWnd, Text1.Text, True)
End Sub

Private Sub Command2_Click()
    Call RegisterServer(Me.hWnd, Text1.Text, False)
End Sub

Public Function RegisterServer(hWnd As Long, DllServerPath As String, bRegister As Boolean)
    On Error Resume Next

    'KPD-Team 2000
    'URL: http://www.allapi.net/
    'E-Mail: KPDTeam@Allapi.net
    'We're going to call an API-function, without declaring it!

    ' Modified by G. Kleijer
    ' gkleijer@casema.net
    ' going to call the DllRegisterServer/DllUnRegisterServer API of the specified library.
    ' there's no need to use the Regsvr32.exe anymore.

    ' Make sure the path is correct and that the file exists, otherwise VB will crash.

    Dim lb As Long, pra As Long
    lb = LoadLibrary(DllServerPath)

    If bRegister Then
        pra = GetProcAddress(lb, "DllRegisterServer")
    Else
        pra = GetProcAddress(lb, "DllUnregisterServer")
    End If

    If CallWindowProc(pra, hWnd, ByVal 0&, ByVal 0&, ByVal 0&) = ERROR_SUCCESS Then
        MsgBox IIf(bRegister = True, "Registration", "Unregistration") + " Successful"
   Else
        MsgBox IIf(bRegister = True, "Registration", "Unregistration") + " Unsuccessful"
    End If
    'unmap the library's address
    FreeLibrary lb
End Function

Dê uma olhada nesse exemplo... se baseie nele para construir um EXE em VB para fazer o registro... (apesar que o ideal seria o 'setup')

Falows! Qualquer dúvida, post!

Link para o comentário
Compartilhar em outros sites

  • 0

Eu passei pela mesma situação dai fiz uma bate mais ou menos assim

//aqui EU COPIO OS ARQUIVOS QUE ESTAUM EM UMA MAQUINA NA REDE PRA MINHA

// DAI ELE COPIA DA PASTA PARA MINHA MAQUINA NO CASO PARA "C:\WINNT\SYSTEM32"

//é BOM você USAR A OPÇÃO WINDIR porque SE FOR WINDOWS 2000 A PASTA DO WINDOWS é DIFERENTE

COPY \\10.62.25.1\C\PROJETO\PACKAGE\COMCT232.OCX %WINDIR%\SYSTEM32\

/AGORA EU REGISTRO

%WINDIR%\regsvr32.exe /s/i %WINDIR%\COMCT232.OCX

a Opção /s serve para não mostrar dialogs quando se registra e a /i pra dizer que está instalando as OCX

então ficou assim

COPY \\10.62.25.1\C\PROJETO\PACKAGE\COMCT232.OCX %WINDIR%\SYSTEM32\
%WINDIR%\regsvr32.exe /s/i %WINDIR%\COMCT232.OCX

Dai éh so salvar o arquivo em lote " .BAT "

VOCE PODE TAMBEM COLOCAR TUDO EM UM ARQUIVO ZIPADO SE NÃO TIVER MAQUINAS EM REDE. COMO FOI O MEU CASO.

Abraços..

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...