Raficcha 1 Denunciar post Postado Dezembro 7, 2008 Cara, ja estou começando a achar que o componente TXMLDocument não existe. Bom, estou tentando usar este elemento no Delphi 7. Mas tudo que ele me diz que é o mesmo não foi declarado. Já virei o google atras de qual é o 'uses' que eu uso pra funciona, mas acho que essa é uma informação secreta demais pro pessoal dizer (do tipo, que usa, adivinha como). então eu vim aqui pra v se alguem pode me ajudar a usar esse componente, pq eu simplesmente não to conseguindo.. Desculpem-me pela raiva, mas é que realmente não encontrei nada sobre como usar esse componente. o unico progresso que tive foi esse procedure TForm1.Button1Click(Sender: TObject); var DocXml : TXMLDocument; begin end; =========================== gostaria que me ajudassem, e ja fica como registro pra quando alguem tiver este problema tambem Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Dezembro 7, 2008 Amigo, acho que você precisa ter mais calma e humildade... e melhorar suas técnicas de busca... veja o código abaixo que achei neste link: Este código mostra como usar TXMLDocument para salvar e restaurar configurações em um documento XML. O método publico trabalha como um TIniFile. O código não precisa ser comentado porque é auto explicativo e pequeno. Foi testado apenas no Delphi 7. unit uCiaXml; interface uses Forms, SysUtils, Windows, XmlIntf, XMLDoc; type TXMLConfig = class private FModified: Boolean; FFileName: string; FXMLDoc: TXMLDocument; FBackup: Boolean; function GetVersion: string; public constructor Create(const FileName: string); overload; constructor Create; overload; destructor Destroy; override; procedure Save; function ReadString(const Section, Key, default: string): string; procedure WriteString(const Section, Key, Value: string); function ReadInteger(const Section, Key: string; default: Integer): Integer; procedure WriteInteger(const Section, Key: string; Value: Integer); function ReadBoolean(const Section, Key: string; default: Boolean): Boolean; procedure WriteBoolean(const Section, Key: string; Value: Boolean); property Backup: Boolean read FBackup write FBackup; property Version: string read GetVersion; end; implementation { TXMLConfig } constructor TXMLConfig.Create(const FileName: string); begin inherited Create; FBackup := True; FFileName := FileName; FXMLDoc := TXMLDocument.Create(Application); FXMLDoc.Options := [doNodeAutoIndent]; if FileExists(FFileName) then FXMLDoc.LoadFromFile(FFileName) else begin FXMLDoc.Active := True; FXMLDoc.AddChild('Configuration'); end; end; constructor TXMLConfig.Create; begin Create(ChangeFileExt(Application.Exename, '_cfg.xml')); end; destructor TXMLConfig.Destroy; begin Save; FXMLDoc.Destroy; inherited; end; function TXMLConfig.GetVersion: string; begin Result := '1.00'; end; function TXMLConfig.ReadBoolean(const Section, Key: string; default: Boolean): Boolean; begin Result := Boolean(ReadInteger(Section, Key, Integer(default))); end; function TXMLConfig.ReadInteger(const Section, Key: string; default: Integer): Integer; begin Result := StrToInt(ReadString(Section, Key, IntToStr(default))); end; function TXMLConfig.ReadString(const Section, Key, default: string): string; var Node: IXMLNode; begin Node := FXMLDoc.DocumentElement.ChildNodes.FindNode(Section); if Assigned(Node) and Node.HasAttribute(Key) then Result := Node.Attributes[Key] else Result := default; end; procedure TXMLConfig.Save; begin if not FModified then Exit; if FBackup then CopyFile(PChar(FFileName), PChar(FFileName + '.bak'), False); FXMLDoc.SaveToFile(FFileName); FModified := False; end; procedure TXMLConfig.WriteBoolean(const Section, Key: string; Value: Boolean); begin WriteInteger(Section, Key, Integer(Value)); end; procedure TXMLConfig.WriteInteger(const Section, Key: string; Value: Integer); begin WriteString(Section, Key, IntToStr(Value)); end; procedure TXMLConfig.WriteString(const Section, Key, Value: string); var Node: IXMLNode; begin if ReadString(Section, Key, '') = Value then Exit; Node := FXMLDoc.DocumentElement.ChildNodes.FindNode(Section); if not Assigned(Node) then Node := FXMLDoc.DocumentElement.AddChild(Section); Node.Attributes[Key] := Value; FModified := True; end; end. Se olhar neste código, vai ver que tem as classes listadas no próprio exemplo. Olhando o exemplo, eu suponho que a classe XMLDoc deva conter o componente que procura. Contudo, estou sem delphi aqui para confirmar isto agora. Agora, lendo outro post da web, soube que o componente em questão está na palheta internet do delphi 7. Outro link interessante que vi na pesquisa rápida que fiz no google sobre o assunto, usando como parâmetro apenas TXMLDocument: http://www.caiooliveira.com.br/?p=73. []'s Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Dezembro 10, 2008 Ele fica dentro da unit XMLDoc Compartilhar este post Link para o post Compartilhar em outros sites