Develop and Download Open Source Software

Browse CVS Repository

Contents of /gikonavigoeson/gikonavi/DefaultFileManager.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.3 - (show annotations) (download) (as text)
Mon Jul 3 14:53:44 2006 UTC (17 years, 9 months ago) by h677
Branch: MAIN
CVS Tags: v1_59_0_771, v1_59_0_770, v1_59_0_773, v1_59_0_772, v1_59_0_775, v1_59_0_774, v1_59_0_777, v1_59_0_776, v1_56_0_715, v1_59_0_778, v1_63_1_819, v1_57_0_737, v1_62_0_812, v1_57_0_735, v1_57_0_734, v1_57_0_733, v1_57_0_732, v1_57_0_731, v1_57_0_730, v1_57_0_739, v1_57_0_738, v1_59_1_765, v1_53_0_671, v1_60_0_788, v1_60_0_789, v1_54_0_677, v1_54_0_676, v1_58_0_748, v1_58_0_745, v1_60_0_781, v1_60_0_782, v1_58_0_746, v1_60_0_784, v1_54_0_678, v1_60_0_786, v1_60_0_787, v1_56_0_707, v1_59_0_767, v1_56_0_705, v1_56_0_704, v1_56_0_703, v1_56_0_702, v1_56_0_701, v1_56_0_700, v1_59_1_778, v1_57_0_723, v1_59_0_768, v1_59_0_769, v1_57_0_725, v1_57_0_726, v1_57_0_727, v1_57_0_720, v1_57_0_722, v1_57_1_744, v1_57_0_728, v1_57_0_729, v1_57_0_736, v1_58_0_752, v1_58_0_750, v1_58_0_751, v1_58_0_756, v1_58_0_757, v1_58_0_754, v1_58_0_755, v1_58_0_759, v1_57_0_719, v1_57_0_718, v1_56_0_716, v1_54_0_687, v1_56_0_710, v1_56_0_711, v1_56_1_717, v1_56_1_716, v1_54_0_688, v1_54_0_689, v1_54_0_684, v1_54_0_685, v1_53_0_664, v1_61_0_796, v1_61_0_797, v1_61_0_795, v1_61_0_798, v1_61_0_799, v1_53_0_665, v1_53_0_667, v1_53_0_666, v1_53_0_669, v1_53_0_668, v1_55_0_692, v1_55_0_693, v1_55_0_696, v1_55_0_697, v1_55_0_694, v1_55_0_695, v1_54_1_691, v1_56_2_724, v1_56_2_722, v1_55_1_697, v1_56_0_714, v1_53_0_672, v1_53_0_670, v1_63_0_818, v1_63_0_817, v1_63_0_816, v1_63_0_815, v1_54_0_686, v1_54_0_680, v1_54_0_681, v1_62_0_805, v1_62_0_804, v1_62_0_807, v1_62_0_806, v1_56_0_712, v1_62_0_803, v1_62_0_802, v1_56_0_713, v1_62_0_809, v1_54_0_682, v1_56_0_721, v1_54_0_683, v1_60_0_780, v1_60_0_779, v1_62_0_810, v1_62_0_811, v1_58_0_747, v1_60_0_783, v1_54_0_679, v1_59_2_785, marged_bRESPOPUP, v1_54_0_675, v1_56_0_706, root-of-Bb53, v1_54_0_674, v1_60_1_793, v1_54_0_690, v1_58_0_763, v1_58_0_762, v1_58_0_761, v1_58_0_760, v1_62_1_813, v1_57_2_749, v1_57_0_742, v1_57_0_743, v1_57_0_740, v1_57_0_741, v1_56_0_709, v1_57_0_744, v1_56_0_708, v1_61_0_800, v1_53_1_673, v1_56_0_699, v1_56_0_698, v1_60_0_793, v1_60_0_792, v1_60_0_791, v1_60_0_790, v1_60_2_794, v1_61_1_801, HEAD
Branch point for: Bb57, Bb56, Bb55, Bb53, Bb62, Bb63, Bb60, Bb61, Bb59, Bb58, bRESPOPUP, bListSU, Bb54
Changes since 1.2: +2 -1 lines
File MIME type: text/x-pascal
1階層深くフォルダを作成する不具合の修正

1 unit DefaultFileManager;
2
3 {!
4 \file DefaultFileManager.pas
5 \brief ????荐?????<?ゃ???????????/span>
6 }
7 interface
8
9 uses
10 Windows, Classes, Controls, ComCtrls, SysUtils;
11
12 type
13
14 TDefaultFileManager = class(TObject)
15 private
16 {!
17 \brief 腟九????鴻?ц???鐚??ゃ?潟?鴻???若??????????筝?)
18 \param Path ?ゃ?潟?鴻???若?????????????????後?????/span>
19 }
20 class function GetFilePath(const Path: String) : String;
21 {!
22 \brief FromFile??絖?????鐚?ToFile??絖??????????翫?????潟???若????
23 \param FromFile ????荐?????<?ゃ????臀???
24 \param ToFile ??臀???
25 }
26 class procedure CopyFile(const FromFile: String; const ToFile : String);
27 public
28 {!
29 \brief ????荐?????<?ゃ??????絎?篏?臀????潟???若????
30 \param FileName ????荐?????<?ゃ??????臀???絎????<?ゃ??/span>
31 }
32 class procedure CopyDefaultFiles(const FileName: String);
33 end;
34
35 implementation
36
37 uses
38 IniFiles,ShellAPI, GikoSystem, MojuUtils;
39
40 class procedure TDefaultFileManager.CopyDefaultFiles(const FileName: String);
41 const
42 FROM_KEY = 'FROM';
43 TO_KEY = 'TO';
44 var
45 ini : TMemIniFile;
46 sections : TStringList;
47 i: Integer;
48 begin
49 if ( FileExists(FileName) ) then begin
50 ini := TMemIniFile.Create( FileName );
51 sections := TStringList.Create;
52 try
53 // ???鴻?????祉???激?с?潟??茯??粋昭??
54 ini.ReadSections(sections);
55 for i := 0 to sections.Count - 1 do begin
56 // FROM ???? TO?????<?ゃ?????潟???若????
57 CopyFile( ini.ReadString(sections[i], FROM_KEY, ''),
58 ini.ReadString(sections[i], TO_KEY, '') );
59 end;
60 finally
61 sections.Clear;
62 sections.Free;
63 ini.Free;
64 end;
65 end;
66
67 end;
68 class procedure TDefaultFileManager.CopyFile(
69 const FromFile: String; const ToFile : String);
70 var
71 fromPath, toPath : String;
72 begin
73 // ??臀???鐚???臀????????<????????????翫?????????????
74 if ( (FromFile <> '') and (ToFile <> '') ) then begin
75 // ../ ?????с?ゃ?潟?鴻???若??????????????筝??????????≪???祉?鴻????????/span>
76 // ?違?????х舟?????????障??
77 fromPath := GetFilePath( FromFile );
78 toPath := GetFilePath( ToFile );
79 if ( FileExists(fromPath) ) then begin
80 // ??臀????????c????篏?????????
81 if (not FileExists(toPath)) then begin
82 // ??臀???????????????????????
83 GikoSys.ForceDirectoriesEx(
84 ExtractFilePath(toPath));
85 Windows.CopyFile( PChar(fromPath), PChar(toPath), False);
86 end;
87 end;
88 end;
89
90 end;
91 class function TDefaultFileManager.GetFilePath(const Path: String): String;
92 begin
93 Result := GikoSys.GetAppDir +
94 CustomStringReplace(
95 CustomStringReplace(Path, '/', '\' ), '..\', '');
96 end;
97 end.

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26