

OpenfileDialog nesnesi ile bi dosyayı alıp başka biryere kopyalıyorum. Ancak kopyalarken dosyanın adını almam gerekiyor.
Örneğin :
C:\Documents and Settings\Desktop\a.bmp dosyasını
D:\Resimler\a.bmp dizinine kopyaladım. Aynı zamanda D:\Resimler\a.bmp adresini image nesnesinde kullanmam gerekiyo(adresi veritabanına kaydetmem için). Kullandığım kod :
(Forum yardımıyla)
Kod: Tümünü seç
procedure TForm1.Button2Click(Sender: TObject);
var
OpStruc: TSHFileOpStruct;
frombuf, tobuf: Array [0..128] of Char;
Begin
OpenDialog1.Execute;
fillChar( OpStruc, Sizeof(OpStruc), 0 );
FillChar( frombuf, Sizeof(frombuf), 0 );
FillChar( tobuf, Sizeof(tobuf), 0 );
StrPCopy( frombuf, OpenDialog1.FileName );
StrPCopy( tobuf, 'C:\Program Files\Resimler);
With OpStruc DO Begin
Wnd:= Handle;
wFunc:= FO_COPY;
pFrom:= @frombuf;
pTo:=@tobuf;
fFlags:= FOF_NOCONFIRMATION or FOF_RENAMEONCOLLISION;
end;
ShFileOperation( OpStruc );