Develop and Download Open Source Software

Browse CVS Repository

Annotation of /gikonavigoeson/gikonavi/DefaultFileManager.pas

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


Revision 1.3 - (hide 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 h677 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 h677 1.2 // ??臀???????????????????????
83 h677 1.3 GikoSys.ForceDirectoriesEx(
84     ExtractFilePath(toPath));
85 h677 1.1 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