안녕하세요. 참으로 노력은 해봤지만 좋은 방법이있을까해서
찾아왔습니다.
(1) 제목 그대로 현제 디렉토리에 있는 *.db 화일들을
a: 로 복사하는 백업의 기능을 구현하고 싶습니다.
api function 중에 copyfile 이란걸 써봤지만 별효과가 없더군요.
추가로
(2) table field type 이 varchar2(300)으로 잡혀있는것을 델파이 field
component로 올리니 memo type으로 잡히더군요.
그런데 이것을 dbgrid에서 data 를 직접 보이게 하려는데
생각보다 쉽지 않네요
많은 가르침 부탁드립니다.
> 안녕하세요. 참으로 노력은 해봤지만 좋은 방법이있을까해서
> 찾아왔습니다.
> (1) 제목 그대로 현제 디렉토리에 있는 *.db 화일들을
> a: 로 복사하는 백업의 기능을 구현하고 싶습니다.
> api function 중에 copyfile 이란걸 써봤지만 별효과가 없더군요.
> 추가로
> (2) table field type 이 varchar2(300)으로 잡혀있는것을 델파이 field
> component로 올리니 memo type으로 잡히더군요.
> 그런데 이것을 dbgrid에서 data 를 직접 보이게 하려는데
> 생각보다 쉽지 않네요
> 많은 가르침 부탁드립니다.
>
>
첫번째 질문에 적당한 함수입니다. 조금 지저분 하지만(^^;)
조금만 수정하면 쓸 수 있을 겁니다.
//-------------------- 지정된 경로내의 모든 화일(폴더) 복사
procedure ExtFileCopyInDir(SrcPath, DestPath : string);
var R : Integer;
DirInfo : TSearchRec;
begin
Screen.Cursor := crHourGlass;
R := FindFirst(SrcPath + '*.*', FaAnyfile, DirInfo);
while (R = 0) do begin
if (DirInfo.Attr = faDirectory) and ((DirInfo.Name <> '.') and
(DirInfo.Name <> '..')) then begin
CreateDir(DestPath + '' + DirInfo.Name);
ExtFileCopyInDir(SrcPath + '' + DirInfo.Name,
DestPath + '' + DirInfo.Name);
R := FindNext(DirInfo);
end
else if ((DirInfo.Name <> '.') and (DirInfo.Name <> '..')) then begin
CopyFile(PChar(SrcPath + '' + DirInfo.Name),
PChar(DestPath + '' + DirInfo.Name), False);
FileSetAttr(DestPath + '' + DirInfo.Name,0);
R := FindNext(DirInfo);
end
else R := FindNext(DirInfo);
end;
SysUtils.FindClose(DirInfo);
Screen.Cursor := crDefault;
end;
두번째 질문은 전 잘알지 못하지만, Q&A어딘가에 있었던 걸로 기억됩니다.
한번 찾아보세요..
그럼 수고하세요.. ^^;