// 두개의 상위가 같으면 디렉토리명 바꾸기이며, 틀리면 이동이 된다.
function OKRenMovDir(AOldPath, ANewPath: string): boolean;
begin
Result := False;
if MoveFile(PChar(AOldPath), PChar(ANewPath)) then
begin
// 원도우즈 탐색기에 알려서 디렉토리변경을 탐색기에 반영시킨다
SHChangeNotify(SHCNE_RENAMEFOLDER, SHCNF_PATH, PChar(AOldPath), pChar(ANewPath));
Result := True;
end;
end;
// 디렉토리 삭제 함수
function OKDelDir(APath: string): boolean;
begin
Result := False;
if DeleteFile(PChar(APath)) then
begin
// 원도우즈 탐색기에 알려서 디렉토리변경을 탐색기에 반영시킨다
SHChangeNotify(SHCNE_DELETE, SHCNF_PATH, PChar(APath), pChar(APath));
Result := True;
end;
end;
제가 한것은 아니구 저도 찾아보구해서 얻은 자료입니다
이소스를 잘활용해보세요
procedure TForm1.btnAllCopyClick(Sender: TObject);
var
iRet: Integer;
Fo: TSHFileOpStruct;
begin
Fo.Wnd := 0;
Fo.wFunc := FO_COPY; //여기는 복사, 이동, 삭제 명령
Fo.pFrom := PChar((edit1.Text) + #0); // 원본 폴더나 파일이구요.. PCHAR 형식
Fo.pTo := PChar((edit2.Text) + #0); // 여긴 대상... PCHAR 형식입니다...
// Fo.pFrom := 'A:TEMP' + #0; 이렇게 쓸수도 있음
// Fo.pTo := 'B:' + #0;
Fo.fFlags := 0;
iRet := SHFileOperation(Fo);
end;
도움말도 찾아보면서 해보세요
그럼즐코하세요....