Q&A

  • 급>하위폴더및 화일 복사에 대해
저는 금일날짜의 폴더를 만들고 source폴더내의 화일및 sub_폴더의

내용을 target_folder에 복사를 하려고 합니다.

^^밑의 소스중 des := 'c:'+get_date; => 내PC to 내 PC의 경우

원하는 대로 결과가 나옵니다.

??그러나 f:드라브롤 win_nt의 화일서버의 folder를 넷웍드라이브(f:)로 잡아놓고 des := 'f:'+get_date; => 내pc to 화일섭의 경우

위와 결과가 다릅니다. 폴더 및 sub 폴더내의 화일일부가 누락되어

copy됩니다.

참이상합니다.

꼭 도와주세요









procedure TForm1.FormCreate(Sender: TObject);

var

src,des,get_date : string;

begin

get_date := datetostr(now);

src := 'c:bosang';

des := 'f:'+get_date;

ForceDirectories(des);

DirectoryCopy(src,des);





end;



Procedure TForm1.DirectoryCopy(Sourcedir :string; Destdir: string);

var Pstr : array[0..256] of char; //널 종료 문자열로 바꾸기 위한 저정하기 위한 변수

Pstr2 : array[0..256] of char;

str : string[255]; //경로를 조립하기 위한 임시 문자열

str2 : string[255];

SearchRec : TsearchRec; //소스디렉토리를 검색하고자 할때 쓰이는 레코드(파스칼 구조체입니다.);

Result : integer; //찾았는지 못 찾았는지 여부

BEGIN

str := Sourcedir + '*.*';

findfirst(str, faanyfile, SearchRec); //소스폴더를 검색한다.

Result := 0; //검색결과 여부의 초기화

While Result = 0 do //다음 화일을 찾아 루프를 반복

begin

if (SearchRec.name = '.') or (SearchRec.name = '..') then

begin //폴더가 자기자신이거나 상위폴더일 경우

Result := findnext(SearchRec); //검색 결과 화일을 찾으면 1이다.)

continue;

end;



if SearchRec.attr = fadirectory then //발견한 대상이 디렉토리이면

begin

str := Sourcedir + '' + SearchRec.name; //소스디렉토리 와 발견한 디렉토리를 더한다.

str2 := Destdir + '' + SearchRec.name; //타켓디렉토리 와 발견한 디렉토리를 더해준다.

// Mkdir(str2); //타켓디렉토리를 생성한다.

ForceDirectories(str2);

DirectoryCopy(str, str2); //디렉토리 이므로 여기서 자기자신을 재귀호출한다.

Result := findnext(SearchRec); //결과를 돌려준다.

continue;

end;



//아래는 찾은것이 화일일 경우 복사를 하는 부분이다.

//완전 경로명으로 조립해 주어야 한다.

str := Sourcedir + '' + SearchRec.name;

str2 := Destdir + '' + SearchRec.name;

StrPcopy(pstr, str);

StrPcopy(pstr2, str2);

CopyFile(pstr, pstr2, false);



//이것은 API함수이다. Parameter는

//CopyFile(소스화일명, 데스트화일명, 플래그) 마지막 인자인 플래그는 false 일경우 화일이 존재할때 덮어쓴다.)

Result := findnext(SearchRec); //검색여부

end; //While 문의 끝

END; //함수의 끝



0  COMMENTS
    • 델초보
    • 2001.10.26 19:23
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김정선
      2001.10.26 22:24
      한가지 방법은 검색할 때 조건을 걸어 원하시는 데이터가 나온걸 레포트에 나타낼 수 있고.. 다...
    • 성더기
      2001.10.27 01:09
      프로시져(procedure)나 펑션(function)은 그넘이 그넘입니다 다만 차이가 있다면 리턴값이 있느냐 없느...
    • 델파이 탐 크르즈
      2001.10.27 00:50
      초보임당 wrote: > 좀 허접한 질문입니다. > MDI메인 폼에서 버튼클릭시 CHILD폼을 생성시키는 프로시져...
    • 초보임당
      2001.10.30 18:39
      델파이 탐 크르즈 wrote: > 초보임당 wrote: > > 좀 허접한 질문입니다. > > MDI메인 폼에서 버튼클릭시...
    • 한상훈
    • 2001.10.26 07:32
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 김지태
      2001.10.26 08:34
      한상훈 wrote: > 암것두 모르는 초보여요.. > > 내컴에서 실행하는 exe파일에서 어떤 웹주소상의 파일...
    • 한상훈
      2001.10.26 09:59
      답변감사하구여.. 웹파일을 로컬에 저장은 그렇게 가능할텐데 로컬 파일을 웹으로 저장은 어떻게 하나...
    • 김지태
      2001.10.26 17:52
      한상훈 wrote: > 답변감사하구여.. > > 웹파일을 로컬에 저장은 그렇게 가능할텐데 > 로컬 파일을 웹...
    • 초짜
    • 2001.10.26 07:06
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김지태
      2001.10.26 07:18
      초짜 wrote: > 음냐.codesign인가 뭔가를 내려 받아서 압축풀구 SingCode.exe를 실행시켰습당. > 그랬더...
    • 초짜
      2001.10.26 07:36
      김지태 wrote: > 초짜 wrote: > > 음냐.codesign인가 뭔가를 내려 받아서 압축풀구 SingCode.exe를 실행...
    • 김지태
      2001.10.26 06:47
      정규성 wrote: > -------------------[ 에러 메세지 내용 ]----------------------- > Project JD.exe ra...
    • 깨구락지
      2001.10.26 17:29
      쿼리 문장이 겹쳐 있습니다. execsql 전에 sql.text를 확인해 보시면 'select * from vcust insert into v...
    • 인터기초
      2001.10.26 20:21
      조언 감사하게 생각합니다. 이번엔 'IbQuery1:Parameter 'vno' not found' 에러메시지가 뜹니다. 어느...
    • 김지태
      2001.10.26 06:57
      최혜정 wrote: > 저는 오라클을 사용해 프로그램을 개발하였습니다. 물론 Client/Server 프로그램이라 sql...
    • 최유순
    • 2001.10.26 03:55
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이경문
      2001.10.27 08:15
      글쎄요.... thread programming하면서 가장 힘든 부분중의 하나인데 thread내부에 exit condition 변수를 ...
    • 류종택
      2001.10.26 05:00
      확신이 서지 않지만.. 프로그램 내부에서는 검출할 수 없는 것으로 압니다.. 다른 시그날들은 모두 검...
    • 2001.10.26 03:24
    • 3 COMMENTS
    • /
    • 0 LIKES
    • manlife
      2001.10.27 03:53
      정 wrote: > 이 이벤트에서 폼을 죽일 수는 없나요..? > Close시키려구 하는데.. > Active가 되야만 Clo...
    • aparadin
      2001.10.26 20:00
      정 wrote: > 이 이벤트에서 폼을 죽일 수는 없나요..? > Close시키려구 하는데.. > Active가 되야만 Clo...
    • 허재팔
      2001.10.26 04:05
      정 wrote: > 이 이벤트에서 폼을 죽일 수는 없나요..? > Close시키려구 하는데.. > Active가 되야만 Clo...
    • joolu
    • 2001.10.26 02:23
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 초보의비애
      2001.10.26 02:57
      joolu wrote: > 이미지 리스트 안에 있는 이미지들을 외부의 특정폴더의 화일로 저장을 할 수 있나요? > ...
    • joolu
      2001.10.26 03:55
      초보의비애 wrote: > joolu wrote: > > 이미지 리스트 안에 있는 이미지들을 외부의 특정폴더의 화일로 ...
    • 최용일
      2001.10.26 22:26
      안녕하세요. 최용일입니다. 아래와 같이 해보세요... procedure TForm1.Button1Click(Sender: TObjec...
    • roboj
    • 2001.10.26 01:16
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 지나는이
      2001.10.26 04:27
      roboj wrote: > zeos 컨트롤 쓰고 있습니다. Mysql 을 리눅스에 올려서 Win98 에서 델파이로 > 개발중이...
    • 건달임돠
      2001.10.26 01:14
      TrayBar에 넣고 싶은거 같군요 tray 하고 검색을 하시면 됩니다. 그럼 아주 많은 내용을 얻을 수 있...