Imam problema sa implementacoijom COM u Delphi / VB6

Oct 22, 2012 at 11:48 AM

Društvo ili sam glup ili nekaj griješim ali nikako nemohu ubaciti COM u Delphi da mi napokon proradi.

Please ako neko ima malo strpljenja da mi pojasni kako da krenem.

 

.o)

Coordinator
Oct 22, 2012 at 11:54 AM

Pozdrav svima,

 

samo da pojasnim još jednom - mi NISMO ovo testirali u Deplhi okruženju, niti u VB6 okruženju niti nikaj takvoga - (pra)davno je bilo kada smo se bavili klasičnim COM-om, bilo ActiveX, bilo VB6, tako da niti nemamo sada okruženje za pravo testiranje.

No, isprobali smo rad preko VB Scripta na development PC-evima (Win 7 64-bit) + na Win XP SP 2 virtualnoj mašini - pozivanje na način kako je navedeno u primjeru radi, samo je potrebno držati se uputa: http://fiskalizacija.codeplex.com/wikipage?title=Potpisivanje%20i%20slanje%20pozivanjem%20COM%20DLL-a

Upravo da vidite da li COM radi kako treba u okruženju koje koristite postoji metoda "TestCOM", poziva se:

Dim o
 
Set o = CreateObject("Raverus.FiskalizacijaDEV.COM.CentralniInformacijskiSustav")
msgbox o.TestCom("Moj test")

 

Ovaj će mali primjer pozvati message box sa "Moj test" ako je sve ok - ovo je svakako prvi, preporučeni korak, u testiranju. Ako ovo radi, onda i COM DLL radi :)

Oct 22, 2012 at 12:02 PM

Što se tiče Delphi-a uspjelo je importiranje Raverus.FiskalizacijaDEV.COM.dll međutim imam samo klasu ali nemam pripadajuće funkcije poput .PosaljiEcho(), .PosaljiSOAP() ...

 

Probao sam preuzeti i wsdl ali jednostavno me ignorira pa ako neko zna možda pravu putanju neka javi. Ovo sa wsdl-om probao sam i sa vb-om i sa delhpi-om ali nikako ne prolazi.

 

Lp,

Mario

Coordinator
Oct 22, 2012 at 12:06 PM
Edited Oct 22, 2012 at 12:06 PM

WSDL preuzmeš ovdje: http://www.porezna-uprava.hr/fiskalizacija/fiskalizacija.asp i ubaciš ga nekako u svoj projekt - ne znam detalje jer nikada u Delphi-u nisam radio :)

Uglavnom, FiskalizacijaDev.dll NE koristi u ovom trenutku WSDL, nego se spajamo direktno na CIS - razlog za ovo je taj što je podrška za spajanje iz .NET-a koristeći WSDL dodana, navodno, tek naknadno. Kažem "navodno" jer još to nismo isprobali. Iz tog razloga smo išli direktno...

Da li ti radi poziv do "TestCom"?

Oct 22, 2012 at 12:17 PM

Hm, znači što se tiče wsdl-a ipak nisam tako glup .o)

Ovako kolega i ja smo preuzeli vaš kod u C-u pa ćemo nešto smisliti za Delphi. Čim uspijemo šaljemo svima osim Apis-u .o)))

Coordinator
Oct 22, 2012 at 12:20 PM

Thnx, javite samo da li ste uspjeli, da znamo da je sa COM DLL-om sve ok :)

Oct 22, 2012 at 2:02 PM

kada sam išao linkati pojavio se error

                // prema sugestiji mladenbabic (http://fiskalizacija.codeplex.com/workitem/627)
                WebResponse ipakPristigliErrorXmlResponse = ((WebException)ex).Response;
                using (Stream noviResponseStream = ipakPristigliErrorXmlResponse.GetResponseStream())

ali mislim da je to otprilike to

Nego da ne kopam po kodu plesae gdje radite soap connection

 

Coordinator
Oct 22, 2012 at 4:00 PM

Poziv se radi preko:

public XmlDocument PosaljiSoapPoruku(string soapPoruka)

 

Ovaj dio koda koji se ti naveo je novi u v1.1. i namjena mu je da, ako je CIS vratio standardnu poruku o greški, tu istu poruku spremi u CentralniInformacijskiSustav.OdgovorGreska - no, ovo, na žalost, još nije do kraja riješeno kroz COM...

Oct 22, 2012 at 6:12 PM
Edited Oct 22, 2012 at 6:12 PM

COM DLL  - Radi !! Za VB6 - icu

Coordinator
Oct 23, 2012 at 6:39 AM

Super - hvala na javljanju :)

Oct 23, 2012 at 11:03 AM

Moze kratki naputak kako i sta si napravio da pokrenes iz VB6 ?

Oct 23, 2012 at 11:03 AM
Cibakis wrote:

COM DLL  - Radi !! Za VB6 - icu

 

Moze kratki naputak kako i sta si napravio da pokrenes iz VB6 ?

Oct 23, 2012 at 11:42 AM

Kakvu grešku dobivaš Gorane, ako si pratio sva uputstva dosada, registrirao COM DLL i ubacio u referencu VB6-ice sve će ti raditi 

Oct 23, 2012 at 11:48 AM

Društvo hvala na idejama dio funkcije za delphi je prošao kad bude gotovo šaljem  source.

P.S. COM DLL šljaka savršeno ali se bojim da ćemo srušiti server kad krenemo .o))

Oct 23, 2012 at 6:40 PM
Cibakis wrote:

Kakvu grešku dobivaš Gorane, ako si pratio sva uputstva dosada, registrirao COM DLL i ubacio u referencu VB6-ice sve će ti raditi 

 

Cuj,sve napravljeno kako ste rekli.

Registrirao sa :

C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe c:\com\Raverus.FiskalizacijaDEV.COM.dll /register /codebase /tlb

Dobio file Raverus.FiskalizacijaDEV.COM.tlb

U VB6 projektu :Project -> References i odabrao sa c:\com\Raverus.FiskalizacijaDEV.COM.tlb

Testiranje kako ste rekli :

Private Sub Cmd_test()

 Dim myObject As Raverus_FiskalizacijaDEV_COM.CentralniInformacijskiSustav

Set myObject = New Raverus_FiskalizacijaDEV_COM.CentralniInformacijskiSustav
MsgBox myObject.TestCom("Moj test123")

End Sub

I ovo prodje OK.
Ali bilo kaj drugo sa onih Vasih primjera ne prolazi i javlja gresku.

Npr :
Private Sub Cmd_test()

Dim myObject As Raverus_FiskalizacijaDEV_COM.CentralniInformacijskiSustav

Set myObject = New Raverus_FiskalizacijaDEV_COM.CentralniInformacijskiSustav
MsgBox myObject.PosaljiEcho("")

End Sub


?err.Number-2147467261 

?err.DescriptionObject reference not set to an instance of an object.
Ima li tko kakvu ideju

Coordinator
Oct 24, 2012 at 6:22 AM

Ovo meni pada na pamet - da li je u istom folderu gdje je Raverus.Fiskalizacija.COM.dll i assembly Raverus.Fiskalizacija.dll? Naime, ne vidim baš, ako se radi o PosaljiEcho metodi, gdje bi se mogao javiti "Object reference not set to an instance of an object.", osim na samom kraju, kada se treba vratiti XML rezultata. No, kako se kod pozivanja ove metode ne radi sa certifikatima, to mi baš i nema smisla...

E, da, još jedna stvar - da li uopće možeš ostvariti ispravnu SSL (HTTPS) vezu prema CIS-u? Pogledaj ovo: http://blog.fiskalizacija-dev.com.hr/post/2012/10/14/Kako-preuzeti-i-instalirati-democacert-Verifikacijskiroot-(samopotpisani)-certifikat-za-Demo-CA-.aspx

Oct 24, 2012 at 6:51 AM
nrasinec wrote:

Ovo meni pada na pamet - da li je u istom folderu gdje je Raverus.Fiskalizacija.COM.dll i assembly Raverus.Fiskalizacija.dll? Naime, ne vidim baš, ako se radi o PosaljiEcho metodi, gdje bi se mogao javiti "Object reference not set to an instance of an object.", osim na samom kraju, kada se treba vratiti XML rezultata. No, kako se kod pozivanja ove metode ne radi sa certifikatima, to mi baš i nema smisla...

E, da, još jedna stvar - da li uopće možeš ostvariti ispravnu SSL (HTTPS) vezu prema CIS-u? Pogledaj ovo: http://blog.fiskalizacija-dev.com.hr/post/2012/10/14/Kako-preuzeti-i-instalirati-democacert-Verifikacijskiroot-(samopotpisani)-certifikat-za-Demo-CA-.aspx

Sve se nalazi u folderu c:\com.

Coordinator
Oct 24, 2012 at 7:03 AM

A kaj je sa SSL-om, odnosno sa DEMOcacert? Kada CIS URL otvoriš u web browser-u, da li ti se javlja certificate error?

Oct 24, 2012 at 7:38 AM
nrasinec wrote:

A kaj je sa SSL-om, odnosno sa DEMOcacert? Kada CIS URL otvoriš u web browser-u, da li ti se javlja certificate error?

 

https://cistest.apis-it.hr:8449/FiskalizacijaServiceTest

Internet Explorer cannot display the webpage

Coordinator
Oct 24, 2012 at 7:42 AM

Probaj otvorit u Chrome-u ili Firefox-u

Oct 24, 2012 at 8:08 AM

Ne otvara niti u jednom !!!! Grrrrrr

Coordinator
Oct 24, 2012 at 8:09 AM

Trebaš ovo dobiti u browser-u, BEZ certificate error poruke:

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Body>
<env:Fault>
<faultcode>env:Client</faultcode>
<faultstring>Internal Error</faultstring>
</env:Fault>
</env:Body>
</env:Envelope>

Oct 24, 2012 at 10:38 AM
nrasinec wrote:

Trebaš ovo dobiti u browser-u, BEZ certificate error poruke:

 

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Body>
<env:Fault>
<faultcode>env:Client</faultcode>
<faultstring>Internal Error</faultstring>
</env:Fault>
</env:Body>
</env:Envelope>

 

Jock. Nista od toga......

E, skroz sam lud. 

Oct 24, 2012 at 10:38 AM

Trebalo bi nazvati temu "Imam problema sa implementacijom COM u VB" :)

Ja sam isto probao importirati u Delphi 2009, ali isto kao i @marekius nisam uspio importirati funkcije kao PosaljiSOAP i ostale (:

Morat ću još malo tražiti rješenje.

Coordinator
Oct 24, 2012 at 10:41 AM

@goranv13, nemam ideju :)  Probaj na drugom kompu...

Oct 24, 2012 at 11:17 AM
nrasinec wrote:

@goranv13, nemam ideju :)  Probaj na drugom kompu...

A probao sam i doma i ovdje danas na poslu.

CIni mi se da je nekaj drugo na stvari.

Kad si slozim u Visual Studio 2010 neku testnu classu, registriram je, ukljucim u VB6 projekt,

onda nakon:

Dim myObject As TestProj.Class1
Set myObject = TestProj.Class1

kad god u programu upisem myObject 

dobijem popis pripadajucih metoda, klasa, funkcija i svega kaj je definirano.

Cini mi se da regasm, nije dobro odradio svoj posao ili tako nesto.....

 

 

Oct 24, 2012 at 11:18 AM
spikija wrote:

Trebalo bi nazvati temu "Imam problema sa implementacijom COM u VB" :)

Ja sam isto probao importirati u Delphi 2009, ali isto kao i @marekius nisam uspio importirati funkcije kao PosaljiSOAP i ostale (:

Morat ću još malo tražiti rješenje.

A cuj,

kad je ovo pocelo sa nekim "Imam problem" i sa nekim odgovorima kako je uspjesno pokrenuto u VB6, ja se samo prikljucio ... :)

Coordinator
Oct 24, 2012 at 11:23 AM
goranv13 wrote:
nrasinec wrote:

@goranv13, nemam ideju :)  Probaj na drugom kompu...

A probao sam i doma i ovdje danas na poslu.

CIni mi se da je nekaj drugo na stvari.

Kad si slozim u Visual Studio 2010 neku testnu classu, registriram je, ukljucim u VB6 projekt,

onda nakon:

Dim myObject As TestProj.Class1
Set myObject = TestProj.Class1

kad god u programu upisem myObject 

dobijem popis pripadajucih metoda, klasa, funkcija i svega kaj je definirano.

Cini mi se da regasm, nije dobro odradio svoj posao ili tako nesto.....

 

 

Gorane,

problem NIJE u našoj COM komponenti - ako ne možeš dobiti XML kada u browser-u uneseš adresu testnog servisa CIS-a (https://cistest.apis-it.hr:8449/FiskalizacijaServiceTest), tada je problem negdje drugdje... na žalost, nemam baš ideju gdje... možda firewall ili tako nekaj kaj ti blokira pristup do njihovog servisa na portu 8449?

Oct 24, 2012 at 12:09 PM

Iskljucen Win FIrewall i opet nista.... E sada idem na pivicu ( ladnu ) i nakon toga ako do 16:00 se nekaj ne desi, leti komp kroz prozor ... :)

Oct 24, 2012 at 12:11 PM

Nađeno rješenje za Delphi koristite THTTPReqResp i šljaka.

Za dobre duše poslat ću .pas sa funkcijama  (za sada riješen echo).

.o)))

Oct 24, 2012 at 12:30 PM

Složio je kolega u firmi iz Delphi-ja sa libxmlsec i libxml2 dll-ovima i slanje sa HTTPReqResp, ali on ima win32.

Ja imam win64 i nemogu koristiti libxmlsec i libxml2 jer nema dll-ova za win64, pa pokušavam ovo sa COM DLL.

EXE verzija radi i to isto OK, ako sve drugo propadne, ali bi rađe da ne moram pozivati drugi EXE iz programa.

Coordinator
Oct 24, 2012 at 12:32 PM
spikija wrote:

Složio je kolega u firmi iz Delphi-ja sa libxmlsec i libxml2 dll-ovima i slanje sa HTTPReqResp, ali on ima win32.

Ja imam win64 i nemogu koristiti libxmlsec i libxml2 jer nema dll-ova za win64, pa pokušavam ovo sa COM DLL.

EXE verzija radi i to isto OK, ako sve drugo propadne, ali bi rađe da ne moram pozivati drugi EXE iz programa.

COM je svakako bolje rješenje nego EXE - no - nisam na kraju skužio da li ti radi COM ili ne ?

Oct 24, 2012 at 12:33 PM

Gorane ajde molim te probaj registrirati com dll na ovaj naćin

Uđi u cmd i upiši 

C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe "c:\com\Raverus.FiskalizacijaDEV.COM.dll" /codebase

Nakon toga resetiraj računalo

U vb6-ici dodaj u referencu "Raverus_FiskalizacijaDEV"

Probaj ovim primjerom dali radi

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Dim o

Set o = CreateObject("Raverus.FiskalizacijaDEV.COM.CentralniInformacijskiSustav")
MsgBox o.PosaljiEcho("Test")

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Oct 24, 2012 at 12:36 PM

Meni na ovaj naćin sve radi - jedini problem je kod resetiranja računala - prilikom izdavanja prvog računa Mora se potvrditi Crypto API - kasnije ne traži potvrdu

Coordinator
Oct 24, 2012 at 12:39 PM
Cibakis wrote:

Meni na ovaj naćin sve radi - jedini problem je kod resetiranja računala - prilikom izdavanja prvog računa Mora se potvrditi Crypto API - kasnije ne traži potvrdu

Na što točno misliš pod "jedini problem je kod resetiranja računala - prilikom izdavanja prvog računa Mora se potvrditi Crypto API"? Da li ti je FISKAL certifikat u datoteci ili u Certificate Store-u?

Oct 24, 2012 at 12:43 PM

Bitna stvar kod slanja xml-a ! Moraš upisati OIB koji ti je na demo certifikatu inaće će ti prikazati grešku.

Oct 24, 2012 at 12:44 PM

U Certificate Store-u

Coordinator
Oct 24, 2012 at 12:45 PM
Cibakis wrote:

Bitna stvar kod slanja xml-a ! Moraš upisati OIB koji ti je na demo certifikatu inaće će ti prikazati grešku.

Da, to je doista tako, ima još nekih "tricks of the trade" ovdje: http://blog.fiskalizacija-dev.com.hr/post/2012/10/13/Sluzbeno-testno-okruzenje-prvi-dojmovi.aspx

Coordinator
Oct 24, 2012 at 12:49 PM
Cibakis wrote:

U Certificate Store-u

Da li si možda, kada si importirao certifikat u CS, uključio opciju "Enable strong private key protection"? Ovo bi mogao biti razlog za ranije spomenutu dodatnu poruku...

Oct 24, 2012 at 12:53 PM
nrasinec wrote:
Cibakis wrote:

U Certificate Store-u

Da li si možda, kada si importirao certifikat u CS, uključio opciju "Enable strong private key protection"? Ovo bi mogao biti razlog za ranije spomenutu dodatnu poruku...


Mislim da jesam

Coordinator
Oct 24, 2012 at 1:06 PM
Cibakis wrote:
nrasinec wrote:
Cibakis wrote:

U Certificate Store-u

Da li si možda, kada si importirao certifikat u CS, uključio opciju "Enable strong private key protection"? Ovo bi mogao biti razlog za ranije spomenutu dodatnu poruku...


Mislim da jesam

99% je da je poruka uslijed toga - probaj exportirati certifikat, (ali kao PFX !!!, sa private key-em !!!), pobrisati ga i ponovo ga importirati (ili ga importiraj pod drugim imenom), ovaj puta bez te opcije uključene. Ona ionako neće imati smisla u produkciji...

Oct 24, 2012 at 1:19 PM
nrasinec wrote:
spikija wrote:

Složio je kolega u firmi iz Delphi-ja sa libxmlsec i libxml2 dll-ovima i slanje sa HTTPReqResp, ali on ima win32.

Ja imam win64 i nemogu koristiti libxmlsec i libxml2 jer nema dll-ova za win64, pa pokušavam ovo sa COM DLL.

EXE verzija radi i to isto OK, ako sve drugo propadne, ali bi rađe da ne moram pozivati drugi EXE iz programa.

COM je svakako bolje rješenje nego EXE - no - nisam na kraju skužio da li ti radi COM ili ne ?

Ne. Ne radi mi COM. Moram još malo kopati.

Oct 24, 2012 at 2:05 PM

A jel netko generirao kroz Delphi pravi ZastKod za XML ili radite samo s nekim izmišljenim iz primjera ?

Oct 24, 2012 at 5:14 PM

Probaj sa

var DotNetObject: OleVariant;
begin
  DotNetObject := CreateOleObject('Raverus.FiskalizacijaDEV.COM.CentralniInformacijskiSustav'); 

  SHowmessage(DotNetObject.PosaljiEcho('test poruka'));

end;

Certifikati moraju biti importani (root FINA, FISKAL 1, cistest.apis-it.hr.cer)

Coordinator
Oct 25, 2012 at 6:05 AM
tZac wrote:

A jel netko generirao kroz Delphi pravi ZastKod za XML ili radite samo s nekim izmišljenim iz primjera ?

Što se nas tiče, još se uvijek šalje dummy ZIK, PU je najavila da će se mijenjati algoritam pa čekamo finalnu verziju :)

Više: http://fiskalizacija.codeplex.com/workitem/619

Oct 25, 2012 at 10:41 AM

Ako koristite Delphi od verzije 2009 na dalje postoji problem s predajom string parametara u COM. Novi delphi je unicode pa drugačije definira stringove u odnosu na verzije prije 2009 pa se treba poigrati oko toga. Hvala CipeXP na pomoći.

Oct 26, 2012 at 5:28 PM
Edited Oct 27, 2012 at 11:56 AM

COM DLL radi iz Delphi XE2
Za sada isprobano na funkcijama Echo, TestCOM, PoslovniProstorZahtjev

1. Postupak instalacije Certifikata (originalne upute iz Fine koje se dobiju uz certifkat)
2. Postupak registracije Raverus.FiskalizacijaDEV.COM.dll (upute ovdje na webu u dokumentaciji i dodatno u blogu)
3. Kod u Delphiu ....
procedure TForm1.btRaverusDLLClick(Sender: TObject);
var cis: OleVariant; odgovor, zahtjev: String; xDoc: TXMLDocument;
begin
try
// prvo je naravno potrebno kreirati XML sa podacima, za ovaj primjer je korištena već gotovo datoteka na disku, bez Envelopa i potpisa

cis := CreateOleObject('Raverus.FiskalizacijaDEV.COM.CentralniInformacijskiSustav'); // dohvat classe iz dll-a koja sadrži public funkcije
 xDoc:= TXMLDocument.Create(self); // kreiranje instance XML dokumenta za prihvat
xDoc.LoadFromFile('PoslovniProstorZahtjev.xml'); // učitavanje xml datoteke sa diska
xDoc.SaveToXML(zahtjev); // spremanje xml podataka u varijablu

odgovor:= cis.PosaljiSoapPoruku(zahtjev,'FISKAL 1'); // slanje na CIS, certifikat preko Cert Stora
//odgovor:= cis.PosaljiSoapPorukuCertifikatDatoteka(zahtjev,'fiskal1Demo.pfx', 'lozinka'); // slanje na CIS, varijanta certifikata preko pfx datoteke
//odgovor:= cis.PosaljiEcho('test poruka'); // slanje echo poruke
//odgovor:= cis.TestCOM('test poruka'); // testiranje da li radi COM DLL

if odgovor = '' then begin
    //nije dobiven odgovor, poduzmi nešto
end else begin
   // ovdje obrađujemo povratni XML
   mResponse.Text:= FormatXMLData(odgovor); // za testiranje ga možemo učitati u memo polje da vidimo što je povratno stiglo
end
finally
   xDoc.Free;
end;
end;

Oct 26, 2012 at 6:01 PM

Evo još jednoga sa VB6 i problemom dobivanja funkcija. Kad otvorim CIS url dobijem u browseru sve potrebno. U referencama sam dodao DLL-ove. Isrpobam Dim o

Set o = CreateObject("Raverus.FiskalizacijaDEV.COM.CentralniInformacijskiSustav")
MsgBox o.PosaljiEcho("Test")

 

i to radi, ali nemam funkcije. Pri testiranju msgbox o.PosaljiEcho(""), mi javlja "Object reference not set to an instance of an object". XML dobro napisan, stavljen pravi oib. Cert je u PFX formatu, dodane putanje ispravno.

Oct 26, 2012 at 6:58 PM
deva55 wrote:

COM DLL radi iz Delphi XE2
Za sada isprobano na funkcijama Echo, TestCOM, PoslovniProstorZahtjev

Super.

Probao sam na Delphi 2009 i radi. Poslao sam Racun.xml (umjesto poslovnogPorstora) i u odgovoru je došao JIR.

PosaljiECHO mi isto radi

Dok <cis.TestCOM('test poruka');> mi javlja grešku:

"exception class EDOMParseError with message "Invalid at the top level of the document."

Coordinator
Oct 27, 2012 at 6:58 AM
spikija wrote:
deva55 wrote:

COM DLL radi iz Delphi XE2
Za sada isprobano na funkcijama Echo, TestCOM, PoslovniProstorZahtjev

Super.

Probao sam na Delphi 2009 i radi. Poslao sam Racun.xml (umjesto poslovnogPorstora) i u odgovoru je došao JIR.

PosaljiECHO mi isto radi

Dok <cis.TestCOM('test poruka');> mi javlja grešku:

"exception class EDOMParseError with message "Invalid at the top level of the document."

Inače, TestCOM metoda je ovo (namjena joj je jedino da se vidi da COM interface, kao takav, radi):

  public string TestCOM(string test)
        {
            return test;
        }
Kak sve ostalo radi, a ovo ne - ne znam :)

Oct 27, 2012 at 7:14 AM
Edited Oct 27, 2012 at 9:22 AM

A ja isprobavam COM verziju na delphiXE od deva55 ali mi na pozivu odgovor:= cis.PosaljiSoapPoruku(zahtjev,'FISKAL 1') ili //odgovor:= cis.PosaljiSoapPorukuCertifikatDatoteka(zahtjev,'fiskal_1.pfx','passw')

baca Access violation at xxxx.....  Kaj opet neki problem s tipovima varijabli ? Sve sam definirao isto kao i deva55

TestCOm i  pošalji echo prolazi

Također mi verzija bez Raverus.FiskalizacijaDEV.COM tj. verzija sa libxml2 koju je poslao cipexe radi bez problema

Coordinator
Oct 27, 2012 at 11:20 AM
Kruu wrote:

Evo još jednoga sa VB6 i problemom dobivanja funkcija. Kad otvorim CIS url dobijem u browseru sve potrebno. U referencama sam dodao DLL-ove. Isrpobam Dim o

Set o = CreateObject("Raverus.FiskalizacijaDEV.COM.CentralniInformacijskiSustav")
MsgBox o.PosaljiEcho("Test")

 

i to radi, ali nemam funkcije. Pri testiranju msgbox o.PosaljiEcho(""), mi javlja "Object reference not set to an instance of an object". XML dobro napisan, stavljen pravi oib. Cert je u PFX formatu, dodane putanje ispravno.

Ako echo radi, to znači da bi sve trebalo biti u redu sa registracijom COM-a, sa democacert certifikatom i sa slanjem preko SSL-a u CIS. Ovaj drugi dio koji spominješ baš nije jasan - da li ti PosaljiEcho("") javlja grešku ili ... ? Ako da, o kakvom se XML-u radi? Daj malo više informacija...

Oct 27, 2012 at 11:59 AM

Koristim metodu sa vaših stranica za testiranje, sa MsgBox o.PosaljiEcho("Test") i to prodje ok. Ali kad copy/pastam dio koda sa Vašim XML-om i mojim OIBom dobijam grešku: "Object reference not set to an instance of an object" koja se odnosi na msgbox o.PosaljiEcho("") dio iz koda.

 

Te kako da ja dobijem listu naredbi pa da vidim koje su funcije u DLL-u?

Coordinator
Oct 27, 2012 at 2:39 PM
Kruu wrote:

Koristim metodu sa vaših stranica za testiranje, sa MsgBox o.PosaljiEcho("Test") i to prodje ok. Ali kad copy/pastam dio koda sa Vašim XML-om i mojim OIBom dobijam grešku: "Object reference not set to an instance of an object" koja se odnosi na msgbox o.PosaljiEcho("") dio iz koda.

 

Te kako da ja dobijem listu naredbi pa da vidim koje su funcije u DLL-u?

Koliko vidim ovdje http://fiskalizacija.codeplex.com/workitem/633 ti, u stvari, nemaš problem sa PosaljiEcho, nego sa PosaljiSoapPoruku, tako da ću tamo dalje nastaviti sa odgovorom.

Inače, u ovom trenutku je samo MANJI dio funkcija koje postoje u FiskalizacijaDEV.dll .NET assembly-u eksportiran u COM sučelje, kako se source code za cijeli ovaj projekt svima dostupan, to možeš provjeriti i sam: http://fiskalizacija.codeplex.com/SourceControl/changeset/view/16147#381793

I, na kraju, svi vi koji koristite COM, dajte, prosim, ovdje navedite kaj vam još fali u radu :)  :http://fiskalizacija.codeplex.com/discussions/400407