fof_NoConfirmation = $0010; // Don't prompt the user.
fof_WantMappingHandle = $0020; // Fill in SHFILEOPSTRUCT.hNameMappings Must be freed using SHFreeNameMappings
fof_AllowUndo = $0040;
fof_FilesOnly = $0080; // on *.*, do only files
fof_SimpleProgress = $0100; // means don't show names of files
fof_NoConfirmMkdir = $0200; // don't confirm making any needed dirs
type
fileop_Flags = Word;
const
po_Delete = $0013; // printer is being deleted
po_Rename = $0014; // printer is being renamed
po_PortChange = $0020; // port this printer connected to is being changed if this id is set, the strings received by the copyhook are a doubly-null terminated list of strings. The first is the printer name and the second is the printer port.
po_Ren_Port = $0034; // po_Rename and po_PortChange at same time.
// no pof_ flags currently defined
type
printerOp_Flags = Word;
// implicit parameters are:
// if pFrom or pTo are unqualified names the current directories are
// taken from the global current drive/directory settings managed
// by Get/SetCurrentDrive/Directory
//
// the global confirmation settings
PSHFileOpStruct = ^TSHFileOpStruct;
TSHFileOpStruct = record
Wnd: HWnd;
wFunc: UInt;
pFrom: PChar;
pTo: PChar;
fFlags: fileop_Flags;
fAnyOperationsAborted: Bool;
hNameMappings: Pointer;
lpszProgressTitle: PChar; // only used if fof_SimpleProgress
end;
function SHFileOperation(const lpFileOp: TSHFileOpStruct): Integer;