Usuário com melhor resposta
Instanciando uma Classe

Pergunta
-
Boa noite pessoa.
Tenho uma classe definida em uma camada do meu projeto. Essa classe tem vários métodos staticos.
public class UDownloadXMLNFeDLL { [ DllImport("BaixarXMLNFe.dll")] public static extern bool Proxy(string Host, int Port, string User, string Pass); [ DllImport("BaixarXMLNFe.dll")] public static extern bool Captcha(string SalvarEm); [ DllImport("BaixarXMLNFe.dll")] public static extern void Https(int Sim); [ DllImport("BaixarXMLNFe.dll")] public static extern string GetCertificadoDigital(); [ DllImport("BaixarXMLNFe.dll")] public static extern string Msg(); [ DllImport("BaixarXMLNFe.dll")] public static extern void SetCertificadoDigital(string CertSerialNumber); [ DllImport("BaixarXMLNFe.dll")] public static extern bool BaixarXMLNFeSemCert(string Chave, string Captcha, string SalvarEm); [ DllImport("BaixarXMLNFe.dll")] public static extern bool BaixarXMLNFeComCert(string Chave, string Captcha, string SalvarEm); [DllImport("BaixarXMLNFe.dll")] public static extern bool BaixarXMLNFeComCertAuto(string Chave, string SalvarEm, string ChaveLeitorCaptcha, int Tentativas, int MostrarProgresso); [DllImport("BaixarXMLNFe.dll")] public static extern bool BaixarXMLNFeSemCertAuto(string Chave, string SalvarEm, string ChaveLeitorCaptcha, int Tentativas, int MostrarProgresso); [ DllImport("BaixarXMLNFe.dll")] public static extern void DLLLicenca(string Chave); [ DllImport("BaixarXMLNFe.dll")] public static extern bool CaptchaLer(string ChaveCaptcha, string ArquivoImagem); [ DllImport("BaixarXMLNFe.dll")] public static extern string CaptchaLerTexto(); [ DllImport("BaixarXMLNFe.dll")] public static extern bool Imprimir(string ArquivoXML, string LogoMarca); [ DllImport("BaixarXMLNFe.dll")] public static extern bool ExportarPDF(string ArquivoXML, string LogoMarca, string PDF); [DllImport("BaixarXMLNFe.dll")] public static extern void DLLRegistra(string PastaDestino); } // end UDownloadXMLNFeDLL }
No meu form eu instancio a classe. Normal, porém no momento que eu tento acessar o método statico ele não reconhece o método.
Eu instancio dessa forma:
UDownloadXMLNFeDLLXmlNota = newUDownloadXMLNFeDLL();
XmlNota.
No momento que eu digito XmlNota, ele não me dá a opção de escolher o método que eu preciso
public static extern bool Captcha(string SalvarEm);
Parece que ele não está enxergando, alguém pode me ajudar a resolver esse problema?
Muito Obrigado
Garibaldo
Respostas
-
Sua classe deve ficar assim :
static class UDownloadXMLNFeDLL { [ DllImport("BaixarXMLNFe.dll")] public extern bool Proxy(string Host, int Port, string User, string Pass); [ DllImport("BaixarXMLNFe.dll")] public extern bool Captcha(string SalvarEm); [ DllImport("BaixarXMLNFe.dll")] public extern void Https(int Sim); [ DllImport("BaixarXMLNFe.dll")] public extern string GetCertificadoDigital(); [ DllImport("BaixarXMLNFe.dll")] public extern string Msg(); [ DllImport("BaixarXMLNFe.dll")] public extern void SetCertificadoDigital(string CertSerialNumber); [ DllImport("BaixarXMLNFe.dll")] public extern bool BaixarXMLNFeSemCert(string Chave, string Captcha, string SalvarEm); [ DllImport("BaixarXMLNFe.dll")] public extern bool BaixarXMLNFeComCert(string Chave, string Captcha, string SalvarEm); [DllImport("BaixarXMLNFe.dll")] public extern bool BaixarXMLNFeComCertAuto(string Chave, string SalvarEm, string ChaveLeitorCaptcha, int Tentativas, int MostrarProgresso); [DllImport("BaixarXMLNFe.dll")] public extern bool BaixarXMLNFeSemCertAuto(string Chave, string SalvarEm, string ChaveLeitorCaptcha, int Tentativas, int MostrarProgresso); [ DllImport("BaixarXMLNFe.dll")] public extern void DLLLicenca(string Chave); [ DllImport("BaixarXMLNFe.dll")] public extern bool CaptchaLer(string ChaveCaptcha, string ArquivoImagem); [ DllImport("BaixarXMLNFe.dll")] public extern string CaptchaLerTexto(); [ DllImport("BaixarXMLNFe.dll")] public extern bool Imprimir(string ArquivoXML, string LogoMarca); [ DllImport("BaixarXMLNFe.dll")] public extern bool ExportarPDF(string ArquivoXML, string LogoMarca, string PDF); [DllImport("BaixarXMLNFe.dll")] public extern void DLLRegistra(string PastaDestino); } // end UDownloadXMLNFeDLL }
Você instancia ela
//Classe nomeDaInstancia UDownloadXMLNFeDLL novaClasse = new UDownloadXMLNFeDLL()
E chama o método:
string minha chave = novaClasse.DLLLicenca("string chave");
Mais ou menos assim meu caro, qualuqer dúvida pode chamar \o"Study, study and study more, there is no easy way..."
- Marcado como Resposta Garibaldo Luis Guerreiro Chaves quinta-feira, 5 de março de 2015 00:57
Todas as Respostas
-
-
-
-
-
Sua classe deve ficar assim :
static class UDownloadXMLNFeDLL { [ DllImport("BaixarXMLNFe.dll")] public extern bool Proxy(string Host, int Port, string User, string Pass); [ DllImport("BaixarXMLNFe.dll")] public extern bool Captcha(string SalvarEm); [ DllImport("BaixarXMLNFe.dll")] public extern void Https(int Sim); [ DllImport("BaixarXMLNFe.dll")] public extern string GetCertificadoDigital(); [ DllImport("BaixarXMLNFe.dll")] public extern string Msg(); [ DllImport("BaixarXMLNFe.dll")] public extern void SetCertificadoDigital(string CertSerialNumber); [ DllImport("BaixarXMLNFe.dll")] public extern bool BaixarXMLNFeSemCert(string Chave, string Captcha, string SalvarEm); [ DllImport("BaixarXMLNFe.dll")] public extern bool BaixarXMLNFeComCert(string Chave, string Captcha, string SalvarEm); [DllImport("BaixarXMLNFe.dll")] public extern bool BaixarXMLNFeComCertAuto(string Chave, string SalvarEm, string ChaveLeitorCaptcha, int Tentativas, int MostrarProgresso); [DllImport("BaixarXMLNFe.dll")] public extern bool BaixarXMLNFeSemCertAuto(string Chave, string SalvarEm, string ChaveLeitorCaptcha, int Tentativas, int MostrarProgresso); [ DllImport("BaixarXMLNFe.dll")] public extern void DLLLicenca(string Chave); [ DllImport("BaixarXMLNFe.dll")] public extern bool CaptchaLer(string ChaveCaptcha, string ArquivoImagem); [ DllImport("BaixarXMLNFe.dll")] public extern string CaptchaLerTexto(); [ DllImport("BaixarXMLNFe.dll")] public extern bool Imprimir(string ArquivoXML, string LogoMarca); [ DllImport("BaixarXMLNFe.dll")] public extern bool ExportarPDF(string ArquivoXML, string LogoMarca, string PDF); [DllImport("BaixarXMLNFe.dll")] public extern void DLLRegistra(string PastaDestino); } // end UDownloadXMLNFeDLL }
Você instancia ela
//Classe nomeDaInstancia UDownloadXMLNFeDLL novaClasse = new UDownloadXMLNFeDLL()
E chama o método:
string minha chave = novaClasse.DLLLicenca("string chave");
Mais ou menos assim meu caro, qualuqer dúvida pode chamar \o"Study, study and study more, there is no easy way..."
- Marcado como Resposta Garibaldo Luis Guerreiro Chaves quinta-feira, 5 de março de 2015 00:57
-
-
Boa noite Eugenio,
eu estou desenvolvendo um projeto de CTe e necessito que o programa busque no site da receita os dados da NFe(XML), então procurando com um amigo ele me indicou uma pessoal que tinha essa DLL. Porém, a DLL é em Delphi, eu apenas estou mexendo em meu programa criando classes que busque a DLL e retorne o XML, na máquina.
Garibaldo
-
-
-
Certo, vc pode me enviar esse arquivo DLL?
- Editado Eugenio Junior domingo, 1 de março de 2015 00:56
-
Boa tarde Eugenio,
Essa DLL foi me vendida por uma pessoa de Aracaju, não sei se diante dessa situação, você ainda continua interessado. Se ainda estiver interessado vou conversar com ele e se ele autorizar passo o email dele e você entra em contato direto com ele.
Garibaldo
-
-
-
Eugenio boa tarde, primeiro não te conheço, porém, se a .DLL fosse minha, eu diponibilizaria de graça na internet. Para mim o que importa é o projeto completo, aí sim não tem como a gente disponibilizá-lo, mas umas DLLs não tem nada de mais. É até uma forma de estarmos trocando informações e de estarmos ajudando outros programadores de aprimorar os conhecimentos.
Porém, segue o email solicitado:
Garibaldo
-