Jump to content
Fórum Script Brasil
  • 0

Distribuição De Aplicações Em Vb 6


Musashi_RS
 Share

Question

Olá,

Criei uma aplicação e estou enfrentando dificuldades em distribuíla. <_<

Quando fui distribuir minha primeira aplicação, eu instalei os arquivos necessários (DLL / OCX) na pasta do sistema do cliente. Essa instalação substituiu algumas DLLs por outras mais atuais e ferrou com o sistema todo (win98). Desde então venho colocando as DLLs / OCX na própria pasta da aplicação (e tem funcionado). Porém os programinhas não utilizavam acesso a banco de dados, no máximo arquivos texto.

Entretanto, nessa minha última aplicação eu estou utilizando mais componentes do que de costume, como Data Control, utilizando DAO 3.51, instruções SQL , etc. Quando fui instalar em outra máquina (sem o Visual Studio instalado) deu um erro.

Com o P&DW eu consegui distribuir legal, pois observei que ele registrou tudo e até o driver .JET. Mas como o P&DW é uma droga, eu utilizo o Is Tool em conjunto com o Inno Setup para gerar o pacote de instalação. Nele encontrei uma opção (flag) chamada "Registrar servidor". Marquei essa flag para registrar a DLL quando a mesma é copiada para a pasta da aplicação. Funcionou no win XP.

Pergunto.

Qual a maneira mais correta de distribuir uma aplicação sem correr o risco de ferrar com o PC do cliente? Digo, onde deixar as DLLs / OCX e como registrar automaticamente?

Existe alguma outra opção no Istool ou Inno Setup para registrar um componente mais seguramente?

E quais os componentes que eu preciso enviar junto com o pacote e registrar no PC cliente?

Desde já agradeço a atenção. :rolleyes:

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

cara o q eu sempre faco é o seguinte. primeiro faco um instalador no package e deployment. mas não distribuo esse, eu so faco o instalador porque ele copia numa pasta separado todas as dlls, ocxs e qualquer otros arquivos q eu for precisar. assim eu não corro o risco de esquecer nd e nem de pegar arquivo desnecessario por engano.

ai sabendo quais são os arquivos eu copio todos eles e ponho no innosetup. e apago o q eu fiz no deployment. ai o esquema é gravar todos as dlls e ocxs na pasta C:\Windows\System32 (se não me engano, no istool, opcao {sys} ou {system} ou {winsys}, alguma coisa assim).

ai você tem q saber quais as dlls registraveis ou não. quando eu tinha duvida, eu punha o flag pra registrar em todas. ai eu rodava o instalador uma vez de teste, e as dlls q não fossem registraveis ele dava um erro, ai eu anotava e tirava o flag dessas.

com o innosetup nunca tive problemas nem em xp nem em 98.

Link to comment
Share on other sites

  • 0
cara o q eu sempre faco é o seguinte. primeiro faco um instalador no package e deployment. mas não distribuo esse, eu so faco o instalador porque ele copia numa pasta separado todas as dlls, ocxs e qualquer otros arquivos q eu for precisar. assim eu não corro o risco de esquecer nd e nem de pegar arquivo desnecessario por engano.

Legal!

Pelo que eu lembre, ele gera um arquivo compactado (.cab), certo? É dentro desse arquivo que ficam as DLLs e OCX que você falou ou elas ficam soltas em uma pasta?

ai sabendo quais são os arquivos eu copio todos eles e ponho no innosetup. e apago o q eu fiz no deployment. ai o esquema é gravar todos as dlls e ocxs na pasta C:\Windows\System32 (se não me engano, no istool, opcao {sys} ou {system} ou {winsys}, alguma coisa assim).

Mas esse é meu medo. Uma vez eu instalei as DLLs na pasta do sistema e foi substituida uma delas (Oleaut32.dll) e aí ferou todo o sistema. Sorte que eu tinha feito um backup da DLL original pra repor denovo. Nunca te aconteceu nada parecido? O que você sugere que eu faça?

ai você tem q saber quais as dlls registraveis ou não. quando eu tinha duvida, eu punha o flag pra registrar em todas. ai eu rodava o instalador uma vez de teste, e as dlls q não fossem registraveis ele dava um erro, ai eu anotava e tirava o flag dessas.

com o innosetup nunca tive problemas nem em xp nem em 98.

Vou fazer isso então!

Obrigado pelas dicas. :lol:

Link to comment
Share on other sites

  • 0
Legal!

Pelo que eu lembre, ele gera um arquivo compactado (.cab), certo? É dentro desse arquivo que ficam as DLLs e OCX que você falou ou elas ficam soltas em uma pasta?

se não me engano, nos dois. acho q ele copia no cab pra distribuicao e (não sei se tem q flagar alguma opcao pra isso) ele copia tb numa pasta solta.

Mas esse é meu medo. Uma vez eu instalei as DLLs na pasta do sistema e foi substituida uma delas (Oleaut32.dll) e aí ferou todo o sistema. Sorte que eu tinha feito um backup da DLL original pra repor denovo. Nunca te aconteceu nada parecido? O que você sugere que eu faça?

então, tem uns flags a mais q é sempre bom selecionar, um deles so vai copiar a dll se não existir uma outra (se você usa a versao em portugues, Somente se não existir), ou pra perguntar se ela for mais nova do q a já existente (Perguntar se mais antigo) e outra q não vai apagar a dll quando for feita uma desinstalacao do seu programa (Nunca desinstalar), etc.

e so confirmando a opcao pra pasta C:\Windows\System32 é {sys}, fui conferir agora, achei q não tinha IsTool no meu pc.

Link to comment
Share on other sites

  • 0

Pois é, só que o problema que eu enfrento sempre, é que eu desenvolvo todo o pograma no win XP e depois tenho que recompila-lo no windows 98, pois alguns controles (como o flash) mudam.

Quando vou executar um programa no 98, feito no XP, que contenha mais componentes do que o padrão, sempre aparece o erro: "Unexpected error."

Porém rodar um programa compilado no 98, tanto no próprio 98 quanto no Xp rodaram beleza.

Vai saber... :mellow:

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.1k
    • Total Posts
      647.1k
×
×
  • Create New...