Ir para conteúdo
  • Cadastre-se

gostartlab

Membros Pro
  • Total de ítens

    3
  • Registro em

  • Última visita

Sobre gostartlab

gostartlab's Achievements

Newbie

Newbie (1/14)

  • First Post
  • Reacting Well Rare
  • Conversation Starter
  • One Year In
  • Dedicated Rare

Recent Badges

0

Reputação

  1. Com a versão 1.2.2 deu certo. Muito obrigado pessoal. Só tenho mais 2 pontos que sentimos falta aqui nos pacote do Nuget, se devo abrir um novo tópico aqui no fórum sobre, por favor me avise que abro. Na ACBrLib.Core.Config.PosPrinterConfig não tem a sessão Principal, é onde estamos configurando os logs. E na ACBrLib.Sat.CodigoMP, não tem os pagamentos mpBoletoBancario, mpDepositoBancario, mpPagamentoInstantaneo e mpSemPagamento (https://portal.fazenda.sp.gov.br/_layouts/download.aspx?SourceUrl=/servicos/sat/Downloads/Especificacao_SAT_v_ER_2_30_03.pdf) Mais uma vez obrigado.
  2. Boa noite, concordo com a sua solução também. Como eu fiz um ajuste somente para minha aplicação funcionar não preciso me preocupar com compatibilidade de versões anteriores. Sabem quando teremos essa solução dos fontes distribuidos no Nuget ? Obrigado
  3. Olá, estou iniciando com a utilização dos pacotes C# via Nuget e me deparei com o seguinte problema: Minha applicação é distribuída para Linux e Windows via pacote self-contained (1 único binário), assim não temos dependências do dotnet runtime na máquina que executaremos a aplicação. Porém na classe ACBrLibHandle.cs tem um código que não é compatível com a aplicações self-contained. Em modo de debug (localhost) funciona normalmente, porém quando vamos executar a aplicação compilada, recebo o seguinte erro: Unhandled exception. System.TypeInitializationException: The type initializer for 'ACBrLib.Core.ACBrLibHandle' threw an exception. ---> System.NotSupportedException: CodeBase is not supported on assemblies loaded from a single-file bundle. at System.Reflection.RuntimeAssembly.get_CodeBase() at ACBrLib.Core.ACBrLibHandle..cctor() in /builds/app-back/src/ACBrLib.Core/ACBrLibHandle.cs:line 29 --- End of inner exception stack trace --- at ACBrLib.Core.ACBrLibHandle.get_IsWindows() in /builds/app-back/src/ACBrLib.Core/ACBrLibHandle.cs:line 96 at Application.Agent.WorkerService.AgentWorkerServiceStartup.CreatePlataformHostBuilder(String[] args) in /builds/app-back/src/Application.Agent.WorkerService/Program.cs:line 32 at Application.Agent.WorkerService.AgentWorkerServiceStartup.Main(String[] args) in /builds/app-back/src/Application.Agent.WorkerService/Program.cs:line 22 Na ACBrLibHandle.cs hoje tem o seguinte código para definir o path padrão de carregamento das bibliotecas: static ACBrLibHandle() { MinusOne = new IntPtr(-1); var uri = new Uri(Assembly.GetEntryAssembly().CodeBase); // CodeBase não é suportado em self-contained var path = Path.GetDirectoryName(!uri.IsFile ? uri.ToString() : uri.LocalPath + Uri.UnescapeDataString(uri.Fragment)); LibraryPath = Path.Combine(path, "ACBrLib", Environment.Is64BitProcess ? "x64" : "x86"); } Acredito que algo assim resolveria o problema (estou utilizando esta versão hoje no meu fonte, porém não utilizo o path padrão das libs e sim seto o meu em tempo de execução via ACBrLibHandle.LibraryPath static ACBrLibHandle() { MinusOne = new IntPtr(-1); var baseDir = AppContext.BaseDirectory; if (!string.IsNullOrEmpty(baseDir)) { var uri = new Uri(AppContext.BaseDirectory); var path = Path.GetDirectoryName(!uri.IsFile ? uri.ToString() : uri.LocalPath + Uri.UnescapeDataString(uri.Fragment)); LibraryPath = Path.Combine(path, "ACBrLib", Environment.Is64BitProcess ? "x64" : "x86"); } } Obrigado
×
×
  • 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.