2013년 6월 11일 화요일

선택한 폴더 경로가 하위 폴더에 포함되는지 여부


선택한 폴더가 하위 폴더에 포함 되는지 여부....


function DirectoryPos(sOldPath, sNewPath: string): boolean;
var
  oStr1, oStr2 : TStrings;
  I: Integer;
  J: Integer;
  bFlag: boolean;
begin

  oStr1 := TStringList.Create;
  oStr2 := TStringList.Create;
  bFlag := false;
  try
    oStr1.StrictDelimiter := true;
    oStr2.StrictDelimiter := true;
    oStr1.Delimiter := '\';
    oStr2.Delimiter := '\';
    oStr1.DelimitedText := FsFirstSelect;
    oStr2.DelimitedText := FsSecondSelect;
    for I := 0 to oStr1.Count - 1 do begin
    if I > oStr2.Count -1 then begin
      bFlag := false;
        break;
      end;
      if oStr1[i] = oStr2[i] then begin
// 같으면 동일한 위치
        bFlag := true;
        continue;
      end else begin
        // 다르면 다른 위치
        bFlag := false;
        break;
      end;
    end;
    result := bFlag;
  finally
    oStr1.Free;
    oStr2.Free;
  end;

end;