Ciao a tutti.
Ho un problema nella lettura di un file XML.
Vi mostro lo spezzone di file che mi da problema:
<printer aeTitle="FUJIPRINTER" hostname="192.168.2.15" port="4000" scu="PRINTER" RecvFileDir="c:/dicomPACS/temp/dicomCC/1/info">PRINTER_1</printer>
<filmSession mediumType="CLEAR FILM" ownerID="dicomPACS" label="PrintSCU" directory="c:/dicomPACS/temp/dicomPRINT"/>
<filmBox format="STANDARD" orientation="LANDSCAPE" sizeID="17INX14IN" annotationFormat="FORMAT1"/>
</PrintService>
<PrintService name="Win32 Printer : FRITZfax Drucker">
<Settings>
<SupportedRaster rows="1" columns="1" />
<SupportedRaster rows="2" columns="1" />
<SupportedRaster rows="1" columns="2" />
<SupportedRaster rows="2" columns="2" />
<SupportedRaster rows="3" columns="2" />
<SupportedRaster rows="3" columns="3" />
<SupportedRaster rows="4" columns="2" />
<SupportedRaster rows="4" columns="3" />
<SupportedRaster rows="4" columns="4" />
<SupportedRaster rows="5" columns="4" />
<SupportedRaster rows="5" columns="5" />
<SupportedRaster rows="6" columns="4" />
<SupportedRaster rows="6" columns="5" />
<Option selected="true">PRINT_ANNOTATION</Option>
<Option selected="true">PRINT_AUTOADJUST</Option>
<Option selected="false">PRINT_ZOOM</Option>
</Settings>
</PrintService>
Praticamente il mio problema è questo.....per leggere tutti i SUpportedRaster utilizzo il metodo NextSibling all'interno di un while....in questo modo (spezzone codice per lettura tag SupportedRaster:
EntryNode:=ANode.ChildNodes.FindNode('Settings');
EntryNode2:=EntryNode.ChildNodes.findNode('Support edRaster');
while EntryNode2 <> nil do
begin
stampante.setSupportedRaster(EntryNode2.GetAttribu teNS('rows','') + ' x ' + EntryNode2.GetAttributeNS('columns','') );
EntryNode2:=EntryNode2.NextSibling;
end;
Però quando arrivo all'ultimo nodo NextSibling genera eccezione che non so gestire e quindi manda tutto in errore.
Sapete aiutarmi o indicarmi altro modo per reiterare la lettura di nodi figli dello stesso tipo?
Grazie

Rispondi quotando