Ir para conteúdo
Fórum Script Brasil
  • 0

[Delphi] Sobescrevendo um arquivo somente leitura


ReDNoS

Pergunta

Olá pessoal da ScriptBrasil, eu não sei nada de Delphi e precisava de um código-fonte que sobescrevesse um arquivo de texto. Pois bem, achei um código fonte só que o problema que ele não sobescreve arquivos que estejam como somente leitura.

Outra dúvida que tenho é de como acessar a pasta %SystemRoot% pelo delphi?

VLW!

Editado por ReDNoS
Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0
Olá pessoal da ScriptBrasil, eu não sei nada de Delphi e precisava de um código-fonte que sobescrevesse um arquivo de texto. Pois bem, achei um código fonte só que o problema que ele não sobescreve arquivos que estejam como somente leitura.
Poste o código .... é necessario mudar o atributo do arquivo

Outra dúvida que tenho é de como acessar a pasta %SystemRoot% pelo delphi?

Acessar Pasta ou Registro do windows?

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
Olá pessoal da ScriptBrasil, eu não sei nada de Delphi e precisava de um código-fonte que sobescrevesse um arquivo de texto. Pois bem, achei um código fonte só que o problema que ele não sobescreve arquivos que estejam como somente leitura.
Poste o código .... é necessario mudar o atributo do arquivo

Outra dúvida que tenho é de como acessar a pasta %SystemRoot% pelo delphi?
Acessar Pasta ou Registro do windows?

abraço

var
original,fake : string;
teste.txt   : TextFile;

begin
fake:='fake';
original:='original';


assignfile(teste, 'C:\windows\system32\teste.txt');
rewrite(teste.txt);
writeln(teste.txt,fake + ' ' + original + '##  Testando ##');
closefile(teste.txt);


end.

No caso do %systemroot% seria para acessar a pasta.

Link para o comentário
Compartilhar em outros sites

  • 0
achei um código fonte só que o problema que ele não sobescreve arquivos que estejam como somente leitura.

Faça esta alteração no código

procedure TForm1.Button1Click(Sender: TObject);
var Attrib: integer;
    original,fake : string;
    teste.txt   : TextFile;
begin
  Attrib:=FileGetAttr('C:\windows\system32\teste.txt');
  if Attrib<>-1 then
  begin
    Attrib:=Attrib and not faReadOnly;
    if FileSetAttr('C:\windows\system32\teste.txt', Attrib) <> 0 then
       SetFileAttributes(PChar('C:\windows\system32\teste.txt'), FILE_ATTRIBUTE_NORMAL);
  end;

  fake:='fake';
  original:='original';

  assignfile(teste, 'C:\windows\system32\teste.txt');
  rewrite(teste.txt);
  writeln(teste.txt,fake + ' ' + original + '##  Testando ##');
  closefile(teste.txt);

end;

OBS: Lembrando que a pasta %SystemRoot% é a propria pasta do Windows

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...