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

Dll


Guest Valdécio

Pergunta

Guest Valdécio

Criei uma DLL no VB que pode executar alguns processos e tenho um projeto que utiliza esta DLL, o problema que quando faço correções na DLL tenho de recompilar o projeto do programa que utiliza esta DLL para poder atualizar a utilização desta DLL pelo aplicativo. Gostaria de saber se é possível apenas recompilar a DLL e fazer com que o aplicativo passe a utiliza-la sem ser necessário recompilalo.

Atenciosamente

Valdécio

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Sim, usando a técnica de late-bound ("anexação tardia" ou "ligações futuras"). A idéia é que ao invés de fazer referência a ela na opção References, você crie-a por código de forma dinâmica. Exemplo:

set objeto = CreateObject("Nome.Classe")
Um exemplo disso é...
set cn = CreateObject("ADODB.Connection")

... que cria um objeto ADODB.Connection sem que você tenha que se preocupar com a versão instalada do ADO (ou mesmo se ele está instalado; nesse caso aparecerá uma mensagem de erro que pode ser tratada).

O mesmo vale para qualquer DLL ActiveX (do tipo que são feitas no VB).

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

E aí galera, beleza.

Ô Graymalkin, esse seu exemplo caiu do céu:

set cn = CreateObject("ADODB.Connection")

Porque eu estou justamente com esse problema, dá um erro do tipo:

Run-time error '429':

ActiveX component can't create object

Segundo o Debugger é nesta linha:

user posted image

Por favor cara, me dá uma luz!!! Eu estou quebrando a minha cabeça para fazer essa conexão já faz um tempão, e sempre dá esse erro ao tentar criar o objeto, inclusive por outros métodos de conexão com um banco MySQL (ADO. DAO, DSN, ODBC). Tenho certeza absoluta que o Servidor MySQL está funcionando, pois já testei com PHP. Uso W98SE, MySQL 4.0.21, VB6, ODBC 3.5.1.

Link para o comentário
Compartilhar em outros sites

  • 0

Pô cara, desculpa ter mandado essa imagem. Na verdade, eu tava testando outra sintaxe, para ver se o erro era meu, mas assim também dá o mesmo erro.

Caso contrário, você pode tentar instalar uma versão mais nova do ADO.

(Microsoft ActiveX Data Objects 2.5 Library) Têm tuto pra Upgrade do ADO? estou perguntando porque nunca fiz isso antes!!!

Link para o comentário
Compartilhar em outros sites

  • 0
Pô cara, desculpa ter mandado essa imagem. Na verdade, eu tava testando outra sintaxe, para ver se o erro era meu, mas assim também dá o mesmo erro.

Caso contrário, você pode tentar instalar uma versão mais nova do ADO.

(Microsoft ActiveX Data Objects 2.5 Library) Têm tuto pra Upgrade do ADO? estou perguntando porque nunca fiz isso antes!!!

Basta instalar a nova versão e mudar a versão escolhida na opção References do menu Project. No site da Microsoft você acha a versão mais nova (2.8, se não me engano). Mas, experimentou usando CreateObject() e não fazendo referência ao ADO?

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

Aí Graymalkin, brigadão pela dica, vou dar uma olhada no site da M$oft, quanto a usar o CreateObject(), eu também já tentei... prá falar a verdade, já fucei toda a web atrás de tutos de conexão, e nada dá certo. Caso funcione eu posto de novo!!

Mais uma vez brigadão. wink.gif

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,3k
    • Posts
      652,4k
×
×
  • Criar Novo...