Forum > Portuguese

Erro ao executar um método de DLL feita em C#

(1/1)

wandrey:
Estou tentando utilizar uma DLL feita em C# e quando vou executar um método específico, onde passo por parâmetro 2 objetos, tenho o seguinte erro:


Projeto Treinamento elevou classe exceção 'EOleSysError' com a mensagem:
Parâmetro incorreto.
No endereço: 10019F5DD

Imagem do erro anexada.


Erro ocorre na linha 28 do código abaixo.


--- Code: Pascal  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---procedure TfrmPrincipal.btnConsultaStatusNFeClick(Sender: TObject);var  oConfiguracao: OleVariant;  oConsStatServ: OleVariant;  oStatusServico: OleVariant;  oExceptionInterop: OleVariant;begin  // Criar objeto de configuração mínima  oConfiguracao := CreateOleObject('Unimake.Business.DFe.Servicos.Configuracao');  oConfiguracao.TipoDFe := 0; //0=NFe  oConfiguracao.CertificadoArquivo := 'C:\Projetos\certificados\UnimakePV.pfx';  oConfiguracao.CertificadoSenha := '12345678';   //Criar objeto do XML  oConsStatServ := CreateOleObject('Unimake.Business.DFe.Xml.NFe.ConsStatServ');  oConsStatServ.Versao := '4.00';  oConsStatServ.TpAmb := 2; //2=Homologação  oConsStatServ.CUF := 41; //41=Paraná   ShowMessage(oConsStatServ.cUF);   //Criar objeto para pegar exceção do lado do CSHARP  oExceptionInterop := CreateOleObject('Unimake.Exceptions.ThrowHelper');   try     //Consumir o serviço     oStatusServico := CreateOleObject('Unimake.Business.DFe.Servicos.NFe.StatusServico');     oStatusServico.Executar(oConsStatServ, oConfiguracao);      //XML retornado pela SEFAZ     //ShowMessage(oStatusServico.RetornoWSString);      //Código de Status e Motivo     //ShowMessage(IntToStr(oStatusServico.Result.CStat));     //ShowMessage(oStatusServico.Result.XMotivo);  except    //ShowMessage(oExceptionInterop.GetMessage());    //ShowMessage(IntToStr(oExceptionInterop.GetErrorCode()));  end;end;
Códigos anteriores, onde crio os objetos das classes da DLL em C#, funcionam. Inclusive no ShowMessage da linha 20 consigo recuperar informações, o que me faz acreditar que a DLL está bem registrada no Windows e os objetos foram criados corretamente.

Por favor, alguém tem informação que possa ajudar na solução deste erro?

Navigation

[0] Message Index

Go to full version