-/*=============================================================================\r
+/*=============================================================================\r
*\r
-* \83t\83@\83C\83\8b\88ê\97\97\83L\83\83\83b\83V\83\85\r
+* ファイル一覧キャッシュ\r
*\r
===============================================================================\r
/ Copyright (C) 1997-2007 Sota. All rights reserved.\r
\r
\r
\r
-/*===== \83L\83\83\83b\83V\83\85\83f\81[\83^\82Ì\83X\83g\83\89\83N\83`\83\83 =====*/\r
+/*===== キャッシュデータのストラクチャ =====*/\r
\r
typedef struct {\r
- time_t Time; /* \83\8a\83X\83g\82É\93o\98^\82µ\82½\8e\9e\8aÔ */\r
- char HostAdrs[HOST_ADRS_LEN+1]; /* \83z\83X\83g\82Ì\83A\83h\83\8c\83X */\r
- char UserName[USER_NAME_LEN+1]; /* \83\86\81[\83U\96¼ */\r
- char Path[FMAX_PATH+1]; /* \83p\83X\96¼ */\r
+ time_t Time; /* リストに登録した時間 */\r
+ char HostAdrs[HOST_ADRS_LEN+1]; /* ホストのアドレス */\r
+ char UserName[USER_NAME_LEN+1]; /* ユーザ名 */\r
+ char Path[FMAX_PATH+1]; /* パス名 */\r
} CACHELIST;\r
\r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
\r
-static CACHELIST *RemoteCache = NULL; /* \83L\83\83\83b\83V\83\85\83f\81[\83^ */\r
-static int TmpCacheEntry = 0; /* \83L\83\83\83b\83V\83\85\82³\82ê\82Ä\82¢\82é\83f\81[\83^\82Ì\90\94 */\r
-static int LastNum; /* \8c»\8dÝ\95\\8e¦\82µ\82Ä\82¢\82é\83f\81[\83^\82Ì\94Ô\8d\86 */\r
-static int ProgNum; /* FFFTP\82Ì\8bN\93®\94Ô\8d\86 */\r
+static CACHELIST *RemoteCache = NULL; /* キャッシュデータ */\r
+static int TmpCacheEntry = 0; /* キャッシュされているデータの数 */\r
+static int LastNum; /* 現在表示しているデータの番号 */\r
+static int ProgNum; /* FFFTPの起動番号 */\r
\r
\r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\83L\83\83\83b\83V\83\85\82ð\8dì\90¬\82·\82é --------------------------------------\r
+/*----- ファイル一覧キャッシュを作成する --------------------------------------\r
*\r
* Parameter\r
-* int Num : \83L\83\83\83b\83V\83\85\89Â\94\\8cÂ\90\94\r
+* int Num : キャッシュ可能個数\r
*\r
* Return Value\r
-* int \83X\83e\81[\83^\83X\r
-* SUCCESS/FAIL\r
+* int ステータス\r
+* FFFTP_SUCCESS/FFFTP_FAIL\r
*----------------------------------------------------------------------------*/\r
\r
int MakeCacheBuf(int Num)\r
int Sts;\r
int i;\r
\r
- Sts = SUCCESS;\r
+ Sts = FFFTP_SUCCESS;\r
if(Num > 0)\r
{\r
- Sts = FAIL;\r
+ Sts = FFFTP_FAIL;\r
if((RemoteCache = malloc(sizeof(CACHELIST) * Num)) != NULL)\r
{\r
TmpCacheEntry = Num;\r
for(i = 0; i < TmpCacheEntry; i++)\r
ClearCache(i);\r
- Sts = SUCCESS;\r
+ Sts = FFFTP_SUCCESS;\r
}\r
}\r
return(Sts);\r
}\r
\r
\r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\83L\83\83\83b\83V\83\85\82ð\8dí\8f\9c\82·\82é --------------------------------------\r
+/*----- ファイル一覧キャッシュを削除する --------------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
void DeleteCacheBuf(void)\r
}\r
\r
\r
-/*----- \83p\83X\82ª\83L\83\83\83b\83V\83\85\82³\82ê\82Ä\82¢\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ------------------------------\r
+/*----- パスがキャッシュされているかどうかを返す ------------------------------\r
*\r
* Parameter\r
-* char *Path : \83p\83X\96¼\r
+* char *Path : パス名\r
*\r
* Return Value\r
-* int \83L\83\83\83b\83V\83\85\83f\81[\83^\82Ì\94Ô\8d\86\r
-* -1 = \83L\83\83\83b\83V\83\85\82³\82ê\82Ä\82¢\82È\82¢\r
+* int キャッシュデータの番号\r
+* -1 = キャッシュされていない\r
*----------------------------------------------------------------------------*/\r
\r
int AskCached(char *Path)\r
}\r
\r
\r
-/*----- \96¢\8eg\97p\82Ì\83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86\82ð\95Ô\82· ------------------------------------\r
+/*----- 未使用のキャッシュデータ番号を返す ------------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* int \96¢\8eg\97p\82Ì\83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86\r
+* int 未使用のキャッシュデータ番号\r
*\r
* Note\r
-* \96¢\8eg\97p\82Ì\95¨\82ª\96³\82¢\8e\9e\82Í\81A\88ê\94Ô\8cÃ\82¢\82à\82Ì\82É\8fã\8f\91\82«\82·\82é\r
+* 未使用の物が無い時は、一番古いものに上書きする\r
*----------------------------------------------------------------------------*/\r
\r
int AskFreeCache(void)\r
}\r
\r
\r
-/*----- \83L\83\83\83b\83V\83\85\83f\81[\83^\82ð\83Z\83b\83g\82·\82é ------------------------------------------\r
+/*----- キャッシュデータをセットする ------------------------------------------\r
*\r
* Parameter\r
-* int Num : \83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86\r
-* char *Path : \83p\83X\96¼\r
+* int Num : キャッシュデータ番号\r
+* char *Path : パス名\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*\r
* Note\r
-* \8c»\8dÝ\90Ú\91±\92\86\82Ì\83z\83X\83g\96¼\82ð\8eg\97p\82·\82é\r
+* 現在接続中のホスト名を使用する\r
*----------------------------------------------------------------------------*/\r
\r
void SetCache(int Num, char *Path)\r
}\r
\r
\r
-/*----- \83L\83\83\83b\83V\83\85\83f\81[\83^\82ð\83N\83\8a\83A\82·\82é ------------------------------------------\r
+/*----- キャッシュデータをクリアする ------------------------------------------\r
*\r
* Parameter\r
-* int Num : \83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86\r
+* int Num : キャッシュデータ番号\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
void ClearCache(int Num)\r
}\r
\r
\r
-/*----- \8c»\8dÝ\95\\8e¦\92\86\82Ì\83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86\82ð\95Ô\82· --------------------------------\r
+/*----- 現在表示中のキャッシュデータ番号を返す --------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* int \83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86\r
+* int キャッシュデータ番号\r
*----------------------------------------------------------------------------*/\r
\r
int AskCurrentFileListNum(void)\r
}\r
\r
\r
-/*----- \8c»\8dÝ\95\\8e¦\92\86\82Ì\83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86\82ð\83Z\83b\83g\82·\82é --------------------------\r
+/*----- 現在表示中のキャッシュデータ番号をセットする --------------------------\r
*\r
* Parameter\r
-* int Num : \83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86\r
+* int Num : キャッシュデータ番号\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
void SetCurrentFileListNum(int Num)\r
}\r
\r
\r
-/*----- \83L\83\83\83b\83V\83\85\83f\81[\83^\82ð\95Û\91¶\82·\82é --------------------------------------------\r
+/*----- キャッシュデータを保存する --------------------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*\r
* Note\r
-* \83L\83\83\83b\83V\83\85\83f\81[\83^\82»\82Ì\82à\82Ì\82Í\83t\83@\83C\83\8b\82É\82È\82Á\82Ä\82¢\82é\82Ì\82Å\81A\82±\82±\82Å\82Í\83C\83\93\83f\83b\83N\r
-* \83X\83t\83@\83C\83\8b\82ð\8dì\90¬\82·\82é\81B\r
-* \82Ü\82½\81A\95s\97v\82È\83t\83@\83C\83\8b\82Í\8dí\8f\9c\82·\82é\81B\r
+* キャッシュデータそのものはファイルになっているので、ここではインデック\r
+* スファイルを作成する。\r
+* また、不要なファイルは削除する。\r
*----------------------------------------------------------------------------*/\r
\r
void SaveCache(void)\r
CACHELIST *Pos;\r
int i;\r
\r
- if(ProgNum == 0) /* \8dÅ\8f\89\82Ì\83C\83\93\83X\83^\83\93\83X\82¾\82¯\82ª\83L\83\83\83b\83V\83\85\82ð\95Û\91¶\82Å\82«\82é */\r
+ if(ProgNum == 0) /* 最初のインスタンスだけがキャッシュを保存できる */\r
{\r
if(TmpCacheEntry > 0)\r
{\r
}\r
\r
\r
-/*----- \83L\83\83\83b\83V\83\85\83f\81[\83^\82ð\93Ç\82Ý\8d\9e\82Þ --------------------------------------------\r
+/*----- キャッシュデータを読み込む --------------------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
void LoadCache(void)\r
CACHELIST *Pos;\r
int Num;\r
\r
- if(ProgNum == 0) /* \8dÅ\8f\89\82Ì\83C\83\93\83X\83^\83\93\83X\82¾\82¯\82ª\83L\83\83\83b\83V\83\85\82ð\95Û\91¶\82Å\82«\82é */\r
+ if(ProgNum == 0) /* 最初のインスタンスだけがキャッシュを保存できる */\r
{\r
if(TmpCacheEntry > 0)\r
{\r
}\r
\r
\r
-/*----- \83L\83\83\83b\83V\83\85\83f\81[\83^\82ð\91S\82Ä\8dí\8f\9c\82·\82é ----------------------------------------\r
+/*----- キャッシュデータを全て削除する ----------------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
void DeleteCache(void)\r
}\r
\r
\r
-/*----- \83L\83\83\83b\83V\83\85\82Ì\83t\83@\83C\83\8b\96¼\82ð\8dì\90¬\82·\82é --------------------------------------\r
+/*----- キャッシュのファイル名を作成する --------------------------------------\r
*\r
* Parameter\r
-* int Num : \83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86\r
-* char *Buf : \83t\83@\83C\83\8b\96¼\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
+* int Num : キャッシュデータ番号\r
+* char *Buf : ファイル名を格納するバッファ\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
void MakeCacheFileName(int Num, char *Buf)\r
}\r
\r
\r
-/*----- \8bN\93®\82µ\82Ä\82¢\82éFFFTP\82Ì\90\94\82ð\90\94\82¦\82é ------------------------------------------\r
+/*----- 起動しているFFFTPの数を数える ------------------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*\r
* Note\r
-* \8cÂ\90\94\82ÍProgNum\82É\8ai\94[\82·\82é\r
+* 個数はProgNumに格納する\r
*----------------------------------------------------------------------------*/\r
\r
void CountPrevFfftpWindows(void)\r
}\r
\r
\r
-/*----- \8bN\93®\82µ\82Ä\82¢\82éFFFTP\82Ì\90\94\82ð\90\94\82¦\82é\83R\81[\83\8b\83o\83b\83N-------------------------------\r
+/*----- 起動しているFFFTPの数を数えるコールバック-------------------------------\r
*\r
* Parameter\r
-* HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-* LPARAM lParam : \83p\83\89\83\81\81[\83^\r
+* HWND hWnd : ウインドウハンドル\r
+* LPARAM lParam : パラメータ\r
*\r
* Return Value\r
* BOOL TRUE/FALSE\r