Page 2 of 2 FirstFirst 1 2
Results 16 to 24 of 24

Thread: xml aanmaken in een thread

  1. #16
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    Verander je de standaard DOM implementatie naar OmniXML (meegeleverd bij XE7+) dan heb je die active en conitialize zaken dus niet nodig (vermoed ik ).
    Wat weet jij wat ik niet weet?
    Waarom zou Embarcadero dit doen?
    Ik heb zelf XE7 e, maar heb het nog niet gezien.
    Delphi is great. Lazarus is more powerfull

  2. #17
    Zoals in de link die ik poste,
    voeg in voorbeeld van TS maar volgende toe aan de projectsource:
    (zie de dikgedrukte regels, je zal zien dat de XML wordt aangemaakt, zonder coinitialize en aanverwanten te gebruiken).

    Misschien kan iemand dit ook uitproberen met een multiplatform test app?

    Code:
    program Project1;
    
    uses
      Vcl.Forms,
      Unit1 in 'Unit1.pas' {Form1},
       Xml.xmldom, XML.OmniXMLDom;
    
    {$R *.res}
    
    begin
       DefaultDOMVendor := sOmniXmlVendor;
      Application.Initialize;
      Application.MainFormOnTaskbar := True;
      Application.CreateForm(TForm1, Form1);
      Application.Run;
    end.
    
    
    begin
    Last edited by mvanrijnen; 05-May-15 at 23:07.

  3. #18
    John, je kon ook in eerdere versies van delphi al een andere vendor gebruiken dan de standaard MSXML hoor

    Maar als je je serverkant nog steeds met kbmMW gaat bouwen dan zou ik zeker kijken naar de daar ingebouwde XML en JSON stream oplossingen. Vanuit een en hetzelfde object kun je naar beide streamen. Mapping doen ze via RTTI.

  4. #19
    Klopt inderdaad, maar werden er ook andere meegeleverd ?
    (voor Delphi XE7 werkte ik alleen met Delphi 7 )

  5. #20
    volgens mij werden ze niet meegeleverd. Een andere dom provider kiezen kon volgens mij al in delphi 7, zijn hier volgens mij ook al eens threads over geweest een jaar of 10 geleden.

  6. #21
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    @mvanrijnen

    Sorry dat ik niet verder heb gekeken en heb doorgeklikt naar jouw verwijzingen

    Ik heb het even getest op VCL en heb gekeken welke DOM er wordt gebruikt als ik omniXML aanzet.
    Delphi Code:
    1. V :=  GetDOMVendor('');
    2.  showmessage(V.Description);
    Deze geeft inderdaad iets anders dan MSXML mee. Verder maak ik gebruik van dezelfde TXMLDocument. Dat blijft dus gelijk. Alleen de motor wordt anders ingesteld.

    Nu kan ik een gemakzuchtig persoon zijn en maak best wel (veel) gebruik van de 'XML DataBinding'. Die maakt gebruik van TXMLDocument, welke dan weer gebruik maakt van de DOM service van omniXML. Daar hoef ik dus geen rekening mee te houden, zolang je maar XML.OmniXMLDom meegeeft.

    Maar (ja die is er altijd) waarom zorgt Embarcadero er dan niet voor dat omniXML standaard DOM server is. Als men dan toch besluit MSXML te gebruiken, deze zelf om te zetten in de source. In het kader van multiplatform zal dat het meest logische zijn.
    Delphi is great. Lazarus is more powerfull

  7. #22
    Maar (ja die is er altijd) waarom zorgt Embarcadero er dan niet voor dat omniXML standaard DOM server is. Als men dan toch besluit MSXML te gebruiken, deze zelf om te zetten in de source. In het kader van multiplatform zal dat het meest logische zijn.
    Yep. Maar Delphi heeft ook altijd bekend gestaan voor de backwards compatibility en die zouden ze zo breken.

    In de Tdataset zijn bv ook wijzigingen die oude code breken. Dat geeft toch een hoop vreemde problemen als ze dat niet gewoon aangeven.

  8. #23
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    Geweldig, die database history. Trapte ik bijna in de zelfde fout en wilde een nieuwe topic aanmaken.
    @vanrijnen, alsnog bedankt voor de oplossing. coinitialize is inderdaad niet nodig.

    Het enige wat ik dan weer niet snap, is dat ze bij Embarcadero dan omniXML niet standaard maken voor VCL en FMX.
    Delphi is great. Lazarus is more powerfull

  9. #24
    Ik gebruik zelf verysimplexml en dat is erg snel, en ook heel erg simpel!! En werkt ook heel goed in threads.

Page 2 of 2 FirstFirst 1 2

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •