Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 2127 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Olá pessoal,

Iniciei os testes da AcbrLibPosPrinter no c#.

Tenho uma dúvida, a criação do arquivo INI(o primeiro) é sempre feita na pasta de instalação da dll?

Tentei passar um path na primeira execução e foi retornado o erro de arquivo não encontrado.

Seria interessante se pudéssemos passar o path de leitura e criação da dll logo na primeira utilização da mesma.

Digo isso por causa da distribuição em clickonce. Toda vez que lançamos um update o clickonce cria uma nova pasta de instalação do EXE e Dlls, o que complica a vida de quem usa essa modalidade de distribuição de seus sistemas.

É claro que tenho pastas padrão para o banco de dados, logs, INIs e relatórios. Gostaria de manter o INI da AcbrLibPosPrinter dentro da sua respectiva pasta.

Postado (editado)
2 horas atrás, Rafael Dias disse:

Você deve passa o caminho completo para o arquivo ini, o mesmo deve existir.

Olá, @Rafael Dias,

Obrigado pela resposta.

Eu me referia à primeira utilização da Dll.

É certo que na primeira utilização o arquivo INI ainda não existe, e , mesmo passando o path completo é  retornado o erro de arquivo não encontrado. 

No caso de quem usa o ClickOnce pra distribuir seus aplicativos, a cada update lançado é criada uma nova pasta de instalação e o INI vai pro espaço.

Por isso a necessidade da criação de pastas "fixas" para os sistema distribuídos com ClickOnce.

Eu até já me virei aqui...rsrsrs.

Na primeira utilização, eu verifico se a pasta existe, e, caso não exista, eu crio na pasta que desejo um arquivo INI em branco.

Dessa forma ao passar o path completo não ocorre erro.

                if (Verifica_Pasta_Existe(NgGlobais.PubPastaSistema + @"\Dados\LogsINI\") == false)
                {
                    System.IO.Directory.CreateDirectory(NgGlobais.PubPastaSistema + @"\Dados\LogsINI\"); //Cria pasta
                    using (StreamWriter writer = new StreamWriter(NgGlobais.PubPastaSistema + @"\Dados\LogsINI\ACBrLib.ini"))
                    {
                        writer.Write("");//Cria INI em branco
                    }

                }

O interessante seria se a própria lib fizesse esse trabalho. Caso o arquivo não existisse na pasta informada o mesmo fosse criado.

Editado por Nelson A Sousa
  • Este tópico foi criado há 2127 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...