ExeName (C++)
From RAD Studio XE2 Code Examples
Language:
Description
This example copies a specified old file to a new file. Add a TSaveDialog to the form. Also, add two TEdits, two TLabels, and a TButton with the OnClick event named Save1Click. Change the Old Path and New Path to move files outside the Debug directory; Old File and New File will not take a relative path.
Code
#include <memory> //For STL auto_ptr class void __fastcall TForm1::Save1Click(TObject *Sender) { String temp1 = Edit4->Text; String temp2 = ExtractFileName(Edit1->Text); String NewFileName = temp1 + temp2; String OldFileName = Edit3->Text + ExtractFileName(Edit2->Text); String Msg = Format("Copy %s to %s", ARRAYOFCONST((OldFileName, NewFileName))); if (MessageDlg(Msg, mtCustom, TMsgDlgButtons() << mbOK << mbCancel, 0) == mrOk) { std::auto_ptr<TFileStream> OldFile(new TFileStream(OldFileName, fmOpenRead | fmShareDenyWrite)); std::auto_ptr<TFileStream> NewFile(new TFileStream(NewFileName, fmCreate | fmShareDenyRead)); NewFile->CopyFrom(OldFile.get(), OldFile->Size); } } __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { Edit3->Text = ExtractFilePath(Application->ExeName); Edit4->Text = Edit3->Text; }
Uses
- Vcl.Forms.TApplication.ExeName ( fr | de | ja )
- System.Classes.TStream.CopyFrom ( fr | de | ja )
- System.SysUtils.ExtractFilePath ( fr | de | ja )
- System.AnsiStrings.ExtractFilePath ( fr | de | ja )
- System.SysUtils.Format ( fr | de | ja )
- System.AnsiStrings.Format ( fr | de | ja )
- Vcl.Forms.Application ( fr | de | ja )