Avatar billede gartner76 Nybegynder
21. november 1999 - 18:35 Der er 6 kommentarer og
1 løsning

move file i delphi

Hej
Jeg har et lille problem med at flytte nogle filer vha delphi.
problemet er at jeg ikke helt ved hvad det jeg leder efter hedder ! ja det lyder mærkeligt med sådan er det altså.

Jeg vil gerne have at når jeg åber et billede i mit program vha. fjpeg komponenten. jeg vil så have at jeg skal trykke på en knap og så skal billedet lukkes og flyttes fra eks: c:\grafix\billed1.jpg og hen til c:\grafix\temp\billed1.jpg.

jeg har prøvet med movefile men det virker ikke.

jeg vil gerne have noget kode der viser hvordan man flytter en fil.

Hilsen gartner76
Avatar billede justincase Nybegynder
21. november 1999 - 19:24 #1
if MoveFile('c:\grafix\billed1.jpg','c:\grafix\temp\billed1.jpg') = 0 then
  ShowMessage('Kunne ikke flytte filen !');

Det burde da virke.

Ellers Prøv at kigge på MoveFileEx. Med den har du lidt mere kontrol over om der skal overskrives en eventuel eksisterende fil. Eller om flytningen skal fortages med CopyFile/DeleteFile.

Hmm, hvorfor virker movefile ikke ? Hvad sker der ?

:)

JustinCase
Avatar billede speedy Nybegynder
21. november 1999 - 19:25 #2
Hej

Du skal bruge den der hedder MoveFile.

eks.

procedure TForm1.Button1Click(Sender: TObject);
begin
  MoveFile(PChar('c:\grafix\billed1.jpg'),PChar('c:\grafix\temp\billed1.jpg'))
end;


Håber du kan bruge det.
Avatar billede dj Nybegynder
21. november 1999 - 20:34 #3
gartner76 >> jeg synes du skal afvise svaret og give justincase poitene istedet for!

Dog har han ikke formuleret det som et svar men han var trods alt først og har også givet den bedste beskrivelse, Jeg synes ikke at speedy skal have pointene, når nu justincase var først!

Bare lige en lille moralsk bemærkning, så de rigtige folk også får deres point :)
Avatar billede sjensen Nybegynder
25. november 1999 - 14:35 #4
Hej,

Du skal IKKE bruge movefile mere. MS anbefaler MoveFileEx som erstatning. Årsagen er noget med på tværs af filsystemer (læs fat/ntfs) o.s.v. Nedenstående har jeg listet en lille rutine med min måde at styre det på. Som JustinCase siger så prøv at kigge på movefileex (win32.hlp i delphi/help) og læs specielt det vedr. de flag der sendes med.


function Move_file(Old_File, New_File : string) : Boolean;
begin
  Result := movefileex(PChar(Old_File),PChar(New_File),MOVEFILE_COPY_ALLOWED or MOVEFILE_REPLACE_EXISTING);
end;

Hilsen
sjensen
Avatar billede sjensen Nybegynder
25. november 1999 - 14:38 #5
Hmm. Undskyld. Mit svar skulle have været en kommentar. Jeg er enig i at justincase var først med det rigtige. Så hvis du ellers kan bruge de info der er kommet så afvis svarene og få justincase til at svare så du kan give ham pointene.

sjensen
Avatar billede gartner76 Nybegynder
29. november 1999 - 00:00 #6
>>>>>JUSTINCASE

Hvis du giver mig et svar så får du nogle point

venlig hilsen gartner76

og tak til jer alle.
ps: movefileEx virker kun på en NT maskine, tror jeg nok
Avatar billede justincase Nybegynder
29. november 1999 - 12:20 #7
MovefileEx burde da også virke på win9x maskiner. Men ellers kan du jo selv bruge CopyFile/DeleteFile.

:)

JustinCase
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester