ورود

View Full Version : copyfile



hadiaj168
یک شنبه 10 خرداد 1388, 13:55 عصر
دوباره سلام
چرا دلفی اینقدر گیره!:عصبانی++:

if openDialog1.Execute then
begin
s:=OpenDialog1.FileName;
copyfile(s,'E:\delphi\project\pol\g\10',true);
end;


[Error] Unit1.pas(294): Incompatible types: 'String' and 'PAnsiChar'

adinochestva
یک شنبه 10 خرداد 1388, 14:17 عصر
if openDialog1.Execute then
begin
s:=OpenDialog1.FileName;
copyfile(PChar(s),PChar('E:\delphi\project\pol\g\1 0'),true);
end;

Felony
یک شنبه 10 خرداد 1388, 14:41 عصر
چرا دلفی اینقدر گیره !
دوست عزیز کد شما مشکل داره ، وقتی برای اولین بار میخواهید با یه تابع کار کیند بهتره تو راهنمای دلفی آرگومانها و ... تابع رو مطالعه کنید .
شما برای کپی شدن یک فایل نام و آدرس فایل مبداء رو درست به تابع میدید ولی در مورد مقصد فقط دارید آدرس رو میدید ، پس نام فایل چی ؟


var
S,Name:String;
begin
if OpenDialog1.Execute then begin
S:=OpenDialog1.FileName;
Name:=ExtractFileName(s);
CopyFile(PChar(s),PChar('E:\delphi\project\pol\g\1 0\'+Name),true);
end;

vcldeveloper
دوشنبه 11 خرداد 1388, 01:01 صبح
copyfile(PChar(s),PChar('E:\delphi\project\pol\g\1 0'),true);
برای رشته های Literal (مثل عبارت E:\delphi\project\pol\g\10 در کد بالا) نیازی به Typecast نیست. کامپایلر خودش این کار را انجام میده. Typecase را فقط روی متغیرها انجام بدید.