PROJETO S@T-FISCAL
to fazendo assim
Imports System.Runtime.InteropServices
Module FSAT
<DllImport([Ô]c:\SAT\SAT.dll[Ô], CallingConvention:=CallingConvention.Cdecl)> _
Public Function ConsultarSAT(ByVal nSessionRandom As Int32) As IntPtr
End Function
Public Sub chamada()
Dim Aleatorio As New Random
Dim NumSessao As String = Aleatorio.Next(100000)
Dim Retorno As String = ConsultarSAT(NumSessao) [ô] o erro acontece aqui
Dim strA As String = Marshal.PtrToStringAnsi(Retorno)
MsgBox(strA)
End Sub
Pois bem, depois que eu executo a função chamada me da esse erro:
Foi feita uma tentativa de se carregar um programa com um formato incorreto. (Exceção de HRESULT: 0x8007000B)
Alguem teve esse problema?
Citação::
Carlos, este certificado da empresa que você diz, seria da sua SoftHouse ?, então pra desenvolvimento com o emulador da Sefaz não precisa do cnpj ?, e vc fez em .net ?, nesta plataforma tem como gerar todos os passos, inclusive o qrcode ?
Grato.
Sim o certificado e da software house , estou fazendo em C# , e possÃvel geral o QrCode sim na verdade o SAT manda as informações todas do QrCode pra você gerar o código, mas meu projeto esta ainda faltado parte eu estou agora na parte de cancelamento, por hora ele esta emitindo somente pelo emulador ainda não consegui resolver o problema com a dll da Dimep.
Citação::
Pessoal, estou com uma dor de cabeça pra chamar a DLL SAT.DLL, ja pesquisei bastante e vejo que muita gente conseguiu mas tentei com a solução deles e ainda dá erro, utilizei o emulador e consegui emitir o primeiro Cupom fiscal mas meu aplicativo não comunica com a DLL...
to fazendo assim
Imports System.Runtime.InteropServices
Module FSAT
<DllImport([Ô]c:SATSAT.dll[Ô], CallingConvention:=CallingConvention.Cdecl)> _
Public Function ConsultarSAT(ByVal nSessionRandom As Int32) As IntPtr
End Function
Public Sub chamada()
Dim Aleatorio As New Random
Dim NumSessao As String = Aleatorio.Next(100000)
Dim Retorno As String = ConsultarSAT(NumSessao) [ô] o erro acontece aqui
Dim strA As String = Marshal.PtrToStringAnsi(Retorno)
MsgBox(strA)
End Sub
Pois bem, depois que eu executo a função chamada me da esse erro:
Foi feita uma tentativa de se carregar um programa com um formato incorreto. (Exceção de HRESULT: 0x8007000B)
Alguem teve esse problema?
Tenta ver se assim funciona
<DllImport([Ô]c:\SAT\SAT.dll[Ô], CallingConvention := CallingConvention.Cdecl)> _
Public Function ConsultarSAT(nSessionRandom As Integer) As IntPtr
End Function
<DllImport([Ô]c:\SAT\SAT.dll[Ô], CallingConvention := CallingConvention.Cdecl)> _
Public Function AtivarSAT(numeroSessao As Integer, subComando As Integer, codigoDeAtivacao As String, CNPJ As String, cUF As Integer) As IntPtr
End Function
<DllImport([Ô]c:\SAT\SAT.dll[Ô], CallingConvention := CallingConvention.Cdecl)> _
Public Function EnviarDadosVenda(numeroSessao As Integer, codigoDeAtivacao As String, dadosVenda As String) As IntPtr
End Function
Citação::
:
Pessoal, estou com uma dor de cabeça pra chamar a DLL SAT.DLL, ja pesquisei bastante e vejo que muita gente conseguiu mas tentei com a solução deles e ainda dá erro, utilizei o emulador e consegui emitir o primeiro Cupom fiscal mas meu aplicativo não comunica com a DLL...
to fazendo assim
Imports System.Runtime.InteropServices
Module FSAT
<DllImport([Ô]c:SATSAT.dll[Ô], CallingConvention:=CallingConvention.Cdecl)> _
Public Function ConsultarSAT(ByVal nSessionRandom As Int32) As IntPtr
End Function
Public Sub chamada()
Dim Aleatorio As New Random
Dim NumSessao As String = Aleatorio.Next(100000)
Dim Retorno As String = ConsultarSAT(NumSessao) [ô] o erro acontece aqui
Dim strA As String = Marshal.PtrToStringAnsi(Retorno)
MsgBox(strA)
End Sub
Pois bem, depois que eu executo a função chamada me da esse erro:
Foi feita uma tentativa de se carregar um programa com um formato incorreto. (Exceção de HRESULT: 0x8007000B)
Alguem teve esse problema?
Tenta ver se assim funciona
<DllImport([Ô]c:SATSAT.dll[Ô], CallingConvention := CallingConvention.Cdecl)> _
Public Function ConsultarSAT(nSessionRandom As Integer) As IntPtr
End Function
<DllImport([Ô]c:SATSAT.dll[Ô], CallingConvention := CallingConvention.Cdecl)> _
Public Function AtivarSAT(numeroSessao As Integer, subComando As Integer, codigoDeAtivacao As String, CNPJ As String, cUF As Integer) As IntPtr
End Function
<DllImport([Ô]c:SATSAT.dll[Ô], CallingConvention := CallingConvention.Cdecl)> _
Public Function EnviarDadosVenda(numeroSessao As Integer, codigoDeAtivacao As String, dadosVenda As String) As IntPtr
End Function
Obrigado, mas agora deu certo... e até vou deixar a solução aqui pq era um detalhe que a muitoooo tempo atras tive o mesmo problema.
Meu Windows é x64 e como a dll não é x64 a gente tem q editar o arquivo .vbproj e adicionar a tag <PlatformTarget>x86</PlatformTarget> abaixo da tag <NoWarn>
problema resolvido, obrigado
Estou vendo o Pessoal falar de emulador. Fiz algumas pesquisas e fui informado que tenho que adquirir um dispositivo para desenvolvimento, a Tanca e a Bematech vendem a preço subsidiado para desenvolvedor.
Eu utilizo VB6 e estou ainda convertendo alguns desses programa para VB.NET, preciso gerar o danfe do CFE tanto em V6 como em VB,NET, alguem tem um exemplo ou sabe onde eu consigo. Terei mesmo que reescrever toda a minha rotina que enviava ao ECF? Eu li aquele manual do Sefaz, mas ele tem tanta informação que acvaba gerando mais duvidas na nossa cabeça.rs. Agradeço qualquer ajuda.
Vou começar agora o tratamento das informações do retorno e não comprei KIT de desenvolvimento ja que a Sweda me informou que utilizando o emulador da sefaz seria o mesmo procedimento depois para implantar o aparelho
Depois dessa semana ter se matado pra conseguir gerar e trabalhar com aquele emulador eu não quero ouvi falar em bematech nem tão cedo.
http://www.pctoledo.com.br/forum/viewtopic.php?f=20&t=16064
http://venus.maringa.pr.gov.br/laudosnew/arquivos/Atividades_permitidas_para_mei.pdf