Jump to content

Dlls necessárias / ficheiros


bioshock
 Share

Recommended Posts

Para uma actualização da aplicação, sem ter que desinstalar a aplicação actual e voltar a instala-la, gostaria de saber quais são os ficheiros que são necessários de uma aplicação para fazer um replace?

Por exemplo, se um novo form é actualizado, quais os ficheiros para actualizar esse form?

Link to comment
Share on other sites

Todo o executável ou dependência (caso o executável as carregue @runtime).

Terás de acrescentar as dependências novas, se tiveres entretanto adicionado algumas.

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

O que é para ti "Todo o executável" ?

Estou a criar uma aplicação, em que estou a debate-la aqui: http://www.portugal-a-programar.pt/index.php?showtopic=34887, para fazer automaticamente as actualizações da aplicação.

Após aqui uns testes no meu PC, criei alguns processos que funcionam perfeitamente e criei o executável da aplicação (com o INNOSETUP), adicionei-lhe a dll necessária, testei e funcionou tudo perfeitamente.

Agora, experimentei correr aqui num portátil ao lado, a aplicação corre perfeitamente, mas ele dá erro quando tento fazer download de um ficheiro do FTP para o PC. Bem, os dados de authenticação vão no código..

Eu apenas utilizo para authenticação

ftp.Hostname = "ftp"
ftp.Username = "user"
ftp.Password = "pass"

Mas secalhar tem alguma coisa haver com o AUTH SSL, não?

Link to comment
Share on other sites

Pode ser "n" coisas.

Para começar, que erro é devolvido?

Quando digo "Todo o executável" refiro-me ao ficheiro .EXE

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

Pois, foi o que eu sempre pus.

Eu quer-me parecer que a DLL não é instalada no PC do cliente. Digo isto, pois é única lógica que chego. Entrei no FTP pelo PC do cliente e funciona tudo bem, mas na aplicação não funciona.

E o erro que dá é: "Failed to create key in registry"

Link to comment
Share on other sites

Que raio de DLL estás a usar para uploads e downloads, tão bera que precise de ter chaves no registo?

A .NET tem métodos nativos para download e upload de ficheiros.

Alternativamente, se o host environment for WinVista/7, tenta correr com direitos de administrador.

O erro descreve nitidamente uma tentativa de escrita no registo falhada, que pode ou não ter sido despoletada por a tal DLL.

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

Primeiro despista o problema.

Se com admin correr, vais ter de descobrir onde e porque razão se está a tentar escrever no registo.

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

Bem, eu estou a usar a biblioteca chilkat..

Creio que existem métodos para resolver este problema, assim por alto apanhei este exemplo na net:

Dim securePass As New Security.SecureString()
Dim pass As String = "password"

For Each c As Char In pass
        securePass.AppendChar(c)
Next

' If there isn't a domain, set the argument to 'Nothing', as demonstrated below.
Process.Start("testsoftware\WinKBSel\WinKBSel1003.exe", "username", pass, Nothing)

Tenho que experimentar.

Outro ponto: Em relação ao que tu disseste:

Todo o executável ou dependência (caso o executável as carregue @runtime).

Terás de acrescentar as dependências novas, se tiveres entretanto adicionado algumas.

Vamos supor que existe uma alteração no FormClientes (por exemplo). Para actualizar o FormClientes, eu vou ter que uppar para o FTP o executável, correcto?

Porque se eu for à pasta onde está instalada a aplicação, os ficheiros que apenas aparecem são: O desinstalador, as dll's e o executável.

Link to comment
Share on other sites

Sim. Os forms estão "contidos no ficheiro EXE".

Não tenho experiência com a biblioteca, não te posso ser grande ajuda.

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.