OSDN Git Service

Convert source codes' encoding to UTF-8.
authors_kawamoto <s_kawamoto@users.sourceforge.jp>
Fri, 16 Sep 2011 13:12:00 +0000 (22:12 +0900)
committers_kawamoto <s_kawamoto@users.sourceforge.jp>
Fri, 16 Sep 2011 13:12:00 +0000 (22:12 +0900)
Replace SUCCESS and FAIL macros to FFFTP_SUCCESS and FFFTP_FAIL.

80 files changed:
FFFTP.chm [deleted file]
FFFTP.exe [deleted file]
FFFTP.vc90.vcproj
FFFTP.vcproj
FFFTP_Eng_Release/FFFTP.exe
FFFTP_English.vc90.vcproj
FFFTP_English.vcproj
JRE32.DLL [deleted file]
OLDregistory.c
OleDragDrop.c
OleDragDrop.h
Release/FFFTP.exe
Resource/resource.h
Resource_eng/resource.h
aes.h
aes_modes.c
aes_via_ace.h
aescrypt.c
aeskey.c
aesopt.h
aestab.c
aestab.h
bookmark.c
brg_endian.h
brg_types.h
cache.c
clipboard.c
codecnv.c
common.h
config.h
connect.c
diskfree.c
dlgsize.c
encutf8.exe [new file with mode: 0644]
encutf8/ReadMe.txt [new file with mode: 0644]
encutf8/encutf8.cpp [new file with mode: 0644]
encutf8/encutf8.sln [new file with mode: 0644]
encutf8/encutf8.vcproj [new file with mode: 0644]
encutf8/stdafx.cpp [new file with mode: 0644]
encutf8/stdafx.h [new file with mode: 0644]
encutf8/targetver.h [new file with mode: 0644]
filelist.c
ftpproc.c
getput.c
helpid.h
history.c
hostman.c
howtobuild.htm
jreusr.h
local.c
lvtips.c
main.c
mbswrapper.c
mbswrapper.h
mbtoutf8.bat
md4.c
md4.h
md5.c
md5.h
mesg-eng.h
mesg-jpn.h
misc.c
option.c
ras.c
regexp.c
registory.c
remote.c
sample.h
sha.c
sha.h
skey.c
socket.c
socketwrapper.c
socketwrapper.h
statuswin.c
taskwin.c
tool.c
toolmenu.c
updatebell.c
wildcard.c

diff --git a/FFFTP.chm b/FFFTP.chm
deleted file mode 100644 (file)
index 03a6b14..0000000
Binary files a/FFFTP.chm and /dev/null differ
diff --git a/FFFTP.exe b/FFFTP.exe
deleted file mode 100644 (file)
index 65ca710..0000000
Binary files a/FFFTP.exe and /dev/null differ
index 6ea6f40..e7124f0 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="shift_jis"?>
+<?xml version="1.0" encoding="shift_jis"?>
 <VisualStudioProject
        ProjectType="Visual C++"
        Version="9.00"
index ad16916..e69c1c0 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="shift_jis"?>\r
+<?xml version="1.0" encoding="shift_jis"?>\r
 <VisualStudioProject\r
        ProjectType="Visual C++"\r
        Version="8.00"\r
index c145448..22de8db 100644 (file)
Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
index 3226993..8729b86 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="shift_jis"?>
+<?xml version="1.0" encoding="shift_jis"?>
 <VisualStudioProject
        ProjectType="Visual C++"
        Version="9.00"
index d2c99af..d4127ef 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="shift_jis"?>\r
+<?xml version="1.0" encoding="shift_jis"?>\r
 <VisualStudioProject\r
        ProjectType="Visual C++"\r
        Version="8.00"\r
diff --git a/JRE32.DLL b/JRE32.DLL
deleted file mode 100644 (file)
index 02f6564..0000000
Binary files a/JRE32.DLL and /dev/null differ
index 888ea1d..bc60605 100644 (file)
@@ -1,5 +1,5 @@
-/*=============================================================================\r
-*                                                              \83\8c\83W\83X\83g\83\8a\8aÖ\8cW\r
+/*=============================================================================\r
+*                                                              レジストリ関係\r
 *\r
 *\r
 ===============================================================================\r
@@ -42,7 +42,7 @@
 #include "sha.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static void SaveStr(HKEY hKey, char *Key, char *Str, char *DefaultStr);\r
 static void SaveIntNum(HKEY hKey, char *Key, int Num, int DefaultNum);\r
@@ -80,13 +80,13 @@ void CreatePasswordHash( char* Password, int length, char* HashStr );
 void SetHashSalt( DWORD salt );\r
 \r
 \r
-/* 2010.01.30 genta \92Ç\89Á */\r
+/* 2010.01.30 genta 追加 */\r
 static char SecretKey[FMAX_PATH+1];\r
 static int SecretKeyLength;\r
 static int IsMasterPasswordError = PASSWORD_OK;\r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern int WinPosX;\r
 extern int WinPosY;\r
 extern int WinWidth;\r
@@ -167,13 +167,13 @@ extern int MirDownDelNotify;
 extern int FolderAttr;\r
 extern int FolderAttrNum;\r
 \r
-/*----- \83}\83X\83^\83p\83X\83\8f\81[\83h\82Ì\90Ý\92è ----------------------------------------------\r
+/*----- マスタパスワードの設定 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              const char* Password : \83}\83X\83^\81[\83p\83X\83\8f\81[\83h\r
+*              const char* Password : マスターパスワード\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 void SetMasterPassword( const char* Password )\r
 {\r
@@ -186,29 +186,29 @@ void SetMasterPassword( const char* Password )
        }\r
        SecretKeyLength = strlen( SecretKey );\r
        \r
-       /* \96¢\8c\9f\8fØ\82È\82Ì\82Å\81C\8f\89\8aú\8fó\91Ô\82ÍOK\82É\82·\82é (\8b­\90§\8dÄ\90Ý\92è\81¨\95Û\91\82É\82ð\89Â\94\\82É\82·\82é)*/\r
+       /* 未検証なので,初期状態はOKにする (強制再設定→保存にを可能にする)*/\r
        IsMasterPasswordError = PASSWORD_OK;\r
 }\r
 \r
-/*----- \83}\83X\83^\83p\83X\83\8f\81[\83h\82Ì\8fó\91Ô\8eæ\93¾ ----------------------------------------------\r
+/*----- マスタパスワードの状態取得 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
 *              PASSWORD_OK : OK\r
-*              PASSWORD_UNMATCH : \83p\83X\83\8f\81[\83h\95s\88ê\92v\r
-*              BAD_PASSWORD_HASH : \83p\83X\83\8f\81[\83h\8am\94F\8e¸\94s\r
+*              PASSWORD_UNMATCH : パスワード不一致\r
+*              BAD_PASSWORD_HASH : パスワード確認失敗\r
 *----------------------------------------------------------------------------*/\r
 int GetMasterPasswordStatus(void)\r
 {\r
        return IsMasterPasswordError;\r
 }\r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\81^INI\83t\83@\83C\83\8b\82Ì\83}\83X\83^\81[\83p\83X\83\8f\81[\83h\82Ì\8c\9f\8fØ\82ð\8ds\82¤ ------------\r
+/*----- レジストリ/INIファイルのマスターパスワードの検証を行う ------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
 *              \r
@@ -255,13 +255,13 @@ int ValidateMasterPassword(void)
        return NO;\r
 }\r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\81^INI\83t\83@\83C\83\8b\82É\90Ý\92è\92l\82ð\95Û\91 ---------------------------------\r
+/*----- レジストリ/INIファイルに設定値を保存 ---------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SaveRegistory(void)\r
@@ -278,7 +278,7 @@ void SaveRegistory(void)
        HISTORYDATA DefaultHist;\r
        \r
        if( GetMasterPasswordStatus() == PASSWORD_UNMATCH ){\r
-               /* 2010.01.30 genta: \83}\83X\83^\81[\83p\83X\83\8f\81[\83h\82ª\95s\88ê\92v\82Ì\8fê\8d\87\82Í\95s\97p\88Ó\82É\8fã\8f\91\82«\82µ\82È\82¢ */\r
+               /* 2010.01.30 genta: マスターパスワードが不一致の場合は不用意に上書きしない */\r
                return;\r
        }\r
 \r
@@ -404,10 +404,10 @@ void SaveRegistory(void)
 \r
                                WriteIntValueToReg(hKey4, "HistNum", FileHist);\r
 \r
-                               /* Ver1.54a\88È\91O\82Ì\8c`\8e®\82Ì\83q\83X\83g\83\8a\83f\81[\83^\82Í\8dí\8f\9c */\r
+                               /* Ver1.54a以前の形式のヒストリデータは削除 */\r
                                DeleteValue(hKey4, "Hist");\r
 \r
-                               /* \83q\83X\83g\83\8a\82Ì\90Ý\92è\82ð\95Û\91 */\r
+                               /* ヒストリの設定を保存 */\r
                                CopyDefaultHistory(&DefaultHist);\r
                                n = 0;\r
                                for(i = AskHistoryNum(); i > 0; i--)\r
@@ -455,7 +455,7 @@ void SaveRegistory(void)
                                }\r
                                WriteIntValueToReg(hKey4, "SavedHist", n);\r
 \r
-                               /* \97]\95ª\82È\83q\83X\83g\83\8a\82ª\82 \82Á\82½\82ç\8dí\8f\9c */\r
+                               /* 余分なヒストリがあったら削除 */\r
                                for(; n < 999; n++)\r
                                {\r
                                        sprintf(Str, "History%d", n);\r
@@ -463,7 +463,7 @@ void SaveRegistory(void)
                                                break;\r
                                }\r
 \r
-                               /* \83z\83X\83g\82Ì\90Ý\92è\82ð\95Û\91 */\r
+                               /* ホストの設定を保存 */\r
                                CopyDefaultHost(&DefaultHost);\r
                                i = 0;\r
                                while(CopyHostFromList(i, &Host) == SUCCESS)\r
@@ -522,7 +522,7 @@ void SaveRegistory(void)
                                }\r
                                WriteIntValueToReg(hKey4, "SetNum", i);\r
 \r
-                               /* \97]\95ª\82È\83z\83X\83g\82Ì\90Ý\92è\82ª\82 \82Á\82½\82ç\8dí\8f\9c */\r
+                               /* 余分なホストの設定があったら削除 */\r
                                for(; i < 998; i++)\r
                                {\r
                                        sprintf(Str, "Host%d", i);\r
@@ -541,16 +541,16 @@ void SaveRegistory(void)
        return;\r
 }\r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\81^INI\83t\83@\83C\83\8b\82©\82ç\90Ý\92è\92l\82ð\8cÄ\82Ñ\8fo\82· ---------------------------\r
+/*----- レジストリ/INIファイルから設定値を呼び出す ---------------------------\r
 *\r
-*      \82±\82Ì\8aÖ\90\94\82ð\95¡\90\94\89ñ\8cÄ\82Ñ\8fo\82·\82Æ\81C\83z\83X\83g\90Ý\92è\82ª\92Ç\89Á\82³\82ê\82é\81D\r
+*      この関数を複数回呼び出すと,ホスト設定が追加される.\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              YES: \93Ç\82Ý\8fo\82µ\90¬\8c÷\r
-*              NO:  \93Ç\82Ý\8fo\82µ\8e¸\94s(\90Ý\92è\96³\82µ)\r
+*              YES: 読み出し成功\r
+*              NO:  読み出し失敗(設定無し)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int LoadRegistory(void)\r
@@ -560,7 +560,7 @@ int LoadRegistory(void)
        void *hKey5;\r
        int i;\r
        int Sets;\r
-       char Str[256];  /* ASCII_EXT_LEN\82æ\82è\91å\82«\82¢\8e\96 */\r
+       char Str[256];  /* ASCII_EXT_LENより大きい事 */\r
        char *Pos;\r
        char *Pos2;\r
        HOSTDATA Host;\r
@@ -595,10 +595,10 @@ int LoadRegistory(void)
                        ReadIntValueFromReg(hKey4, "WinWidth", &WinWidth);\r
                        ReadIntValueFromReg(hKey4, "WinHeight", &WinHeight);\r
                        ReadIntValueFromReg(hKey4, "LocalWidth", &LocalWidth);\r
-                       /* \81«\8b\8c\83o\81[\83W\83\87\83\93\82Ì\83o\83O\91Î\8dô */\r
+                       /* ↓旧バージョンのバグ対策 */\r
                        LocalWidth = max1(0, LocalWidth);\r
                        ReadIntValueFromReg(hKey4, "TaskHeight", &TaskHeight);\r
-                       /* \81«\8b\8c\83o\81[\83W\83\87\83\93\82Ì\83o\83O\91Î\8dô */\r
+                       /* ↓旧バージョンのバグ対策 */\r
                        TaskHeight = max1(0, TaskHeight);\r
                        ReadBinaryFromReg(hKey4, "LocalColm", &LocalTabWidth, sizeof(LocalTabWidth));\r
                        ReadBinaryFromReg(hKey4, "RemoteColm", &RemoteTabWidth, sizeof(RemoteTabWidth));\r
@@ -649,7 +649,7 @@ int LoadRegistory(void)
 \r
                        if(ReadMultiStringFromReg(hKey4, "AsciiFile", AsciiExt, ASCII_EXT_LEN+1) == FAIL)\r
                        {\r
-                               /* \8b\8cASCII\83\82\81[\83h\82Ì\8ag\92£\8eq\82Ì\90Ý\92è\82ð\90V\82µ\82¢\82à\82Ì\82É\95Ï\8a· */\r
+                               /* 旧ASCIIモードの拡張子の設定を新しいものに変換 */\r
                                ReadStringFromReg(hKey4, "Ascii", Str, ASCII_EXT_LEN+1);\r
                                memset(AsciiExt, NUL, ASCII_EXT_LEN+1);\r
                                Pos = Str;\r
@@ -723,7 +723,7 @@ int LoadRegistory(void)
                        ReadIntValueFromReg(hKey4, "HistNum", &FileHist);\r
 //                     ReadMultiStringFromReg(hKey4, "Hist", Hist, (FMAX_PATH+1)*HISTORY_MAX+1);\r
 \r
-                       /* \83q\83X\83g\83\8a\82Ì\90Ý\92è\82ð\93Ç\82Ý\8d\9e\82Þ */\r
+                       /* ヒストリの設定を読み込む */\r
                        Sets = 0;\r
                        ReadIntValueFromReg(hKey4, "SavedHist", &Sets);\r
 \r
@@ -771,7 +771,7 @@ int LoadRegistory(void)
                                }\r
                        }\r
 \r
-                       /* \83z\83X\83g\82Ì\90Ý\92è\82ð\93Ç\82Ý\8d\9e\82Þ */\r
+                       /* ホストの設定を読み込む */\r
                        Sets = 0;\r
                        ReadIntValueFromReg(hKey4, "SetNum", &Sets);\r
 \r
@@ -781,7 +781,7 @@ int LoadRegistory(void)
                                if(OpenSubKey(hKey4, Str, &hKey5) == SUCCESS)\r
                                {\r
                                        CopyDefaultHost(&Host);\r
-                                       /* \89º\88Ê\8cÝ\8a·\90«\82Ì\82½\82ß */\r
+                                       /* 下位互換性のため */\r
                                        if(Version < VER_NUM)\r
                                        {\r
                                                Host.Pasv = NO;\r
@@ -846,7 +846,7 @@ int LoadRegistory(void)
        }\r
        else\r
        {\r
-               /*===== \8dÅ\8f\89\82Ì\8bN\93®\8e\9e\81i\90Ý\92è\82ª\96³\82¢) =====*/\r
+               /*===== 最初の起動時(設定が無い) =====*/\r
 \r
 #if 0\r
                strcpy(UserMailAdrs, "");\r
@@ -870,14 +870,14 @@ int LoadRegistory(void)
 }\r
 \r
 \r
-/*----- \89B\82µ\83h\83\89\83C\83u\8fî\95ñ\82ð\8eæ\93¾ ------------------------------------------------\r
+/*----- 隠しドライブ情報を取得 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
 *              DWORD \r
-*                      YES/NO=\90Ý\92è\96³\82µ\r
+*                      YES/NO=設定無し\r
 *----------------------------------------------------------------------------*/\r
 \r
 DWORD LoadHideDriveListRegistory(void)\r
@@ -923,13 +923,13 @@ DWORD LoadHideDriveListRegistory(void)
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\82Ì\90Ý\92è\92l\82ð\83N\83\8a\83A --------------------------------------------\r
+/*----- レジストリの設定値をクリア --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ClearRegistory(void)\r
@@ -971,13 +971,13 @@ void ClearRegistory(void)
 }\r
 \r
 \r
-/*----- \90Ý\92è\82ð\83t\83@\83C\83\8b\82É\95Û\91 --------------------------------------------------\r
+/*----- 設定をファイルに保存 --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SaveSettingsToFile(void)\r
@@ -1009,13 +1009,13 @@ void SaveSettingsToFile(void)
 }\r
 \r
 \r
-/*----- \90Ý\92è\82ð\83t\83@\83C\83\8b\82©\82ç\95\9c\8c³ ------------------------------------------------\r
+/*----- 設定をファイルから復元 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int     \83\8d\81[\83h\82µ\82½\82©\82Ç\82¤\82© (YES/NO)\r
+*              int     ロードしたかどうか (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int LoadSettingsFromFile(void)\r
@@ -1038,7 +1038,7 @@ int LoadSettingsFromFile(void)
                        else\r
                        {\r
                                Ret = YES;\r
-                               /* \83\8c\83W\83X\83g\83\8a\83G\83f\83B\83^\82ª\8fI\97¹\82·\82é\82Ì\82ð\91Ò\82 */\r
+                               /* レジストリエディタが終了するのを待つ */\r
 //                             WaitForSingleObject(Info.hProcess, INFINITE);\r
                        }\r
                }\r
@@ -1056,19 +1056,19 @@ int LoadSettingsFromFile(void)
 \r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82É\95\8e\9a\97ñ\82ð\83Z\81[\83u --------------------------------\r
+/*----- レジストリ/INIファイルに文字列をセーブ --------------------------------\r
 *\r
 *      Parameter\r
-*              HKEY hKey : \83\8c\83W\83X\83g\83\8a\83L\81[\r
-*              char *Key : \83L\81[\96¼\r
-*              char *Str : \83Z\81[\83u\82·\82é\95\8e\9a\97ñ\r
-*              char *DefaultStr : \83f\83t\83H\83\8b\83g\82Ì\95\8e\9a\97ñ\r
+*              HKEY hKey : レジストリキー\r
+*              char *Key : キー名\r
+*              char *Str : セーブする文字列\r
+*              char *DefaultStr : デフォルトの文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \95\8e\9a\97ñ\82ª\83f\83t\83H\83\8b\83g\82Ì\95\8e\9a\97ñ\82Æ\93¯\82\82È\82ç\83Z\81[\83u\82µ\82È\82¢\r
+*              文字列がデフォルトの文字列と同じならセーブしない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SaveStr(HKEY hKey, char *Key, char *Str, char *DefaultStr)\r
@@ -1082,19 +1082,19 @@ static void SaveStr(HKEY hKey, char *Key, char *Str, char *DefaultStr)
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82É\90\94\92l(INT)\82ð\83Z\81[\83u -----------------------------\r
+/*----- レジストリ/INIファイルに数値(INT)をセーブ -----------------------------\r
 *\r
 *      Parameter\r
-*              HKEY hKey : \83\8c\83W\83X\83g\83\8a\83L\81[\r
-*              char *Key : \83L\81[\96¼\r
-*              int Num : \83Z\81[\83u\82·\82é\92l\r
-*              int DefaultNum : \83f\83t\83H\83\8b\83g\82Ì\92l\r
+*              HKEY hKey : レジストリキー\r
+*              char *Key : キー名\r
+*              int Num : セーブする値\r
+*              int DefaultNum : デフォルトの値\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \90\94\92l\82ª\83f\83t\83H\83\8b\83g\82Ì\92l\82Æ\93¯\82\82È\82ç\83Z\81[\83u\82µ\82È\82¢\r
+*              数値がデフォルトの値と同じならセーブしない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SaveIntNum(HKEY hKey, char *Key, int Num, int DefaultNum)\r
@@ -1108,16 +1108,16 @@ static void SaveIntNum(HKEY hKey, char *Key, int Num, int DefaultNum)
 }\r
 \r
 \r
-/*----- LOGFONT\83f\81[\83^\82ð\95\8e\9a\97ñ\82É\95Ï\8a·\82·\82é ---------------------------------------\r
+/*----- LOGFONTデータを文字列に変換する ---------------------------------------\r
 *\r
 *      Parameter\r
-*              LOGFONT Font : \83t\83H\83\93\83g\83f\81[\83^\r
-*              HFONT hFont : \83t\83H\83\93\83g\82Ì\83n\83\93\83h\83\8b\r
-*                      NULL = \83f\83t\83H\83\8b\83g\82Ì\83t\83H\83\93\83g\r
-*              char *Buf : \83o\83b\83t\83@\r
+*              LOGFONT Font : フォントデータ\r
+*              HFONT hFont : フォントのハンドル\r
+*                      NULL = デフォルトのフォント\r
+*              char *Buf : バッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void MakeFontData(LOGFONT Font, HFONT hFont, char *Buf)\r
@@ -1133,15 +1133,15 @@ static void MakeFontData(LOGFONT Font, HFONT hFont, char *Buf)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ðLOGFONT\83f\81[\83^\82É\95Ï\8a·\82·\82é ---------------------------------------\r
+/*----- 文字列をLOGFONTデータに変換する ---------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              LOGFONT *Font : \83t\83H\83\93\83g\83f\81[\83^\r
+*              char *Str : 文字列\r
+*              LOGFONT *Font : フォントデータ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL=\95Ï\8a·\82Å\82«\82È\82¢\r
+*              int ステータス\r
+*                      SUCCESS/FAIL=変換できない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int RestoreFontData(char *Str, LOGFONT *Font)\r
@@ -1175,28 +1175,28 @@ static int RestoreFontData(char *Str, LOGFONT *Font)
        return(Sts);\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82ð\88Ã\8d\86\89»\82·\82é ------------------------------------------------\r
+/*----- パスワードを暗号化する ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83p\83X\83\8f\81[\83h\r
-*              char *Buf : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
+*              char *Str : パスワード\r
+*              char *Buf : 暗号化したパスワードを格納するバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 static void EncodePassword(char *Str, char *Buf)\r
 {\r
        EncodePassword2( Str, Buf, SecretKey );\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82ð\88Ã\8d\86\89»\82·\82é(\83I\83\8a\83W\83i\83\8b\83A\83\8b\83S\83\8a\83Y\83\80)  ------------------\r
+/*----- パスワードを暗号化する(オリジナルアルゴリズム)  ------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83p\83X\83\8f\81[\83h\r
-*              char *Buf : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
+*              char *Str : パスワード\r
+*              char *Buf : 暗号化したパスワードを格納するバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void EncodePasswordOriginal(char *Str, char *Buf)\r
@@ -1216,7 +1216,7 @@ static void EncodePasswordOriginal(char *Str, char *Buf)
                return;\r
        }\r
 \r
-       /* \8e¯\95Ê\8eq\82ð\90æ\93ª\82É\92u\82­ */\r
+       /* 識別子を先頭に置く */\r
        Put[0] = '0';\r
        Put[1] = 'A';\r
        Put += 2;\r
@@ -1235,15 +1235,15 @@ static void EncodePasswordOriginal(char *Str, char *Buf)
        return;\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82ð\88Ã\8d\86\89»\82·\82é(\83I\83\8a\83W\83i\83\8b\83A\83\8b\83S\83\8a\83Y\83\80\81OKey)  ----------------\r
+/*----- パスワードを暗号化する(オリジナルアルゴリズム^Key)  ----------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83p\83X\83\8f\81[\83h\r
-*              char *Buf : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
-*              const char *Key : \88Ã\8d\86\89»\83L\81[\r
+*              char *Str : パスワード\r
+*              char *Buf : 暗号化したパスワードを格納するバッファ\r
+*              const char *Key : 暗号化キー\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void EncodePassword2(char *Str, char *Buf, const char* Key)\r
@@ -1268,7 +1268,7 @@ static void EncodePassword2(char *Str, char *Buf, const char* Key)
                return;\r
        }\r
 \r
-       /* \8e¯\95Ê\8eq\82ð\90æ\93ª\82É\92u\82­ */\r
+       /* 識別子を先頭に置く */\r
        Put[0] = '0';\r
        Put[1] = 'B';\r
        Put += 2;\r
@@ -1293,14 +1293,14 @@ static void EncodePassword2(char *Str, char *Buf, const char* Key)
 }\r
 \r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82Ì\88Ã\8d\86\89»\82ð\89ð\82­ ----------------------------------------------\r
+/*----- パスワードの暗号化を解く ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\r
-*              char *Buf : \83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
+*              char *Str : 暗号化したパスワード\r
+*              char *Buf : パスワードを格納するバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DecodePassword(char *Str, char *Buf)\r
@@ -1331,14 +1331,14 @@ static void DecodePassword(char *Str, char *Buf)
        }\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82Ì\88Ã\8d\86\89»\82ð\89ð\82­(\83I\83\8a\83W\83i\83\8b\83A\83\8b\83S\83\8a\83Y\83\80) -------------------\r
+/*----- パスワードの暗号化を解く(オリジナルアルゴリズム) -------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\r
-*              char *Buf : \83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
+*              char *Str : 暗号化したパスワード\r
+*              char *Buf : パスワードを格納するバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 static void DecodePasswordOriginal(char *Str, char *Buf)\r
 {\r
@@ -1366,15 +1366,15 @@ static void DecodePasswordOriginal(char *Str, char *Buf)
        return;\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82Ì\88Ã\8d\86\89»\82ð\89ð\82­(\83I\83\8a\83W\83i\83\8b\83A\83\8b\83S\83\8a\83Y\83\80\81OKey) -------------------\r
+/*----- パスワードの暗号化を解く(オリジナルアルゴリズム^Key) -------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\r
-*              char *Buf : \83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
-*              const char *Key : \88Ã\8d\86\89»\83L\81[\r
+*              char *Str : 暗号化したパスワード\r
+*              char *Buf : パスワードを格納するバッファ\r
+*              const char *Key : 暗号化キー\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 static void DecodePassword2(char *Str, char *Buf, const char* Key)\r
 {\r
@@ -1410,20 +1410,20 @@ static void DecodePassword2(char *Str, char *Buf, const char* Key)
 }\r
 \r
 \r
-/*===== \83\8c\83W\83X\83g\83\8a\82ÆINI\83t\83@\83C\83\8b\82Ì\83A\83N\83Z\83X\8f\88\97\9d ============*/\r
+/*===== レジストリとINIファイルのアクセス処理 ============*/\r
 \r
 \r
-/*===== INI\83t\83@\83C\83\8b\97p\82Ì\83\8c\83W\83X\83g\83\8a\83f\81[\83^ =====*/\r
+/*===== INIファイル用のレジストリデータ =====*/\r
 \r
 typedef struct regdatatbl {\r
-       char KeyName[80+1];                     /* \83L\81[\96¼ */\r
-       char ValTbl[REG_SECT_MAX];      /* \92l\82Ì\83e\81[\83u\83\8b */\r
-       int ValLen;                                     /* \92l\83f\81[\83^\82Ì\83o\83C\83g\90\94 */\r
-       int Mode;                                       /* \83L\81[\82Ì\83\82\81[\83h */\r
+       char KeyName[80+1];                     /* キー名 */\r
+       char ValTbl[REG_SECT_MAX];      /* 値のテーブル */\r
+       int ValLen;                                     /* 値データのバイト数 */\r
+       int Mode;                                       /* キーのモード */\r
        struct regdatatbl *Next;\r
 } REGDATATBL;\r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static BOOL WriteOutRegToFile(REGDATATBL *Pos);\r
 static int ReadInReg(char *Name, REGDATATBL **Handle);\r
@@ -1432,19 +1432,19 @@ static int StrReadIn(char *Src, int Max, char *Dst);
 static char *ScanValue(void *Handle, char *Name);\r
 \r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static int TmpRegType;\r
 \r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\82Ì\83^\83C\83v\82ð\90Ý\92è\82·\82é ------------------------------------------\r
+/*----- レジストリのタイプを設定する ------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Type : \83^\83C\83v (REGTYPE_xxx)\r
+*              int Type : タイプ (REGTYPE_xxx)\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1455,14 +1455,14 @@ static void SetRegType(int Type)
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82ð\83I\81[\83v\83\93\82·\82é\81i\93Ç\82Ý\8d\9e\82Ý\81j-----------------------\r
+/*----- レジストリ/INIファイルをオープンする(読み込み)-----------------------\r
 *\r
 *      Parameter\r
-*              char *Name : \83\8c\83W\83X\83g\83\8a\96¼\r
-*              void **Handle : \83n\83\93\83h\83\8b\82ð\95Ô\82·\83\8f\81[\83N\r
+*              char *Name : レジストリ名\r
+*              void **Handle : ハンドルを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1488,14 +1488,14 @@ static int OpenReg(char *Name, void **Handle)
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82ð\8dì\90¬\82·\82é\81i\8f\91\82«\8d\9e\82Ý\81j---------------------------\r
+/*----- レジストリ/INIファイルを作成する(書き込み)---------------------------\r
 *\r
 *      Parameter\r
-*              char *Name : \83\8c\83W\83X\83g\83\8a\96¼\r
-*              void **Handle : \83n\83\93\83h\83\8b\82ð\95Ô\82·\83\8f\81[\83N\r
+*              char *Name : レジストリ名\r
+*              void **Handle : ハンドルを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1528,13 +1528,13 @@ static int CreateReg(char *Name, void **Handle)
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82ð\83N\83\8d\81[\83Y\82·\82é ----------------------------------\r
+/*----- レジストリ/INIファイルをクローズする ----------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
+*              void *Handle : ハンドル\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1548,7 +1548,7 @@ static int CloseReg(void *Handle)
        {\r
                RegCloseKey(Handle);\r
 \r
-               /* INI\83t\83@\83C\83\8b\82ð\8dí\8f\9c */\r
+               /* INIファイルを削除 */\r
                if((Strm = fopen(AskIniFilePath(), "rt")) != NULL)\r
                {\r
                        fclose(Strm);\r
@@ -1561,11 +1561,11 @@ static int CloseReg(void *Handle)
                {\r
                        if(WriteOutRegToFile(Handle) == TRUE)\r
                        {\r
-//                             /* \83\8c\83W\83X\83g\83\8a\82ð\83N\83\8a\83A */\r
+//                             /* レジストリをクリア */\r
 //                             ClearRegistory();\r
                        }\r
                }\r
-               /* \83e\81[\83u\83\8b\82ð\8dí\8f\9c */\r
+               /* テーブルを削除 */\r
                Pos = Handle;\r
                while(Pos != NULL)\r
                {\r
@@ -1578,13 +1578,13 @@ static int CloseReg(void *Handle)
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\8fî\95ñ\82ðINI\83t\83@\83C\83\8b\82É\8f\91\82«\8d\9e\82Þ ---------------------------------\r
+/*----- レジストリ情報をINIファイルに書き込む ---------------------------------\r
 *\r
 *      Parameter\r
-*              REGDATATBL *Pos : \83\8c\83W\83X\83g\83\8a\83f\81[\83^\r
+*              REGDATATBL *Pos : レジストリデータ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static BOOL WriteOutRegToFile(REGDATATBL *Pos)\r
@@ -1619,14 +1619,14 @@ static BOOL WriteOutRegToFile(REGDATATBL *Pos)
 }\r
 \r
 \r
-/*----- INI\83t\83@\83C\83\8b\82©\82ç\83\8c\83W\83X\83g\83\8a\8fî\95ñ\82ð\93Ç\82Ý\8d\9e\82Þ -------------------------------\r
+/*----- INIファイルからレジストリ情報を読み込む -------------------------------\r
 *\r
 *      Parameter\r
-*              char *Name : \96¼\91O\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
+*              char *Name : 名前\r
+*              void *Handle : ハンドル\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1692,15 +1692,15 @@ static int ReadInReg(char *Name, REGDATATBL **Handle)
 }\r
 \r
 \r
-/*----- \83T\83u\83L\81[\82ð\83I\81[\83v\83\93\82·\82é ------------------------------------------------\r
+/*----- サブキーをオープンする ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Parent : \90e\82Ì\83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              void **Handle : \83n\83\93\83h\83\8b\82ð\95Ô\82·\83\8f\81[\83N\r
+*              void *Parent : 親のハンドル\r
+*              char *Name : 名前\r
+*              void **Handle : ハンドルを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1737,15 +1737,15 @@ static int OpenSubKey(void *Parent, char *Name, void **Handle)
 }\r
 \r
 \r
-/*----- \83T\83u\83L\81[\82ð\8dì\90¬\82·\82é ----------------------------------------------------\r
+/*----- サブキーを作成する ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Parent : \90e\82Ì\83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              void **Handle : \83n\83\93\83h\83\8b\82ð\95Ô\82·\83\8f\81[\83N\r
+*              void *Parent : 親のハンドル\r
+*              char *Name : 名前\r
+*              void **Handle : ハンドルを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1783,13 +1783,13 @@ static int CreateSubKey(void *Parent, char *Name, void **Handle)
 }\r
 \r
 \r
-/*----- \83T\83u\83L\81[\82ð\83N\83\8d\81[\83Y\82·\82é ------------------------------------------------\r
+/*----- サブキーをクローズする ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
+*              void *Handle : ハンドル\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1805,14 +1805,14 @@ static int CloseSubKey(void *Handle)
 }\r
 \r
 \r
-/*----- \83T\83u\83L\81[\82ð\8dí\8f\9c\82·\82é ----------------------------------------------------\r
+/*----- サブキーを削除する ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1834,14 +1834,14 @@ static int DeleteSubKey(void *Handle, char *Name)
 }\r
 \r
 \r
-/*----- \92l\82ð\8dí\8f\9c\82·\82é ----------------------------------------------------------\r
+/*----- 値を削除する ----------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1863,15 +1863,15 @@ static int DeleteValue(void *Handle, char *Name)
 }\r
 \r
 \r
-/*----- INT\92l\82ð\93Ç\82Ý\8d\9e\82Þ -------------------------------------------------------\r
+/*----- INT値を読み込む -------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              int *Value : INT\92l\82ð\95Ô\82·\83\8f\81[\83N\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              int *Value : INT値を返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1900,15 +1900,15 @@ static int ReadIntValueFromReg(void *Handle, char *Name, int *Value)
 }\r
 \r
 \r
-/*----- INT\92l\82ð\8f\91\82«\8d\9e\82Þ -------------------------------------------------------\r
+/*----- INT値を書き込む -------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              int Value : INT\92l\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              int Value : INT\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1934,16 +1934,16 @@ static int WriteIntValueToReg(void *Handle, char *Name, int Value)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\93Ç\82Ý\8d\9e\82Þ ------------------------------------------------------\r
+/*----- 文字列を読み込む ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              char *Str : \95\8e\9a\97ñ\82ð\95Ô\82·\83\8f\81[\83N\r
-*              DWORD Size : \8dÅ\91å\83T\83C\83Y\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              char *Str : 文字列を返すワーク\r
+*              DWORD Size : 最大サイズ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1976,15 +1976,15 @@ static int ReadStringFromReg(void *Handle, char *Name, char *Str, DWORD Size)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\8f\91\82«\8d\9e\82Þ ------------------------------------------------------\r
+/*----- 文字列を書き込む ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              char *Str :\95\8e\9a\97ñ\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              char *Str :文字列\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -2009,16 +2009,16 @@ static int WriteStringToReg(void *Handle, char *Name, char *Str)
 }\r
 \r
 \r
-/*----- \83}\83\8b\83`\95\8e\9a\97ñ\82ð\93Ç\82Ý\8d\9e\82Þ ------------------------------------------------\r
+/*----- マルチ文字列を読み込む ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              char *Str : \95\8e\9a\97ñ\82ð\95Ô\82·\83\8f\81[\83N\r
-*              DWORD Size : \8dÅ\91å\83T\83C\83Y\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              char *Str : 文字列を返すワーク\r
+*              DWORD Size : 最大サイズ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -2051,15 +2051,15 @@ static int ReadMultiStringFromReg(void *Handle, char *Name, char *Str, DWORD Siz
 }\r
 \r
 \r
-/*----- \83}\83\8b\83`\95\8e\9a\97ñ\82ð\8f\91\82«\8d\9e\82Þ ------------------------------------------------\r
+/*----- マルチ文字列を書き込む ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -2084,16 +2084,16 @@ static int WriteMultiStringToReg(void *Handle, char *Name, char *Str)
 }\r
 \r
 \r
-/*----- \83o\83C\83i\83\8a\82ð\93Ç\82Ý\8d\9e\82Þ-----------------------------------------------------\r
+/*----- バイナリを読み込む-----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              void *Bin : \83o\83C\83i\83\8a\82ð\95Ô\82·\83\8f\81[\83N\r
-*              DWORD Size : \8dÅ\91å\83T\83C\83Y\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              void *Bin : バイナリを返すワーク\r
+*              DWORD Size : 最大サイズ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -2121,16 +2121,16 @@ static int ReadBinaryFromReg(void *Handle, char *Name, void *Bin, DWORD Size)
 }\r
 \r
 \r
-/*----- \83o\83C\83i\83\8a\82ð\8f\91\82«\8d\9e\82Þ ----------------------------------------------------\r
+/*----- バイナリを書き込む ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              void *Bin : \83o\83C\83i\83\8a\r
-*              int Len : \92·\82³\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              void *Bin : バイナリ\r
+*              int Len : 長さ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      SUCCESS/FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -2155,15 +2155,15 @@ static int WriteBinaryToReg(void *Handle, char *Name, void *Bin, int Len)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\83o\83b\83t\83@\82É\92Ç\89Á\8f\91\82«\8d\9e\82Ý\82·\82é ------------------------------------\r
+/*----- 文字列をバッファに追加書き込みする ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Src : \95\8e\9a\97ñ\r
-*              int len : \95\8e\9a\97ñ\82Ì\92·\82³\r
-*              char *Dst : \8f\91\82«\8d\9e\82Ý\82·\82é\83o\83b\83t\83@\r
+*              char *Src : 文字列\r
+*              int len : 文字列の長さ\r
+*              char *Dst : 書き込みするバッファ\r
 *\r
 *      Return Value\r
-*              int \92Ç\89Á\82µ\82½\83o\83C\83g\90\94\r
+*              int 追加したバイト数\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int StrCatOut(char *Src, int Len, char *Dst)\r
@@ -2198,15 +2198,15 @@ static int StrCatOut(char *Src, int Len, char *Dst)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\83o\83b\83t\83@\82É\93Ç\82Ý\8d\9e\82Þ --------------------------------------------\r
+/*----- 文字列をバッファに読み込む --------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Src : \95\8e\9a\97ñ\r
-*              int Max : \8dÅ\91å\83T\83C\83Y\r
-*              char *Dst : \8f\91\82«\8d\9e\82Ý\82·\82é\83o\83b\83t\83@\r
+*              char *Src : 文字列\r
+*              int Max : 最大サイズ\r
+*              char *Dst : 書き込みするバッファ\r
 *\r
 *      Return Value\r
-*              int \93Ç\82Ý\8d\9e\82ñ\82¾\83o\83C\83g\90\94\r
+*              int 読み込んだバイト数\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int StrReadIn(char *Src, int Max, char *Dst)\r
@@ -2243,15 +2243,15 @@ static int StrReadIn(char *Src, int Max, char *Dst)
 }\r
 \r
 \r
-/*----- \92l\82ð\8c\9f\8dõ\82·\82é ----------------------------------------------------------\r
+/*----- 値を検索する ----------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
+*              char *Handle : ハンドル\r
+*              char *Name : 名前\r
 *\r
 *      Return Value\r
-*              char *\92l\83f\81[\83^\82Ì\90æ\93ª\r
-*                      NULL=\8ew\92è\82Ì\96¼\91O\82Ì\92l\82ª\8c©\82Â\82©\82ç\82È\82¢\r
+*              char *値データの先頭\r
+*                      NULL=指定の名前の値が見つからない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static char *ScanValue(void *Handle, char *Name)\r
@@ -2277,16 +2277,16 @@ static char *ScanValue(void *Handle, char *Name)
 }\r
 \r
 \r
-/*----------- \83p\83X\83\8f\81[\83h\82Ì\91Ã\93\96\90«\82ð\8am\94F\82·\82é ------------------------------------\r
+/*----------- パスワードの妥当性を確認する ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Password: \83p\83X\83\8f\81[\83h\95\8e\9a\97ñ\r
-*              char *HashStr: SHA-1\83n\83b\83V\83\85\95\8e\9a\97ñ\r
+*              char *Password: パスワード文字列\r
+*              char *HashStr: SHA-1ハッシュ文字列\r
 *\r
 *      Return Value\r
-*              int 0 \95s\88ê\92v\r
-*                      1: \88ê\92v\r
-*                      2: \88Ù\8fí\r
+*              int 0 不一致\r
+*                      1: 一致\r
+*                      2: 異常\r
 *----------------------------------------------------------------------------*/\r
 int CheckPasswordValidity( char* Password, int length, const char* HashStr )\r
 {\r
@@ -2297,13 +2297,13 @@ int CheckPasswordValidity( char* Password, int length, const char* HashStr )
        \r
        const char* p = HashStr;\r
        \r
-       /* \8bó\95\8e\9a\97ñ\82Í\88ê\92v\82µ\82½\82±\82Æ\82É\82·\82é */\r
+       /* 空文字列は一致したことにする */\r
        if( HashStr[0] == NUL ) return 1;\r
 \r
-       /* Hash\82ð\83`\83F\83b\83N\82·\82é\82·\82é*/\r
+       /* Hashをチェックするする*/\r
        if( strlen(HashStr) != 40 )     return 2;\r
 \r
-       /* Hash\82ð\83f\83R\81[\83h\82·\82é*/\r
+       /* Hashをデコードする*/\r
        for( i = 0; i < 5; i++ ){\r
                ulong decode = 0;\r
                for( j = 0; j < 8; j++ ){\r
@@ -2316,7 +2316,7 @@ int CheckPasswordValidity( char* Password, int length, const char* HashStr )
                hash1[i] = decode;\r
        }\r
        \r
-       /* Password \82ð\83n\83b\83V\83\85\82·\82é */\r
+       /* Password をハッシュする */\r
        sha_memory( Password, length, hash2 );\r
        \r
        if( memcmp( (char*)hash1, (char*)hash2, sizeof( hash1 )) == 0 ){\r
@@ -2325,11 +2325,11 @@ int CheckPasswordValidity( char* Password, int length, const char* HashStr )
        return 0;\r
 }\r
 \r
-/*----------- \83p\83X\83\8f\81[\83h\82Ì\91Ã\93\96\90«\83`\83F\83b\83N\82Ì\82½\82ß\82Ì\95\8e\9a\97ñ\82ð\8dì\90¬\82·\82é ------------\r
+/*----------- パスワードの妥当性チェックのための文字列を作成する ------------\r
 *\r
 *      Parameter\r
-*              char *Password: \83p\83X\83\8f\81[\83h\95\8e\9a\97ñ\r
-*              char *Str: SHA-1\83n\83b\83V\83\85\95\8e\9a\97ñ\8ai\94[\8fê\8f\8a (41bytes\88È\8fã)\r
+*              char *Password: パスワード文字列\r
+*              char *Str: SHA-1ハッシュ文字列格納場所 (41bytes以上)\r
 *\r
 *      Return Value\r
 *              None\r
index 29ee82e..d634f3e 100644 (file)
@@ -1,4 +1,4 @@
-/**************************************************************************\r
+/**************************************************************************\r
 \r
        OleDragDrop.c\r
 \r
@@ -22,7 +22,7 @@
 #include "OleDragDrop.h"\r
 \r
 \r
-/* Clipboard format \82©\82ç Type of storage medium \82ð\8eæ\93¾ */\r
+/* Clipboard format から Type of storage medium を取得 */\r
 static DWORD FormatToTymed(const UINT cfFormat)\r
 {\r
        switch(cfFormat)\r
@@ -78,7 +78,7 @@ typedef struct _IDROPTARGET_INTERNAL{
        IDROPTARGET_NOTIFY dtn;\r
 }IDROPTARGET_INTERNAL , *LPIDROPTARGET_INTERNAL;\r
 \r
-/* OLE\82Ì\83h\83\8d\83b\83v\83^\81[\83Q\83b\83g\82Æ\82µ\82Ä\93o\98^\82·\82é */\r
+/* OLEのドロップターゲットとして登録する */\r
 BOOL APIPRIVATE OLE_IDropTarget_RegisterDragDrop(HWND hWnd, UINT uCallbackMessage, UINT *cFormat, int cfcnt)\r
 {\r
        static IDROPTARGET_INTERNAL *pdti;\r
@@ -89,19 +89,19 @@ BOOL APIPRIVATE OLE_IDropTarget_RegisterDragDrop(HWND hWnd, UINT uCallbackMessag
        }\r
        pdti->lpVtbl = (LPVOID)&dtv;\r
        pdti->m_refCnt = 0;\r
-       pdti->hWnd = hWnd;                                                                                                      /* \83\81\83b\83Z\81[\83W\82ð\8eó\82¯\8eæ\82é\83E\83B\83\93\83h\83E */\r
-       pdti->uCallbackMessage = uCallbackMessage;                                                      /* \83\81\83b\83Z\81[\83W */\r
-       pdti->cFormat = (UINT *)GlobalAlloc(GPTR, sizeof(UINT) * cfcnt);                /* \91Î\89\9e\82µ\82Ä\82¢\82é\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g */\r
+       pdti->hWnd = hWnd;                                                                                                      /* メッセージを受け取るウィンドウ */\r
+       pdti->uCallbackMessage = uCallbackMessage;                                                      /* メッセージ */\r
+       pdti->cFormat = (UINT *)GlobalAlloc(GPTR, sizeof(UINT) * cfcnt);                /* 対応しているクリップボードフォーマット */\r
        if(pdti->cFormat == NULL){\r
                GlobalFree(pdti);\r
                return FALSE;\r
        }\r
        CopyMemory(pdti->cFormat, cFormat, sizeof(UINT) * cfcnt);\r
-       pdti->cfcnt = cfcnt;                                                                                            /* \83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82Ì\90\94 */\r
+       pdti->cfcnt = cfcnt;                                                                                            /* クリップボードフォーマットの数 */\r
        return (S_OK == RegisterDragDrop(hWnd, (LPDROPTARGET)pdti));\r
 }\r
 \r
-/* OLE\82Ì\83h\83\8d\83b\83v\83^\81[\83Q\83b\83g\82ð\89ð\8f\9c\82·\82é */\r
+/* OLEのドロップターゲットを解除する */\r
 void APIPRIVATE OLE_IDropTarget_RevokeDragDrop(HWND hWnd)\r
 {\r
        RevokeDragDrop(hWnd);\r
@@ -109,7 +109,7 @@ void APIPRIVATE OLE_IDropTarget_RevokeDragDrop(HWND hWnd)
 \r
 static HRESULT STDMETHODCALLTYPE OLE_IDropTarget_QueryInterface(LPDROPTARGET pThis, REFIID riid, PVOID *ppvObject)\r
 {\r
-       //\97v\8b\81\82³\82ê\82½IID\82Æ\93¯\82\8fê\8d\87\82Í\83I\83u\83W\83F\83N\83g\82ð\95Ô\82·\r
+       //要求されたIIDと同じ場合はオブジェクトを返す\r
        if(IsEqualIID(riid, &IID_IUnknown) || IsEqualIID(riid, &IID_IDropTarget)){\r
                *ppvObject = (LPVOID)pThis;\r
                ((LPUNKNOWN)*ppvObject)->lpVtbl->AddRef((LPUNKNOWN)*ppvObject);\r
@@ -123,7 +123,7 @@ static ULONG STDMETHODCALLTYPE OLE_IDropTarget_AddRef(LPDROPTARGET pThis)
 {\r
        CONST LPIDROPTARGET_INTERNAL pdti = (LPIDROPTARGET_INTERNAL)pThis;\r
 \r
-       /* reference count\82ð\83C\83\93\83N\83\8a\83\81\83\93\83g\82·\82é */\r
+       /* reference countをインクリメントする */\r
        pdti->m_refCnt++;\r
        return pdti->m_refCnt;\r
 }\r
@@ -132,10 +132,10 @@ static ULONG STDMETHODCALLTYPE OLE_IDropTarget_Release(LPDROPTARGET pThis)
 {\r
        CONST LPIDROPTARGET_INTERNAL pdti = (LPIDROPTARGET_INTERNAL)pThis;\r
 \r
-       /* reference count\82ð\83f\83N\83\8a\83\81\83\93\83g\82·\82é */\r
+       /* reference countをデクリメントする */\r
        pdti->m_refCnt--;\r
 \r
-       /* reference count\82ª 0 \82É\82È\82Á\82½\8fê\8d\87\82Í\83I\83u\83W\83F\83N\83g\82Ì\89ð\95ú\82ð\8ds\82¤ */\r
+       /* reference countが 0 になった場合はオブジェクトの解放を行う */\r
        if(pdti->m_refCnt == 0L){\r
                if(pdti->cFormat != NULL){\r
                        GlobalFree(pdti->cFormat);\r
@@ -175,35 +175,35 @@ static HRESULT APIPRIVATE OLE_IDropTarget_Internal_SendMessage(LPDROPTARGET pThi
        int i;\r
 \r
        if(pdo){\r
-               /* \91Î\89\9e\82µ\82Ä\82¢\82é\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82ª\82 \82é\82©\92²\82×\82é */\r
+               /* 対応しているクリップボードフォーマットがあるか調べる */\r
                for(i = 0;i < pdti->cfcnt;i++){\r
                        if(DropTarget_QueryGetData(pdo, pdti->cFormat[i]) == S_OK){\r
                                cfFormat = pdti->cFormat[i];\r
                                break;\r
                        }\r
                }\r
-               /* \83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82©\82ç\83f\81[\83^\82ð\8eæ\93¾\82·\82é */\r
+               /* クリップボードフォーマットからデータを取得する */\r
                if(cfFormat != 0){\r
                        if (DropTarget_GetData(pdo, cfFormat, &sm) != S_OK){\r
                                cfFormat = 0;\r
                        }\r
                }\r
        }\r
-       pdtn->ppt = ppt;                                        /* \83}\83E\83X\83|\83C\83\93\83^\82Ì\88Ê\92u */\r
-       pdtn->grfKeyState = grfKeyState;        /* \83L\81[\81A\83}\83E\83X\83{\83^\83\93\82Ì\8fó\91Ô */\r
-       pdtn->cfFormat = cfFormat;                      /* \83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g */\r
-       pdtn->hMem = sm.hGlobal;                        /* \8eÀ\83f\81[\83^ */\r
+       pdtn->ppt = ppt;                                        /* マウスポインタの位置 */\r
+       pdtn->grfKeyState = grfKeyState;        /* キー、マウスボタンの状態 */\r
+       pdtn->cfFormat = cfFormat;                      /* クリップボードフォーマット */\r
+       pdtn->hMem = sm.hGlobal;                        /* 実データ */\r
        pdtn->pdo = pdo;                                        /* IDataObject */\r
 \r
-       /* \83E\83B\83\93\83h\83E\82É\83C\83x\83\93\83g\82ð\92Ê\92m\82·\82é */\r
+       /* ウィンドウにイベントを通知する */\r
        SendMessage(pdti->hWnd, pdti->uCallbackMessage, (WPARAM)uNotify, (LPARAM)pdtn);\r
 \r
-       /* \83N\83\8a\83b\83v\83{\81[\83h\8c`\8e®\82Ì\83f\81[\83^\82Ì\89ð\95ú */\r
+       /* クリップボード形式のデータの解放 */\r
        if(cfFormat){\r
                ReleaseStgMedium(&sm);\r
        }\r
 \r
-       /* \8cø\89Ê\82Ì\90Ý\92è */\r
+       /* 効果の設定 */\r
        if(pdwEffect){\r
                *pdwEffect &= pdtn->dwEffect;\r
 \r
@@ -219,7 +219,7 @@ static HRESULT APIPRIVATE DropTarget_GetData(LPDATAOBJECT pdo, UINT cfFormat, LP
 {\r
        FORMATETC fmt;\r
 \r
-       /* IDataObject\82É\83N\83\8a\83b\83v\83{\81[\83h\8c`\8e®\82Ì\83f\81[\83^\82ð\97v\8b\81\82·\82é */\r
+       /* IDataObjectにクリップボード形式のデータを要求する */\r
        fmt.cfFormat = cfFormat;\r
        fmt.ptd = NULL;\r
        fmt.dwAspect = DVASPECT_CONTENT;\r
@@ -232,7 +232,7 @@ static HRESULT APIPRIVATE DropTarget_QueryGetData(LPDATAOBJECT pdo, UINT cfForma
 {\r
        FORMATETC fmt;\r
 \r
-       /* IDataObject\82É\8ew\92è\82Ì\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82ª\91\8dÝ\82·\82é\82©\96â\82¢\8d\87\82í\82¹\82é */\r
+       /* IDataObjectに指定のクリップボードフォーマットが存在するか問い合わせる */\r
        fmt.cfFormat = cfFormat;\r
        fmt.ptd = NULL;\r
        fmt.dwAspect = DVASPECT_CONTENT;\r
@@ -278,7 +278,7 @@ typedef struct _IENUMFORMATETC_INTERNAL{
 \r
 static HRESULT STDMETHODCALLTYPE OLE_IEnumFORMATETC_QueryInterface(LPENUMFORMATETC lpThis, REFIID riid, LPVOID FAR* lplpvObj)\r
 {\r
-       //\97v\8b\81\82³\82ê\82½IID\82Æ\93¯\82\8fê\8d\87\82Í\83I\83u\83W\83F\83N\83g\82ð\95Ô\82·\r
+       //要求されたIIDと同じ場合はオブジェクトを返す\r
        if(IsEqualIID(riid, &IID_IUnknown) || IsEqualIID(riid, &IID_IEnumFORMATETC)){\r
                *lplpvObj = (LPVOID) lpThis;\r
                 ((LPUNKNOWN)*lplpvObj)->lpVtbl->AddRef(((LPUNKNOWN)*lplpvObj));\r
@@ -292,9 +292,9 @@ static ULONG STDMETHODCALLTYPE OLE_IEnumFORMATETC_AddRef(LPENUMFORMATETC lpThis)
 {\r
        CONST LPIENUMFORMATETC_INTERNAL pefi = (LPIENUMFORMATETC_INTERNAL)lpThis;\r
 \r
-       /* reference count\82ð\83C\83\93\83N\83\8a\83\81\83\93\83g\82·\82é */\r
+       /* reference countをインクリメントする */\r
        pefi->m_refCnt++;\r
-       /* \90e\83I\83u\83W\83F\83N\83g\82Ìreference count\82ð\89Á\82¦\82é */\r
+       /* 親オブジェクトのreference countを加える */\r
        pefi->m_pUnknownObj->lpVtbl->AddRef(pefi->m_pUnknownObj);\r
        return pefi->m_refCnt;\r
 }\r
@@ -303,12 +303,12 @@ static ULONG STDMETHODCALLTYPE OLE_IEnumFORMATETC_Release(LPENUMFORMATETC lpThis
 {\r
        CONST LPIENUMFORMATETC_INTERNAL pefi = (LPIENUMFORMATETC_INTERNAL)lpThis;\r
 \r
-       /* reference count\82ð\83f\83N\83\8a\83\81\83\93\83g\82·\82é */\r
+       /* reference countをデクリメントする */\r
        pefi->m_refCnt--;\r
-       /* \90e\83I\83u\83W\83F\83N\83g\82Ìreference count\82ð\8c¸\82ç\82· */\r
+       /* 親オブジェクトのreference countを減らす */\r
        pefi->m_pUnknownObj->lpVtbl->Release(pefi->m_pUnknownObj);\r
 \r
-       /* reference count\82ª 0 \82É\82È\82Á\82½\8fê\8d\87\82Í\83I\83u\83W\83F\83N\83g\82Ì\89ð\95ú\82ð\8ds\82¤ */\r
+       /* reference countが 0 になった場合はオブジェクトの解放を行う */\r
        if(pefi->m_refCnt == 0L){\r
                if(pefi->m_formatList != NULL){\r
                        GlobalFree(pefi->m_formatList);\r
@@ -383,7 +383,7 @@ static HRESULT STDMETHODCALLTYPE OLE_IEnumFORMATETC_Clone(LPENUMFORMATETC lpThis
        LPIENUMFORMATETC_INTERNAL lpefi = ((LPIENUMFORMATETC_INTERNAL)lpThis);\r
        UINT i;\r
 \r
-       /* IEnumFORMATETC\82ð\8dì\90¬\82·\82é */\r
+       /* IEnumFORMATETCを作成する */\r
        pNew = GlobalAlloc(GPTR, sizeof(IENUMFORMATETC_INTERNAL));\r
        if(pNew == NULL){\r
                return ResultFromScode(E_OUTOFMEMORY);\r
@@ -395,7 +395,7 @@ static HRESULT STDMETHODCALLTYPE OLE_IEnumFORMATETC_Clone(LPENUMFORMATETC lpThis
        pNew->m_pUnknownObj = lpefi->m_pUnknownObj;\r
        pNew->m_numFormats = lpefi->m_numFormats;\r
 \r
-       /* \83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82Ì\83\8a\83X\83g\82ð\83R\83s\81[\82·\82é */\r
+       /* クリップボードフォーマットのリストをコピーする */\r
        pNew->m_formatList = GlobalAlloc(GPTR, sizeof(FORMATETC) * pNew->m_numFormats);\r
        if(pNew->m_formatList != NULL){\r
                for(i = 0;i < pNew->m_numFormats;i++){\r
@@ -461,7 +461,7 @@ typedef struct _IDATAOBJECT_INTERNAL{
 \r
 static HRESULT STDMETHODCALLTYPE OLE_IDataObject_QueryInterface(LPDATAOBJECT lpThis, REFIID riid, LPVOID FAR *lplpvObj)\r
 {\r
-       //\97v\8b\81\82³\82ê\82½IID\82Æ\93¯\82\8fê\8d\87\82Í\83I\83u\83W\83F\83N\83g\82ð\95Ô\82·\r
+       //要求されたIIDと同じ場合はオブジェクトを返す\r
        if(IsEqualIID(riid, &IID_IUnknown) || IsEqualIID(riid, &IID_IDataObject)){\r
                *lplpvObj = lpThis;\r
                 ((LPUNKNOWN)*lplpvObj)->lpVtbl->AddRef(((LPUNKNOWN)*lplpvObj));\r
@@ -475,7 +475,7 @@ static ULONG STDMETHODCALLTYPE OLE_IDataObject_AddRef(LPDATAOBJECT lpThis)
 {\r
        CONST LPIDATAOBJECT_INTERNAL pdoi = (LPIDATAOBJECT_INTERNAL)lpThis;\r
 \r
-       /* reference count\82ð\83C\83\93\83N\83\8a\83\81\83\93\83g\82·\82é */\r
+       /* reference countをインクリメントする */\r
        pdoi->m_refCnt++;\r
        return pdoi->m_refCnt;\r
 }\r
@@ -484,10 +484,10 @@ static ULONG STDMETHODCALLTYPE OLE_IDataObject_Release(LPDATAOBJECT lpThis)
 {\r
        CONST LPIDATAOBJECT_INTERNAL pdoi = (LPIDATAOBJECT_INTERNAL)lpThis;\r
 \r
-       /* reference count\82ð\83f\83N\83\8a\83\81\83\93\83g\82·\82é */\r
+       /* reference countをデクリメントする */\r
        pdoi->m_refCnt--;\r
 \r
-       /* reference count\82ª 0 \82É\82È\82Á\82½\8fê\8d\87\82Í\83I\83u\83W\83F\83N\83g\82Ì\89ð\95ú\82ð\8ds\82¤ */\r
+       /* reference countが 0 になった場合はオブジェクトの解放を行う */\r
        if(pdoi->m_refCnt == 0L){\r
                if(pdoi->m_typeList != NULL){\r
                        GlobalFree(pdoi->m_typeList);\r
@@ -504,24 +504,24 @@ static HRESULT STDMETHODCALLTYPE OLE_IDataObject_GetData(LPDATAOBJECT lpThis, FO
        HGLOBAL hMem;\r
        UINT i;\r
 \r
-       /* \97v\8b\81\82³\82ê\82½\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82ª\91\8dÝ\82·\82é\82©\92²\82×\82é */\r
+       /* 要求されたクリップボードフォーマットが存在するか調べる */\r
        for(i = 0;i < pdoi->m_numTypes;i++){\r
                if(pdoi->m_typeList[i].cfFormat == pFormatetc->cfFormat){\r
                        break;\r
                }\r
        }\r
        if(i == pdoi->m_numTypes){\r
-               /* \97v\8b\81\82³\82ê\82½\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82ð\83T\83|\81[\83g\82µ\82Ä\82È\82¢\8fê\8d\87 */\r
+               /* 要求されたクリップボードフォーマットをサポートしてない場合 */\r
                return ResultFromScode(DV_E_FORMATETC);\r
        }\r
 \r
-       // \83}\83E\83X\82Ì\83h\83\89\83b\83O\92\86\82Í WM_GETDATA \82ð\91\97\82ç\82È\82¢\82æ\82¤\82É\82·\82é\81B(2007.9.3 yutaka)\r
+       // マウスのドラッグ中は WM_GETDATA を送らないようにする。(2007.9.3 yutaka)\r
        if (GetAsyncKeyState(VK_LBUTTON) & 0x8000 ||\r
                GetAsyncKeyState(VK_RBUTTON) & 0x8000) {\r
                return ResultFromScode(DV_E_FORMATETC);\r
        }\r
 \r
-       /* \83E\83B\83\93\83h\83E\82É\83f\81[\83^\82Ì\97v\8b\81\82ð\8ds\82¤ */\r
+       /* ウィンドウにデータの要求を行う */\r
        SendMessage(pdoi->hWnd, pdoi->uCallbackMessage, (WPARAM)pdoi->m_typeList[i].cfFormat, (LPARAM)&hMem);\r
        if(hMem == NULL){\r
                return ResultFromScode(STG_E_MEDIUMFULL);\r
@@ -542,7 +542,7 @@ static HRESULT STDMETHODCALLTYPE OLE_IDataObject_QueryGetData(LPDATAOBJECT lpThi
        CONST LPIDATAOBJECT_INTERNAL pdoi = (LPIDATAOBJECT_INTERNAL)lpThis;\r
        UINT i;\r
 \r
-       /* \97v\8b\81\82³\82ê\82½\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82ª\91\8dÝ\82·\82é\82©\92²\82×\82é */\r
+       /* 要求されたクリップボードフォーマットが存在するか調べる */\r
        for(i = 0;i < pdoi->m_numTypes;i++){\r
                if(pdoi->m_typeList[i].cfFormat == pFormatetc->cfFormat){\r
                        return S_OK;\r
@@ -576,7 +576,7 @@ static HRESULT STDMETHODCALLTYPE OLE_IDataObject_EnumFormatEtc(LPDATAOBJECT lpTh
                return ResultFromScode(E_NOTIMPL);\r
        }\r
 \r
-       /* IEnumFORMATETC\82ð\8dì\90¬\82·\82é */\r
+       /* IEnumFORMATETCを作成する */\r
        pefi = GlobalAlloc(GPTR, sizeof(IENUMFORMATETC_INTERNAL));\r
        if(pefi == NULL){\r
                return E_OUTOFMEMORY;\r
@@ -587,7 +587,7 @@ static HRESULT STDMETHODCALLTYPE OLE_IDataObject_EnumFormatEtc(LPDATAOBJECT lpTh
        pefi->m_pUnknownObj = (struct IUnknown *)lpThis;\r
        pefi->m_numFormats = pdoi->m_numTypes;\r
 \r
-       /* \83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82Ì\83\8a\83X\83g\82ð\83R\83s\81[\82·\82é */\r
+       /* クリップボードフォーマットのリストをコピーする */\r
        pefi->m_formatList = GlobalAlloc(GPTR, sizeof(FORMATETC) * pefi->m_numFormats);\r
        if(pefi->m_formatList != NULL){\r
                for(i = 0;i < pefi->m_numFormats;i++){\r
@@ -652,7 +652,7 @@ typedef struct _IDROPSOURCE_INTERNAL{
 \r
 static HRESULT STDMETHODCALLTYPE OLE_IDropSource_QueryInterface(LPDROPSOURCE lpThis, REFIID riid, LPVOID FAR *lplpvObj)\r
 {\r
-       //\97v\8b\81\82³\82ê\82½IID\82Æ\93¯\82\8fê\8d\87\82Í\83I\83u\83W\83F\83N\83g\82ð\95Ô\82·\r
+       //要求されたIIDと同じ場合はオブジェクトを返す\r
        if(IsEqualIID(riid, &IID_IUnknown) || IsEqualIID(riid, &IID_IDropSource)){\r
                *lplpvObj = (LPVOID) lpThis;\r
                ((LPUNKNOWN)*lplpvObj)->lpVtbl->AddRef(((LPUNKNOWN)*lplpvObj));\r
@@ -667,7 +667,7 @@ static ULONG STDMETHODCALLTYPE OLE_IDropSource_AddRef(LPDROPSOURCE lpThis)
 {\r
        CONST LPIDROPSOURCE_INTERNAL pdsi = (LPIDROPSOURCE_INTERNAL)lpThis;\r
 \r
-       /* reference count\82ð\83C\83\93\83N\83\8a\83\81\83\93\83g\82·\82é */\r
+       /* reference countをインクリメントする */\r
        pdsi->m_refCnt++;\r
        return pdsi->m_refCnt;\r
 }\r
@@ -676,10 +676,10 @@ static ULONG STDMETHODCALLTYPE OLE_IDropSource_Release(LPDROPSOURCE lpThis)
 {\r
        CONST LPIDROPSOURCE_INTERNAL pdsi = (LPIDROPSOURCE_INTERNAL)lpThis;\r
 \r
-       /* reference count\82ð\83f\83N\83\8a\83\81\83\93\83g\82·\82é */\r
+       /* reference countをデクリメントする */\r
        pdsi->m_refCnt--;\r
 \r
-       /* reference count\82ª 0 \82É\82È\82Á\82½\8fê\8d\87\82Í\83I\83u\83W\83F\83N\83g\82Ì\89ð\95ú\82ð\8ds\82¤ */\r
+       /* reference countが 0 になった場合はオブジェクトの解放を行う */\r
        if(pdsi->m_refCnt == 0L){\r
                GlobalFree(pdsi);\r
                return 0L;\r
@@ -692,14 +692,14 @@ static HRESULT STDMETHODCALLTYPE OLE_IDropSource_QueryContinueDrag(LPDROPSOURCE
        CONST LPIDROPSOURCE_INTERNAL pdsi = (LPIDROPSOURCE_INTERNAL)lpThis;\r
 \r
        if(fEscapePressed){\r
-               /* \83G\83X\83P\81[\83v\82ª\89\9f\82³\82ê\82½\8fê\8d\87\82Í\83L\83\83\83\93\83Z\83\8b\82É\82·\82é */\r
+               /* エスケープが押された場合はキャンセルにする */\r
                return ResultFromScode(DRAGDROP_S_CANCEL);\r
        }\r
 \r
-       // Mouse over\82Ì\92Ê\92m (yutaka)\r
+       // Mouse overの通知 (yutaka)\r
        SendMessage(pdsi->m_hWnd, pdsi->m_uCallbackDragOverMessage, 0, 0);\r
 \r
-       /* \8ew\92è\82Ì\83L\81[\82â\83}\83E\83X\82ª\97£\82³\82ê\82½\8fê\8d\87\82Í\83h\83\8d\83b\83v\82É\82·\82é */\r
+       /* 指定のキーやマウスが離された場合はドロップにする */\r
        if(pdsi->m_button == 0){\r
                if(grfKeyState != pdsi->m_keyState){\r
                        return ResultFromScode(DRAGDROP_S_DROP);\r
@@ -717,7 +717,7 @@ static HRESULT STDMETHODCALLTYPE OLE_IDropSource_GiveFeedback(LPDROPSOURCE lpThi
        return ResultFromScode(DRAGDROP_S_USEDEFAULTCURSORS);\r
 }\r
 \r
-/* \83h\83\89\83b\83O\81\95\83h\83\8d\83b\83v\82Ì\8aJ\8en */\r
+/* ドラッグ&ドロップの開始 */\r
 int APIPRIVATE OLE_IDropSource_Start(HWND hWnd, UINT uCallbackMessage, UINT uCallbackDragOverMessage, UINT *ClipFormtList, int cfcnt, int Effect)\r
 {\r
        static IDATAOBJECT_INTERNAL *pdoi;\r
@@ -727,7 +727,7 @@ int APIPRIVATE OLE_IDropSource_Start(HWND hWnd, UINT uCallbackMessage, UINT uCal
        int i;\r
        int ret;\r
 \r
-       /* IDataObject\82Ì\8dì\90¬ */\r
+       /* IDataObjectの作成 */\r
        pdoi = GlobalAlloc(GPTR, sizeof(IDATAOBJECT_INTERNAL));\r
        if(pdoi == NULL){\r
                return -1;\r
@@ -736,7 +736,7 @@ int APIPRIVATE OLE_IDropSource_Start(HWND hWnd, UINT uCallbackMessage, UINT uCal
        pdoi->m_refCnt = 0;\r
        pdoi->m_numTypes = cfcnt;\r
        pdoi->m_maxTypes = cfcnt;\r
-       /* \97L\8cø\82È\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82ð\90Ý\92è\82·\82é */\r
+       /* 有効なクリップボードフォーマットを設定する */\r
        pdoi->m_typeList = GlobalAlloc(GPTR, sizeof(FORMATETC) * cfcnt);\r
        if(pdoi->m_typeList == NULL){\r
                GlobalFree(pdoi);\r
@@ -753,10 +753,10 @@ int APIPRIVATE OLE_IDropSource_Start(HWND hWnd, UINT uCallbackMessage, UINT uCal
        pdoi->uCallbackMessage = uCallbackMessage;\r
        ((LPDATAOBJECT)pdoi)->lpVtbl->AddRef((LPDATAOBJECT)pdoi);\r
 \r
-       /* IDropSource\82Ì\8dì\90¬ */\r
+       /* IDropSourceの作成 */\r
        pdsi = GlobalAlloc(GPTR, sizeof(IDROPSOURCE_INTERNAL));\r
        if(pdsi == NULL){\r
-               /* IDataObject\82ð\89ð\95ú\82·\82é */\r
+               /* IDataObjectを解放する */\r
                ((LPDATAOBJECT)pdoi)->lpVtbl->Release((LPDATAOBJECT)pdoi);\r
                return -1;\r
        }\r
@@ -765,14 +765,14 @@ int APIPRIVATE OLE_IDropSource_Start(HWND hWnd, UINT uCallbackMessage, UINT uCal
        pdsi->m_hWnd = hWnd; // yutaka\r
        pdsi->m_uCallbackDragOverMessage = uCallbackDragOverMessage;\r
 \r
-       /* \97L\8cø\82È\83L\81[\82Æ\83}\83E\83X\82Ì\8fó\91Ô */\r
+       /* 有効なキーとマウスの状態 */\r
        if(GetKeyState(VK_RBUTTON) & 0x8000){\r
                pdsi->m_button = MK_RBUTTON;\r
        }else{\r
                pdsi->m_button = MK_LBUTTON;\r
        }\r
 \r
-       /* \8c»\8dÝ\82Ì\83L\81[\82Æ\83}\83E\83X\82Ì\8fó\91Ô */\r
+       /* 現在のキーとマウスの状態 */\r
        keyState = 0;\r
        if(GetKeyState(VK_SHIFT) & 0x8000){\r
                keyState |= MK_SHIFT;\r
@@ -797,16 +797,16 @@ int APIPRIVATE OLE_IDropSource_Start(HWND hWnd, UINT uCallbackMessage, UINT uCal
 \r
        lpdwEffect = 0;\r
 \r
-       /* \83h\83\89\83b\83O&\83h\83\8d\83b\83v\82Ì\8aJ\8en */\r
+       /* ドラッグ&ドロップの開始 */\r
        ret = DoDragDrop((LPDATAOBJECT)pdoi, (LPDROPSOURCE)pdsi, Effect, &lpdwEffect);\r
 \r
-       /* IDataObject\82ð\89ð\95ú\82·\82é */\r
+       /* IDataObjectを解放する */\r
        ((LPDATAOBJECT)pdoi)->lpVtbl->Release((LPDATAOBJECT)pdoi);\r
-       /* IDropSource\82ð\89ð\95ú\82·\82é */\r
+       /* IDropSourceを解放する */\r
        ((LPDROPSOURCE)pdsi)->lpVtbl->Release((LPDROPSOURCE)pdsi);\r
 \r
        if(ret == DRAGDROP_S_DROP){\r
-               /* \83h\83\8d\83b\83v\90æ\82Ì\83A\83v\83\8a\83P\81[\83V\83\87\83\93\82ª\90Ý\92è\82µ\82½\8cø\89Ê\82ð\95Ô\82· */\r
+               /* ドロップ先のアプリケーションが設定した効果を返す */\r
                return lpdwEffect;\r
        }\r
        return -1;\r
index 1fbea01..02fca46 100644 (file)
@@ -1,4 +1,4 @@
-/**************************************************************************\r
+/**************************************************************************\r
 \r
        OleDragDrop.h\r
 \r
 #define IDROPTARGET_NOTIFY_DROP                3\r
 \r
 typedef struct _IDROPTARGET_NOTIFY{\r
-       POINTL *ppt;                                    //\83}\83E\83X\82Ì\88Ê\92u\r
-       DWORD dwEffect;                                 //\83h\83\89\83b\83O\91\80\8dì\82Å\81A\83h\83\89\83b\83O\82³\82ê\82é\91Î\8fÛ\82Å\8b\96\82³\82ê\82é\8cø\89Ê\r
-       DWORD grfKeyState;                              //\83L\81[\82Ì\8fó\91Ô\r
-       UINT cfFormat;                                  //\83h\83\8d\83b\83v\82³\82ê\82é\83f\81[\83^\82Ì\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\r
-       HANDLE hMem;                                    //\83h\83\8d\83b\83v\82³\82ê\82é\83f\81[\83^\r
+       POINTL *ppt;                                    //マウスの位置\r
+       DWORD dwEffect;                                 //ドラッグ操作で、ドラッグされる対象で許される効果\r
+       DWORD grfKeyState;                              //キーの状態\r
+       UINT cfFormat;                                  //ドロップされるデータのクリップボードフォーマット\r
+       HANDLE hMem;                                    //ドロップされるデータ\r
        LPVOID pdo;                                             //IDataObject\r
 }IDROPTARGET_NOTIFY , *LPIDROPTARGET_NOTIFY;\r
 \r
@@ -31,19 +31,19 @@ typedef struct _IDROPTARGET_NOTIFY{
 //DragTarget\r
 BOOL APIPRIVATE OLE_IDropTarget_RegisterDragDrop(HWND hWnd, UINT uCallbackMessage, UINT *cFormat, int cfcnt);\r
 \r
-//\83h\83\89\83b\83O&\83h\83\8d\83b\83v\82Ì\83^\81[\83Q\83b\83g\82Æ\82µ\82Ä\93o\98^\82µ\82Ü\82·\81B\r
+//ドラッグ&ドロップのターゲットとして登録します。\r
 \r
-//[\88ø\90\94]\r
-//     \83h\83\89\83b\83O&\83h\83\8d\83b\83v\91\80\8dì\82ª\8ds\82í\82ê\82½\82Æ\82«\82É\8ew\92è\82Ì\83E\83B\83\93\83h\83E\82Ì\8ew\92è\82Ì\83\81\83b\83Z\81[\83W\82É\92Ê\92m\82³\82ê\82Ü\82·\81B\r
-//     wParam \82É\91\80\8dì\82Ì\8eí\97Þ(IDROPTARGET_NOTIFY_)\82ª\90Ý\92è\82³\82ê\82Ä\82¢\82Ü\82·\81B\r
-//     lParam \82É IDROPTARGET_NOTIFY \8d\\91¢\91Ì\82Ö\82Ì\83|\83C\83\93\83^\82ª\90Ý\92è\82³\82ê\82Ä\82¢\82Ü\82·\81B\r
+//[引数]\r
+//     ドラッグ&ドロップ操作が行われたときに指定のウィンドウの指定のメッセージに通知されます。\r
+//     wParam に操作の種類(IDROPTARGET_NOTIFY_)が設定されています。\r
+//     lParam に IDROPTARGET_NOTIFY 構造体へのポインタが設定されています。\r
 \r
-//     cFormat \82Í \8eó\82¯\8eæ\82é\82±\82Æ\82ª\89Â\94\\82È\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82Ì\83\8a\83X\83g\82ð\8ew\92è\82µ\82Ü\82·\81B\r
-//     cfcnt \82Í\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82Ì\94z\97ñ\82Ì\97v\91f\90\94\82ð\8ew\92è\82µ\82Ü\82·\81B\r
+//     cFormat は 受け取ることが可能なクリップボードフォーマットのリストを指定します。\r
+//     cfcnt はクリップボードフォーマットの配列の要素数を指定します。\r
 \r
 void APIPRIVATE OLE_IDropTarget_RevokeDragDrop(HWND hWnd);\r
 \r
-//\83h\83\89\83b\83O\81\95\83h\83\8d\83b\83v\82Ì\83^\81[\83Q\83b\83g\82ð\89ð\8f\9c\82µ\82Ü\82·\81B\r
+//ドラッグ&ドロップのターゲットを解除します。\r
 \r
 \r
 \r
@@ -51,22 +51,22 @@ void APIPRIVATE OLE_IDropTarget_RevokeDragDrop(HWND hWnd);
 //DropSource\r
 int APIPRIVATE OLE_IDropSource_Start(HWND hWnd, UINT uCallbackMessage, UINT uCallbackDragOverMessage, UINT *ClipFormtList, int cfcnt, int Effect);\r
 \r
-//\83h\83\89\83b\83O\81\95\83h\83\8d\83b\83v\82ð\8aJ\8en\82·\82é\82Æ\82«\82É\8ew\92è\82µ\82Ü\82·\81B\r
-//\83h\83\89\83b\83O\81\95\83h\83\8d\83b\83v\91\80\8dì\82Í\8e©\93®\93I\82É\8ds\82í\82ê\82Ü\82·\82ª\81A\83f\81[\83^\82ª\95K\97v\82È\8e\9e\82Í\81A\8ew\92è\82Ì\83E\83B\83\93\83h\83E\83\81\83b\83Z\81[\83W\82Å\83f\81[\83^\97v\8b\81\82ð\8ds\82¢\82Ü\82·\81B\r
+//ドラッグ&ドロップを開始するときに指定します。\r
+//ドラッグ&ドロップ操作は自動的に行われますが、データが必要な時は、指定のウィンドウメッセージでデータ要求を行います。\r
 \r
-//[\88ø\90\94]\r
-//     hWnd \82É uCallbackMessage \82ð\91\97\82Á\82Ä\83f\81[\83^\82Ì\97v\8b\81\82ð\8ds\82¢\82Ü\82·\81B\r
-//     \82±\82Ì\8e\9e wParam \82É\97v\8b\81\82·\82é\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82Ì\92l\82ª\93ü\82Á\82Ä\82¢\82Ü\82·\81B\r
-//     \83v\83\8d\83O\83\89\83\80\82Í *(HANDLE *)lParam \82É\83f\81[\83^\82ð\90Ý\92è\82µ\82Ä\95Ô\82µ\82Ü\82·\81B(NULL\82Å\82à\89Â)\r
+//[引数]\r
+//     hWnd に uCallbackMessage を送ってデータの要求を行います。\r
+//     この時 wParam に要求するクリップボードフォーマットの値が入っています。\r
+//     プログラムは *(HANDLE *)lParam にデータを設定して返します。(NULLでも可)\r
 \r
-//     ClipFormtList \82Í\83T\83|\81[\83g\82µ\82Ä\82¢\82é\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82Ì\94z\97ñ\82ð\8ew\92è\82µ\82Ü\82·\81B\r
-//     cfcnt \82Í\83N\83\8a\83b\83v\83{\81[\83h\83t\83H\81[\83}\83b\83g\82Ì\94z\97ñ\82Ì\97v\91f\90\94\82ð\8ew\92è\82µ\82Ü\82·\81B\r
+//     ClipFormtList はサポートしているクリップボードフォーマットの配列を指定します。\r
+//     cfcnt はクリップボードフォーマットの配列の要素数を指定します。\r
 \r
-//     Effect \82Í \83h\83\89\83b\83O\91\80\8dì\82Å\83h\83\89\83b\83O\82³\82ê\82é\91Î\8fÛ\82Å\8b\96\82³\82ê\82é\8cø\89Ê\82Ì\91g\82Ý\8d\87\82í\82¹\82ð\8ew\92è\82µ\82Ü\82·\81B\r
+//     Effect は ドラッグ操作でドラッグされる対象で許される効果の組み合わせを指定します。\r
 \r
-//[\96ß\82è\92l]\r
-//\83h\83\8d\83b\83v\82ª\8ds\82í\82ê\82½\8fê\8d\87\82Í\81A\83h\83\8d\83b\83v\90æ\82Ì\83A\83v\83\8a\83P\81[\83V\83\87\83\93\82ª\90Ý\92è\82µ\82½\8cø\89Ê\82ð\95Ô\82µ\82Ü\82·\81B\r
-//\83L\83\83\83\93\83Z\83\8b\82â\83G\83\89\81[\82Ì\8fê\8d\87\82Í -1 \82ð\95Ô\82µ\82Ü\82·\81B\r
+//[戻り値]\r
+//ドロップが行われた場合は、ドロップ先のアプリケーションが設定した効果を返します。\r
+//キャンセルやエラーの場合は -1 を返します。\r
 \r
 \r
 #endif\r
index ae401f9..cb128cd 100644 (file)
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
index a8046d3..73cbf19 100644 (file)
@@ -1,4 +1,4 @@
-//{{NO_DEPENDENCIES}}\r
+//{{NO_DEPENDENCIES}}\r
 // Microsoft Visual C++ generated include file.\r
 // Used by ffftp.rc\r
 //\r
index 17dfc27..4cbdf59 100644 (file)
@@ -1,4 +1,4 @@
-//{{NO_DEPENDENCIES}}\r
+//{{NO_DEPENDENCIES}}\r
 // Microsoft Visual C++ generated include file.\r
 // Used by FFFTP-eng.rc\r
 //\r
diff --git a/aes.h b/aes.h
index a0d7d21..6099563 100644 (file)
--- a/aes.h
+++ b/aes.h
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
index ceabdb1..77fb84f 100644 (file)
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
index 13f2016..aeace57 100644 (file)
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
index 1fe1b5a..c29f0cf 100644 (file)
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
index 4964861..136546c 100644 (file)
--- a/aeskey.c
+++ b/aeskey.c
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
index 29ac5ac..7fcc815 100644 (file)
--- a/aesopt.h
+++ b/aesopt.h
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
index 27f740b..e49e305 100644 (file)
--- a/aestab.c
+++ b/aestab.c
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
index 5254f7e..41e37c7 100644 (file)
--- a/aestab.h
+++ b/aestab.h
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
index 725c218..f9443c7 100644 (file)
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \83u\83b\83N\83}\81[\83N\r
+*                                                              ブックマーク\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include <htmlhelp.h>\r
 #include "helpid.h"\r
 \r
-// UTF-8\91Î\89\9e\r
+// UTF-8対応\r
 #undef __MBSWRAPPER_H__\r
 #include "mbswrapper.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static int AddBookMark(char *Path);\r
 static int GetBothPath(char *Str, char **Path1, char **Path2);\r
 static BOOL CALLBACK EditBookMarkProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
 static BOOL CALLBACK BookMarkEditCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern HWND hHelpWin;\r
 \r
-/* \90Ý\92è\92l */\r
-extern HFONT ListFont;         /* \83\8a\83X\83g\83{\83b\83N\83X\82Ì\83t\83H\83\93\83g */\r
+/* 設定値 */\r
+extern HFONT ListFont;         /* リストボックスのフォント */\r
 extern SIZE BmarkDlgSize;\r
 \r
 \r
 \r
-/*----- \83u\83b\83N\83}\81[\83N\82ð\83N\83\8a\83A\82·\82é ----------------------------------------------\r
+/*----- ブックマークをクリアする ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ClearBookMark(void)\r
@@ -87,13 +87,13 @@ void ClearBookMark(void)
 }\r
 \r
 \r
-/*----- \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82ð\83u\83b\83N\83}\81[\83N\82É\92Ç\89Á ------------------------------\r
+/*----- カレントディレクトリをブックマークに追加 ------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AddCurDirToBookMark(int Win)\r
@@ -122,14 +122,14 @@ void AddCurDirToBookMark(int Win)
 }\r
 \r
 \r
-/*----- \83u\83b\83N\83}\81[\83N\82É\83p\83X\82ð\93o\98^\82·\82é ------------------------------------------\r
+/*----- ブックマークにパスを登録する ------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int AddBookMark(char *Path)\r
@@ -138,25 +138,25 @@ static int AddBookMark(char *Path)
        int MarkID;\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        hMenu = GetSubMenu(GetMenu(GetMainHwnd()), BMARK_SUB_MENU);\r
        MarkID = (GetMenuItemCount(hMenu) - DEFAULT_BMARK_ITEM) + MENU_BMARK_TOP;\r
        if(AppendMenu(hMenu, MF_STRING, MarkID, Path) == TRUE)\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \8ew\92è\82ÌID\82ð\8e\9d\82Â\83u\83b\83N\83}\81[\83N\82Ì\83p\83X\82ð\95Ô\82· --------------------------------\r
+/*----- 指定のIDを持つブックマークのパスを返す --------------------------------\r
 *\r
 *      Parameter\r
 *              int MarkID : ID\r
-*              char *Local : \83\8d\81[\83J\83\8b\91¤\82Ì\83p\83X\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              char *Remote : \83\8a\83\82\81[\83g\91¤\82Ì\83p\83X\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              int Max : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              char *Local : ローカル側のパスを返すバッファ\r
+*              char *Remote : リモート側のパスを返すバッファ\r
+*              int Max : バッファのサイズ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (BMARK_TYPE_xxx)\r
+*              int ステータス (BMARK_TYPE_xxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskBookMarkText(int MarkID, char *Local, char *Remote, int Max)\r
@@ -206,18 +206,18 @@ int AskBookMarkText(int MarkID, char *Local, char *Remote, int Max)
 }\r
 \r
 \r
-/*----- \83u\83b\83N\83}\81[\83N\82Ì\95\8e\9a\97ñ\82©\82ç\82Q\82Â\82Ì\83p\83X\82ð\8eæ\82è\8fo\82· --------------------------\r
+/*----- ブックマークの文字列から2つのパスを取り出す --------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              char **Local : \83\8d\81[\83J\83\8b\91¤\82Ì\83p\83X\82Ì\90æ\93ª\82ð\95Ô\82·\83\8f\81[\83N\r
-*              char **Remote : \83\8a\83\82\81[\83g\91¤\82Ì\83p\83X\82Ì\90æ\93ª\82ð\95Ô\82·\83\8f\81[\83N\r
+*              char *Str : 文字列\r
+*              char **Local : ローカル側のパスの先頭を返すワーク\r
+*              char **Remote : リモート側のパスの先頭を返すワーク\r
 *\r
 *      Return Value\r
-*              int \83p\83X\82Ì\8cÂ\90\94 (1 or 2)\r
+*              int パスの個数 (1 or 2)\r
 *\r
 *      Note\r
-*              Str\82Ì\93à\97e\82ð\8f\91\82«\8a·\82¦\82é\r
+*              Strの内容を書き換える\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetBothPath(char *Str, char **Path1, char **Path2)\r
@@ -239,13 +239,13 @@ static int GetBothPath(char *Str, char **Path1, char **Path2)
 }\r
 \r
 \r
-/*----- \83u\83b\83N\83}\81[\83N\82ð\90Ú\91±\92\86\82Ì\83z\83X\83g\83\8a\83X\83g\82É\95Û\91\82·\82é --------------------------\r
+/*----- ブックマークを接続中のホストリストに保存する --------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SaveBookMark(void)\r
@@ -309,13 +309,13 @@ void SaveBookMark(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\83\8a\83X\83g\82©\82ç\83u\83b\83N\83}\81[\83N\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 LoadBookMark(void)\r
@@ -335,8 +335,8 @@ void LoadBookMark(void)
                                Pos = Buf;\r
                                while(*Pos != NUL)\r
                                {\r
-                                       /* \8b\8c\83t\83H\81[\83}\83b\83g\82Ì\82½\82ß\82Ì\8f\88\97\9d */\r
-                                       /* \81i\83p\83X\82É"L"\82â"H"\82ª\82Â\82¢\82Ä\82È\82¢\95¨\81j */\r
+                                       /* 旧フォーマットのための処理 */\r
+                                       /* (パスに"L"や"H"がついてない物) */\r
                                        if((strncmp(Pos, BMARK_MARK_LOCAL, BMARK_MARK_LEN) != 0) &&\r
                                           (strncmp(Pos, BMARK_MARK_REMOTE, BMARK_MARK_LEN) != 0) &&\r
                                           (strncmp(Pos, BMARK_MARK_BOTH, BMARK_MARK_LEN) != 0))\r
@@ -357,13 +357,13 @@ void LoadBookMark(void)
 }\r
 \r
 \r
-/*----- \83u\83b\83N\83}\81[\83N\95Ò\8fW\83E\83C\83\93\83h\83E --------------------------------------------\r
+/*----- ブックマーク編集ウインドウ --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \83X\83e\81[\83^\83X (YES=\8eÀ\8ds/NO=\8eæ\8fÁ)\r
+*              ステータス (YES=実行/NO=取消)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int EditBookMark(void)\r
@@ -375,13 +375,13 @@ int EditBookMark(void)
 }\r
 \r
 \r
-/*----- \83u\83b\83N\83}\81[\83N\95Ò\8fW\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------\r
+/*----- ブックマーク編集ウインドウのコールバック ------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -429,7 +429,7 @@ static BOOL CALLBACK EditBookMarkProc(HWND hDlg, UINT message, WPARAM wParam, LP
                                case BMARK_JUMP :\r
                                        if((Cur = SendDlgItemMessage(hDlg, BMARK_LIST, LB_GETCURSEL, 0, 0)) != LB_ERR)\r
                                                PostMessage(GetMainHwnd(), WM_COMMAND, MAKEWPARAM(Cur+MENU_BMARK_TOP, 0), 0);\r
-                                       /* \82±\82±\82É break \82Í\82È\82¢ */\r
+                                       /* ここに break はない */\r
 \r
                                case IDCANCEL :\r
                                case IDOK :\r
@@ -519,13 +519,13 @@ static BOOL CALLBACK EditBookMarkProc(HWND hDlg, UINT message, WPARAM wParam, LP
 }\r
 \r
 \r
-/*----- \83u\83b\83N\83}\81[\83N\93ü\97Í\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------\r
+/*----- ブックマーク入力ダイアログのコールバック ------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -554,7 +554,7 @@ static BOOL CALLBACK BookMarkEditCallBack(HWND hDlg, UINT iMessage, WPARAM wPara
                                else if(strncmp(Str, BMARK_MARK_REMOTE, BMARK_MARK_LEN) == 0)\r
                                {\r
                                        SendDlgItemMessage(hDlg, BEDIT_REMOTE, WM_SETTEXT, 0, (LPARAM)Path1);\r
-                                       /* \83z\83X\83g\91¤\82É\83J\81[\83\\83\8b\82ð\88Ú\93®\82µ\82Ä\82¨\82­ */\r
+                                       /* ホスト側にカーソルを移動しておく */\r
                                        SetFocus(GetDlgItem(hDlg, BEDIT_REMOTE));\r
                                        SendDlgItemMessage(hDlg, BEDIT_REMOTE, EM_SETSEL, 0, -1);\r
                                        return(FALSE);\r
@@ -577,7 +577,7 @@ static BOOL CALLBACK BookMarkEditCallBack(HWND hDlg, UINT iMessage, WPARAM wPara
                                        {\r
                                                if(strlen(Remote) > 0)\r
                                                {\r
-                                                       /* \97¼\95û */\r
+                                                       /* 両方 */\r
                                                        strcpy(Str, BMARK_MARK_BOTH);\r
                                                        strcat(Str, Local);\r
                                                        strcat(Str, BMARK_SEP);\r
@@ -585,7 +585,7 @@ static BOOL CALLBACK BookMarkEditCallBack(HWND hDlg, UINT iMessage, WPARAM wPara
                                                }\r
                                                else\r
                                                {\r
-                                                       /* \83\8d\81[\83J\83\8b\82Ì\82Ý */\r
+                                                       /* ローカルのみ */\r
                                                        strcpy(Str, BMARK_MARK_LOCAL);\r
                                                        strcat(Str, Local);\r
                                                }\r
@@ -593,7 +593,7 @@ static BOOL CALLBACK BookMarkEditCallBack(HWND hDlg, UINT iMessage, WPARAM wPara
                                        }\r
                                        else if(strlen(Remote) > 0)\r
                                        {\r
-                                               /* \83z\83X\83g\82Ì\82Ý */\r
+                                               /* ホストのみ */\r
                                                strcpy(Str, BMARK_MARK_REMOTE);\r
                                                strcat(Str, Remote);\r
                                                EndDialog(hDlg, YES);\r
index 1c1d091..05a383d 100644 (file)
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
index b758e86..5248999 100644 (file)
@@ -1,4 +1,4 @@
-/*\r
+/*\r
  ---------------------------------------------------------------------------\r
  Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved.\r
 \r
diff --git a/cache.c b/cache.c
index c68b1b6..b26f1e4 100644 (file)
--- a/cache.c
+++ b/cache.c
@@ -1,6 +1,6 @@
-/*=============================================================================\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
@@ -50,31 +50,31 @@ static BOOL CALLBACK CountPrevFfftpWindowsProc(HWND hWnd, LPARAM lParam);
 \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
@@ -82,29 +82,29 @@ int MakeCacheBuf(int Num)
        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
@@ -117,14 +117,14 @@ void DeleteCacheBuf(void)
 }\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
@@ -155,16 +155,16 @@ int AskCached(char *Path)
 }\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
@@ -203,17 +203,17 @@ int AskFreeCache(void)
 }\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
@@ -229,13 +229,13 @@ void SetCache(int Num, char *Path)
 }\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
@@ -251,13 +251,13 @@ void ClearCache(int Num)
 }\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
@@ -266,13 +266,13 @@ int AskCurrentFileListNum(void)
 }\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
@@ -281,18 +281,18 @@ void SetCurrentFileListNum(int Num)
 }\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
@@ -302,7 +302,7 @@ void SaveCache(void)
        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
@@ -335,13 +335,13 @@ void SaveCache(void)
 }\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
@@ -351,7 +351,7 @@ void LoadCache(void)
        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
@@ -383,13 +383,13 @@ void LoadCache(void)
 }\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
@@ -421,14 +421,14 @@ void DeleteCache(void)
 }\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
@@ -449,16 +449,16 @@ void MakeCacheFileName(int Num, char *Buf)
 }\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
@@ -469,11 +469,11 @@ void CountPrevFfftpWindows(void)
 }\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
index b02130b..c12553b 100644 (file)
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \83N\83\8a\83b\83v\83{\81[\83h\8aÖ\8cW\r
+*                                                              クリップボード関係\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 \r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\83N\83\8a\83b\83v\83{\81[\83h\82É\83R\83s\81[ ----------------------------------------\r
+/*----- 文字列をクリップボードにコピー ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 int CopyStrToClipBoard(char *Str)\r
@@ -54,7 +54,7 @@ int CopyStrToClipBoard(char *Str)
        void *gBuf;\r
        HGLOBAL hGlobal;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(OpenClipboard(GetMainHwnd()))\r
        {\r
                if(EmptyClipboard())\r
@@ -67,7 +67,7 @@ int CopyStrToClipBoard(char *Str)
 \r
                                        GlobalUnlock(hGlobal);\r
                                        SetClipboardData(CF_TEXT, hGlobal);\r
-                                       Sts = SUCCESS;\r
+                                       Sts = FFFTP_SUCCESS;\r
                                }\r
                        }\r
                }\r
index 6399b7d..2ac55e7 100644 (file)
--- a/codecnv.c
+++ b/codecnv.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                      \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\81^\89ü\8ds\83R\81[\83h\95Ï\8a·\r
+*                                                      漢字コード変換/改行コード変換\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 \r
 \r
 \r
-#define CONV_ASCII             0               /* ASCII\95\8e\9a\8f\88\97\9d\92\86 */\r
-#define CONV_KANJI             1               /* \8a¿\8e\9a\8f\88\97\9d\92\86 */\r
-#define CONV_KANA              2               /* \94¼\8ap\83J\83^\83J\83i\8f\88\97\9d\92\86 */\r
+#define CONV_ASCII             0               /* ASCII文字処理中 */\r
+#define CONV_KANJI             1               /* 漢字処理中 */\r
+#define CONV_KANA              2               /* 半角カタカナ処理中 */\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static char *ConvEUCtoSJISkanaProc(CODECONVINFO *cInfo, char Dt, char *Put);\r
 static char *ConvJIStoSJISkanaProc(CODECONVINFO *cInfo, char Dt, char *Put);\r
@@ -61,7 +61,7 @@ static int ConvertIBMExtendedChar(int code);
 \r
 \r
 #if 0\r
-/*----- \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\82Ì\83e\83X\83g\83v\83\8d\83O\83\89\83\80 ------------------------------------*/\r
+/*----- 漢字コード変換のテストプログラム ------------------------------------*/\r
 \r
 void CodeCnvTest(void)\r
 {\r
@@ -174,7 +174,7 @@ void CodeCnvTest(void)
 \r
 \r
 #if 0\r
-/*----- \89ü\8ds\83R\81[\83h\95Ï\8a·\82Ì\83e\83X\83g\83v\83\8d\83O\83\89\83\80 ------------------------------------*/\r
+/*----- 改行コード変換のテストプログラム ------------------------------------*/\r
 \r
 void TermCodeCnvTest(void)\r
 {\r
@@ -242,13 +242,13 @@ void TermCodeCnvTest(void)
 \r
 \r
 \r
-/*----- \89ü\8ds\83R\81[\83h\95Ï\8a·\8fî\95ñ\82ð\8f\89\8aú\89» --------------------------------------------\r
+/*----- 改行コード変換情報を初期化 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              TERMCODECONVINFO *cInfo : \89ü\8ds\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              TERMCODECONVINFO *cInfo : 改行コード変換情報\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void InitTermCodeConvInfo(TERMCODECONVINFO *cInfo)\r
@@ -258,16 +258,16 @@ void InitTermCodeConvInfo(TERMCODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- \89ü\8ds\83R\81[\83h\95Ï\8a·\82Ì\8ec\82è\8fî\95ñ\82ð\8fo\97Í ----------------------------------------\r
+/*----- 改行コード変換の残り情報を出力 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              TERMCODECONVINFO *cInfo : \89ü\8ds\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              TERMCODECONVINFO *cInfo : 改行コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (=NO)\r
+*              int くり返しフラグ (=NO)\r
 *\r
 *      Note\r
-*              \89ü\8ds\83R\81[\83h\95Ï\8a·\82Ì\8dÅ\8cã\82É\8cÄ\82Ô\8e\96\r
+*              改行コード変換の最後に呼ぶ事\r
 *----------------------------------------------------------------------------*/\r
 \r
 int FlushRestTermCodeConvData(TERMCODECONVINFO *cInfo)\r
@@ -285,16 +285,16 @@ int FlushRestTermCodeConvData(TERMCODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- \89ü\8ds\83R\81[\83h\82ðCRLF\82É\95Ï\8a· -------------------------------------------------\r
+/*----- 改行コードをCRLFに変換 -------------------------------------------------\r
 *\r
 *      Parameter\r
-*              TERMCODECONVINFO *cInfo : \89ü\8ds\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              TERMCODECONVINFO *cInfo : 改行コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvTermCodeToCRLF(TERMCODECONVINFO *cInfo)\r
@@ -348,13 +348,13 @@ int ConvTermCodeToCRLF(TERMCODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\82ð\8f\89\8aú\89» --------------------------------------------\r
+/*----- 漢字コード変換情報を初期化 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void InitCodeConvInfo(CODECONVINFO *cInfo)\r
@@ -366,22 +366,22 @@ void InitCodeConvInfo(CODECONVINFO *cInfo)
        cInfo->KanjiFst = 0;\r
        cInfo->KanaPrev = 0;\r
        cInfo->KanaProc = NULL;\r
-       // UTF-8\91Î\89\9e\r
+       // UTF-8対応\r
        cInfo->EscUTF8Len = 0;\r
        return;\r
 }\r
 \r
 \r
-/*----- \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\82Ì\8ec\82è\8fî\95ñ\82ð\8fo\97Í ----------------------------------------\r
+/*----- 漢字コード変換の残り情報を出力 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (=NO)\r
+*              int くり返しフラグ (=NO)\r
 *\r
 *      Note\r
-*              \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\82Ì\8dÅ\8cã\82É\8cÄ\82Ô\8e\96\r
+*              漢字コード変換の最後に呼ぶ事\r
 *----------------------------------------------------------------------------*/\r
 \r
 int FlushRestData(CODECONVINFO *cInfo)\r
@@ -399,7 +399,7 @@ int FlushRestData(CODECONVINFO *cInfo)
                *Put++ = cInfo->EscCode[0];\r
        if(cInfo->EscProc == 2)\r
                *Put++ = cInfo->EscCode[1];\r
-       // UTF-8\91Î\89\9e\r
+       // UTF-8対応\r
        memcpy(Put, cInfo->EscUTF8, sizeof(char) * cInfo->EscUTF8Len);\r
        Put += cInfo->EscUTF8Len;\r
 \r
@@ -409,16 +409,16 @@ int FlushRestData(CODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- EUC\8a¿\8e\9a\83R\81[\83h\82ðSHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· ------------------------------\r
+/*----- EUC漢字コードをSHIFT-JIS漢字コードに変換 ------------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvEUCtoSJIS(CODECONVINFO *cInfo)\r
@@ -450,7 +450,7 @@ int ConvEUCtoSJIS(CODECONVINFO *cInfo)
                                cInfo->KanjiFst = *Str++;\r
                        else\r
                        {\r
-                               if((uchar)cInfo->KanjiFst == (uchar)0x8E)       /* \94¼\8ap\83J\83^\83J\83i */\r
+                               if((uchar)cInfo->KanjiFst == (uchar)0x8E)       /* 半角カタカナ */\r
                                {\r
                                        Put = ConvEUCtoSJISkanaProc(cInfo, *Str++, Put);\r
                                }\r
@@ -485,15 +485,15 @@ int ConvEUCtoSJIS(CODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- EUC-->SHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a·\82Ì\94¼\8ap\83J\83^\83J\83i\82Ì\8f\88\97\9d -------------------\r
+/*----- EUC-->SHIFT-JIS漢字コードに変換の半角カタカナの処理 -------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
-*              char Dt : \95\8e\9a\r
-*              char *Put : \83f\81[\83^\83Z\83b\83g\88Ê\92u\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
+*              char Dt : 文字\r
+*              char *Put : データセット位置\r
 *\r
 *      Return Value\r
-*              char *\8e\9f\82Ì\83f\81[\83^\83Z\83b\83g\88Ê\92u\r
+*              char *次のデータセット位置\r
 *----------------------------------------------------------------------------*/\r
 \r
 static char *ConvEUCtoSJISkanaProc(CODECONVINFO *cInfo, char Dt, char *Put)\r
@@ -528,21 +528,21 @@ static char *ConvEUCtoSJISkanaProc(CODECONVINFO *cInfo, char Dt, char *Put)
 }\r
 \r
 \r
-/*----- JIS\8a¿\8e\9a\83R\81[\83h\82ðSHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· ------------------------------\r
+/*----- JIS漢字コードをSHIFT-JIS漢字コードに変換 ------------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
 *\r
-*              \83G\83X\83P\81[\83v\83R\81[\83h\82Í\81A\8e\9f\82Ì\82à\82Ì\82É\91Î\89\9e\82µ\82Ä\82¢\82é\r
-*                      \8a¿\8e\9a\8aJ\8en                <ESC>$B         <ESC>$@\r
-*                      \94¼\8ap\83J\83i\8aJ\8en    <ESC>(I\r
-*                      \8a¿\8e\9a\8fI\97¹                <ESC>(B         <ESC>(J         <ESC>(H\r
+*              エスケープコードは、次のものに対応している\r
+*                      漢字開始            <ESC>$B         <ESC>$@\r
+*                      半角カナ開始      <ESC>(I\r
+*                      漢字終了            <ESC>(B         <ESC>(J         <ESC>(H\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvJIStoSJIS(CODECONVINFO *cInfo)\r
@@ -679,15 +679,15 @@ int ConvJIStoSJIS(CODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- JIS-->SHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a·\82Ì\94¼\8ap\83J\83^\83J\83i\82Ì\8f\88\97\9d -------------------\r
+/*----- JIS-->SHIFT-JIS漢字コードに変換の半角カタカナの処理 -------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
-*              char Dt : \95\8e\9a\r
-*              char *Put : \83f\81[\83^\83Z\83b\83g\88Ê\92u\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
+*              char Dt : 文字\r
+*              char *Put : データセット位置\r
 *\r
 *      Return Value\r
-*              char *\8e\9f\82Ì\83f\81[\83^\83Z\83b\83g\88Ê\92u\r
+*              char *次のデータセット位置\r
 *----------------------------------------------------------------------------*/\r
 \r
 static char *ConvJIStoSJISkanaProc(CODECONVINFO *cInfo, char Dt, char *Put)\r
@@ -722,18 +722,18 @@ static char *ConvJIStoSJISkanaProc(CODECONVINFO *cInfo, char Dt, char *Put)
 }\r
 \r
 \r
-/*----- Samba-HEX/Samba-CAP\8a¿\8e\9a\83R\81[\83h\82ðSHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· --------------\r
+/*----- Samba-HEX/Samba-CAP漢字コードをSHIFT-JIS漢字コードに変換 --------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
-*              \95ª\8a\84\82³\82ê\82½\93ü\97Í\95\8e\9a\97ñ\82Ì\95Ï\8a·\82Í\83T\83|\81[\83g\82µ\82Ä\82¢\82È\82¢\r
-*              \94¼\8ap\83J\83^\83J\83i\82Ì\95Ï\8a·\90Ý\92è\82É\82Í\91Î\89\9e\82µ\82Ä\82¢\82È\82¢\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
+*              分割された入力文字列の変換はサポートしていない\r
+*              半角カタカナの変換設定には対応していない\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvSMBtoSJIS(CODECONVINFO *cInfo)\r
@@ -778,16 +778,16 @@ int ConvSMBtoSJIS(CODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- SHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82ðEUC\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· ------------------------------\r
+/*----- SHIFT-JIS漢字コードをEUC漢字コードに変換 ------------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvSJIStoEUC(CODECONVINFO *cInfo)\r
@@ -856,15 +856,15 @@ int ConvSJIStoEUC(CODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- SHIFT-JIS-->EUC\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a·\82Ì\94¼\8ap\83J\83^\83J\83i\82Ì\8f\88\97\9d -------------------\r
+/*----- SHIFT-JIS-->EUC漢字コードに変換の半角カタカナの処理 -------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
-*              char Dt : \95\8e\9a\r
-*              char *Put : \83f\81[\83^\83Z\83b\83g\88Ê\92u\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
+*              char Dt : 文字\r
+*              char *Put : データセット位置\r
 *\r
 *      Return Value\r
-*              char *\8e\9f\82Ì\83f\81[\83^\83Z\83b\83g\88Ê\92u\r
+*              char *次のデータセット位置\r
 *----------------------------------------------------------------------------*/\r
 \r
 static char *ConvSJIStoEUCkanaProc(CODECONVINFO *cInfo, char Dt, char *Put)\r
@@ -902,21 +902,21 @@ static char *ConvSJIStoEUCkanaProc(CODECONVINFO *cInfo, char Dt, char *Put)
 }\r
 \r
 \r
-/*----- SHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82ðJIS\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· ------------------------------\r
+/*----- SHIFT-JIS漢字コードをJIS漢字コードに変換 ------------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
 *\r
-*              \83G\83X\83P\81[\83v\83R\81[\83h\82Í\81A\8e\9f\82Ì\82à\82Ì\82ð\8eg\97p\82·\82é\r
-*                      \8a¿\8e\9a\8aJ\8en                <ESC>$B\r
-*                      \94¼\8ap\83J\83i\8aJ\8en    <ESC>(I\r
-*                      \8a¿\8e\9a\8fI\97¹                <ESC>(B\r
+*              エスケープコードは、次のものを使用する\r
+*                      漢字開始            <ESC>$B\r
+*                      半角カナ開始      <ESC>(I\r
+*                      漢字終了            <ESC>(B\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvSJIStoJIS(CODECONVINFO *cInfo)\r
@@ -1008,15 +1008,15 @@ int ConvSJIStoJIS(CODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- SHIFT-JIS-->JIS\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a·\82Ì\94¼\8ap\83J\83^\83J\83i\82Ì\8f\88\97\9d -------------------\r
+/*----- SHIFT-JIS-->JIS漢字コードに変換の半角カタカナの処理 -------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
-*              char Dt : \95\8e\9a\r
-*              char *Put : \83f\81[\83^\83Z\83b\83g\88Ê\92u\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
+*              char Dt : 文字\r
+*              char *Put : データセット位置\r
 *\r
 *      Return Value\r
-*              char *\8e\9f\82Ì\83f\81[\83^\83Z\83b\83g\88Ê\92u\r
+*              char *次のデータセット位置\r
 *----------------------------------------------------------------------------*/\r
 \r
 static char *ConvSJIStoJISkanaProc(CODECONVINFO *cInfo, char Dt, char *Put)\r
@@ -1066,18 +1066,18 @@ static char *ConvSJIStoJISkanaProc(CODECONVINFO *cInfo, char Dt, char *Put)
 }\r
 \r
 \r
-/*----- SHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82ðSamba-HEX\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· ------------------------\r
+/*----- SHIFT-JIS漢字コードをSamba-HEX漢字コードに変換 ------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
-*              \95ª\8a\84\82³\82ê\82½\93ü\97Í\95\8e\9a\97ñ\82Ì\95Ï\8a·\82Í\83T\83|\81[\83g\82µ\82Ä\82¢\82È\82¢\r
-*              \94¼\8ap\83J\83^\83J\83i\82Ì\95Ï\8a·\90Ý\92è\82É\82Í\91Î\89\9e\82µ\82Ä\82¢\82È\82¢\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
+*              分割された入力文字列の変換はサポートしていない\r
+*              半角カタカナの変換設定には対応していない\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvSJIStoSMB_HEX(CODECONVINFO *cInfo)\r
@@ -1125,17 +1125,17 @@ int ConvSJIStoSMB_HEX(CODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- SHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82ðSamba-CAP\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· ------------------------\r
+/*----- SHIFT-JIS漢字コードをSamba-CAP漢字コードに変換 ------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
-*              \95ª\8a\84\82³\82ê\82½\93ü\97Í\95\8e\9a\97ñ\82Ì\95Ï\8a·\82Í\83T\83|\81[\83g\82µ\82Ä\82¢\82È\82¢\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
+*              分割された入力文字列の変換はサポートしていない\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvSJIStoSMB_CAP(CODECONVINFO *cInfo)\r
@@ -1174,13 +1174,13 @@ int ConvSJIStoSMB_CAP(CODECONVINFO *cInfo)
 }\r
 \r
 \r
-/*----- \82P\83o\83C\83g\83J\83^\83J\83i\82ðJIS\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· ---------------------------------\r
+/*----- 1バイトカタカナをJIS漢字コードに変換 ---------------------------------\r
 *\r
 *      Parameter\r
-*              char Ch : \82P\83o\83C\83g\83J\83^\83J\83i\83R\81[\83h\r
+*              char Ch : 1バイトカタカナコード\r
 *\r
 *      Return Value\r
-*              int JIS\8a¿\8e\9a\83R\81[\83h\r
+*              int JIS漢字コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int HanKataToZen(char Ch)\r
@@ -1200,14 +1200,14 @@ static int HanKataToZen(char Ch)
 }\r
 \r
 \r
-/*----- \91÷\89¹\81^\94¼\91÷\89¹\82É\82È\82é\95\8e\9a\82©\83`\83F\83b\83N --------------------------------------\r
+/*----- 濁音/半濁音になる文字かチェック --------------------------------------\r
 *\r
 *      Parameter\r
-*              char Ch : \82P\83o\83C\83g\83J\83^\83J\83i\83R\81[\83h\r
-*              char Daku : \91÷\93_\81^\94¼\91÷\93_\r
+*              char Ch : 1バイトカタカナコード\r
+*              char Daku : 濁点/半濁点\r
 *\r
 *      Return Value\r
-*              int \95\8e\9a\83R\81[\83h\82É\89Á\82¦\82é\92l (0=\91÷\89¹\81^\94¼\91÷\89¹\82É\82È\82ç\82È\82¢)\r
+*              int 文字コードに加える値 (0=濁音/半濁音にならない)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int AskDakuon(char Ch, char Daku)\r
@@ -1244,15 +1244,15 @@ static int AskDakuon(char Ch, char Daku)
 \r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82Ì\8a¿\8e\9a\83R\81[\83h\82ð\92²\82×\81AShift-JIS\82É\95Ï\8a· -----------------------------\r
+/*----- 文字列の漢字コードを調べ、Shift-JISに変換 -----------------------------\r
 *\r
 *      Parameter\r
-*              char *Text : \95\8e\9a\97ñ\r
-*              int Pref : SJIS/EUC\82Ì\97D\90æ\8ew\92è\r
-\81\96                     KANJI_SJIS / KANJI_EUC / KANJI_NOCNV=SJIS/EUC\82Ì\83`\83F\83b\83N\82Í\82µ\82È\82¢\r
+*              char *Text : 文字列\r
+*              int Pref : SJIS/EUCの優先指定\r
+*                    KANJI_SJIS / KANJI_EUC / KANJI_NOCNV=SJIS/EUCのチェックはしない\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ConvAutoToSJIS(char *Text, int Pref)\r
@@ -1294,16 +1294,16 @@ void ConvAutoToSJIS(char *Text, int Pref)
 }\r
 \r
 \r
-/*----- \8eg\82í\82ê\82Ä\82¢\82é\8a¿\8e\9a\83R\81[\83h\82ð\92²\82×\82é ----------------------------------------\r
+/*----- 使われている漢字コードを調べる ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Text : \95\8e\9a\97ñ\r
-*              int Size : \95\8e\9a\97ñ\82Ì\92·\82³\r
-*              int Pref : SJIS/EUC\82Ì\97D\90æ\8ew\92è\r
-\81\96                     KANJI_SJIS / KANJI_EUC / KANJI_NOCNV=SJIS/EUC\82Ì\83`\83F\83b\83N\82Í\82µ\82È\82¢\r
+*              char *Text : 文字列\r
+*              int Size : 文字列の長さ\r
+*              int Pref : SJIS/EUCの優先指定\r
+*                    KANJI_SJIS / KANJI_EUC / KANJI_NOCNV=SJIS/EUCのチェックはしない\r
 *\r
 *      Return Value\r
-*              int \8a¿\8e\9a\83R\81[\83h (KANJI_xxx)\r
+*              int 漢字コード (KANJI_xxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int CheckKanjiCode(char *Text, int Size, int Pref)\r
@@ -1320,7 +1320,7 @@ int CheckKanjiCode(char *Text, int Size, int Pref)
                Ret = -1;\r
                Btm = Text + Size;\r
 \r
-               /* JIS\8a¿\8e\9a\83R\81[\83h\82Ì\83`\83F\83b\83N */\r
+               /* JIS漢字コードのチェック */\r
                Pos = Text;\r
                while((Pos = memchr(Pos, 0x1b, Btm-Pos-2)) != NULL)\r
                {\r
@@ -1334,7 +1334,7 @@ int CheckKanjiCode(char *Text, int Size, int Pref)
                        }\r
                }\r
 \r
-               /* EUC\82ÆSHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82Ì\83`\83F\83b\83N */\r
+               /* EUCとSHIFT-JIS漢字コードのチェック */\r
                if(Ret == -1)\r
                {\r
                        if(Pref != KANJI_NOCNV)\r
@@ -1368,17 +1368,17 @@ int CheckKanjiCode(char *Text, int Size, int Pref)
 }\r
 \r
 \r
-/*----- SHIFT-JIS\83R\81[\83h\82Ì\89Â\94\\90«\82ª\82 \82é\82©\83`\83F\83b\83N --------------------------------\r
+/*----- SHIFT-JISコードの可能性があるかチェック --------------------------------\r
 *\r
 *      Parameter\r
-*              uchar *Pos : \95\8e\9a\97ñ\r
-*              uchar *Btm : \95\8e\9a\97ñ\82Ì\96\96\94ö\r
+*              uchar *Pos : 文字列\r
+*              uchar *Btm : 文字列の末尾\r
 *\r
 *      Return Value\r
-*              int \93¾\93_\r
+*              int 得点\r
 *\r
 *      Note\r
-*              High    81-FF (A0-DF\82Í\94¼\8ap)     (EB\88È\8d~\82Í\82Ù\82Æ\82ñ\82Ç\96³\82¢)\r
+*              High    81-FF (A0-DFは半角)  (EB以降はほとんど無い)\r
 *              Low             40-FC\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1393,36 +1393,36 @@ static int CheckOnSJIS(uchar *Pos, uchar *Btm)
        {\r
                if(FstOnTwo == YES)\r
                {\r
-                       if((*Pos < 0x40) || (*Pos > 0xFC))      /* 2\83o\83C\83g\96Ú\82Í 0x40\81`0xFC */\r
+                       if((*Pos < 0x40) || (*Pos > 0xFC))      /* 2バイト目は 0x40~0xFC */\r
                                Point = 0;\r
                        FstOnTwo = NO;\r
                }\r
                else if(*Pos >= 0x81)\r
                {\r
-                       if((*Pos < 0xA0) || (*Pos > 0xDF))      /* \94¼\8ap\83J\83i\82Å\82È\82¯\82ê\82Π*/\r
+                       if((*Pos < 0xA0) || (*Pos > 0xDF))      /* 半角カナでなければ */\r
                        {\r
-                               if(*Pos >= 0xEB)                /* 1\83o\83C\83g\96Ú\82Í0xEB\88È\8d~\82Í\82Ù\82Æ\82ñ\82Ç\96³\82¢ */\r
+                               if(*Pos >= 0xEB)                /* 1バイト目は0xEB以降はほとんど無い */\r
                                        Point -= 50;\r
                                FstOnTwo = YES;\r
                        }\r
                }\r
                Pos++;\r
        }\r
-       if(FstOnTwo == YES)             /* \82P\83o\83C\83g\96Ú\82Å\8fI\82í\82Á\82Ä\82¢\82é\82Ì\82Í\82¨\82©\82µ\82¢  */\r
+       if(FstOnTwo == YES)             /* 1バイト目で終わっているのはおかしい  */\r
                Point = 0;\r
 \r
        return(Point);\r
 }\r
 \r
 \r
-/*----- EUC\83R\81[\83h\82Ì\89Â\94\\90«\82ª\82 \82é\82©\83`\83F\83b\83N -------------------------------------\r
+/*----- EUCコードの可能性があるかチェック -------------------------------------\r
 *\r
 *      Parameter\r
-*              uchar *Pos : \95\8e\9a\97ñ\r
-*              uchar *Btm : \95\8e\9a\97ñ\82Ì\96\96\94ö\r
+*              uchar *Pos : 文字列\r
+*              uchar *Btm : 文字列の末尾\r
 *\r
 *      Return Value\r
-*              int \93¾\93_\r
+*              int 得点\r
 *\r
 *      Note\r
 *              High    A1-FE , 8E\r
@@ -1440,43 +1440,43 @@ static int CheckOnEUC(uchar *Pos, uchar *Btm)
        {\r
                if(FstOnTwo == 1)\r
                {\r
-                       if((*Pos < 0xA1) || (*Pos > 0xFE))      /* 2\83o\83C\83g\96Ú\82Í 0xA1\81`0xFE */\r
+                       if((*Pos < 0xA1) || (*Pos > 0xFE))      /* 2バイト目は 0xA1~0xFE */\r
                                Point = 0;\r
                        FstOnTwo = 0;\r
                }\r
-               else if(FstOnTwo == 2)          /* \94¼\8ap\83J\83i */\r
+               else if(FstOnTwo == 2)          /* 半角カナ */\r
                {\r
-                       if((*Pos < 0xA0) || (*Pos > 0xDF))      /* 2\83o\83C\83g\96Ú\82Í 0xA0\81`0xDF */\r
+                       if((*Pos < 0xA0) || (*Pos > 0xDF))      /* 2バイト目は 0xA0~0xDF */\r
                                Point = 0;\r
                        FstOnTwo = 0;\r
                }\r
                else\r
                {\r
-                       if(*Pos == 0x8E)                /* 0x8E??\82Í\94¼\8ap\83J\83i */\r
+                       if(*Pos == 0x8E)                /* 0x8E??は半角カナ */\r
                                FstOnTwo = 2;\r
                        else if((*Pos >= 0xA1) && (*Pos <= 0xFE))\r
                                FstOnTwo = 1;\r
                }\r
                Pos++;\r
        }\r
-       if(FstOnTwo != 0)               /* \82P\83o\83C\83g\96Ú\82Å\8fI\82í\82Á\82Ä\82¢\82é\82Ì\82Í\82¨\82©\82µ\82¢  */\r
+       if(FstOnTwo != 0)               /* 1バイト目で終わっているのはおかしい  */\r
                Point = 0;\r
 \r
        return(Point);\r
 }\r
 \r
 \r
-// UTF-8\91Î\89\9e \82±\82±\82©\82ç\81«\r
-/*----- UTF-8\8a¿\8e\9a\83R\81[\83h\82ðSHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· ------------------------------\r
+// UTF-8対応 ここから↓\r
+/*----- UTF-8漢字コードをSHIFT-JIS漢字コードに変換 ------------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvUTF8NtoSJIS(CODECONVINFO *cInfo)\r
@@ -1486,8 +1486,8 @@ int ConvUTF8NtoSJIS(CODECONVINFO *cInfo)
 //     char temp_string[2048];\r
        int string_length;\r
 \r
-       // \91å\82«\82¢\83T\83C\83Y\82É\91Î\89\9e\r
-       // \8fI\92[\82ÌNULL\82ð\8aÜ\82Þ\83o\83O\82ð\8fC\90³\r
+       // 大きいサイズに対応\r
+       // 終端のNULLを含むバグを修正\r
        int SrcLength;\r
        char* pSrc;\r
        wchar_t* pUTF16;\r
@@ -1496,16 +1496,16 @@ int ConvUTF8NtoSJIS(CODECONVINFO *cInfo)
 \r
        Continue = NO;\r
 \r
-       // \90\90¬\82³\82ê\82é\92\86\8aÔ\83R\81[\83h\82Ì\83T\83C\83Y\82ð\92²\82×\82é\r
+       // 生成される中間コードのサイズを調べる\r
 //     string_length = MultiByteToWideChar(\r
-//                                             CP_UTF8,                // \95Ï\8a·\90æ\95\8e\9a\83R\81[\83h\r
-//                                             0,                              // \83t\83\89\83O(0:\82È\82µ)\r
-//                                             cInfo->Str,             // \95Ï\8a·\8c³\95\8e\9a\97ñ\r
-//                                             -1,                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\83o\83C\83g\90\94(-1:\8e©\93®)\r
-//                                             NULL,                   // \95Ï\8a·\82µ\82½\95\8e\9a\97ñ\82Ì\8ai\94[\90æ\r
-//                                             0                               // \8ai\94[\90æ\83T\83C\83Y\r
+//                                             CP_UTF8,                // 変換先文字コード\r
+//                                             0,                              // フラグ(0:なし)\r
+//                                             cInfo->Str,             // 変換元文字列\r
+//                                             -1,                             // 変換元文字列バイト数(-1:自動)\r
+//                                             NULL,                   // 変換した文字列の格納先\r
+//                                             0                               // 格納先サイズ\r
 //                                     );\r
-       // \91O\89ñ\82Ì\95Ï\8a·\95s\94\\82È\8ec\82è\82Ì\95\8e\9a\97ñ\82ð\93ü\97Í\82Ì\90æ\93ª\82É\8c\8b\8d\87\r
+       // 前回の変換不能な残りの文字列を入力の先頭に結合\r
        SrcLength = cInfo->StrLen + cInfo->EscUTF8Len;\r
        if(!(pSrc = (char*)malloc(sizeof(char) * (SrcLength + 1))))\r
        {\r
@@ -1516,12 +1516,12 @@ int ConvUTF8NtoSJIS(CODECONVINFO *cInfo)
        memcpy(pSrc, cInfo->EscUTF8, sizeof(char) * cInfo->EscUTF8Len);\r
        memcpy(pSrc + cInfo->EscUTF8Len, cInfo->Str, sizeof(char) * cInfo->StrLen);\r
        *(pSrc + SrcLength) = '\0';\r
-       // UTF-8\82Ì\8fê\8d\87\81A\95s\8a®\91S\82È\95\8e\9a\82Í\8fí\82É\95Ï\8a·\82³\82ê\82È\82¢\r
+       // UTF-8の場合、不完全な文字は常に変換されない\r
        UTF16Length = MultiByteToWideChar(CP_UTF8, 0, pSrc, SrcLength, NULL, 0);\r
 \r
-       // \83T\83C\83Y0 or \83o\83b\83t\83@\83T\83C\83Y\82æ\82è\91å\82«\82¢\8fê\8d\87\82Í\r
-       // cInfo->Buf\82Ì\8dÅ\8f\89\82É'\0'\82ð\93ü\82ê\82Ä\81A\r
-       // cInfo->BufSize\82É0\82ð\93ü\82ê\82Ä\95Ô\82·\81B\r
+       // サイズ0 or バッファサイズより大きい場合は\r
+       // cInfo->Bufの最初に'\0'を入れて、\r
+       // cInfo->BufSizeに0を入れて返す。\r
 //     if( string_length == 0 ||\r
 //             string_length >= 1024 ){\r
 //             *(cInfo->Buf) = '\0';\r
@@ -1536,32 +1536,32 @@ int ConvUTF8NtoSJIS(CODECONVINFO *cInfo)
                return Continue;\r
        }\r
 \r
-       // \92\86\8aÔ\83R\81[\83h(unicode)\82É\95Ï\8a·\r
+       // 中間コード(unicode)に変換\r
 //     MultiByteToWideChar(\r
-//             CP_UTF8,                                                // \95Ï\8a·\90æ\95\8e\9a\83R\81[\83h\r
-//             0,                                                              // \83t\83\89\83O(0:\82È\82µ)\r
-//             cInfo->Str,                                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\r
-//             -1,                                                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\83o\83C\83g\90\94(-1:\8e©\93®)\r
-//             (unsigned short *)temp_string,  // \95Ï\8a·\82µ\82½\95\8e\9a\97ñ\82Ì\8ai\94[\90æ\r
-//             1024                                                    // \8ai\94[\90æ\83T\83C\83Y\r
+//             CP_UTF8,                                                // 変換先文字コード\r
+//             0,                                                              // フラグ(0:なし)\r
+//             cInfo->Str,                                             // 変換元文字列\r
+//             -1,                                                             // 変換元文字列バイト数(-1:自動)\r
+//             (unsigned short *)temp_string,  // 変換した文字列の格納先\r
+//             1024                                                    // 格納先サイズ\r
 //     );\r
        MultiByteToWideChar(CP_UTF8, 0, pSrc, SrcLength, pUTF16, UTF16Length);\r
 \r
-       // \90\90¬\82³\82ê\82éUTF-8\83R\81[\83h\82Ì\83T\83C\83Y\82ð\92²\82×\82é\r
+       // 生成されるUTF-8コードのサイズを調べる\r
 //     string_length = WideCharToMultiByte(\r
-//                                             CP_ACP,                 // \95Ï\8a·\90æ\95\8e\9a\83R\81[\83h\r
-//                                             0,                              // \83t\83\89\83O(0:\82È\82µ)\r
-//                                             (unsigned short *)temp_string,  // \95Ï\8a·\8c³\95\8e\9a\97ñ\r
-//                                             -1,                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\83o\83C\83g\90\94(-1:\8e©\93®)\r
-//                                             NULL,                   // \95Ï\8a·\82µ\82½\95\8e\9a\97ñ\82Ì\8ai\94[\90æ\r
-//                                             0,                              // \8ai\94[\90æ\83T\83C\83Y\r
+//                                             CP_ACP,                 // 変換先文字コード\r
+//                                             0,                              // フラグ(0:なし)\r
+//                                             (unsigned short *)temp_string,  // 変換元文字列\r
+//                                             -1,                             // 変換元文字列バイト数(-1:自動)\r
+//                                             NULL,                   // 変換した文字列の格納先\r
+//                                             0,                              // 格納先サイズ\r
 //                                             NULL,NULL\r
 //                                     );\r
        string_length = WideCharToMultiByte(CP_ACP, 0, pUTF16, UTF16Length, NULL, 0, NULL, NULL);\r
 \r
-       // \83T\83C\83Y0 or \8fo\97Í\83o\83b\83t\83@\83T\83C\83Y\82æ\82è\91å\82«\82¢\8fê\8d\87\82Í\81A\r
-       // cInfo->Buf\82Ì\8dÅ\8f\89\82É'\0'\82ð\93ü\82ê\82Ä\81A\r
-       // cInfo->BufSize\82É0\82ð\93ü\82ê\82Ä\95Ô\82·\81B\r
+       // サイズ0 or 出力バッファサイズより大きい場合は、\r
+       // cInfo->Bufの最初に'\0'を入れて、\r
+       // cInfo->BufSizeに0を入れて返す。\r
 //     if( string_length == 0 ||\r
 //             string_length >= cInfo->BufSize ){\r
 //             *(cInfo->Buf) = '\0';\r
@@ -1569,29 +1569,29 @@ int ConvUTF8NtoSJIS(CODECONVINFO *cInfo)
 //             return(Continue);\r
 //     }\r
 \r
-       // \8fo\97Í\83T\83C\83Y\82ð\90Ý\92è\r
+       // 出力サイズを設定\r
 //     cInfo->OutLen = string_length;\r
 \r
-       // UTF-8\83R\81[\83h\82É\95Ï\8a·\r
+       // UTF-8コードに変換\r
 //     WideCharToMultiByte(\r
-//             CP_ACP,                                                 // \95Ï\8a·\90æ\95\8e\9a\83R\81[\83h\r
-//             0,                                                              // \83t\83\89\83O(0:\82È\82µ)\r
-//             (unsigned short *)temp_string,  // \95Ï\8a·\8c³\95\8e\9a\97ñ\r
-//             -1,                                                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\83o\83C\83g\90\94(-1:\8e©\93®)\r
-//             cInfo->Buf,                                             // \95Ï\8a·\82µ\82½\95\8e\9a\97ñ\82Ì\8ai\94[\90æ(BOM:3bytes)\r
-//             cInfo->BufSize,                                 // \8ai\94[\90æ\83T\83C\83Y\r
+//             CP_ACP,                                                 // 変換先文字コード\r
+//             0,                                                              // フラグ(0:なし)\r
+//             (unsigned short *)temp_string,  // 変換元文字列\r
+//             -1,                                                             // 変換元文字列バイト数(-1:自動)\r
+//             cInfo->Buf,                                             // 変換した文字列の格納先(BOM:3bytes)\r
+//             cInfo->BufSize,                                 // 格納先サイズ\r
 //             NULL,NULL\r
 //     );\r
        cInfo->OutLen = WideCharToMultiByte(CP_ACP, 0, pUTF16, UTF16Length, cInfo->Buf, cInfo->BufSize, NULL, NULL);\r
-       // \83o\83b\83t\83@\82É\8eû\82Ü\82ç\82È\82¢\82½\82ß\95Ï\8a·\95\8e\9a\90\94\82ð\94¼\8c¸\r
+       // バッファに収まらないため変換文字数を半減\r
        while(cInfo->OutLen == 0 && UTF16Length > 0)\r
        {\r
                UTF16Length = UTF16Length / 2;\r
                cInfo->OutLen = WideCharToMultiByte(CP_ACP, 0, pUTF16, UTF16Length, cInfo->Buf, cInfo->BufSize, NULL, NULL);\r
        }\r
-       // \95Ï\8a·\82³\82ê\82½\8c³\82Ì\95\8e\9a\97ñ\82Å\82Ì\95\8e\9a\90\94\82ð\8eæ\93¾\r
+       // 変換された元の文字列での文字数を取得\r
        Count = WideCharToMultiByte(CP_UTF8, 0, pUTF16, UTF16Length, NULL, 0, NULL, NULL);\r
-       // \95Ï\8a·\89Â\94\\82È\8ec\82è\82Ì\95\8e\9a\90\94\82ð\8eæ\93¾\r
+       // 変換可能な残りの文字数を取得\r
        UTF16Length = MultiByteToWideChar(CP_UTF8, 0, pSrc + Count, SrcLength - Count, NULL, 0);\r
        cInfo->Str += Count - cInfo->EscUTF8Len;\r
        cInfo->StrLen -= Count - cInfo->EscUTF8Len;\r
@@ -1600,7 +1600,7 @@ int ConvUTF8NtoSJIS(CODECONVINFO *cInfo)
                Continue = YES;\r
        else\r
        {\r
-               // \95Ï\8a·\95s\94\\82È\82½\82ß\8e\9f\82Ì\93ü\97Í\82Ì\90æ\93ª\82É\8c\8b\8d\87\r
+               // 変換不能なため次の入力の先頭に結合\r
                memcpy(cInfo->EscUTF8, cInfo->Str, sizeof(char) * cInfo->StrLen);\r
                cInfo->EscUTF8Len = cInfo->StrLen;\r
                cInfo->Str += cInfo->StrLen;\r
@@ -1614,16 +1614,16 @@ int ConvUTF8NtoSJIS(CODECONVINFO *cInfo)
        return(Continue);\r
 }\r
 \r
-/*----- SHIFT-JIS\8a¿\8e\9a\83R\81[\83h\82ðUTF-8\8a¿\8e\9a\83R\81[\83h\82É\95Ï\8a· ------------------------------\r
+/*----- SHIFT-JIS漢字コードをUTF-8漢字コードに変換 ------------------------------\r
 *\r
 *      Parameter\r
-*              CODECONVINFO *cInfo : \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\8fî\95ñ\r
+*              CODECONVINFO *cInfo : 漢字コード変換情報\r
 *\r
 *      Return Value\r
-*              int \82­\82è\95Ô\82µ\83t\83\89\83O (YES/NO)\r
+*              int くり返しフラグ (YES/NO)\r
 *\r
 *      Note\r
-*              \82­\82è\95Ô\82µ\83t\83\89\83O\82ªYES\82Ì\8e\9e\82Í\81AcInfo\82Ì\93à\97e\82ð\95Ï\82¦\82¸\82É\82à\82¤\88ê\93x\8cÄ\82Ô\82±\82Æ\r
+*              くり返しフラグがYESの時は、cInfoの内容を変えずにもう一度呼ぶこと\r
 *----------------------------------------------------------------------------*/\r
 int ConvSJIStoUTF8N(CODECONVINFO *cInfo)\r
 {\r
@@ -1632,8 +1632,8 @@ int ConvSJIStoUTF8N(CODECONVINFO *cInfo)
 //     char temp_string[2048];\r
        int string_length;\r
 \r
-       // \91å\82«\82¢\83T\83C\83Y\82É\91Î\89\9e\r
-       // \8fI\92[\82ÌNULL\82ð\8aÜ\82Þ\83o\83O\82ð\8fC\90³\r
+       // 大きいサイズに対応\r
+       // 終端のNULLを含むバグを修正\r
        int SrcLength;\r
        char* pSrc;\r
        wchar_t* pUTF16;\r
@@ -1642,16 +1642,16 @@ int ConvSJIStoUTF8N(CODECONVINFO *cInfo)
 \r
        Continue = NO;\r
 \r
-       // \90\90¬\82³\82ê\82é\92\86\8aÔ\83R\81[\83h\82Ì\83T\83C\83Y\82ð\92²\82×\82é\r
+       // 生成される中間コードのサイズを調べる\r
 //     string_length = MultiByteToWideChar(\r
-//                                             CP_ACP,                 // \95Ï\8a·\90æ\95\8e\9a\83R\81[\83h\r
-//                                             0,                              // \83t\83\89\83O(0:\82È\82µ)\r
-//                                             cInfo->Str,             // \95Ï\8a·\8c³\95\8e\9a\97ñ\r
-//                                             -1,                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\83o\83C\83g\90\94(-1:\8e©\93®)\r
-//                                             NULL,                   // \95Ï\8a·\82µ\82½\95\8e\9a\97ñ\82Ì\8ai\94[\90æ\r
-//                                             0                               // \8ai\94[\90æ\83T\83C\83Y\r
+//                                             CP_ACP,                 // 変換先文字コード\r
+//                                             0,                              // フラグ(0:なし)\r
+//                                             cInfo->Str,             // 変換元文字列\r
+//                                             -1,                             // 変換元文字列バイト数(-1:自動)\r
+//                                             NULL,                   // 変換した文字列の格納先\r
+//                                             0                               // 格納先サイズ\r
 //                                     );\r
-       // \91O\89ñ\82Ì\95Ï\8a·\95s\94\\82È\8ec\82è\82Ì\95\8e\9a\97ñ\82ð\93ü\97Í\82Ì\90æ\93ª\82É\8c\8b\8d\87\r
+       // 前回の変換不能な残りの文字列を入力の先頭に結合\r
        SrcLength = cInfo->StrLen + cInfo->EscUTF8Len;\r
        if(!(pSrc = (char*)malloc(sizeof(char) * (SrcLength + 1))))\r
        {\r
@@ -1662,7 +1662,7 @@ int ConvSJIStoUTF8N(CODECONVINFO *cInfo)
        memcpy(pSrc, cInfo->EscUTF8, sizeof(char) * cInfo->EscUTF8Len);\r
        memcpy(pSrc + cInfo->EscUTF8Len, cInfo->Str, sizeof(char) * cInfo->StrLen);\r
        *(pSrc + SrcLength) = '\0';\r
-       // Shift_JIS\82Ì\8fê\8d\87\81A\95s\8a®\91S\82È\95\8e\9a\82Å\82à\95Ï\8a·\82³\82ê\82é\82±\82Æ\82ª\82 \82é\82½\82ß\81A\96\96\94ö\82Ì\95s\8a®\91S\82È\95\94\95ª\82ð\8dí\82é\r
+       // Shift_JISの場合、不完全な文字でも変換されることがあるため、末尾の不完全な部分を削る\r
        Count = 0;\r
        while(Count < SrcLength)\r
        {\r
@@ -1683,9 +1683,9 @@ int ConvSJIStoUTF8N(CODECONVINFO *cInfo)
        SrcLength = Count;\r
        UTF16Length = MultiByteToWideChar(CP_ACP, 0, pSrc, SrcLength, NULL, 0);\r
 \r
-       // \83T\83C\83Y0 or \83o\83b\83t\83@\83T\83C\83Y\82æ\82è\91å\82«\82¢\8fê\8d\87\82Í\81A\r
-       // cInfo->Buf\82Ì\8dÅ\8f\89\82É'\0'\82ð\93ü\82ê\82Ä\81A\r
-       // cInfo->BufSize\82É0\82ð\93ü\82ê\82Ä\95Ô\82·\81B\r
+       // サイズ0 or バッファサイズより大きい場合は、\r
+       // cInfo->Bufの最初に'\0'を入れて、\r
+       // cInfo->BufSizeに0を入れて返す。\r
 //     if( string_length == 0 ||\r
 //             string_length >= 1024 ){\r
 //             *(cInfo->Buf) = '\0';\r
@@ -1700,32 +1700,32 @@ int ConvSJIStoUTF8N(CODECONVINFO *cInfo)
                return Continue;\r
        }\r
 \r
-       // \92\86\8aÔ\83R\81[\83h(unicode)\82É\95Ï\8a·\r
+       // 中間コード(unicode)に変換\r
 //     MultiByteToWideChar(\r
-//             CP_ACP,                                                 // \95Ï\8a·\90æ\95\8e\9a\83R\81[\83h\r
-//             0,                                                              // \83t\83\89\83O(0:\82È\82µ)\r
-//             cInfo->Str,                                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\r
-//             -1,                                                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\83o\83C\83g\90\94(-1:\8e©\93®)\r
-//             (unsigned short *)temp_string,  // \95Ï\8a·\82µ\82½\95\8e\9a\97ñ\82Ì\8ai\94[\90æ\r
-//             1024                                                    // \8ai\94[\90æ\83T\83C\83Y\r
+//             CP_ACP,                                                 // 変換先文字コード\r
+//             0,                                                              // フラグ(0:なし)\r
+//             cInfo->Str,                                             // 変換元文字列\r
+//             -1,                                                             // 変換元文字列バイト数(-1:自動)\r
+//             (unsigned short *)temp_string,  // 変換した文字列の格納先\r
+//             1024                                                    // 格納先サイズ\r
 //     );\r
        MultiByteToWideChar(CP_ACP, 0, pSrc, SrcLength, pUTF16, UTF16Length);\r
 \r
-       // \90\90¬\82³\82ê\82éUTF-8\83R\81[\83h\82Ì\83T\83C\83Y\82ð\92²\82×\82é\r
+       // 生成されるUTF-8コードのサイズを調べる\r
 //     string_length = WideCharToMultiByte(\r
-//                                             CP_UTF8,                // \95Ï\8a·\90æ\95\8e\9a\83R\81[\83h\r
-//                                             0,                              // \83t\83\89\83O(0:\82È\82µ)\r
-//                                             (unsigned short *)temp_string,  // \95Ï\8a·\8c³\95\8e\9a\97ñ\r
-//                                             -1,                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\83o\83C\83g\90\94(-1:\8e©\93®)\r
-//                                             NULL,                   // \95Ï\8a·\82µ\82½\95\8e\9a\97ñ\82Ì\8ai\94[\90æ\r
-//                                             0,                              // \8ai\94[\90æ\83T\83C\83Y\r
+//                                             CP_UTF8,                // 変換先文字コード\r
+//                                             0,                              // フラグ(0:なし)\r
+//                                             (unsigned short *)temp_string,  // 変換元文字列\r
+//                                             -1,                             // 変換元文字列バイト数(-1:自動)\r
+//                                             NULL,                   // 変換した文字列の格納先\r
+//                                             0,                              // 格納先サイズ\r
 //                                             NULL,NULL\r
 //                                     );\r
        string_length = WideCharToMultiByte(CP_UTF8, 0, pUTF16, UTF16Length, NULL, 0, NULL, NULL);\r
 \r
-       // \83T\83C\83Y0 or \8fo\97Í\83o\83b\83t\83@\83T\83C\83Y\82æ\82è\91å\82«\82¢\8fê\8d\87\82Í\81A\r
-       // cInfo->Buf\82Ì\8dÅ\8f\89\82É'\0'\82ð\93ü\82ê\82Ä\81A\r
-       // cInfo->BufSize\82É0\82ð\93ü\82ê\82Ä\95Ô\82·\81B\r
+       // サイズ0 or 出力バッファサイズより大きい場合は、\r
+       // cInfo->Bufの最初に'\0'を入れて、\r
+       // cInfo->BufSizeに0を入れて返す。\r
 //     if( string_length == 0 ||\r
 //             string_length >= cInfo->BufSize ){\r
 //             *(cInfo->Buf) = '\0';\r
@@ -1733,37 +1733,37 @@ int ConvSJIStoUTF8N(CODECONVINFO *cInfo)
 //             return(Continue);\r
 //     }\r
 \r
-       // \8fo\97Í\83T\83C\83Y\82ð\90Ý\92è\r
+       // 出力サイズを設定\r
 //     cInfo->OutLen = string_length;\r
 \r
        /*\r
-       // \81«\95t\82¯\82¿\82á\82¾\82ß \83R\83}\83\93\83h\82É\82à\92Ç\89Á\82³\82ê\82Ä\82µ\82Ü\82¤\r
-       // \8fo\97Í\95\8e\9a\97ñ\82Ì\90æ\93ª\82ÉBOM(byte order mark)\82ð\82Â\82¯\82é\r
+       // ↓付けちゃだめ コマンドにも追加されてしまう\r
+       // 出力文字列の先頭にBOM(byte order mark)をつける\r
        *(cInfo->Buf) = (char)0xef;\r
        *(cInfo->Buf+1) = (char)0xbb;\r
        *(cInfo->Buf+2) = (char)0xbf;\r
        */\r
 \r
-       // UTF-8\83R\81[\83h\82É\95Ï\8a·\r
+       // UTF-8コードに変換\r
 //     WideCharToMultiByte(\r
-//             CP_UTF8,                                                // \95Ï\8a·\90æ\95\8e\9a\83R\81[\83h\r
-//             0,                                                              // \83t\83\89\83O(0:\82È\82µ)\r
-//             (unsigned short *)temp_string,  // \95Ï\8a·\8c³\95\8e\9a\97ñ\r
-//             -1,                                                             // \95Ï\8a·\8c³\95\8e\9a\97ñ\83o\83C\83g\90\94(-1:\8e©\93®)\r
-//             cInfo->Buf,                                     // \95Ï\8a·\82µ\82½\95\8e\9a\97ñ\82Ì\8ai\94[\90æ(BOM:3bytes)\r
-//             cInfo->BufSize,                                 // \8ai\94[\90æ\83T\83C\83Y\r
+//             CP_UTF8,                                                // 変換先文字コード\r
+//             0,                                                              // フラグ(0:なし)\r
+//             (unsigned short *)temp_string,  // 変換元文字列\r
+//             -1,                                                             // 変換元文字列バイト数(-1:自動)\r
+//             cInfo->Buf,                                     // 変換した文字列の格納先(BOM:3bytes)\r
+//             cInfo->BufSize,                                 // 格納先サイズ\r
 //             NULL,NULL\r
 //     );\r
        cInfo->OutLen = WideCharToMultiByte(CP_UTF8, 0, pUTF16, UTF16Length, cInfo->Buf, cInfo->BufSize, NULL, NULL);\r
-       // \83o\83b\83t\83@\82É\8eû\82Ü\82ç\82È\82¢\82½\82ß\95Ï\8a·\95\8e\9a\90\94\82ð\94¼\8c¸\r
+       // バッファに収まらないため変換文字数を半減\r
        while(cInfo->OutLen == 0 && UTF16Length > 0)\r
        {\r
                UTF16Length = UTF16Length / 2;\r
                cInfo->OutLen = WideCharToMultiByte(CP_UTF8, 0, pUTF16, UTF16Length, cInfo->Buf, cInfo->BufSize, NULL, NULL);\r
        }\r
-       // \95Ï\8a·\82³\82ê\82½\8c³\82Ì\95\8e\9a\97ñ\82Å\82Ì\95\8e\9a\90\94\82ð\8eæ\93¾\r
+       // 変換された元の文字列での文字数を取得\r
        Count = WideCharToMultiByte(CP_ACP, 0, pUTF16, UTF16Length, NULL, 0, NULL, NULL);\r
-       // \95Ï\8a·\89Â\94\\82È\8ec\82è\82Ì\95\8e\9a\90\94\82ð\8eæ\93¾\r
+       // 変換可能な残りの文字数を取得\r
        UTF16Length = MultiByteToWideChar(CP_ACP, 0, pSrc + Count, SrcLength - Count, NULL, 0);\r
        cInfo->Str += Count - cInfo->EscUTF8Len;\r
        cInfo->StrLen -= Count - cInfo->EscUTF8Len;\r
@@ -1772,7 +1772,7 @@ int ConvSJIStoUTF8N(CODECONVINFO *cInfo)
                Continue = YES;\r
        else\r
        {\r
-               // \95Ï\8a·\95s\94\\82È\82½\82ß\8e\9f\82Ì\93ü\97Í\82Ì\90æ\93ª\82É\8c\8b\8d\87\r
+               // 変換不能なため次の入力の先頭に結合\r
                memcpy(cInfo->EscUTF8, cInfo->Str, sizeof(char) * cInfo->StrLen);\r
                cInfo->EscUTF8Len = cInfo->StrLen;\r
                cInfo->Str += cInfo->StrLen;\r
@@ -1785,16 +1785,16 @@ int ConvSJIStoUTF8N(CODECONVINFO *cInfo)
 \r
        return(Continue);\r
 }\r
-// UTF-8\91Î\89\9e \82±\82±\82Ü\82Å\81ª\r
+// UTF-8対応 ここまで↑\r
 \r
 \r
-/*----- IBM\8ag\92£\8a¿\8e\9a\82ðNEC\91I\92èIBM\8ag\92£\8a¿\8e\9a\93\99\82É\95Ï\8a· -------------------------------\r
+/*----- IBM拡張漢字をNEC選定IBM拡張漢字等に変換 -------------------------------\r
 *\r
 *      Parameter\r
-*              code    \8a¿\8e\9a\83R\81[\83h\r
+*              code    漢字コード\r
 *\r
 *      Return Value\r
-*              int \8a¿\8e\9a\83R\81[\83h\r
+*              int 漢字コード\r
 *----------------------------------------------------------------------------*/\r
 static int ConvertIBMExtendedChar(int code)\r
 {\r
index 9acd714..2bdd54b 100644 (file)
--- a/common.h
+++ b/common.h
@@ -1,5 +1,5 @@
-/*=============================================================================\r
-*                                                      \82e\82e\82e\82s\82o\8b¤\92Ê\92è\8b`\83t\83@\83C\83\8b\r
+/*=============================================================================\r
+*                                                      FFFTP共通定義ファイル\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #define ushort                 unsigned short\r
 #define ulong                  unsigned long\r
 \r
-#define FAIL                   0\r
-#define SUCCESS                        1\r
+// 警告の回避\r
+//#define FAIL                 0\r
+//#define SUCCESS                      1\r
+#define FFFTP_FAIL                     0\r
+#define FFFTP_SUCCESS                  1\r
 \r
 #define NO                             0\r
 #define YES                            1\r
 #define YES_ALL                        3\r
 #define YES_LIST               4\r
 \r
-/*===== \83o\81[\83W\83\87\83\93 ======*/\r
+/*===== バージョン ======*/\r
 \r
-// SourceForge.JP\82É\82æ\82é\83t\83H\81[\83N\r
+// SourceForge.JPによるフォーク\r
 //#define VER_STR                                      "1.97b"\r
-//#define VER_NUM                                      1921            /* \90Ý\92è\83o\81[\83W\83\87\83\93 */\r
-//#define PROGRAM_VERSION_NUM          1972            /* \83o\81[\83W\83\87\83\93 */\r
+//#define VER_NUM                                      1921            /* 設定バージョン */\r
+//#define PROGRAM_VERSION_NUM          1972            /* バージョン */\r
 #define VER_STR                                        "1.98"\r
-#define VER_NUM                                        1980            /* \90Ý\92è\83o\81[\83W\83\87\83\93 */\r
-#define PROGRAM_VERSION_NUM            1980            /* \83o\81[\83W\83\87\83\93 */\r
+#define VER_NUM                                        1980            /* 設定バージョン */\r
+#define PROGRAM_VERSION_NUM            1980            /* バージョン */\r
 \r
 \r
 #define MYWEB_URL      "http://www2.biglobe.ne.jp/~sota/ffftp-qa.html"\r
 \r
 \r
 \r
-/*===== \92Ê\90M\8aÖ\8cW ======*/\r
+/*===== 通信関係 ======*/\r
 \r
 #define TCP_PORT               6\r
 \r
-/*===== \83E\83C\83\93\83h\83E\83T\83C\83Y ======*/\r
+/*===== ウインドウサイズ ======*/\r
 \r
-#define TOOLWIN_HEIGHT 28              /* \83c\81[\83\8b\83o\81[\82Ì\8d\82\82³ */\r
+#define TOOLWIN_HEIGHT 28              /* ツールバーの高さ */\r
 \r
-/*===== \93Á\8eê\82È\83L\83\83\83b\83V\83\85\83f\81[\83^\94Ô\8d\86 =====*/\r
-/* \81i\83t\83@\83C\83\8b\88ê\97\97\8eæ\93¾\82Å\8eg\97p\82·\82é\83\8d\81[\83J\83\8b\83t\83@\83C\83\8b\96¼ _ffftp.??? \82Ì\94Ô\8d\86\95\94\95ª\81j */\r
+/*===== 特殊なキャッシュデータ番号 =====*/\r
+/* (ファイル一覧取得で使用するローカルファイル名 _ffftp.??? の番号部分) */\r
 \r
-#define CACHE_FILE_TMP1        999             /* \83z\83X\83g\82Ì\83t\83@\83C\83\8b\83c\83\8a\81[\8eæ\93¾\97p */\r
-#define CACHE_FILE_TMP2        998             /* \83A\83b\83v\83\8d\81[\83h\92\86\82Ì\83z\83X\83g\82Ì\83t\83@\83C\83\8b\88ê\97\97\8eæ\93¾\97p */\r
+#define CACHE_FILE_TMP1        999             /* ホストのファイルツリー取得用 */\r
+#define CACHE_FILE_TMP2        998             /* アップロード中のホストのファイル一覧取得用 */\r
 \r
-/*===== \83\86\81[\83U\92è\8b`\83R\83}\83\93\83h =====*/\r
+/*===== ユーザ定義コマンド =====*/\r
 \r
-#define WM_CHANGE_COND (WM_USER+1)     /* \83t\83@\83C\83\8b\88ê\97\97\82ð\95Ï\8dX\82·\82é\83R\83}\83\93\83h */\r
-#define WM_SET_PACKET  (WM_USER+2)     /* \8c»\8dÝ\8eg\97p\82µ\82Ä\82¢\82é\93]\91\97\83p\83P\83b\83g\82Ì\83A\83h\83\8c\83X\82ð\92Ê\92m */\r
-#define WM_SELECT_HOST (WM_USER+3)     /* \83z\83X\83g\82ð\83_\83u\83\8b\83N\83\8a\83b\83N\82Å\91I\91ð\82µ\82½ */\r
-#define WM_DIAL_MSG            (WM_USER+4)     /* \83_\83C\83A\83\8b\92\86\82Ì\83X\83e\81[\83^\83X\92Ê\92m */\r
+#define WM_CHANGE_COND (WM_USER+1)     /* ファイル一覧を変更するコマンド */\r
+#define WM_SET_PACKET  (WM_USER+2)     /* 現在使用している転送パケットのアドレスを通知 */\r
+#define WM_SELECT_HOST (WM_USER+3)     /* ホストをダブルクリックで選択した */\r
+#define WM_DIAL_MSG            (WM_USER+4)     /* ダイアル中のステータス通知 */\r
 \r
 #define WM_ASYNC_SOCKET        (WM_USER+5)\r
 #define WM_ASYNC_DBASE (WM_USER+6)\r
 #define WM_REFRESH_LOCAL_FLG   (WM_USER+7)\r
 #define WM_REFRESH_REMOTE_FLG  (WM_USER+8)\r
 \r
-/*===== \83z\83X\83g\94Ô\8d\86 =====*/\r
-/* \83z\83X\83g\94Ô\8d\86\82Í 0\81\82Ì\92l\82ð\8eæ\82é */\r
-\r
-#define HOSTNUM_NOENTRY        (-1)    /* \83z\83X\83g\88ê\97\97\82É\96³\82¢\82Æ\82«\82Ì\83z\83X\83g\94Ô\8d\86 */\r
-\r
-/*===== \83o\83b\83t\83@\83T\83C\83Y =====*/\r
-\r
-#define BUFSIZE                        4096    /* \83t\83@\83C\83\8b\93]\91\97\83o\83b\83t\83@\82Ì\83T\83C\83Y(4k\88È\8fã) */\r
-\r
-#define HOST_NAME_LEN  40              /* \88ê\97\97\82É\95\\8e¦\82·\82é\83z\83X\83g\82Ì\96¼\91O */\r
-#define HOST_ADRS_LEN  80              /* \83z\83X\83g\96¼ */\r
-#define USER_NAME_LEN  80              /* \83\86\81[\83U\96¼ */\r
-#define PASSWORD_LEN   80              /* \83p\83X\83\8f\81[\83h */\r
-#define ACCOUNT_LEN            80              /* \83A\83J\83E\83\93\83g */\r
-#define HOST_TYPE_LEN  1               /* \83z\83X\83g\82Ì\8eí\97Þ */\r
-#define INIT_DIR_LEN   (FMAX_PATH-40)  /* \8f\89\8aú\83f\83B\83\8c\83N\83g\83\8a */\r
-#define USER_MAIL_LEN  80              /* \83\86\81[\83U\82Ì\83\81\81[\83\8b\83A\83h\83\8c\83X */\r
-                                                               /*   PASSWORD_LEN \82Æ\93¯\82\82É\82·\82é\82±\82Æ */\r
-#define ASCII_EXT_LEN  400             /* \83A\83X\83L\81[\83\82\81[\83h\93]\91\97\82Ì\83t\83@\83C\83\8b\96¼\97ñ */\r
-#define FILTER_EXT_LEN 400             /* \83t\83B\83\8b\83^\82Ì\83t\83@\83C\83\8b\96¼\97ñ */\r
-#define BOOKMARK_SIZE  2048    /* \83u\83b\83N\83}\81[\83N */\r
-#define CHMOD_CMD_LEN  40              /* \91®\90«\95Ï\8dX\83R\83}\83\93\83h */\r
-#define MIRROR_LEN             400             /* \83~\83\89\81[\83\8a\83\93\83O\82Ì\90Ý\92è\97p */\r
-#define NLST_NAME_LEN  40              /* NLST\82É\95t\82¯\82é\83t\83@\83C\83\8b\96¼\81^\83I\83v\83V\83\87\83\93 */\r
-#define DEFATTRLIST_LEN        800             /* \91®\90«\83\8a\83X\83g\82Ì\92·\82³ */\r
-#define INITCMD_LEN            256             /* \8f\89\8aú\89»\83R\83}\83\93\83h */\r
-#define OWNER_NAME_LEN 40              /* \83I\81[\83i\96¼ */\r
-#define RAS_NAME_LEN   256             /* RAS\82Ì\83G\83\93\83g\83\8a\96¼\82Ì\92·\82³ */\r
+/*===== ホスト番号 =====*/\r
+/* ホスト番号は 0~ の値を取る */\r
+\r
+#define HOSTNUM_NOENTRY        (-1)    /* ホスト一覧に無いときのホスト番号 */\r
+\r
+/*===== バッファサイズ =====*/\r
+\r
+#define BUFSIZE                        4096    /* ファイル転送バッファのサイズ(4k以上) */\r
+\r
+#define HOST_NAME_LEN  40              /* 一覧に表示するホストの名前 */\r
+#define HOST_ADRS_LEN  80              /* ホスト名 */\r
+#define USER_NAME_LEN  80              /* ユーザ名 */\r
+#define PASSWORD_LEN   80              /* パスワード */\r
+#define ACCOUNT_LEN            80              /* アカウント */\r
+#define HOST_TYPE_LEN  1               /* ホストの種類 */\r
+#define INIT_DIR_LEN   (FMAX_PATH-40)  /* 初期ディレクトリ */\r
+#define USER_MAIL_LEN  80              /* ユーザのメールアドレス */\r
+                                                               /*   PASSWORD_LEN と同じにすること */\r
+#define ASCII_EXT_LEN  400             /* アスキーモード転送のファイル名列 */\r
+#define FILTER_EXT_LEN 400             /* フィルタのファイル名列 */\r
+#define BOOKMARK_SIZE  2048    /* ブックマーク */\r
+#define CHMOD_CMD_LEN  40              /* 属性変更コマンド */\r
+#define MIRROR_LEN             400             /* ミラーリングの設定用 */\r
+#define NLST_NAME_LEN  40              /* NLSTに付けるファイル名/オプション */\r
+#define DEFATTRLIST_LEN        800             /* 属性リストの長さ */\r
+#define INITCMD_LEN            256             /* 初期化コマンド */\r
+#define OWNER_NAME_LEN 40              /* オーナ名 */\r
+#define RAS_NAME_LEN   256             /* RASのエントリ名の長さ */\r
 \r
 #define FMAX_PATH              1024\r
 \r
 #define ONELINE_BUF_SIZE       (10*1024)\r
 \r
-/*===== \8f\89\8aú\92l =====*/\r
+/*===== 初期値 =====*/\r
 \r
-#define SAMBA_HEX_TAG  ':'                             /* Samba-HEX \82Ì\8bæ\90Ø\82è\95\8e\9a */\r
-#define CHMOD_CMD_NOR  "SITE CHMOD"    /* \91®\90«\95Ï\8dX\83R\83}\83\93\83h */\r
-#define PORT_NOR               21                              /* \83|\81[\83g\94Ô\8d\86 */\r
-#define LS_FNAME               "-alL"                  /* NLST\82É\95t\82¯\82é\82à\82Ì */\r
+#define SAMBA_HEX_TAG  ':'                             /* Samba-HEX の区切り文字 */\r
+#define CHMOD_CMD_NOR  "SITE CHMOD"    /* 属性変更コマンド */\r
+#define PORT_NOR               21                              /* ポート番号 */\r
+#define LS_FNAME               "-alL"                  /* NLSTに付けるもの */\r
 \r
-/*===== \93¯\82\96¼\91O\82Ì\83t\83@\83C\83\8b\82ª\82 \82Á\82½\8e\9e\82Ì\8f\88\97\9d =====*/\r
+/*===== 同じ名前のファイルがあった時の処理 =====*/\r
 \r
-#define EXIST_OVW              0               /* \8fã\8f\91\82« */\r
-#define EXIST_NEW              1               /* \90V\82µ\82¯\82ê\82Î\8fã\8f\91\82« */\r
-#define EXIST_RESUME   2               /* \83\8c\83W\83\85\81[\83\80 */\r
-#define EXIST_IGNORE   3               /* \96³\8e\8b */\r
-#define EXIST_UNIQUE   4               /* \83z\83X\83g\82ª\96¼\91O\82ð\95t\82¯\82é */\r
-#define EXIST_ABORT            5               /* \91S\82Ä\92\86\8e~ */\r
+#define EXIST_OVW              0               /* 上書き */\r
+#define EXIST_NEW              1               /* 新しければ上書き */\r
+#define EXIST_RESUME   2               /* レジューム */\r
+#define EXIST_IGNORE   3               /* 無視 */\r
+#define EXIST_UNIQUE   4               /* ホストが名前を付ける */\r
+#define EXIST_ABORT            5               /* 全て中止 */\r
 \r
-/*===== \83t\83@\83C\83\8b\96¼\82Ì\94ä\8ar\83\82\81[\83h =====*/\r
+/*===== ファイル名の比較モード =====*/\r
 \r
-#define COMP_IGNORE            0               /* \91å\95\8e\9a/\8f¬\95\8e\9a\82Í\8bæ\95Ê\82µ\82È\82¢ */\r
-#define COMP_STRICT            1               /* \91å\95\8e\9a/\8f¬\95\8e\9a\82ð\8bæ\95Ê\82·\82é */\r
-#define COMP_LOWERMATCH        2               /* \91å\95\8e\9a/\8f¬\95\8e\9a\82ð\8bæ\95Ê\82µ\82È\82¢\81i\95Ð\91¤\82Í\91S\82Ä\8f¬\95\8e\9a\81j */\r
+#define COMP_IGNORE            0               /* 大文字/小文字は区別しない */\r
+#define COMP_STRICT            1               /* 大文字/小文字を区別する */\r
+#define COMP_LOWERMATCH        2               /* 大文字/小文字を区別しない(片側は全て小文字) */\r
 \r
-/*===== FTP\82Ì\89\9e\93\9a\83R\81[\83h\82Ì\93ª\82P\8c\85 =====*/\r
+/*===== FTPの応答コードの頭1桁 =====*/\r
 \r
 #define FTP_PRELIM             1               /* */\r
 #define FTP_COMPLETE   2               /* */\r
 #define FTP_RETRY              4               /* */\r
 #define FTP_ERROR              5               /* */\r
 \r
-/*===== \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\83m\81[\83h\91®\90« =====*/\r
+/*===== ファイルリストのノード属性 =====*/\r
 \r
-#define NODE_DIR               0               /* \83f\83B\83\8c\83N\83g\83\8a */\r
-#define NODE_FILE              1               /* \83t\83@\83C\83\8b */\r
-#define NODE_DRIVE             2               /* \83h\83\89\83C\83u */\r
-#define NODE_NONE              (-1)    /* \82È\82µ */\r
+#define NODE_DIR               0               /* ディレクトリ */\r
+#define NODE_FILE              1               /* ファイル */\r
+#define NODE_DRIVE             2               /* ドライブ */\r
+#define NODE_NONE              (-1)    /* なし */\r
 \r
-/*===== \8fã\8f\91\82«\8am\94F\95û\96@\82Ì\90Ý\92è\92l =====*/\r
+/*===== 上書き確認方法の設定値 =====*/\r
 \r
-#define TRANS_OVW              0               /* \8fã\8f\91\82« */\r
-#define TRANS_DLG              1               /* \83_\83C\83A\83\8d\83O\82ð\8fo\82· */\r
+#define TRANS_OVW              0               /* 上書き */\r
+#define TRANS_DLG              1               /* ダイアログを出す */\r
 \r
-/*===== \83z\83X\83g\93à\83t\83@\83C\83\8b\88Ú\93®\8am\94F\95û\96@\82Ì\90Ý\92è\92l =====*/\r
+/*===== ホスト内ファイル移動確認方法の設定値 =====*/\r
 \r
-#define MOVE_NODLG             0               /* \83_\83C\83A\83\8d\83O\82ð\8fo\82³\82È\82¢ */\r
-#define MOVE_DLG               1               /* \83_\83C\83A\83\8d\83O\82ð\8fo\82· */\r
-#define MOVE_DISABLE   2               /* \8b@\94\\8eg\97p\8bÖ\8e~ */\r
+#define MOVE_NODLG             0               /* ダイアログを出さない */\r
+#define MOVE_DLG               1               /* ダイアログを出す */\r
+#define MOVE_DISABLE   2               /* 機能使用禁止 */\r
 \r
-/*===== \93]\91\97\95û\96@ =====*/\r
+/*===== 転送方法 =====*/\r
 \r
-#define TYPE_I                 'I'             /* \83o\83C\83i\83\8a\83\82\81[\83h */\r
-#define TYPE_A                 'A'             /* \83A\83X\83L\81[\83\82\81[\83h */\r
-#define TYPE_X                 'X'             /* \8e©\93®\94»\95Ê */\r
+#define TYPE_I                 'I'             /* バイナリモード */\r
+#define TYPE_A                 'A'             /* アスキーモード */\r
+#define TYPE_X                 'X'             /* 自動判別 */\r
 \r
-#define TYPE_DEFAULT   NUL             /* \90Ý\92è\82µ\82È\82¢ DirectConnectProc()\82Ì\88ø\90\94\82Æ\82µ\82Ä\97L\8cø */\r
+#define TYPE_DEFAULT   NUL             /* 設定しない DirectConnectProc()の引数として有効 */\r
 \r
-/*===== \83\\81[\83g\95û\96@ =====*/\r
-/* \94Ô\8d\86\82ÍListView\82Ì\83J\83\89\83\80\94Ô\8d\86\82Æ\8d\87\82í\82¹\82Ä\82 \82é */\r
+/*===== ソート方法 =====*/\r
+/* 番号はListViewのカラム番号と合わせてある */\r
 \r
-#define SORT_NAME              0               /* \96¼\91O\8f\87 */\r
-#define SORT_DATE              1               /* \93ú\95t\8f\87 */\r
-#define SORT_SIZE              2               /* \83T\83C\83Y\8f\87 */\r
-#define SORT_EXT               3               /* \8ag\92£\8eq\8f\87 */\r
+#define SORT_NAME              0               /* 名前順 */\r
+#define SORT_DATE              1               /* 日付順 */\r
+#define SORT_SIZE              2               /* サイズ順 */\r
+#define SORT_EXT               3               /* 拡張子順 */\r
 \r
-#define SORT_ASCENT            0x00    /* \8f¸\8f\87 */\r
-#define SORT_DESCENT   0x80    /* \8d~\8f\87 */\r
+#define SORT_ASCENT            0x00    /* 昇順 */\r
+#define SORT_DESCENT   0x80    /* 降順 */\r
 \r
-#define SORT_MASK_ORD  0x7F    /* \82\98\82\98\8f\87\82ð\8eæ\82è\8fo\82·\83}\83X\83N */\r
-#define SORT_GET_ORD   0x80    /* \8f¸\8f\87\81^\8d~\8f\87\82ð\8eæ\82è\8fo\82·\83}\83X\83N */\r
+#define SORT_MASK_ORD  0x7F    /* xx順を取り出すマスク */\r
+#define SORT_GET_ORD   0x80    /* 昇順/降順を取り出すマスク */\r
 \r
-#define SORT_NOTSAVED  ((ulong)0xFFFFFFFF)     /* \83z\83X\83g\96\88\82Ì\83Z\81[\83u\95û\96@\82ð\95Û\91\82µ\82Ä\82¢\82È\82¢\8e\9e\82Ì\92l */\r
+#define SORT_NOTSAVED  ((ulong)0xFFFFFFFF)     /* ホスト毎のセーブ方法を保存していない時の値 */\r
 \r
-/*===== \83\\81[\83g\82·\82é\8fê\8f\8a =====*/\r
+/*===== ソートする場所 =====*/\r
 \r
-#define ITEM_LFILE             0               /* \83\8d\81[\83J\83\8b\82Ì\96¼\91O */\r
-#define ITEM_LDIR              1               /* \83\8d\81[\83J\83\8b\82Ì\83f\83B\83\8c\83N\83g\83\8a */\r
-#define ITEM_RFILE             2               /* \83z\83X\83g\82Ì\96¼\91O */\r
-#define ITEM_RDIR              3               /* \83z\83X\83g\82Ì\83f\83B\83\8c\83N\83g\83\8a */\r
+#define ITEM_LFILE             0               /* ローカルの名前 */\r
+#define ITEM_LDIR              1               /* ローカルのディレクトリ */\r
+#define ITEM_RFILE             2               /* ホストの名前 */\r
+#define ITEM_RDIR              3               /* ホストのディレクトリ */\r
 \r
-/*===== \83E\83C\83\93\83h\83E\94Ô\8d\86 =====*/\r
+/*===== ウインドウ番号 =====*/\r
 \r
-#define WIN_LOCAL              0               /* \83\8d\81[\83J\83\8b */\r
-#define WIN_REMOTE             1               /* \83z\83X\83g */\r
-#define WIN_BOTH               2               /* \97¼\95û */\r
+#define WIN_LOCAL              0               /* ローカル */\r
+#define WIN_REMOTE             1               /* ホスト */\r
+#define WIN_BOTH               2               /* 両方 */\r
 \r
-/*===== \83t\83@\83C\83\8b\91I\91ð\95û\96@ =====*/\r
+/*===== ファイル選択方法 =====*/\r
 \r
-#define SELECT_ALL             0               /* \91S\91I\91ð */\r
-#define SELECT_REGEXP  1               /* \8c\9f\8dõ\8e®\82ð\93ü\97Í\82µ\82Ä\91I\91ð */\r
+#define SELECT_ALL             0               /* 全選択 */\r
+#define SELECT_REGEXP  1               /* 検索式を入力して選択 */\r
 \r
-/*===== \8c\9f\8dõ\95û\96@ =====*/\r
+/*===== 検索方法 =====*/\r
 \r
-#define FIND_FIRST             0               /* \8dÅ\8f\89\82Ì\8c\9f\8dõ */\r
-#define FIND_NEXT              1               /* \8e\9f\82ð\8c\9f\8dõ */\r
+#define FIND_FIRST             0               /* 最初の検索 */\r
+#define FIND_NEXT              1               /* 次を検索 */\r
 \r
-/*===== \83t\83@\83C\83\8b\96¼\82Ì\91å\95\8e\9a\81^\8f¬\95\8e\9a\95Ï\8a· =====*/\r
+/*===== ファイル名の大文字/小文字変換 =====*/\r
 \r
-#define FNAME_NOCNV            0               /* \95Ï\8a·\82µ\82È\82¢ */\r
-#define FNAME_LOWER            1               /* \8f¬\95\8e\9a\82É\95Ï\8a· */\r
-#define FNAME_UPPER            2               /* \91å\95\8e\9a\82É\95Ï\8a· */\r
+#define FNAME_NOCNV            0               /* 変換しない */\r
+#define FNAME_LOWER            1               /* 小文字に変換 */\r
+#define FNAME_UPPER            2               /* 大文字に変換 */\r
 \r
-/*===== \83t\83@\83C\83\8b\88ê\97\97\82Ì\8c`\8e® =====*/\r
+/*===== ファイル一覧の形式 =====*/\r
 \r
-#define LIST_UNKNOWN   (-1)    /* \95s\96¾ */\r
+#define LIST_UNKNOWN   (-1)    /* 不明 */\r
 \r
 #define LIST_UNIX_10   0               /* UNIX 10 */\r
 #define LIST_UNIX_11   1               /* UNIX 11 */\r
 #define LIST_ACOS              25              /* ACOS */\r
 #define LIST_AS400             26              /* AS/400 */\r
 #define LIST_M1800             27              /* Fujitu M1800 (OS IV/MSP E20) */\r
-#define LIST_CHAMELEON 28              /* Win3.1\97p Chameleon FTP server */\r
+#define LIST_CHAMELEON 28              /* Win3.1 Chameleon FTP server */\r
 #define LIST_GP6000            29              /* Fujitu GP6000 Model 900 */\r
 #define LIST_OS2               30              /* OS/2 */\r
 #define LIST_VMS               31              /* VAX VMS */\r
 \r
 #define LIST_MASKFLG   0xFF\r
 \r
-/* \83t\83@\83C\83\8b\88ê\97\97\8fî\95ñ\97á ---------------\r
+/* ファイル一覧情報例 ---------------\r
 \r
 *LIST_UNIX_10\r
        0          1   2     3      4    5    6   7         8\r
        -------------------------------------------------------\r
        drwxr-xr-x 15  owner group  1024 Nov  6   14:21     Linux/\r
        -rwxrwx---  5  owner group    12 Nov  6   1996      test.txt\r
-       drwxr-xr-x 15  owner group  1024 11\8c\8e 6\93ú 14:21     Linux/\r
-       drwxr-xr-x 15  owner group  1024 11\8c\8e 6\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---  5  owner group    12 11\8c\8e 6\93ú 1996\94N    test.txt\r
-       drwxrwxr-x 6   root  sys     512  1\8c\8e 26  03:10     adm         (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x 15  owner group  1024 11月 6日 14:21     Linux/\r
+       drwxr-xr-x 15  owner group  1024 11月 6日 14時21分  Linux/\r
+       -rwxrwx---  5  owner group    12 11月 6日 1996年    test.txt\r
+       drwxrwxr-x 6   root  sys     512  1月 26  03:10     adm                (月はGBコードで0xD4C2)\r
 \r
 *LIST_UNIX_11\r
        0          1   2     3      4    5        6         7\r
        -------------------------------------------------------\r
-       drwxr-xr-x 15  owner group  1024 11\8c\8e12\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---  5  owner group    12 11\8c\8e12\93ú 1996\94N    test.txt\r
+       drwxr-xr-x 15  owner group  1024 11月12日 14時21分  Linux/\r
+       -rwxrwx---  5  owner group    12 11月12日 1996年    test.txt\r
 \r
 *LIST_UNIX_12\r
        0              1     2      3    4    5   6         7\r
        -------------------------------------------------------\r
        drwxr-xr-x123  owner group  1024 Nov  6   14:21     Linux/\r
        -rwxrwx---132  owner group    12 Nov  6   1996      test.txt\r
-       drwxr-xr-x123  owner group  1024 11\8c\8e 6\93ú 14:21     Linux/\r
-       drwxr-xr-x123  owner group  1024 11\8c\8e 6\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---132  owner group    12 11\8c\8e 6\93ú 1996\94N    test.txt\r
+       drwxr-xr-x123  owner group  1024 11月 6日 14:21     Linux/\r
+       drwxr-xr-x123  owner group  1024 11月 6日 14時21分  Linux/\r
+       -rwxrwx---132  owner group    12 11月 6日 1996年    test.txt\r
 \r
 *LIST_UNIX_13\r
        0              1     2      3    4        5         6\r
        -------------------------------------------------------\r
-       drwxr-xr-x123  owner group  1024 11\8c\8e12\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---132  owner group    12 11\8c\8e12\93ú 1996\94N    test.txt\r
+       drwxr-xr-x123  owner group  1024 11月12日 14時21分  Linux/\r
+       -rwxrwx---132  owner group    12 11月12日 1996年    test.txt\r
 \r
 *LIST_UNIX_14\r
        0          1   2     3      4    5    6   7         8\r
        -------------------------------------------------------\r
-       drwxr-xr-x 15  owner group  512  2001 6\8c\8e 18        audit       (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x 15  owner group  512  2001 6月 18        audit      (月はGBコードで0xD4C2)\r
 \r
 *LIST_UNIX_15\r
        0              1     2      3    4    5   6         7\r
        -------------------------------------------------------\r
-       drwxr-xr-x15   owner group  512  2001 6\8c\8e 18        audit       (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x15   owner group  512  2001 6月 18        audit      (月はGBコードで0xD4C2)\r
 \r
 \r
 \r
        -------------------------------------------------------\r
        drwxr-xr-x 15  owner        1024 Nov  6   14:21     Linux/\r
        -rwxrwx---  5  owner          12 Nov  6   1996      test.txt\r
-       drwxr-xr-x 15  owner        1024 11\8c\8e 6\93ú 14:21     Linux/\r
-       drwxr-xr-x 15  owner        1024 11\8c\8e 6\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---  5  owner          12 11\8c\8e 6\93ú 1996\94N    test.txt\r
+       drwxr-xr-x 15  owner        1024 11月 6日 14:21     Linux/\r
+       drwxr-xr-x 15  owner        1024 11月 6日 14時21分  Linux/\r
+       -rwxrwx---  5  owner          12 11月 6日 1996年    test.txt\r
 \r
 *LIST_UNIX_21\r
        0          1   2            3    4        5         6\r
        -------------------------------------------------------\r
-       drwxr-xr-x 15  owner        1024 11\8c\8e12\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---  5  owner          12 11\8c\8e12\93ú 1996\94N    test.txt\r
+       drwxr-xr-x 15  owner        1024 11月12日 14時21分  Linux/\r
+       -rwxrwx---  5  owner          12 11月12日 1996年    test.txt\r
 \r
 *LIST_UNIX_22\r
        0              1            2    3    4   5         6\r
        -------------------------------------------------------\r
        drwxr-xr-x123  owner        1024 Nov  6   14:21     Linux/\r
        -rwxrwx---132  owner          12 Nov  6   1996      test.txt\r
-       drwxr-xr-x123  owner        1024 11\8c\8e 6\93ú 14:21     Linux/\r
-       drwxr-xr-x123  owner        1024 11\8c\8e 6\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---132  owner          12 11\8c\8e 6\93ú 1996\94N    test.txt\r
+       drwxr-xr-x123  owner        1024 11月 6日 14:21     Linux/\r
+       drwxr-xr-x123  owner        1024 11月 6日 14時21分  Linux/\r
+       -rwxrwx---132  owner          12 11月 6日 1996年    test.txt\r
 \r
 *LIST_UNIX_23\r
        0              1            2    3        4         5\r
        -------------------------------------------------------\r
-       drwxr-xr-x123  owner        1024 11\8c\8e12\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---132  owner          12 11\8c\8e12\93ú 1996\94N    test.txt\r
+       drwxr-xr-x123  owner        1024 11月12日 14時21分  Linux/\r
+       -rwxrwx---132  owner          12 11月12日 1996年    test.txt\r
 \r
 *LIST_UNIX_24\r
        0          1   2            3    4    5   6         7\r
        -------------------------------------------------------\r
-       drwxr-xr-x 15  owner        512  2001 6\8c\8e 18        audit       (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x 15  owner        512  2001 6月 18        audit      (月はGBコードで0xD4C2)\r
 \r
 *LIST_UNIX_25\r
        0              1            2    3    4   5         6\r
        -------------------------------------------------------\r
-       drwxr-xr-x15   owner        512  2001 6\8c\8e 18        audit       (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x15   owner        512  2001 6月 18        audit      (月はGBコードで0xD4C2)\r
 \r
 \r
 \r
        -------------------------------------------------------\r
        drwxr-xr-x     owner        1024 Nov  6   14:21     Linux/\r
        -rwxrwx---     owner          12 Nov  6   1996      test.txt\r
-       drwxr-xr-x     owner        1024 11\8c\8e 6\93ú 14:21     Linux/\r
-       drwxr-xr-x     owner        1024 11\8c\8e 6\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---     owner          12 11\8c\8e 6\93ú 1996\94N    test.txt\r
+       drwxr-xr-x     owner        1024 11月 6日 14:21     Linux/\r
+       drwxr-xr-x     owner        1024 11月 6日 14時21分  Linux/\r
+       -rwxrwx---     owner          12 11月 6日 1996年    test.txt\r
 \r
 *LIST_UNIX_51\r
        0              1            2    3        4         5\r
        -------------------------------------------------------\r
-       drwxr-xr-x     owner        1024 11\8c\8e12\93ú 14\8e\9e21\95ª  Linux/\r
-       -rwxrwx---     owner          12 11\8c\8e12\93ú 1996\94N    test.txt\r
+       drwxr-xr-x     owner        1024 11月12日 14時21分  Linux/\r
+       -rwxrwx---     owner          12 11月12日 1996年    test.txt\r
 \r
        0          1   2        3        4        5\r
        -------------------------------------------------------\r
 *LIST_UNIX_54\r
        0              1            2    3    4   5         6\r
        -------------------------------------------------------\r
-       drwxr-xr-x     owner        512  2001 6\8c\8e 18        audit       (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x     owner        512  2001 6月 18        audit      (月はGBコードで0xD4C2)\r
 \r
 \r
 \r
 *LIST_UNIX_61\r
        0          1    2     3 4     5 6    7         8     9\r
        -------------------------------------------------------\r
-       drwxr-xr-x 123  owner m group g 1024 11\8c\8e12\93ú  14:21 Linux/\r
-       -rwxrwx--- 132  owner m group g   12 11\8c\8e12\93ú  1996  test.txt\r
+       drwxr-xr-x 123  owner m group g 1024 11月12日  14:21 Linux/\r
+       -rwxrwx--- 132  owner m group g   12 11月12日  1996  test.txt\r
 \r
 *LIST_UNIX_62\r
        0              1     2 3     4 5    6    7  8     9\r
 *LIST_UNIX_63\r
        0              1     2 3     4 5    6         7     8\r
        -------------------------------------------------------\r
-       drwxr-xr-x123  owner m group g 1024 11\8c\8e12\93ú  14:21 Linux/\r
-       -rwxrwx---132  owner m group g   12 11\8c\8e12\93ú  1996  test.txt\r
+       drwxr-xr-x123  owner m group g 1024 11月12日  14:21 Linux/\r
+       -rwxrwx---132  owner m group g   12 11月12日  1996  test.txt\r
 \r
 *LIST_UNIX_64\r
        0          1   2     3 4     5  6    7    8   9    10\r
        -------------------------------------------------------\r
-       drwxr-xr-x 15  owner m group g  512  2001 6\8c\8e 18   audit        (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x 15  owner m group g  512  2001 6月 18   audit       (月はGBコードで0xD4C2)\r
 \r
 *LIST_UNIX_65\r
        0              1     2 3     4  5    6    7   8    9\r
        -------------------------------------------------------\r
-       drwxr-xr-x15   owner m group g  512  2001 6\8c\8e 18   audit        (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x15   owner m group g  512  2001 6月 18   audit       (月はGBコードで0xD4C2)\r
 \r
 \r
 \r
@@ -464,8 +467,8 @@ LIST_UNIX_70
 *LIST_UNIX_71\r
        0          1    2       3     4 5    6         7     8\r
        -------------------------------------------------------\r
-       drwxr-xr-x 123  owner   group g 1024 11\8c\8e12\93ú  14:21 Linux/\r
-       -rwxrwx--- 132  owner   group g   12 11\8c\8e12\93ú  1996  test.txt\r
+       drwxr-xr-x 123  owner   group g 1024 11月12日  14:21 Linux/\r
+       -rwxrwx--- 132  owner   group g   12 11月12日  1996  test.txt\r
 \r
 *LIST_UNIX_72\r
        0              1       2     3 4    5    6  7     8\r
@@ -476,25 +479,25 @@ LIST_UNIX_70
 *LIST_UNIX_73\r
        0              1       2     3 4    5         6     7\r
        -------------------------------------------------------\r
-       drwxr-xr-x123  owner   group g 1024 11\8c\8e12\93ú  14:21 Linux/\r
-       -rwxrwx---132  owner   group g   12 11\8c\8e12\93ú  1996  test.txt\r
+       drwxr-xr-x123  owner   group g 1024 11月12日  14:21 Linux/\r
+       -rwxrwx---132  owner   group g   12 11月12日  1996  test.txt\r
 \r
 *LIST_UNIX_74\r
        0          1   2       3     4  5    6    7   8    9\r
        -------------------------------------------------------\r
-       drwxr-xr-x 15  owner   group g  512  2001 6\8c\8e 18   audit        (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x 15  owner   group g  512  2001 6月 18   audit       (月はGBコードで0xD4C2)\r
 \r
 *LIST_UNIX_75\r
        0              1       2     3  4    5    6   7    8\r
        -------------------------------------------------------\r
-       drwxr-xr-x15   owner   group g  512  2001 6\8c\8e 18   audit        (\8c\8e\82ÍGB\83R\81[\83h\82Å0xD4C2)\r
+       drwxr-xr-x15   owner   group g  512  2001 6月 18   audit       (月はGBコードで0xD4C2)\r
 \r
 \r
 \r
 \r
 \r
 \r
-*unix\8cn\82Å\88È\89º\82Ì\82æ\82¤\82È\93ú\95t\r
+*unix系で以下のような日付\r
        0              1            2    3   4    5         6\r
        -------------------------------------------------------\r
        drwxr-xr-x123  owner        1024 11/ 6    14:21     Linux/\r
@@ -548,7 +551,7 @@ LIST_UNIX_70
        0\r
        -------------------------------------------------------\r
        test.txt\r
-\81@\81@\83f\83B\83\8c\83N\83g\83\8a\82È\82µ\81A\r
+  ディレクトリなし、\r
 \r
 *LIST_AS400\r
        0           1     2        3        4        5\r
@@ -559,7 +562,7 @@ LIST_UNIX_70
        QSECOFR         0 98/05/15 16:01:15 *STMF    WWWTEST.BAK\r
 \r
 *LIST_M1800\r
-       0     1     2       3       4     5         6 (\83t\83@\83C\83\8b\96¼\82Ì\8cã\82ë\82É\83X\83y\81[\83X\82 \82è\81j\r
+       0     1     2       3       4     5         6 (ファイル名の後ろにスペースあり)\r
        -------------------------------------------------------\r
        drwx  F        400     400  PO    93.10.27  COMMON.PDL.EXCEL/       \r
        -rw-  F      10000   10000  DA    97.03.04  DTSLOG1.FNA             \r
@@ -583,8 +586,8 @@ LIST_UNIX_70
           0        1          2          3      4\r
        -------------------------------------------------------\r
        345      A          12-02-98   10:59  VirtualDevice.java\r
-         0           DIR   12-09-98   09:43  \83f\83B\83\8c\83N\83g\83\8a\r
-         0           DIR   12-09-100  09:43  \83f\83B\83\8c\83N\83g\83\8a\r
+         0           DIR   12-09-98   09:43  ディレクトリ\r
+         0           DIR   12-09-100  09:43  ディレクトリ\r
 \r
 *LIST_MELCOM\r
        0 1           2   3          4  5    6  7    8\r
@@ -600,7 +603,7 @@ LIST_UNIX_70
        (RWED,RWED,RE,)\r
        MAIL.DIR;1         104/248   18-SEP-2001 16:19:39  [CIM,MIZOTE]\r
        (RWE,RWE,,)\r
-               \81¦VMS\82Ì\8fê\8d\87\88ê\97\97\82ª\95¡\90\94\8ds\82É\95Ê\82ê\82é\8fê\8d\87\82ª\82 \82é\r
+               ※VMSの場合一覧が複数行に別れる場合がある\r
 \r
 *LIST_OS7_1\r
        0                       1        2        3\r
@@ -660,18 +663,18 @@ LIST_UNIX_70
 \r
 ------------------------------------*/\r
 \r
-/*===== \90Ú\91±\83E\83C\83\93\83h\83E\82Ì\8c`\8e® =====*/\r
+/*===== 接続ウインドウの形式 =====*/\r
 \r
-#define DLG_TYPE_CON   0               /* \8aÈ\88Õ\81i\83z\83X\83g\95Ò\8fW\82È\82µ\81j */\r
-#define DLG_TYPE_SET   1               /* \83z\83X\83g\95Ò\8fW\82 \82è */\r
+#define DLG_TYPE_CON   0               /* 簡易(ホスト編集なし) */\r
+#define DLG_TYPE_SET   1               /* ホスト編集あり */\r
 \r
-/*===== \83t\83@\83C\83\8b\88ê\97\97\8eæ\93¾\83\82\81[\83h =====*/\r
+/*===== ファイル一覧取得モード =====*/\r
 \r
-#define CACHE_NORMAL   0               /* \92Ê\8fí\81i\83L\83\83\83b\83V\83\85\82É\82 \82ê\82Î\8eg\97p\81A\82È\82¯\82ê\82Î\93Ç\82Ý\8d\9e\82Ý\81j */\r
-#define CACHE_REFRESH  1               /* \8fí\82É\93Ç\82Ý\8d\9e\82Ý */\r
-#define CACHE_LASTREAD 2               /* \8dÅ\8cã\82É\93Ç\82Ý\8d\9e\82ñ\82¾\82à\82Ì\82ð\8eg\97p */\r
+#define CACHE_NORMAL   0               /* 通常(キャッシュにあれば使用、なければ読み込み) */\r
+#define CACHE_REFRESH  1               /* 常に読み込み */\r
+#define CACHE_LASTREAD 2               /* 最後に読み込んだものを使用 */\r
 \r
-/*===== \8a¿\8e\9a\83R\81[\83h\95Ï\8a· =====*/\r
+/*===== 漢字コード変換 =====*/\r
 \r
 #define KANJI_SJIS             0               /* SJIS */\r
 #define KANJI_JIS              1               /* JIS */\r
@@ -680,101 +683,101 @@ LIST_UNIX_70
 #define KANJI_SMB_CAP  4               /* Samba-CAP */\r
 #define KANJI_UTF8N            5               /* UTF-8 */\r
 \r
-#define KANJI_NOCNV            -1              /* \8a¿\8e\9a\83R\81[\83h\95Ï\8a·\82È\82µ */\r
+#define KANJI_NOCNV            -1              /* 漢字コード変換なし */\r
 \r
 #define KANJI_AUTO             -1\r
 \r
-/*===== \83T\83E\83\93\83h =====*/\r
+/*===== サウンド =====*/\r
 \r
-#define SND_CONNECT            0               /* \90Ú\91±\8e\9e\82Ì\83T\83E\83\93\83h */\r
-#define SND_TRANS              1               /* \93]\91\97\8fI\97¹\8e\9e\82Ì\83T\83E\83\93\83h */\r
-#define SND_ERROR              2               /* \83G\83\89\81[\8e\9e\82Ì\83T\83E\83\93\83h */\r
+#define SND_CONNECT            0               /* 接続時のサウンド */\r
+#define SND_TRANS              1               /* 転送終了時のサウンド */\r
+#define SND_ERROR              2               /* エラー時のサウンド */\r
 \r
-#define SOUND_TYPES            3               /* \83T\83E\83\93\83h\82Ì\8eí\97Þ */\r
+#define SOUND_TYPES            3               /* サウンドの種類 */\r
 \r
-/*===== \83r\83\85\81[\83\8f =====*/\r
+/*===== ビューワ =====*/\r
 \r
-#define VIEWERS                        3               /* \83r\83\85\81[\83\8f\82Ì\90\94 */\r
+#define VIEWERS                        3               /* ビューワの数 */\r
 \r
-/*===== \83u\83b\83N\83}\81[\83N =====*/\r
+/*===== ブックマーク =====*/\r
 \r
-#define BMARK_SUB_MENU         2               /* \83u\83b\83N\83}\81[\83N\83\81\83j\83\85\81[\82Ì\83T\83u\83\81\83j\83\85\81[\94Ô\8d\86 */\r
-#define DEFAULT_BMARK_ITEM     5               /* \83u\83b\83N\83}\81[\83N\83\81\83j\83\85\81[\82É\82 \82é\8cÅ\92è\95\94\95ª\82Ì\90\94 */\r
-#define MENU_BMARK_TOP         30000   /* 3000\88È\8d~(3100\82­\82ç\82¢\82Ü\82Å)\82Í\97\\96ñ\82·\82é */\r
-                                                                       /* resource.h \82Ì\92è\8b`\82Æ\8fd\82È\82ç\82È\82¢\82æ\82¤\82É */\r
+#define BMARK_SUB_MENU         2               /* ブックマークメニューのサブメニュー番号 */\r
+#define DEFAULT_BMARK_ITEM     5               /* ブックマークメニューにある固定部分の数 */\r
+#define MENU_BMARK_TOP         30000   /* 3000以降(3100くらいまで)は予約する */\r
+                                                                       /* resource.h の定義と重ならないように */\r
 \r
-#define BMARK_TYPE_NONE                0               /* \83u\83b\83N\83}\81[\83N\96³\82µ */\r
-#define BMARK_TYPE_LOCAL       1               /* \83\8d\81[\83J\83\8b\91¤\82Ì\83u\83b\83N\83}\81[\83N */\r
-#define BMARK_TYPE_REMOTE      2               /* \83z\83X\83g\91¤\82Ì\83u\83b\83N\83}\81[\83N */\r
-#define BMARK_TYPE_BOTH                3               /* \97¼\95û\82Ì\83u\83b\83N\83}\81[\83N */\r
+#define BMARK_TYPE_NONE                0               /* ブックマーク無し */\r
+#define BMARK_TYPE_LOCAL       1               /* ローカル側のブックマーク */\r
+#define BMARK_TYPE_REMOTE      2               /* ホスト側のブックマーク */\r
+#define BMARK_TYPE_BOTH                3               /* 両方のブックマーク */\r
 \r
-#define BMARK_MARK_LOCAL       "L "    /* \83\8d\81[\83J\83\8b\91¤\82Ì\88ó */\r
-#define BMARK_MARK_REMOTE      "H "    /* \83z\83X\83g\91¤\82Ì\88ó */\r
-#define BMARK_MARK_BOTH                "W "    /* \97¼\95û\82Ì\88ó */\r
-#define BMARK_MARK_LEN         2               /* \88ó\82Ì\95\8e\9a\90\94 */\r
+#define BMARK_MARK_LOCAL       "L "    /* ローカル側の印 */\r
+#define BMARK_MARK_REMOTE      "H "    /* ホスト側の印 */\r
+#define BMARK_MARK_BOTH                "W "    /* 両方の印 */\r
+#define BMARK_MARK_LEN         2               /* 印の文字数 */\r
 \r
-#define BMARK_SEP                      " <> "  /* \83\8d\81[\83J\83\8b\91¤\82Æ\83z\83X\83g\91¤\82Ì\8bæ\90Ø\82è */\r
-#define BMARK_SEP_LEN          4               /* \8bæ\90Ø\82è\82Ì\95\8e\9a\90\94 */\r
+#define BMARK_SEP                      " <> "  /* ローカル側とホスト側の区切り */\r
+#define BMARK_SEP_LEN          4               /* 区切りの文字数 */\r
 \r
-/*===== \83\8c\83W\83X\83g\83\8a\82Ì\83^\83C\83v =====*/\r
+/*===== レジストリのタイプ =====*/\r
 \r
-#define REGTYPE_REG            0               /* \83\8c\83W\83X\83g\83\8a */\r
-#define REGTYPE_INI            1               /* INI\83t\83@\83C\83\8b */\r
+#define REGTYPE_REG            0               /* レジストリ */\r
+#define REGTYPE_INI            1               /* INIファイル */\r
 \r
-#define REG_SECT_MAX   (16*1024)       /* \83\8c\83W\83X\83g\83\8a\82Ì\82P\83Z\83N\83V\83\87\83\93\82Ì\8dÅ\91å\83f\81[\83^\83T\83C\83Y */\r
+#define REG_SECT_MAX   (16*1024)       /* レジストリの1セクションの最大データサイズ */\r
 \r
-/*===== \83z\83X\83g\90Ý\92è\82Å\96¾\8e¦\93I\82É\8ew\92è\82·\82é\83z\83X\83g\82Ì\83^\83C\83v =====*/\r
+/*===== ホスト設定で明示的に指定するホストのタイプ =====*/\r
 \r
-#define        HTYPE_AUTO              0               /* \8e©\93® */\r
-#define        HTYPE_ACOS              1               /* ACOS (\91Ò\8b@\8c\8b\8d\87\83t\83@\83C\83\8b\82Ì\8ew\92è\82ª\95K\97v) */\r
+#define        HTYPE_AUTO              0               /* 自動 */\r
+#define        HTYPE_ACOS              1               /* ACOS (待機結合ファイルの指定が必要) */\r
 #define        HTYPE_VMS               2               /* VAX VMS */\r
 #define        HTYPE_IRMX              3               /* IRMX */\r
-#define        HTYPE_ACOS_4    4               /* ACOS \83t\83@\83C\83\8b\96¼\82ð('')\82Å\8a\87\82ç\82È\82¢ */\r
+#define        HTYPE_ACOS_4    4               /* ACOS ファイル名を('')で括らない */\r
 #define        HTYPE_STRATUS   5               /* Stratus */\r
 #define        HTYPE_AGILENT   6               /* Agilent Logic analyzer */\r
 #define        HTYPE_SHIBASOKU 7               /* Shibasoku LSI test system */\r
 \r
-/*===== \83R\83}\83\93\83h\83\89\83C\83\93\83I\83v\83V\83\87\83\93 =====*/\r
+/*===== コマンドラインオプション =====*/\r
 \r
-#define OPT_MIRROR             0x0001  /* \83~\83\89\81[\83\8a\83\93\83O\83A\83b\83v\83\8d\81[\83h\82ð\8ds\82¤ */\r
-#define OPT_FORCE              0x0002  /* \83~\83\89\81[\83\8a\83\93\83O\8aJ\8en\82Ì\8am\94F\82ð\82µ\82È\82¢ */\r
-#define OPT_QUIT               0x0004  /* \8fI\97¹\8cã\83v\83\8d\83O\83\89\83\80\8fI\97¹ */\r
-#define OPT_EUC                        0x0008  /* \8a¿\8e\9a\83R\81[\83h\82ÍEUC */\r
-#define OPT_JIS                        0x0010  /* \8a¿\8e\9a\83R\81[\83h\82ÍJIS */\r
-#define OPT_ASCII              0x0020  /* \83A\83X\83L\81[\93]\91\97\83\82\81[\83h */\r
-#define OPT_BINARY             0x0040  /* \83o\83C\83i\83\8a\93]\91\97\83\82\81[\83h */\r
-#define OPT_AUTO               0x0080  /* \8e©\93®\94»\95Ê */\r
-#define OPT_KANA               0x0100  /* \94¼\8ap\82©\82È\82ð\82»\82Ì\82Ü\82Ü\92Ê\82· */\r
-#define OPT_EUC_NAME   0x0200  /* \83t\83@\83C\83\8b\96¼\82ÍEUC */\r
-#define OPT_JIS_NAME   0x0400  /* \83t\83@\83C\83\8b\96¼\82ÍJIS */\r
-#define OPT_MIRRORDOWN 0x0800  /* \83~\83\89\81[\83\8a\83\93\83O\83_\83E\83\93\83\8d\81[\83h\82ð\8ds\82¤ */\r
-#define OPT_SAVEOFF            0x1000  /* \90Ý\92è\82Ì\95Û\91\82ð\92\86\8e~\82·\82é */\r
-#define OPT_SAVEON             0x2000  /* \90Ý\92è\82Ì\95Û\91\82ð\8dÄ\8aJ\82·\82é */\r
+#define OPT_MIRROR             0x0001  /* ミラーリングアップロードを行う */\r
+#define OPT_FORCE              0x0002  /* ミラーリング開始の確認をしない */\r
+#define OPT_QUIT               0x0004  /* 終了後プログラム終了 */\r
+#define OPT_EUC                        0x0008  /* 漢字コードはEUC */\r
+#define OPT_JIS                        0x0010  /* 漢字コードはJIS */\r
+#define OPT_ASCII              0x0020  /* アスキー転送モード */\r
+#define OPT_BINARY             0x0040  /* バイナリ転送モード */\r
+#define OPT_AUTO               0x0080  /* 自動判別 */\r
+#define OPT_KANA               0x0100  /* 半角かなをそのまま通す */\r
+#define OPT_EUC_NAME   0x0200  /* ファイル名はEUC */\r
+#define OPT_JIS_NAME   0x0400  /* ファイル名はJIS */\r
+#define OPT_MIRRORDOWN 0x0800  /* ミラーリングダウンロードを行う */\r
+#define OPT_SAVEOFF            0x1000  /* 設定の保存を中止する */\r
+#define OPT_SAVEON             0x2000  /* 設定の保存を再開する */\r
 \r
-/*===== \83z\83X\83g\82Ì\83q\83X\83g\83\8a =====*/\r
+/*===== ホストのヒストリ =====*/\r
 \r
-#define        HISTORY_MAX             20              /* \83t\83@\83C\83\8b\82Ì\83q\83X\83g\83\8a\82Ì\8dÅ\91å\8cÂ\90\94 */\r
-#define DEF_FMENU_ITEMS        8               /* File\83\81\83j\83\85\81[\82É\82 \82é\8d\80\96Ú\90\94\82Ì\8f\89\8aú\92l */\r
+#define        HISTORY_MAX             20              /* ファイルのヒストリの最大個数 */\r
+#define DEF_FMENU_ITEMS        8               /* Fileメニューにある項目数の初期値 */\r
 \r
 /*===== SOCKS4 =====*/\r
 \r
-#define SOCKS4_VER                     4       /* SOCKS\82Ì\83o\81[\83W\83\87\83\93 */\r
+#define SOCKS4_VER                     4       /* SOCKSのバージョン */\r
 \r
-#define SOCKS4_CMD_CONNECT     1       /* CONNECT\83R\83}\83\93\83h */\r
-#define SOCKS4_CMD_BIND                2       /* BIND\83R\83}\83\93\83h */\r
+#define SOCKS4_CMD_CONNECT     1       /* CONNECTコマンド */\r
+#define SOCKS4_CMD_BIND                2       /* BINDコマンド */\r
 \r
-/* \83\8a\83U\83\8b\83g\83R\81[\83h */\r
-#define SOCKS4_RES_OK          90      /* \97v\8b\81\82Í\8b\96\89Â\82³\82ê\82½ */\r
-       /* \82»\82Ì\91¼\82Ì\83R\81[\83h\82Í\83`\83F\83b\83N\82µ\82È\82¢\82Ì\82Å\92è\8b`\82µ\82È\82¢ */\r
+/* リザルトコード */\r
+#define SOCKS4_RES_OK          90      /* 要求は許可された */\r
+       /* その他のコードはチェックしないので定義しない */\r
 \r
 /*===== SOCKS5 =====*/\r
 \r
-#define SOCKS5_VER                     5       /* SOCKS\82Ì\83o\81[\83W\83\87\83\93 */\r
+#define SOCKS5_VER                     5       /* SOCKSのバージョン */\r
 \r
-#define SOCKS5_CMD_CONNECT     1       /* CONNECT\83R\83}\83\93\83h */\r
-#define SOCKS5_CMD_BIND                2       /* BIND\83R\83}\83\93\83h */\r
+#define SOCKS5_CMD_CONNECT     1       /* CONNECTコマンド */\r
+#define SOCKS5_CMD_BIND                2       /* BINDコマンド */\r
 \r
-#define SOCKS5_AUTH_NONE       0       /* \94F\8fØ\96³\82µ */\r
+#define SOCKS5_AUTH_NONE       0       /* 認証無し */\r
 #define SOCKS5_AUTH_GSSAPI     1       /* GSS-API */\r
 #define SOCKS5_AUTH_USER       2       /* Username/Password */\r
 \r
@@ -782,82 +785,82 @@ LIST_UNIX_70
 #define SOCKS5_ADRS_NAME       3       /* Domain name */\r
 #define SOCKS5_ADRS_IPV6       4       /* IP V6 address */\r
 \r
-#define SOCKS5_USERAUTH_VER    1       /* Username\Password\94F\8fØ\82Ì\83o\81[\83W\83\87\83\93 */\r
+#define SOCKS5_USERAUTH_VER    1       /* Username\Password認証のバージョン */\r
 \r
-/* \83\8a\83U\83\8b\83g\83R\81[\83h */\r
+/* リザルトコード */\r
 #define SOCKS5_RES_OK          0x00    /* succeeded */\r
-       /* \82»\82Ì\91¼\82Ì\83R\81[\83h\82Í\83`\83F\83b\83N\82µ\82È\82¢\82Ì\82Å\92è\8b`\82µ\82È\82¢ */\r
+       /* その他のコードはチェックしないので定義しない */\r
 \r
-/*===== \92\86\92f\83R\81[\83h =====*/\r
+/*===== 中断コード =====*/\r
 \r
-#define ABORT_NONE                     0               /* \93]\91\97\92\86\92f\82È\82µ */\r
-#define ABORT_USER                     1               /* \83\86\81[\83U\82É\82æ\82é\92\86\92f */\r
-#define ABORT_ERROR                    2               /* \83G\83\89\81[\82É\82æ\82é\92\86\92f */\r
-#define ABORT_DISKFULL         3               /* \83f\83B\83X\83N\83t\83\8b\82æ\82é\92\86\92f */\r
+#define ABORT_NONE                     0               /* 転送中断なし */\r
+#define ABORT_USER                     1               /* ユーザによる中断 */\r
+#define ABORT_ERROR                    2               /* エラーによる中断 */\r
+#define ABORT_DISKFULL         3               /* ディスクフルよる中断 */\r
 \r
-/*===== FireWall\82Ì\8eí\97Þ =====*/\r
+/*===== FireWallの種類 =====*/\r
 \r
-#define FWALL_NONE                     0               /* \82È\82µ */\r
-#define FWALL_FU_FP_SITE       1               /* FW user \81¨ FW pass \81¨ SITE host */\r
-#define FWALL_FU_FP_USER       2               /* FW user \81¨ FW pass \81¨ USER user@host */\r
+#define FWALL_NONE                     0               /* なし */\r
+#define FWALL_FU_FP_SITE       1               /* FW user → FW pass → SITE host */\r
+#define FWALL_FU_FP_USER       2               /* FW user → FW pass → USER user@host */\r
 #define FWALL_USER                     3               /* USER user@host */\r
 #define FWALL_OPEN                     4               /* OPEN host */\r
 #define FWALL_SOCKS4           5               /* SOCKS4 */\r
-#define FWALL_SOCKS5_NOAUTH    6               /* SOCKS5 (\94F\8fØ\82È\82µ) */\r
-#define FWALL_SOCKS5_USER      7               /* SOCKS5 (Username/Password\94F\8fØ) */\r
-#define FWALL_FU_FP                    8               /* FW user \81¨ FW pass */\r
+#define FWALL_SOCKS5_NOAUTH    6               /* SOCKS5 (認証なし) */\r
+#define FWALL_SOCKS5_USER      7               /* SOCKS5 (Username/Password認証) */\r
+#define FWALL_FU_FP                    8               /* FW user  FW pass */\r
 #define FWALL_SIDEWINDER       9               /* USER FWuser:FWpass@host */\r
 \r
-/*===== \83\8f\83\93\83^\83C\83\80\83p\83X\83\8f\81[\83h =====*/\r
+/*===== ワンタイムパスワード =====*/\r
 \r
-/* \83R\81[\83h\82Ì\8eí\97Þ */\r
-#define SECURITY_DISABLE       0               /* \8eg\97p\82µ\82È\82¢ */\r
-#define SECURITY_AUTO          1               /* \8e©\93®\94F\8e¯ */\r
+/* コードの種類 */\r
+#define SECURITY_DISABLE       0               /* 使用しない */\r
+#define SECURITY_AUTO          1               /* 自動認識 */\r
 #define MD4                                    2               /* MD4 */\r
 #define MD5                                    3               /* MD5 */\r
 #define SHA1                           4               /* SHA-1 */\r
 \r
-#define MAX_SEED_LEN           16              /* Seed\82Ì\95\8e\9a\90\94 */\r
+#define MAX_SEED_LEN           16              /* Seedの文字数 */\r
 \r
-/*===== \8dÄ\8bA\93I\82È\83t\83@\83C\83\8b\8c\9f\8dõ\82Ì\95û\96@ =====*/\r
+/*===== 再帰的なファイル検索の方法 =====*/\r
 \r
-#define RDIR_NONE              0               /* \8dÄ\8bA\8c\9f\8dõ\82È\82µ */\r
+#define RDIR_NONE              0               /* 再帰検索なし */\r
 #define RDIR_NLST              1               /* NLST -R */\r
-#define RDIR_CWD               2               /* CWD\82Å\88Ú\93® */\r
+#define RDIR_CWD               2               /* CWDで移動 */\r
 \r
-/*===== VAX VMS \8aÖ\8cW =====*/\r
+/*===== VAX VMS 関係 =====*/\r
 \r
-#define BLOCK_SIZE             512             /* 1\83u\83\8d\83b\83N\82Ì\83o\83C\83g\90\94 */\r
+#define BLOCK_SIZE             512             /* 1ブロックのバイト数 */\r
 \r
-/*===== \90Ý\92è\82Ì\83\8c\83x\83\8b =====*/\r
+/*===== 設定のレベル =====*/\r
 \r
-#define SET_LEVEL_GROUP                0x8000          /* \83O\83\8b\81[\83v\82Ì\83t\83\89\83O */\r
+#define SET_LEVEL_GROUP                0x8000          /* グループのフラグ */\r
 #define SET_LEVEL_MASK         0x7FFF\r
 #define SET_LEVEL_SAME         0x7FFF\r
 \r
-/*===== \93ú\95t\81A\90\94\92l\82Ì\95\\8e¦\8c`\8e® =====*/\r
+/*===== 日付、数値の表示形式 =====*/\r
 \r
-#define DISPFORM_LEGACY                0               /* \8cÅ\92è\8f\91\8e® */\r
-#define DISPFORM_LOCALE                1               /* \83R\83\93\83g\83\8d\81[\83\8b\83p\83l\83\8b\82É\8f]\82¤ */\r
+#define DISPFORM_LEGACY                0               /* 固定書式 */\r
+#define DISPFORM_LOCALE                1               /* コントロールパネルに従う */\r
 \r
-/*===== \83t\83@\83C\83\8b\88ê\97\97\82É\91\8dÝ\82µ\82½\8fî\95ñ =====*/\r
+/*===== ファイル一覧に存在した情報 =====*/\r
 \r
-#define FINFO_DATE                     0x01    /* \93ú\95t */\r
-#define FINFO_TIME                     0x02    /* \8e\9e\8aÔ */\r
-#define FINFO_SIZE                     0x04    /* \83T\83C\83Y */\r
-#define FINFO_ATTR                     0x08    /* \91®\90« */\r
-#define FINFO_ALL                      0xFF    /* \91S\82Ä */\r
+#define FINFO_DATE                     0x01    /* 日付 */\r
+#define FINFO_TIME                     0x02    /* 時間 */\r
+#define FINFO_SIZE                     0x04    /* サイズ */\r
+#define FINFO_ATTR                     0x08    /* 属性 */\r
+#define FINFO_ALL                      0xFF    /* 全て */\r
 \r
-/*===== GetMasterPasswordStatus\82Å\8eg\82¤\83R\81[\83h =====*/\r
+/*===== GetMasterPasswordStatusで使うコード =====*/\r
 #define PASSWORD_OK 0\r
 #define PASSWORD_UNMATCH 2\r
 #define BAD_PASSWORD_HASH 3\r
 \r
-/*===== \88Ã\8d\86\89»\83p\83X\83\8f\81[\83h\90Ý\92è =====*/\r
+/*===== 暗号化パスワード設定 =====*/\r
 #define DEFAULT_PASSWORD       "DefaultPassword"\r
 #define MAX_PASSWORD_LEN       128\r
 \r
-// \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+// 暗号化通信対応\r
 #define CRYPT_NONE                     0\r
 #define CRYPT_FTPES                    1\r
 #define CRYPT_FTPIS                    2\r
@@ -865,59 +868,59 @@ LIST_UNIX_70
 \r
 \r
 /*=================================================\r
-*              \83X\83g\83\89\83N\83`\83\83\r
+*              ストラクチャ\r
 *=================================================*/\r
 \r
-/*===== \83z\83X\83g\90Ý\92è\83f\81[\83^ =====*/\r
+/*===== ホスト設定データ =====*/\r
 \r
 typedef struct {\r
-       int Level;                                                      /* \90Ý\92è\82Ì\83\8c\83x\83\8b */\r
-                                                                               /* \92Ê\8fí\82Í\83O\83\8b\81[\83v\82Ì\83t\83\89\83O\82Ì\82Ý\82ª\97L\8cø */\r
-                                                                               /* \83\8c\83x\83\8b\90\94\82Í\90Ý\92è\82Ì\93o\98^\81^\8cÄ\8fo\8e\9e\82Ì\82Ý\82Å\8eg\97p */\r
-       char HostName[HOST_NAME_LEN+1];         /* \90Ý\92è\96¼ */\r
-       char HostAdrs[HOST_ADRS_LEN+1];         /* \83z\83X\83g\96¼ */\r
-       char UserName[USER_NAME_LEN+1];         /* \83\86\81[\83U\96¼ */\r
-       char PassWord[PASSWORD_LEN+1];          /* \83p\83X\83\8f\81[\83h */\r
-       char Account[ACCOUNT_LEN+1];            /* \83A\83J\83E\83\93\83g */\r
-       char LocalInitDir[INIT_DIR_LEN+1];      /* \83\8d\81[\83J\83\8b\82Ì\8aJ\8en\83f\83B\83\8c\83N\83g\83\8a */\r
-       char RemoteInitDir[INIT_DIR_LEN+1];     /* \83z\83X\83g\82Ì\8aJ\8en\83f\83B\83\8c\83N\83g\83\8a */\r
-       char BookMark[BOOKMARK_SIZE];           /* \83u\83b\83N\83}\81[\83N */\r
-       char ChmodCmd[CHMOD_CMD_LEN+1];         /* \91®\90«\95Ï\8dX\83R\83}\83\93\83h */\r
-       char LsName[NLST_NAME_LEN+1];           /* NLST\82É\95t\82¯\82é\83t\83@\83C\83\8b\96¼/\83I\83v\83V\83\87\83\93*/\r
-       char InitCmd[INITCMD_LEN+1];            /* \83z\83X\83g\82Ì\8f\89\8aú\89»\83R\83}\83\93\83h */\r
-       int Port;                                                       /* \83|\81[\83g\94Ô\8d\86 */\r
-       int Anonymous;                                          /* Anonymous\83t\83\89\83O */\r
-       int KanjiCode;                                          /* \83z\83X\83g\82Ì\8a¿\8e\9a\83R\81[\83h (KANJI_xxx) */\r
-       int KanaCnv;                                            /* \94¼\8ap\83J\83i\82ð\91S\8ap\82É\95Ï\8a·(YES/NO) */\r
-       int NameKanjiCode;                                      /* \83t\83@\83C\83\8b\96¼\82Ì\8a¿\8e\9a\83R\81[\83h (KANJI_xxx) */\r
-       int NameKanaCnv;                                        /* \83t\83@\83C\83\8b\96¼\82Ì\94¼\8ap\83J\83i\82ð\91S\8ap\82É\95Ï\8a·(YES/NO) */\r
-       int Pasv;                                                       /* PASV\83\82\81[\83h (YES/NO) */\r
-       int FireWall;                                           /* FireWall\82ð\8eg\82¤ (YES/NO) */\r
-       int ListCmdOnly;                                        /* "LIST"\83R\83}\83\93\83h\82Ì\82Ý\8eg\97p\82·\82é */\r
-       int UseNLST_R;                                          /* "NLST -R"\83R\83}\83\93\83h\82ð\8eg\97p\82·\82é */\r
-       int LastDir;                                            /* \8dÅ\8cã\82É\83A\83N\83Z\83X\82µ\82½\83t\83H\83\8b\83_\82ð\95Û\91 */\r
-       int TimeZone;                                           /* \83^\83C\83\80\83]\81[\83\93 (-12\81`12) */\r
-       int HostType;                                           /* \83z\83X\83g\82Ì\83^\83C\83v (HTYPE_xxx) */\r
-       int SyncMove;                                           /* \83t\83H\83\8b\83_\93¯\8e\9e\88Ú\93® (YES/NO) */\r
-       int NoFullPath;                                         /* \83t\83\8b\83p\83X\82Å\83t\83@\83C\83\8b\83A\83N\83Z\83X\82µ\82È\82¢ (YES/NO) */\r
-       ulong Sort;                                                     /* \83\\81[\83g\95û\96@ (0x11223344 : 11=LFsort 22=LDsort 33=RFsort 44=RFsort) */\r
-       int Security;                                           /* \83Z\83L\83\85\83\8a\83e\83B (SECURITY_xxx , MDx) */\r
-       int Dialup;                                                     /* \83_\83C\83A\83\8b\83A\83b\83v\90Ú\91±\82·\82é\82©\82Ç\82¤\82© (YES/NO) */\r
-       int DialupAlways;                                       /* \8fí\82É\82±\82Ì\83G\83\93\83g\83\8a\82Ö\90Ú\91±\82·\82é\82©\82Ç\82¤\82© (YES/NO) */\r
-       int DialupNotify;                                       /* \8dÄ\90Ú\91±\82Ì\8dÛ\82É\8am\94F\82·\82é (YES/NO) */\r
-       char DialEntry[RAS_NAME_LEN+1];         /* \83_\83C\83A\83\8b\83A\83b\83v\83G\83\93\83g\83\8a */\r
-       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
-       int CryptMode;                                          /* \88Ã\8d\86\89»\92Ê\90M\83\82\81[\83h (CRYPT_xxx) */\r
-       int UseFTPES;                                           /* FTPES\82Å\90Ú\91±\82·\82é (YES/NO) */\r
-       int UseFTPIS;                                           /* FTPIS\82Å\90Ú\91±\82·\82é (YES/NO) */\r
-       int UseSFTP;                                            /* SFTP\82Å\90Ú\91±\82·\82é (YES/NO) */\r
+       int Level;                                                      /* 設定のレベル */\r
+                                                                               /* 通常はグループのフラグのみが有効 */\r
+                                                                               /* レベル数は設定の登録/呼出時のみで使用 */\r
+       char HostName[HOST_NAME_LEN+1];         /* 設定名 */\r
+       char HostAdrs[HOST_ADRS_LEN+1];         /* ホスト名 */\r
+       char UserName[USER_NAME_LEN+1];         /* ユーザ名 */\r
+       char PassWord[PASSWORD_LEN+1];          /* パスワード */\r
+       char Account[ACCOUNT_LEN+1];            /* アカウント */\r
+       char LocalInitDir[INIT_DIR_LEN+1];      /* ローカルの開始ディレクトリ */\r
+       char RemoteInitDir[INIT_DIR_LEN+1];     /* ホストの開始ディレクトリ */\r
+       char BookMark[BOOKMARK_SIZE];           /* ブックマーク */\r
+       char ChmodCmd[CHMOD_CMD_LEN+1];         /* 属性変更コマンド */\r
+       char LsName[NLST_NAME_LEN+1];           /* NLSTに付けるファイル名/オプション*/\r
+       char InitCmd[INITCMD_LEN+1];            /* ホストの初期化コマンド */\r
+       int Port;                                                       /* ポート番号 */\r
+       int Anonymous;                                          /* Anonymousフラグ */\r
+       int KanjiCode;                                          /* ホストの漢字コード (KANJI_xxx) */\r
+       int KanaCnv;                                            /* 半角カナを全角に変換(YES/NO) */\r
+       int NameKanjiCode;                                      /* ファイル名の漢字コード (KANJI_xxx) */\r
+       int NameKanaCnv;                                        /* ファイル名の半角カナを全角に変換(YES/NO) */\r
+       int Pasv;                                                       /* PASVモード (YES/NO) */\r
+       int FireWall;                                           /* FireWallを使う (YES/NO) */\r
+       int ListCmdOnly;                                        /* "LIST"コマンドのみ使用する */\r
+       int UseNLST_R;                                          /* "NLST -R"コマンドを使用する */\r
+       int LastDir;                                            /* 最後にアクセスしたフォルダを保存 */\r
+       int TimeZone;                                           /* タイムゾーン (-12~12) */\r
+       int HostType;                                           /* ホストのタイプ (HTYPE_xxx) */\r
+       int SyncMove;                                           /* フォルダ同時移動 (YES/NO) */\r
+       int NoFullPath;                                         /* フルパスでファイルアクセスしない (YES/NO) */\r
+       ulong Sort;                                                     /* ソート方法 (0x11223344 : 11=LFsort 22=LDsort 33=RFsort 44=RFsort) */\r
+       int Security;                                           /* セキュリティ (SECURITY_xxx , MDx) */\r
+       int Dialup;                                                     /* ダイアルアップ接続するかどうか (YES/NO) */\r
+       int DialupAlways;                                       /* 常にこのエントリへ接続するかどうか (YES/NO) */\r
+       int DialupNotify;                                       /* 再接続の際に確認する (YES/NO) */\r
+       char DialEntry[RAS_NAME_LEN+1];         /* ダイアルアップエントリ */\r
+       // 暗号化通信対応\r
+       int CryptMode;                                          /* 暗号化通信モード (CRYPT_xxx) */\r
+       int UseFTPES;                                           /* FTPESで接続する (YES/NO) */\r
+       int UseFTPIS;                                           /* FTPISで接続する (YES/NO) */\r
+       int UseSFTP;                                            /* SFTPで接続する (YES/NO) */\r
 } HOSTDATA;\r
 \r
 \r
-/*===== \83z\83X\83g\90Ý\92è\83\8a\83X\83g =====*/\r
+/*===== ホスト設定リスト =====*/\r
 \r
 typedef struct hostlistdata {\r
-       HOSTDATA Set;                                   /* \83z\83X\83g\90Ý\92è\83f\81[\83^ */\r
+       HOSTDATA Set;                                   /* ホスト設定データ */\r
        struct hostlistdata *Next;\r
        struct hostlistdata *Prev;\r
        struct hostlistdata *Child;\r
@@ -925,165 +928,165 @@ typedef struct hostlistdata {
 } HOSTLISTDATA;\r
 \r
 \r
-/*===== \90Ú\91±\83q\83X\83g\83\8a\83\8a\83X\83g =====*/\r
+/*===== 接続ヒストリリスト =====*/\r
 \r
 typedef struct historydata {\r
-       char HostAdrs[HOST_ADRS_LEN+1];         /* \83z\83X\83g\96¼ */\r
-       char UserName[USER_NAME_LEN+1];         /* \83\86\81[\83U\96¼ */\r
-       char PassWord[PASSWORD_LEN+1];          /* \83p\83X\83\8f\81[\83h */\r
-       char Account[ACCOUNT_LEN+1];            /* \83A\83J\83E\83\93\83g */\r
-       char LocalInitDir[INIT_DIR_LEN+1];      /* \83f\83B\83\8c\83N\83g\83\8a */\r
-       char RemoteInitDir[INIT_DIR_LEN+1];     /* \83f\83B\83\8c\83N\83g\83\8a */\r
-       char ChmodCmd[CHMOD_CMD_LEN+1];         /* \91®\90«\95Ï\8dX\83R\83}\83\93\83h */\r
-       char LsName[NLST_NAME_LEN+1];           /* NLST\82É\95t\82¯\82é\83t\83@\83C\83\8b\96¼/\83I\83v\83V\83\87\83\93*/\r
-       char InitCmd[INITCMD_LEN+1];            /* \83z\83X\83g\82Ì\8f\89\8aú\89»\83R\83}\83\93\83h */\r
-       int Port;                                                       /* \83|\81[\83g\94Ô\8d\86 */\r
-       int KanjiCode;                                          /* \83z\83X\83g\82Ì\8a¿\8e\9a\83R\81[\83h (KANJI_xxx) */\r
-       int KanaCnv;                                            /* \94¼\8ap\83J\83i\82ð\91S\8ap\82É\95Ï\8a·(YES/NO) */\r
-       int NameKanjiCode;                                      /* \83t\83@\83C\83\8b\96¼\82Ì\8a¿\8e\9a\83R\81[\83h (KANJI_xxx) */\r
-       int NameKanaCnv;                                        /* \83t\83@\83C\83\8b\96¼\82Ì\94¼\8ap\83J\83i\82ð\91S\8ap\82É\95Ï\8a·(YES/NO) */\r
-       int Pasv;                                                       /* PASV\83\82\81[\83h (YES/NO) */\r
-       int FireWall;                                           /* FireWall\82ð\8eg\82¤ (YES/NO) */\r
-       int ListCmdOnly;                                        /* "LIST"\83R\83}\83\93\83h\82Ì\82Ý\8eg\97p\82·\82é */\r
-       int UseNLST_R;                                          /* "NLST -R"\83R\83}\83\93\83h\82ð\8eg\97p\82·\82é */\r
-       int TimeZone;                                           /* \83^\83C\83\80\83]\81[\83\93 (-12\81`12) */\r
-       int HostType;                                           /* \83z\83X\83g\82Ì\83^\83C\83v (HTYPE_xxx) */\r
-       int SyncMove;                                           /* \83t\83H\83\8b\83_\93¯\8e\9e\88Ú\93® (YES/NO) */\r
-       int NoFullPath;                                         /* \83t\83\8b\83p\83X\82Å\83t\83@\83C\83\8b\83A\83N\83Z\83X\82µ\82È\82¢ (YES/NO) */\r
-       ulong Sort;                                                     /* \83\\81[\83g\95û\96@ (0x11223344 : 11=LFsort 22=LDsort 33=RFsort 44=RFsort) */\r
-       int Security;                                           /* \83Z\83L\83\85\83\8a\83e\83B (OTP_xxx , MDx) */\r
-       int Type;                                                       /* \93]\91\97\95û\96@ (TYPE_xx) */\r
-       int Dialup;                                                     /* \83_\83C\83A\83\8b\83A\83b\83v\90Ú\91±\82·\82é\82©\82Ç\82¤\82© (YES/NO) */\r
-       int DialupAlways;                                       /* \8fí\82É\82±\82Ì\83G\83\93\83g\83\8a\82Ö\90Ú\91±\82·\82é\82©\82Ç\82¤\82© (YES/NO) */\r
-       int DialupNotify;                                       /* \8dÄ\90Ú\91±\82Ì\8dÛ\82É\8am\94F\82·\82é (YES/NO) */\r
-       char DialEntry[RAS_NAME_LEN+1];         /* \83_\83C\83A\83\8b\83A\83b\83v\83G\83\93\83g\83\8a */\r
-       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
-       int UseFTPES;                                           /* FTPES\82Å\90Ú\91±\82·\82é (YES/NO) */\r
-       int UseFTPIS;                                           /* FTPIS\82Å\90Ú\91±\82·\82é (YES/NO) */\r
-       int UseSFTP;                                            /* SFTP\82Å\90Ú\91±\82·\82é (YES/NO) */\r
+       char HostAdrs[HOST_ADRS_LEN+1];         /* ホスト名 */\r
+       char UserName[USER_NAME_LEN+1];         /* ユーザ名 */\r
+       char PassWord[PASSWORD_LEN+1];          /* パスワード */\r
+       char Account[ACCOUNT_LEN+1];            /* アカウント */\r
+       char LocalInitDir[INIT_DIR_LEN+1];      /* ディレクトリ */\r
+       char RemoteInitDir[INIT_DIR_LEN+1];     /* ディレクトリ */\r
+       char ChmodCmd[CHMOD_CMD_LEN+1];         /* 属性変更コマンド */\r
+       char LsName[NLST_NAME_LEN+1];           /* NLSTに付けるファイル名/オプション*/\r
+       char InitCmd[INITCMD_LEN+1];            /* ホストの初期化コマンド */\r
+       int Port;                                                       /* ポート番号 */\r
+       int KanjiCode;                                          /* ホストの漢字コード (KANJI_xxx) */\r
+       int KanaCnv;                                            /* 半角カナを全角に変換(YES/NO) */\r
+       int NameKanjiCode;                                      /* ファイル名の漢字コード (KANJI_xxx) */\r
+       int NameKanaCnv;                                        /* ファイル名の半角カナを全角に変換(YES/NO) */\r
+       int Pasv;                                                       /* PASVモード (YES/NO) */\r
+       int FireWall;                                           /* FireWallを使う (YES/NO) */\r
+       int ListCmdOnly;                                        /* "LIST"コマンドのみ使用する */\r
+       int UseNLST_R;                                          /* "NLST -R"コマンドを使用する */\r
+       int TimeZone;                                           /* タイムゾーン (-12~12) */\r
+       int HostType;                                           /* ホストのタイプ (HTYPE_xxx) */\r
+       int SyncMove;                                           /* フォルダ同時移動 (YES/NO) */\r
+       int NoFullPath;                                         /* フルパスでファイルアクセスしない (YES/NO) */\r
+       ulong Sort;                                                     /* ソート方法 (0x11223344 : 11=LFsort 22=LDsort 33=RFsort 44=RFsort) */\r
+       int Security;                                           /* セキュリティ (OTP_xxx , MDx) */\r
+       int Type;                                                       /* 転送方法 (TYPE_xx) */\r
+       int Dialup;                                                     /* ダイアルアップ接続するかどうか (YES/NO) */\r
+       int DialupAlways;                                       /* 常にこのエントリへ接続するかどうか (YES/NO) */\r
+       int DialupNotify;                                       /* 再接続の際に確認する (YES/NO) */\r
+       char DialEntry[RAS_NAME_LEN+1];         /* ダイアルアップエントリ */\r
+       // 暗号化通信対応\r
+       int UseFTPES;                                           /* FTPESで接続する (YES/NO) */\r
+       int UseFTPIS;                                           /* FTPISで接続する (YES/NO) */\r
+       int UseSFTP;                                            /* SFTPで接続する (YES/NO) */\r
        struct historydata *Next;\r
 } HISTORYDATA;\r
 \r
 \r
-/*===== \93]\91\97\83t\83@\83C\83\8b\83\8a\83X\83g =====*/\r
+/*===== 転送ファイルリスト =====*/\r
 \r
 typedef struct transpacket {\r
        SOCKET ctrl_skt;                                /* Socket */\r
        char Cmd[40];                                   /* STOR/RETR/MKD */\r
-       char RemoteFile[FMAX_PATH+1];   /* \83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\96¼\81i\83t\83\8b\83p\83X\81j */\r
-                                                                       /* VMS\82Ì\8e\9e\82Í ddd[xxx.yyy]/yyy/zzz \82Ì\82æ\82¤\82É */\r
-                                                                       /* \82È\82Á\82Ä\82é\82Ì\82Å\92\8d\88Ó */\r
-       char LocalFile[FMAX_PATH+1];    /* \83\8d\81[\83J\83\8b\91¤\82Ì\83t\83@\83C\83\8b\96¼\81i\83t\83\8b\83p\83X\81j */\r
-       int Type;                                               /* \93]\91\97\95û\96@ (TYPE_xx) */\r
-       LONGLONG Size;                                  /* \83t\83@\83C\83\8b\82Ì\83T\83C\83Y */\r
-       LONGLONG ExistSize;                             /* \82·\82Å\82É\91\8dÝ\82·\82é\83t\83@\83C\83\8b\82Ì\83T\83C\83Y */\r
-                                                                       /* \93]\91\97\92\86\82Í\81A\93]\91\97\82µ\82½\83t\83@\83C\83\8b\82Ì\83T\83C\83Y\82ð\8ai\94[\82·\82é */\r
-       FILETIME Time;                                  /* \83t\83@\83C\83\8b\82Ì\8e\9e\8aÔ(UTC) */\r
-       int Attr;                                               /* \83t\83@\83C\83\8b\82Ì\91®\90« */\r
-       int KanjiCode;                                  /* \8a¿\8e\9a\83R\81[\83h (KANJI_xxx) */\r
-       // UTF-8\91Î\89\9e\r
-       int KanjiCodeDesired;                   /* \83\8d\81[\83J\83\8b\82Ì\8a¿\8e\9a\83R\81[\83h (KANJI_xxx) */\r
-       int KanaCnv;                                    /* \94¼\8ap\83J\83i\82ð\91S\8ap\82É\95Ï\8a·(YES/NO) */\r
-       int Mode;                                               /* \93]\91\97\83\82\81[\83h (EXIST_xxx) */\r
-       HWND hWndTrans;                                 /* \93]\91\97\92\86\83_\83C\83A\83\8d\83O\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b */\r
-       int Abort;                                              /* \93]\91\97\92\86\8e~\83t\83\89\83O (ABORT_xxx) */\r
-       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
-       int CryptMode;                                  /* \88Ã\8d\86\89»\92Ê\90M\83\82\81[\83h (CRYPT_xxx) */\r
+       char RemoteFile[FMAX_PATH+1];   /* ホスト側のファイル名(フルパス) */\r
+                                                                       /* VMSの時は ddd[xxx.yyy]/yyy/zzz のように */\r
+                                                                       /* なってるので注意 */\r
+       char LocalFile[FMAX_PATH+1];    /* ローカル側のファイル名(フルパス) */\r
+       int Type;                                               /* 転送方法 (TYPE_xx) */\r
+       LONGLONG Size;                                  /* ファイルのサイズ */\r
+       LONGLONG ExistSize;                             /* すでに存在するファイルのサイズ */\r
+                                                                       /* 転送中は、転送したファイルのサイズを格納する */\r
+       FILETIME Time;                                  /* ファイルの時間(UTC) */\r
+       int Attr;                                               /* ファイルの属性 */\r
+       int KanjiCode;                                  /* 漢字コード (KANJI_xxx) */\r
+       // UTF-8対応\r
+       int KanjiCodeDesired;                   /* ローカルの漢字コード (KANJI_xxx) */\r
+       int KanaCnv;                                    /* 半角カナを全角に変換(YES/NO) */\r
+       int Mode;                                               /* 転送モード (EXIST_xxx) */\r
+       HWND hWndTrans;                                 /* 転送中ダイアログのウインドウハンドル */\r
+       int Abort;                                              /* 転送中止フラグ (ABORT_xxx) */\r
+       // 暗号化通信対応\r
+       int CryptMode;                                  /* 暗号化通信モード (CRYPT_xxx) */\r
        struct transpacket *Next;\r
 } TRANSPACKET;\r
 \r
 \r
-/*===== \83t\83@\83C\83\8b\83\8a\83X\83g =====*/\r
+/*===== ファイルリスト =====*/\r
 \r
 typedef struct filelist {\r
-       char File[FMAX_PATH+1];                 /* \83t\83@\83C\83\8b\96¼ */\r
-       char Node;                                              /* \8eí\97Þ (NODE_xxx) */\r
-       char Link;                                              /* \83\8a\83\93\83N\83t\83@\83C\83\8b\82©\82Ç\82¤\82© (YES/NO) */\r
-       LONGLONG Size;                                  /* \83t\83@\83C\83\8b\83T\83C\83Y */\r
-       int Attr;                                               /* \91®\90« */\r
-       FILETIME Time;                                  /* \8e\9e\8aÔ(UTC) */\r
-       char Owner[OWNER_NAME_LEN+1];   /* \83I\81[\83i\96¼ */\r
-       char InfoExist;                                 /* \83t\83@\83C\83\8b\88ê\97\97\82É\91\8dÝ\82µ\82½\8fî\95ñ\82Ì\83t\83\89\83O (FINFO_xxx) */\r
+       char File[FMAX_PATH+1];                 /* ファイル名 */\r
+       char Node;                                              /* 種類 (NODE_xxx) */\r
+       char Link;                                              /* リンクファイルかどうか (YES/NO) */\r
+       LONGLONG Size;                                  /* ファイルサイズ */\r
+       int Attr;                                               /* 属性 */\r
+       FILETIME Time;                                  /* 時間(UTC) */\r
+       char Owner[OWNER_NAME_LEN+1];   /* オーナ名 */\r
+       char InfoExist;                                 /* ファイル一覧に存在した情報のフラグ (FINFO_xxx) */\r
        struct filelist *Next;\r
 } FILELIST;\r
 \r
 \r
-/*===== \83R\81[\83h\95Ï\8a·\8fî\95ñ\83p\83P\83b\83g =====*/\r
+/*===== コード変換情報パケット =====*/\r
 \r
 typedef char * (*funcptr)(struct codeconvinfo *, char , char *);\r
 \r
 typedef struct codeconvinfo {\r
-       char *Str;                      /* \95\8e\9a\97ñ */\r
-       int StrLen;                     /* \95\8e\9a\97ñ\82Ì\92·\82³ */\r
-       int KanaCnv;            /* \94¼\8ap\83J\83^\83J\83i\82ð\91S\8ap\82É\95Ï\8a·\82·\82é\82©\82Ç\82¤\82© (YES/NO) */\r
-       char *Buf;                      /* \95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\82ð\8ai\94[\82·\82é\83o\83b\83t\83@ */\r
-       int BufSize;            /* \95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\82Ì\83T\83C\83Y */\r
-       int OutLen;                     /* \95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\82Ì\83T\83C\83Y */\r
-       int KanjiMode;          /* \8a¿\8e\9a\83\82\81[\83h\83t\83\89\83O(YES/NO) (\93à\95\94\8f\88\97\9d\97p\83\8f\81[\83N) */\r
-       int EscProc;            /* \83G\83X\83P\81[\83v\83V\81[\83P\83\93\83X\95\8e\9a\90\94 (0\81`) (\93à\95\94\8f\88\97\9d\97p\83\8f\81[\83N) */\r
-       char EscCode[2];        /* \83G\83X\83P\81[\83v\83V\81[\83P\83\93\83X\95\8e\9a\95Û\91\97p (\93à\95\94\8f\88\97\9d\97p\83\8f\81[\83N) */\r
-       char KanjiFst;          /* \8a¿\8e\9a\83R\81[\83h\82P\83o\83C\83g\96Ú\95Û\91\97p (\93à\95\94\8f\88\97\9d\97p\83\8f\81[\83N) */\r
-       char KanaPrev;          /* \94¼\8ap\83J\83^\83J\83i\95Û\91\97p (\93à\95\94\8f\88\97\9d\97p\83\8f\81[\83N) */\r
-       funcptr KanaProc;       /* \94¼\8ap\83J\83^\83J\83i\8f\88\97\9d\83\8b\81[\83`\83\93 (\93à\95\94\8f\88\97\9d\97p\83\8f\81[\83N) */\r
+       char *Str;                      /* 文字列 */\r
+       int StrLen;                     /* 文字列の長さ */\r
+       int KanaCnv;            /* 半角カタカナを全角に変換するかどうか (YES/NO) */\r
+       char *Buf;                      /* 変換後の文字列を格納するバッファ */\r
+       int BufSize;            /* 変換後の文字列を格納するバッファのサイズ */\r
+       int OutLen;                     /* 変換後の文字列のサイズ */\r
+       int KanjiMode;          /* 漢字モードフラグ(YES/NO) (内部処理用ワーク) */\r
+       int EscProc;            /* エスケープシーケンス文字数 (0~) (内部処理用ワーク) */\r
+       char EscCode[2];        /* エスケープシーケンス文字保存用 (内部処理用ワーク) */\r
+       char KanjiFst;          /* 漢字コード1バイト目保存用 (内部処理用ワーク) */\r
+       char KanaPrev;          /* 半角カタカナ保存用 (内部処理用ワーク) */\r
+       funcptr KanaProc;       /* 半角カタカナ処理ルーチン (内部処理用ワーク) */\r
        char EscUTF8[8];\r
        int EscUTF8Len;\r
 } CODECONVINFO;\r
 \r
 \r
-/*===== \89ü\8ds\83R\81[\83h\95Ï\8a·\8fî\95ñ\83p\83P\83b\83g =====*/\r
+/*===== 改行コード変換情報パケット =====*/\r
 \r
 typedef struct termcodeconvinfo {\r
-       char *Str;                      /* \95\8e\9a\97ñ */\r
-       int StrLen;                     /* \95\8e\9a\97ñ\82Ì\92·\82³ */\r
-       char *Buf;                      /* \95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\82ð\8ai\94[\82·\82é\83o\83b\83t\83@ */\r
-       int BufSize;            /* \95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\82Ì\83T\83C\83Y */\r
-       int OutLen;                     /* \95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\82Ì\83T\83C\83Y */\r
-       char Term;                      /* \89ü\8ds\83R\81[\83h\82P\83o\83C\83g\96Ú\95Û\91\97p (\93à\95\94\8f\88\97\9d\97p\83\8f\81[\83N) */\r
+       char *Str;                      /* 文字列 */\r
+       int StrLen;                     /* 文字列の長さ */\r
+       char *Buf;                      /* 変換後の文字列を格納するバッファ */\r
+       int BufSize;            /* 変換後の文字列を格納するバッファのサイズ */\r
+       int OutLen;                     /* 変換後の文字列のサイズ */\r
+       char Term;                      /* 改行コード1バイト目保存用 (内部処理用ワーク) */\r
 } TERMCODECONVINFO;\r
 \r
 \r
-/*===== \83e\83\93\83|\83\89\83\8a\83t\83@\83C\83\8b\83\8a\83X\83g =====*/\r
+/*===== テンポラリファイルリスト =====*/\r
 \r
 typedef struct tempfilelist {\r
-       char *Fname;                            /* \83t\83@\83C\83\8b\96¼ */\r
+       char *Fname;                            /* ファイル名 */\r
        struct tempfilelist *Next;\r
 } TEMPFILELIST;\r
 \r
 \r
-/*===== \83T\83E\83\93\83h\83t\83@\83C\83\8b =====*/\r
+/*===== サウンドファイル =====*/\r
 \r
 typedef struct {\r
-       int On;                                         /* ON/OFF\83X\83C\83b\83` */\r
-       char Fname[FMAX_PATH+1];                /* \83t\83@\83C\83\8b\96¼ */\r
+       int On;                                         /* ON/OFFスイッチ */\r
+       char Fname[FMAX_PATH+1];                /* ファイル名 */\r
 } SOUNDFILE;\r
 \r
 \r
-/*===== \83\89\83W\83I\83{\83^\83\93\82Ì\90Ý\92è =====*/\r
+/*===== ラジオボタンの設定 =====*/\r
 \r
 typedef struct {\r
-       int ButID;                      /* \83{\83^\83\93\82ÌID */\r
-       int Value;                      /* \92l */\r
+       int ButID;                      /* ボタンのID */\r
+       int Value;                      /*  */\r
 } RADIOBUTTON;\r
 \r
 \r
 /*===== SOCKS4 =====*/\r
 \r
-/* \83R\83}\83\93\83h\83p\83P\83b\83g */\r
+/* コマンドパケット */\r
 typedef struct {\r
-       char Ver;                                               /* \83o\81[\83W\83\87\83\93 (SOCKS4_VER) */\r
-       char Cmd;                                               /* \83R\83}\83\93\83h (SOCKS4_CMD_xxx) */\r
-       ushort Port;                                    /* \83|\81[\83g */\r
-       ulong AdrsInt;                                  /* \83A\83h\83\8c\83X */\r
-       char UserID[USER_NAME_LEN+1];   /* \83\86\81[\83UID */\r
+       char Ver;                                               /* バージョン (SOCKS4_VER) */\r
+       char Cmd;                                               /* コマンド (SOCKS4_CMD_xxx) */\r
+       ushort Port;                                    /* ポート */\r
+       ulong AdrsInt;                                  /* アドレス */\r
+       char UserID[USER_NAME_LEN+1];   /* ユーザID */\r
 } SOCKS4CMD;\r
 \r
 \r
-/* \95Ô\90M\83p\83P\83b\83g */\r
+/* 返信パケット */\r
 typedef struct {\r
-       char Ver;                               /* \83o\81[\83W\83\87\83\93 */\r
-       char Result;                    /* \83\8a\83U\83\8b\83g\83R\81[\83h (SOCKS4_RES_xxx) */\r
-       ushort Port;                    /* \83|\81[\83g */\r
-       ulong AdrsInt;                  /* \83A\83h\83\8c\83X */\r
+       char Ver;                               /* バージョン */\r
+       char Result;                    /* リザルトコード (SOCKS4_RES_xxx) */\r
+       ushort Port;                    /* ポート */\r
+       ulong AdrsInt;                  /* アドレス */\r
 } SOCKS4REPLY;\r
 \r
 #define SOCKS4REPLY_SIZE       8\r
@@ -1091,75 +1094,75 @@ typedef struct {
 \r
 /*===== SOCKS5 =====*/\r
 \r
-/* Method request\83p\83P\83b\83g */\r
+/* Method requestパケット */\r
 typedef struct {\r
-       char Ver;                               /* \83o\81[\83W\83\87\83\93 (SOCKS5_VER) */\r
-       char Num;                               /* \83\81\83\\83b\83h\82Ì\90\94 */\r
-       uchar Methods[1];               /* \83\81\83\\83b\83h */\r
+       char Ver;                               /* バージョン (SOCKS5_VER) */\r
+       char Num;                               /* メソッドの数 */\r
+       uchar Methods[1];               /* メソッド */\r
 } SOCKS5METHODREQUEST;\r
 \r
 #define SOCKS5METHODREQUEST_SIZE       3\r
 \r
 \r
-/* Method reply\83p\83P\83b\83g */\r
+/* Method replyパケット */\r
 typedef struct {\r
-       char Ver;                               /* \83o\81[\83W\83\87\83\93 (SOCKS5_VER) */\r
-       uchar Method;                   /* \83\81\83\\83b\83h */\r
+       char Ver;                               /* バージョン (SOCKS5_VER) */\r
+       uchar Method;                   /* メソッド */\r
 } SOCKS5METHODREPLY;\r
 \r
 #define SOCKS5METHODREPLY_SIZE 2\r
 \r
 \r
-/* Request\83p\83P\83b\83g */\r
+/* Requestパケット */\r
 typedef struct {\r
-       char Ver;                               /* \83o\81[\83W\83\87\83\93 (SOCKS5_VER) */\r
-       char Cmd;                               /* \83R\83}\83\93\83h (SOCKS5_CMD_xxx) */\r
-       char Rsv;                               /* \81i\97\\96ñ\81j */\r
-       char Type;                              /* \83A\83h\83\8c\83X\82Ì\83^\83C\83v */\r
-                                                       /* \88È\8cã\81i\89Â\95Ï\92·\95\94\95ª\81j */\r
-       char _dummy[255+1+2];   /* \83A\83h\83\8c\83X\81A\83|\81[\83g */\r
+       char Ver;                               /* バージョン (SOCKS5_VER) */\r
+       char Cmd;                               /* コマンド (SOCKS5_CMD_xxx) */\r
+       char Rsv;                               /* (予約) */\r
+       char Type;                              /* アドレスのタイプ */\r
+                                                       /* 以後(可変長部分) */\r
+       char _dummy[255+1+2];   /* アドレス、ポート */\r
 } SOCKS5REQUEST;\r
 \r
-#define SOCKS5REQUEST_SIZE 4   /* \8dÅ\8f\89\82Ì\8cÅ\92è\95\94\95ª\82Ì\83T\83C\83Y */\r
+#define SOCKS5REQUEST_SIZE 4   /* 最初の固定部分のサイズ */\r
 \r
 \r
-/* Reply\83p\83P\83b\83g */\r
+/* Replyパケット */\r
 typedef struct {\r
-       char Ver;                               /* \83o\81[\83W\83\87\83\93 */\r
-       char Result;                    /* \83\8a\83U\83\8b\83g\83R\81[\83h (SOCKS4_RES_xxx) */\r
-       char Rsv;                               /* \81i\97\\96ñ\81j */\r
-       char Type;                              /* \83A\83h\83\8c\83X\82Ì\83^\83C\83v */\r
-                                                       /* \88È\8cã\81i\89Â\95Ï\92·\95\94\95ª\81j */\r
-       ulong AdrsInt;                  /* \83A\83h\83\8c\83X */\r
-       ushort Port;                    /* \83|\81[\83g */\r
+       char Ver;                               /* バージョン */\r
+       char Result;                    /* リザルトコード (SOCKS4_RES_xxx) */\r
+       char Rsv;                               /* (予約) */\r
+       char Type;                              /* アドレスのタイプ */\r
+                                                       /* 以後(可変長部分) */\r
+       ulong AdrsInt;                  /* アドレス */\r
+       ushort Port;                    /* ポート */\r
        char _dummy[2];                 /* dummy */\r
 } SOCKS5REPLY;\r
 \r
-#define SOCKS5REPLY_SIZE 4     /* \8dÅ\8f\89\82Ì\8cÅ\92è\95\94\95ª\82Ì\83T\83C\83Y */\r
+#define SOCKS5REPLY_SIZE 4     /* 最初の固定部分のサイズ */\r
 \r
 \r
-/* Username/Password\94F\8fØstatus\83p\83P\83b\83g */\r
+/* Username/Password認証statusパケット */\r
 typedef struct {\r
-       char Ver;                               /* \83o\81[\83W\83\87\83\93 */\r
-       uchar Status;                   /* \83X\83e\81[\83^\83X */\r
+       char Ver;                               /* バージョン */\r
+       uchar Status;                   /* ステータス */\r
 } SOCKS5USERPASSSTATUS;\r
 \r
 #define SOCKS5USERPASSSTATUS_SIZE      2\r
 \r
 \r
 \r
-/*===== \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\95Ï\8dX\8f\88\97\9d\97p =====*/\r
+/*===== ダイアログボックス変更処理用 =====*/\r
 \r
 typedef struct {\r
-       int HorMoveList[10];    /* \90\85\95½\82É\93®\82©\82·\95\94\95i\82Ì\83\8a\83X\83g */\r
-       int VarMoveList[10];    /* \90\82\92¼\82É\93®\82©\82·\95\94\95i\82Ì\83\8a\83X\83g */\r
-       int ResizeList[10];             /* \83T\83C\83Y\95Ï\8dX\82·\82é\95\94\95i\82Ì\83\8a\83X\83g */\r
-       SIZE MinSize;                   /* \8dÅ\8f­\83T\83C\83Y */\r
-       SIZE CurSize;                   /* \8c»\8dÝ\82Ì\83T\83C\83Y */\r
+       int HorMoveList[10];    /* 水平に動かす部品のリスト */\r
+       int VarMoveList[10];    /* 垂直に動かす部品のリスト */\r
+       int ResizeList[10];             /* サイズ変更する部品のリスト */\r
+       SIZE MinSize;                   /* 最少サイズ */\r
+       SIZE CurSize;                   /* 現在のサイズ */\r
 } DIALOGSIZE;\r
 \r
 \r
-/*===== \90\94\92l\95Ï\8a·\97p =====*/\r
+/*===== 数値変換用 =====*/\r
 \r
 typedef struct {\r
        int Num1;\r
@@ -1168,7 +1171,7 @@ typedef struct {
 \r
 \r
 /*=================================================\r
-*              \83v\83\8d\83g\83^\83C\83v\r
+*              プロトタイプ\r
 *=================================================*/\r
 \r
 /*===== main.c =====*/\r
@@ -1191,7 +1194,7 @@ int AskForceIni(void);
 int BackgrndMessageProc(void);\r
 void ResetAutoExitFlg(void);\r
 int AskAutoExit(void);\r
-// \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+// 暗号化通信対応\r
 BOOL __stdcall SSLTimeoutCallback();\r
 \r
 /*===== filelist.c =====*/\r
@@ -1260,13 +1263,13 @@ void SetHostKanjiCode(int Type);
 void DispHostKanjiCode(void);\r
 int AskHostKanjiCode(void);\r
 void HideHostKanjiButton(void);\r
-// \83\8d\81[\83J\83\8b\82Ì\8a¿\8e\9a\83R\81[\83h\r
+// ローカルの漢字コード\r
 void SetLocalKanjiCodeImm(int Mode);\r
 void SetLocalKanjiCode(int Type);\r
 void DispLocalKanjiCode(void);\r
 int AskLocalKanjiCode(void);\r
 void HideLocalKanjiButton(void);\r
-// \82±\82±\82Ü\82Å\r
+// ここまで\r
 void SetHostKanaCnvImm(int Mode);\r
 void SetHostKanaCnv(void);\r
 void DispHostKanaCnv(void);\r
@@ -1364,7 +1367,7 @@ SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork);
 SOCKET GetFTPListenSocket(SOCKET ctrl_skt, int *CancelCheckWork);\r
 int AskTryingConnect(void);\r
 int SocksGet2ndBindReply(SOCKET Socket, SOCKET *Data);\r
-// \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+// 暗号化通信対応\r
 int AskCryptMode(void);\r
 int AskUseFTPES(void);\r
 int AskUseFTPIS(void);\r
@@ -1484,12 +1487,12 @@ int FlushRestData(CODECONVINFO *cInfo);
 int ConvEUCtoSJIS(CODECONVINFO *cInfo);\r
 int ConvJIStoSJIS(CODECONVINFO *cInfo);\r
 int ConvSMBtoSJIS(CODECONVINFO *cInfo);\r
-int ConvUTF8NtoSJIS(CODECONVINFO *cInfo); // UTF-8\91Î\89\9e\r
+int ConvUTF8NtoSJIS(CODECONVINFO *cInfo); // UTF-8対応\r
 int ConvSJIStoEUC(CODECONVINFO *cInfo);\r
 int ConvSJIStoJIS(CODECONVINFO *cInfo);\r
 int ConvSJIStoSMB_HEX(CODECONVINFO *cInfo);\r
 int ConvSJIStoSMB_CAP(CODECONVINFO *cInfo);\r
-int ConvSJIStoUTF8N(CODECONVINFO *cInfo); // UTF-8\91Î\89\9e\r
+int ConvSJIStoUTF8N(CODECONVINFO *cInfo); // UTF-8対応\r
 void ConvAutoToSJIS(char *Text, int Pref);\r
 int CheckKanjiCode(char *Text, int Size, int Pref);\r
 \r
index bcc95d7..c35974c 100644 (file)
--- a/config.h
+++ b/config.h
@@ -1,18 +1,18 @@
-\r
-/* OPENVMS\97p\82Ì\83R\81[\83h\82ð\97L\8cø\82É\82·\82é\81B\94ó\8cû\93a\8dì\90¬\82Ì\83p\83b\83`\82ð\91g\82Ý\8d\9e\82Ý\82Ü\82µ\82½\81B */\r
+\r
+/* OPENVMS用のコードを有効にする。樋口殿作成のパッチを組み込みました。 */\r
 #define HAVE_OPENVMS\r
 \r
-// \91S\91Ì\82É\89e\8b¿\82·\82é\90Ý\92è\82Í\82±\82±\82É\8bL\8fq\82·\82é\97\\92è\r
-// \93à\95\94\82ðUTF-8\82Æ\82µ\82Ä\88µ\82¢\83}\83\8b\83`\83o\83C\83g\95\8e\9a\83\8f\83C\83h\95\8e\9aAPI\83\89\83b\83p\81[\82ð\8eg\97p\82·\82é\r
+// 全体に影響する設定はここに記述する予定\r
+// 内部をUTF-8として扱いマルチバイト文字ワイド文字APIラッパーを使用する\r
 #include "mbswrapper.h"\r
-// OpenSSL\97p\83\\83P\83b\83g\83\89\83b\83p\81[\82ð\8eg\97p\82·\82é\r
+// OpenSSL用ソケットラッパーを使用する\r
 #include "socketwrapper.h"\r
-// \8eg\97p\82·\82éCPU\82ð1\8cÂ\82É\8cÀ\92è\82·\82é\81i\83}\83\8b\83`\83R\83ACPU\82Ì\93Á\92è\8aÂ\8b«\89º\82Å\83t\83@\83C\83\8b\92Ê\90M\92\86\82É\83N\83\89\83b\83V\83\85\82·\82é\83o\83O\91Î\8dô\81j\r
+// 使用するCPUを1個に限定する(マルチコアCPUの特定環境下でファイル通信中にクラッシュするバグ対策)\r
 #define DISABLE_MULTI_CPUS\r
-// \83t\83@\83C\83\8b\93]\91\97\97p\82Ì\83l\83b\83g\83\8f\81[\83N\83o\83b\83t\83@\82ð\96³\8cø\82É\82·\82é\81i\92Ê\90M\92\86\8e~\8cã\82É\83\8a\83\82\81[\83g\82Ì\83f\83B\83\8c\83N\83g\83\8a\82ª\95\\8e¦\82³\82ê\82È\82¢\83o\83O\91Î\8dô\81j\r
+// ファイル転送用のネットワークバッファを無効にする(通信中止後にリモートのディレクトリが表示されないバグ対策)\r
 //#define DISABLE_TRANSFER_NETWORK_BUFFERS\r
-// \83R\83\93\83g\83\8d\81[\83\8b\97p\82Ì\83l\83b\83g\83\8f\81[\83N\83o\83b\83t\83@\82ð\96³\8cø\82É\82·\82é\81i\83t\83\8a\81[\83Y\91Î\8dô\81j\r
+// コントロール用のネットワークバッファを無効にする(フリーズ対策)\r
 #define DISABLE_CONTROL_NETWORK_BUFFERS\r
-// JRE32.DLL\82ð\96³\8cø\82É\82·\82é\81iUTF-8\82É\94ñ\91Î\89\9e\82Ì\82½\82ß\81j\r
+// JRE32.DLLを無効にする(UTF-8に非対応のため)\r
 #define DISABLE_JRE32DLL\r
 \r
index a83ae57..b37571c 100644 (file)
--- a/connect.c
+++ b/connect.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \83z\83X\83g\82Ö\82Ì\90Ú\91±\81^\90Ø\92f\r
+*                                                              ホストへの接続/切断\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include <htmlhelp.h>\r
 #include "helpid.h"\r
 \r
-// UTF-8\91Î\89\9e\r
+// UTF-8対応\r
 #undef __MBSWRAPPER_H__\r
 #include "mbswrapper.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static BOOL CALLBACK QuickConDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
 static int SendInitCommand(char *Cmd);\r
@@ -66,13 +66,13 @@ static int Socks5GetCmdReply(SOCKET Socket, SOCKS5REPLY *Packet);
 static int Socks4GetCmdReply(SOCKET Socket, SOCKS4REPLY *Packet);\r
 static int Socks5SelMethod(SOCKET Socket, int *CancelCheckWork);\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern char FilterStr[FILTER_EXT_LEN+1];\r
 extern char TitleHostName[HOST_ADRS_LEN+1];\r
 extern int CancelFlg;\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern char UserMailAdrs[USER_MAIL_LEN+1];\r
 extern char FwallHost[HOST_ADRS_LEN+1];\r
 extern char FwallUser[USER_NAME_LEN+1];\r
@@ -87,7 +87,7 @@ extern int FwallDelimiter;
 extern int PasvDefault;\r
 extern int QuickAnonymous;\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static int Anonymous;\r
 static int TryConnect = NO;\r
@@ -95,10 +95,10 @@ static SOCKET CmdCtrlSocket = INVALID_SOCKET;
 static SOCKET TrnCtrlSocket = INVALID_SOCKET;\r
 static HOSTDATA CurHost;\r
 \r
-/* \90Ú\91±\92\86\82Ì\90Ú\91±\90æ\81ASOCKS\83T\81[\83o\82Ì\83A\83h\83\8c\83X\8fî\95ñ\82ð\95Û\91\82µ\82Ä\82¨\82­ */\r
-/* \82±\82Ì\8fî\95ñ\82Ílisten\83\\83P\83b\83g\82ð\8eæ\93¾\82·\82é\8dÛ\82É\97p\82¢\82é */\r
-static struct sockaddr_in SocksSockAddr;       /* SOCKS\83T\81[\83o\82Ì\83A\83h\83\8c\83X\8fî\95ñ */\r
-static struct sockaddr_in CurSockAddr;         /* \90Ú\91±\90æ\83z\83X\83g\82Ì\83A\83h\83\8c\83X\8fî\95ñ */\r
+/* 接続中の接続先、SOCKSサーバのアドレス情報を保存しておく */\r
+/* この情報はlistenソケットを取得する際に用いる */\r
+static struct sockaddr_in SocksSockAddr;       /* SOCKSサーバのアドレス情報 */\r
+static struct sockaddr_in CurSockAddr;         /* 接続先ホストのアドレス情報 */\r
 \r
 static int UseIPadrs;\r
 static char DomainName[HOST_ADRS_LEN+1];\r
@@ -106,14 +106,14 @@ static char DomainName[HOST_ADRS_LEN+1];
 \r
 \r
 \r
-/*----- \83z\83X\83g\88ê\97\97\82ð\8eg\82Á\82Ä\83z\83X\83g\82Ö\90Ú\91± ----------------------------------------\r
+/*----- ホスト一覧を使ってホストへ接続 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Type : \83_\83C\83A\83\8d\83O\82Ì\83^\83C\83v (DLG_TYPE_xxx)\r
-*              int Num : \90Ú\91±\82·\82é\83z\83X\83g\94Ô\8d\86(0\81`, -1=\83_\83C\83A\83\8d\83O\82ð\8fo\82·)\r
+*              int Type : ダイアログのタイプ (DLG_TYPE_xxx)\r
+*              int Num : 接続するホスト番号(0~, -1=ダイアログを出す)\r
 \r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ConnectProc(int Type, int Num)\r
@@ -132,7 +132,7 @@ void ConnectProc(int Type, int Num)
                if(Num >= 0)\r
                        SetCurrentHost(Num);\r
 \r
-               /* \90Ú\91±\92\86\82È\82ç\90Ø\92f\82·\82é */\r
+               /* 接続中なら切断する */\r
                if(CmdCtrlSocket != INVALID_SOCKET)\r
                        DisconnectProc();\r
 \r
@@ -141,7 +141,7 @@ void ConnectProc(int Type, int Num)
                InitPWDcommand();\r
                CopyHostFromList(AskCurrentHost(), &CurHost);\r
 \r
-               if(ConnectRas(CurHost.Dialup, CurHost.DialupAlways, CurHost.DialupNotify, CurHost.DialEntry) == SUCCESS)\r
+               if(ConnectRas(CurHost.Dialup, CurHost.DialupAlways, CurHost.DialupNotify, CurHost.DialEntry) == FFFTP_SUCCESS)\r
                {\r
                        SetHostKanaCnvImm(CurHost.KanaCnv);\r
                        SetHostKanjiCodeImm(CurHost.KanjiCode);\r
@@ -193,13 +193,13 @@ void ConnectProc(int Type, int Num)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\96¼\82ð\93ü\97Í\82µ\82Ä\83z\83X\83g\82Ö\90Ú\91± ----------------------------------------\r
+/*----- ホスト名を入力してホストへ接続 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void QuickConnectProc(void)\r
@@ -212,7 +212,7 @@ void QuickConnectProc(void)
 \r
        if(DialogBoxParam(GetFtpInst(), MAKEINTRESOURCE(hostname_dlg), GetMainHwnd(), QuickConDialogCallBack, (LPARAM)Tmp) == YES)\r
        {\r
-               /* \90Ú\91±\92\86\82È\82ç\90Ø\92f\82·\82é */\r
+               /* 接続中なら切断する */\r
                if(CmdCtrlSocket != INVALID_SOCKET)\r
                        DisconnectProc();\r
 \r
@@ -220,7 +220,7 @@ void QuickConnectProc(void)
 \r
                InitPWDcommand();\r
                CopyDefaultHost(&CurHost);\r
-               if(SplitUNCpath(Tmp, CurHost.HostAdrs, CurHost.RemoteInitDir, File, CurHost.UserName, CurHost.PassWord, &CurHost.Port) == SUCCESS)\r
+               if(SplitUNCpath(Tmp, CurHost.HostAdrs, CurHost.RemoteInitDir, File, CurHost.UserName, CurHost.PassWord, &CurHost.Port) == FFFTP_SUCCESS)\r
                {\r
                        if(strlen(CurHost.UserName) == 0)\r
                        {\r
@@ -267,13 +267,13 @@ void QuickConnectProc(void)
 }\r
 \r
 \r
-/*----- \83N\83C\83b\83N\90Ú\91±\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------------------\r
+/*----- クイック接続ダイアログのコールバック ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -308,7 +308,7 @@ static BOOL CALLBACK QuickConDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wPa
                        SendDlgItemMessage(hDlg, QHOST_PASV, BM_SETCHECK, PasvDefault, 0);\r
                        for(i = 0; i < HISTORY_MAX; i++)\r
                        {\r
-                               if(GetHistoryByNum(i, &Tmp) == SUCCESS)\r
+                               if(GetHistoryByNum(i, &Tmp) == FFFTP_SUCCESS)\r
                                {\r
 //sprintf(Str, "%s (%s) %s", Tmp.HostAdrs, Tmp.UserName, Tmp.RemoteInitDir);\r
 //SendDlgItemMessage(hDlg, QHOST_HOST, CB_ADDSTRING, 0, (LPARAM)Str);\r
@@ -345,17 +345,17 @@ static BOOL CALLBACK QuickConDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wPa
 }\r
 \r
 \r
-/*----- \8ew\92è\82µ\82½\83z\83X\83g\96¼\82Å\83z\83X\83g\82Ö\90Ú\91± ----------------------------------------\r
+/*----- 指定したホスト名でホストへ接続 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *unc : UNC\95\8e\9a\97ñ\r
-*              int Kanji : \83z\83X\83g\82Ì\8a¿\8e\9a\83R\81[\83h (KANJI_xxx)\r
-*              int Kana : \94¼\8ap\82©\82È\81¨\91S\8ap\95Ï\8a·\83\82\81[\83h (YES/NO)\r
-*              int Fkanji : \83t\83@\83C\83\8b\96¼\82Ì\8a¿\8e\9a\83R\81[\83h (KANJI_xxx)\r
-*              int TrMode : \93]\91\97\83\82\81[\83h (TYPE_xx)\r
+*              char *unc : UNC文字列\r
+*              int Kanji : ホストの漢字コード (KANJI_xxx)\r
+*              int Kana : 半角かな→全角変換モード (YES/NO)\r
+*              int Fkanji : ファイル名の漢字コード (KANJI_xxx)\r
+*              int TrMode : 転送モード (TYPE_xx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DirectConnectProc(char *unc, int Kanji, int Kana, int Fkanji, int TrMode)\r
@@ -370,14 +370,14 @@ void DirectConnectProc(char *unc, int Kanji, int Kana, int Fkanji, int TrMode)
        SaveBookMark();\r
        SaveCurrentSetToHost();\r
 \r
-       /* \90Ú\91±\92\86\82È\82ç\90Ø\92f\82·\82é */\r
+       /* 接続中なら切断する */\r
        if(CmdCtrlSocket != INVALID_SOCKET)\r
                DisconnectProc();\r
 \r
        SetTaskMsg("----------------------------");\r
 \r
        InitPWDcommand();\r
-       if(SplitUNCpath(unc, Host, Path, File, User, Pass, &Port) == SUCCESS)\r
+       if(SplitUNCpath(unc, Host, Path, File, User, Pass, &Port) == FFFTP_SUCCESS)\r
        {\r
                if(strlen(User) == 0)\r
                {\r
@@ -397,7 +397,7 @@ void DirectConnectProc(char *unc, int Kanji, int Kana, int Fkanji, int TrMode)
                CurHost.KanjiCode = Kanji;\r
                CurHost.KanaCnv = Kana;\r
                CurHost.NameKanjiCode = Fkanji;\r
-               CurHost.KanaCnv = YES;                  /* \82Æ\82è\82 \82¦\82¸ */\r
+               CurHost.KanaCnv = YES;                  /* とりあえず */\r
 \r
                SetHostKanaCnvImm(CurHost.KanaCnv);\r
                SetHostKanjiCodeImm(CurHost.KanjiCode);\r
@@ -440,13 +440,13 @@ void DirectConnectProc(char *unc, int Kanji, int Kana, int Fkanji, int TrMode)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ì\83q\83X\83g\83\8a\82Å\8ew\92è\82³\82ê\82½\83z\83X\83g\82Ö\90Ú\91± ------------------------------\r
+/*----- ホストのヒストリで指定されたホストへ接続 ------------------------------\r
 *\r
 *      Parameter\r
-*              int MenuCmd : \8eæ\82è\8fo\82·\83q\83X\83g\83\8a\82É\8a\84\82è\93\96\82Ä\82ç\82ê\82½\83\81\83j\83\85\81[\83R\83}\83\93\83h\r
+*              int MenuCmd : 取り出すヒストリに割り当てられたメニューコマンド\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void HistoryConnectProc(int MenuCmd)\r
@@ -457,12 +457,12 @@ void HistoryConnectProc(int MenuCmd)
        int RFSort;\r
        int RDSort;\r
 \r
-       if(GetHistoryByCmd(MenuCmd, &Hist) == SUCCESS)\r
+       if(GetHistoryByCmd(MenuCmd, &Hist) == FFFTP_SUCCESS)\r
        {\r
                SaveBookMark();\r
                SaveCurrentSetToHost();\r
 \r
-               /* \90Ú\91±\92\86\82È\82ç\90Ø\92f\82·\82é */\r
+               /* 接続中なら切断する */\r
                if(CmdCtrlSocket != INVALID_SOCKET)\r
                        DisconnectProc();\r
 \r
@@ -471,7 +471,7 @@ void HistoryConnectProc(int MenuCmd)
                InitPWDcommand();\r
                CopyHistoryToHost(&Hist, &CurHost);\r
 \r
-               if(ConnectRas(CurHost.Dialup, CurHost.DialupAlways, CurHost.DialupNotify, CurHost.DialEntry) == SUCCESS)\r
+               if(ConnectRas(CurHost.Dialup, CurHost.DialupAlways, CurHost.DialupNotify, CurHost.DialEntry) == FFFTP_SUCCESS)\r
                {\r
                        SetCurrentHost(HOSTNUM_NOENTRY);\r
                        SetHostKanaCnvImm(CurHost.KanaCnv);\r
@@ -520,16 +520,16 @@ void HistoryConnectProc(int MenuCmd)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ì\8f\89\8aú\89»\83R\83}\83\93\83h\82ð\91\97\82é ------------------------------------------\r
+/*----- ホストの初期化コマンドを送る ------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Cmd : \8f\89\8aú\89»\83R\83}\83\93\83h\83X\r
+*              int Cmd : 初期化コマンドス\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      NOte\r
-*              \8f\89\8aú\89»\83R\83}\83\93\83h\82Í\88È\89º\82Ì\82æ\82¤\82È\83t\83H\81[\83}\83b\83g\82Å\82 \82é\82±\82Æ\r
+*              初期化コマンドは以下のようなフォーマットであること\r
 *                      cmd1\0\r
 *                      cmd1\r\ncmd2\r\n\0\r
 *----------------------------------------------------------------------------*/\r
@@ -556,16 +556,16 @@ static int SendInitCommand(char *Cmd)
 }\r
 \r
 \r
-/*----- \8ew\92è\82Ì\83z\83X\83g\82ÍFireWall\82ð\8eg\82¤\90Ý\92è\82©\82Ç\82¤\82©\82ð\95Ô\82· ------------------------\r
+/*----- 指定のホストはFireWallを使う設定かどうかを返す ------------------------\r
 *\r
 *      Parameter\r
-*              char *Hots : \83z\83X\83g\96¼\r
-*              int *Fire : FireWall\82ð\8eg\82¤\82©\82Ç\82¤\82©\82ð\95Ô\82·\83\8f\81[\83N\r
-*              int *Pasv : PASV\83\82\81[\83h\82ð\95Ô\82·\83\8f\81[\83N\r
-*              int *List : LIST\83R\83}\83\93\83h\82Ì\82Ý\8eg\97p\83t\83\89\83O\r
+*              char *Hots : ホスト名\r
+*              int *Fire : FireWallを使うかどうかを返すワーク\r
+*              int *Pasv : PASVモードを返すワーク\r
+*              int *List : LISTコマンドのみ使用フラグ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void AskUseFireWall(char *Host, int *Fire, int *Pasv, int *List)\r
@@ -578,7 +578,7 @@ static void AskUseFireWall(char *Host, int *Fire, int *Pasv, int *List)
        *List = NO;\r
 \r
        i = 0;\r
-       while(CopyHostFromList(i, &Tmp) == SUCCESS)\r
+       while(CopyHostFromList(i, &Tmp) == FFFTP_SUCCESS)\r
        {\r
                if(strcmp(Host, Tmp.HostAdrs) == 0)\r
                {\r
@@ -593,13 +593,13 @@ static void AskUseFireWall(char *Host, int *Fire, int *Pasv, int *List)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82Ì\83A\83h\83\8c\83X\82ð\95Ô\82· ------------------------------------\r
+/*----- 接続しているホストのアドレスを返す ------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              char *\83z\83X\83g\82Ì\83A\83h\83\8c\83X\r
+*              char *ホストのアドレス\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *AskHostAdrs(void)\r
@@ -608,13 +608,13 @@ char *AskHostAdrs(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82Ì\83|\81[\83g\82ð\95Ô\82· --------------------------------------\r
+/*----- 接続しているホストのポートを返す --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83z\83X\83g\82Ì\83|\81[\83g\r
+*              int ホストのポート\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskHostPort(void)\r
@@ -622,13 +622,13 @@ int AskHostPort(void)
        return(CurHost.Port);\r
 }\r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82Ì\83t\83@\83C\83\8b\96¼\82Ì\8a¿\8e\9a\83R\81[\83h\82ð\95Ô\82· ----------------------\r
+/*----- 接続しているホストのファイル名の漢字コードを返す ----------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \8a¿\8e\9a\83R\81[\83h (KANJI_xxx)\r
+*              int 漢字コード (KANJI_xxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskHostNameKanji(void)\r
@@ -640,13 +640,13 @@ int AskHostNameKanji(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82Ì\83t\83@\83C\83\8b\96¼\82Ì\94¼\8ap\83J\83i\95Ï\8a·\83t\83\89\83O\82ð\95Ô\82· --------------\r
+/*----- 接続しているホストのファイル名の半角カナ変換フラグを返す --------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \94¼\8ap\83J\83i\82ð\91S\8ap\82É\95Ï\8a·\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
+*              int 半角カナを全角に変換するかどうか (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskHostNameKana(void)\r
@@ -658,13 +658,13 @@ int AskHostNameKana(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82ÌLIST\83R\83}\83\93\83h\83\82\81[\83h\82ð\95Ô\82· --------------------------\r
+/*----- 接続しているホストのLISTコマンドモードを返す --------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int LIST\83R\83}\83\93\83h\83\82\81[\83h (YES/NO)\r
+*              int LISTコマンドモード (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskListCmdMode(void)\r
@@ -680,13 +680,13 @@ int AskListCmdMode(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82ÅNLST -R\82ð\8eg\82¤\82©\82Ç\82¤\82©\82ð\95Ô\82· ------------------------\r
+/*----- 接続しているホストでNLST -Rを使うかどうかを返す ------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int NLST -R\82ð\8eg\82¤\82©\82Ç\82¤\82© (YES/NO)\r
+*              int NLST -Rを使うかどうか (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskUseNLST_R(void)\r
@@ -698,13 +698,13 @@ int AskUseNLST_R(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82ÌChmod\83R\83}\83\93\83h\82ð\95Ô\82· -------------------------------\r
+/*----- 接続しているホストのChmodコマンドを返す -------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              char *Chmod\83R\83}\83\93\83h\r
+*              char *Chmodコマンド\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *AskHostChmodCmd(void)\r
@@ -716,13 +716,13 @@ char *AskHostChmodCmd(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82Ì\83^\83C\83\80\83]\81[\83\93\82ð\95Ô\82· --------------------------------\r
+/*----- 接続しているホストのタイムゾーンを返す --------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83^\83C\83\80\83]\81[\83\93\r
+*              int タイムゾーン\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskHostTimeZone(void)\r
@@ -734,13 +734,13 @@ int AskHostTimeZone(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82ÌPASV\83\82\81[\83h\82ð\95Ô\82· ----------------------------------\r
+/*----- 接続しているホストのPASVモードを返す ----------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int PASV\83\82\81[\83h\82©\82Ç\82¤\82© (YES/NO)\r
+*              int PASVモードかどうか (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskPasvMode(void)\r
@@ -749,13 +749,13 @@ int AskPasvMode(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82ÌLNST\83t\83@\83C\83\8b\96¼\82ð\95Ô\82· ------------------------------\r
+/*----- 接続しているホストのLNSTファイル名を返す ------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              char *\83t\83@\83C\83\8b\96¼\81^\83I\83v\83V\83\87\83\93\r
+*              char *ファイル名/オプション\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *AskHostLsName(void)\r
@@ -767,13 +767,13 @@ char *AskHostLsName(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82Ì\83z\83X\83g\83^\83C\83v\82ð\95Ô\82· --------------------------------\r
+/*----- 接続しているホストのホストタイプを返す --------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              char *\83t\83@\83C\83\8b\96¼\81^\83I\83v\83V\83\87\83\93\r
+*              char *ファイル名/オプション\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskHostType(void)\r
@@ -785,13 +785,13 @@ int AskHostType(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82ÍFireWall\82ð\8eg\82¤\83z\83X\83g\82©\82Ç\82¤\82©\82ð\95Ô\82· ----------------\r
+/*----- 接続しているホストはFireWallを使うホストかどうかを返す ----------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int FireWall\82ð\8eg\82¤\82©\82Ç\82¤\82© (YES/NO)\r
+*              int FireWallを使うかどうか (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskHostFireWall(void)\r
@@ -800,13 +800,13 @@ int AskHostFireWall(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83z\83X\83g\82Å\83t\83\8b\83p\83X\82Å\83t\83@\83C\83\8b\83A\83N\83Z\83X\82µ\82È\82¢\82©\82Ç\82¤\82©\82ð\95Ô\82· ----\r
+/*----- 接続しているホストでフルパスでファイルアクセスしないかどうかを返す ----\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83t\83\8b\83p\83X\82Å\83A\83N\83Z\83X\82µ\82È\82¢ (YES=\83t\83\8b\83p\83X\8bÖ\8e~/NO)\r
+*              int フルパスでアクセスしない (YES=フルパス禁止/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskNoFullPathMode(void)\r
@@ -818,13 +818,13 @@ int AskNoFullPathMode(void)
 }\r
 \r
 \r
-/*----- \90Ú\91±\82µ\82Ä\82¢\82é\83\86\81[\83U\96¼\82ð\95Ô\82· --------------------------------------------\r
+/*----- 接続しているユーザ名を返す --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              char *\83\86\81[\83U\96¼\r
+*              char *ユーザ名\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *AskHostUserName(void)\r
@@ -833,16 +833,16 @@ char *AskHostUserName(void)
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\82Ì\90Ý\92è\82ð\83z\83X\83g\82Ì\90Ý\92è\82É\83Z\83b\83g\82·\82é ----------------------------------\r
+/*----- 現在の設定をホストの設定にセットする ----------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\81A\83\\81[\83g\95û\96@\82ð\83z\83X\83g\82Ì\90Ý\92è\82É\83Z\83b\83g\82·\82é\r
+*              カレントディレクトリ、ソート方法をホストの設定にセットする\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SaveCurrentSetToHost(void)\r
@@ -869,13 +869,13 @@ void SaveCurrentSetToHost(void)
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\82Ì\90Ý\92è\82ð\83q\83X\83g\83\8a\82É\83Z\83b\83g\82·\82é --------------------------------------\r
+/*----- 現在の設定をヒストリにセットする --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SaveCurrentSetToHistory(void)\r
@@ -902,14 +902,14 @@ static void SaveCurrentSetToHistory(void)
 }\r
 \r
 \r
-/*----- \83R\83}\83\93\83h\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\82Ì\8dÄ\90Ú\91± ----------------------------------\r
+/*----- コマンドコントロールソケットの再接続 ----------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\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 ReConnectCmdSkt(void)\r
@@ -928,14 +928,14 @@ int ReConnectCmdSkt(void)
 }\r
 \r
 \r
-/*----- \93]\91\97\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\82Ì\8dÄ\90Ú\91± --------------------------------------\r
+/*----- 転送コントロールソケットの再接続 --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\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 ReConnectTrnSkt(void)\r
@@ -944,14 +944,14 @@ int ReConnectCmdSkt(void)
 //}\r
 \r
 \r
-/*----- \89ñ\90ü\82Ì\8dÄ\90Ú\91± ----------------------------------------------------------\r
+/*----- 回線の再接続 ----------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET *Skt : \90Ú\91±\82µ\82½\83\\83P\83b\83g\82ð\95Ô\82·\83\8f\81[\83N\r
+*              SOCKET *Skt : 接続したソケットを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int ReConnectSkt(SOCKET *Skt)\r
@@ -959,20 +959,20 @@ static int ReConnectSkt(SOCKET *Skt)
        char Path[FMAX_PATH+1];\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
 \r
        SetTaskMsg(MSGJPN003);\r
 \r
        DisableUserOpe();\r
-       /* \8c»\8dÝ\82Ì\83\\83P\83b\83g\82Í\90Ø\92f */\r
+       /* 現在のソケットは切断 */\r
        if(*Skt != INVALID_SOCKET)\r
                do_closesocket(*Skt);\r
-       /* \8dÄ\90Ú\91± */\r
+       /* 再接続 */\r
        if((*Skt = DoConnect(CurHost.HostAdrs, CurHost.UserName, CurHost.PassWord, CurHost.Account, CurHost.Port, CurHost.FireWall, NO, CurHost.Security)) != INVALID_SOCKET)\r
        {\r
                AskRemoteCurDir(Path, FMAX_PATH);\r
                DoCWD(Path, YES, YES, YES);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
                SoundPlay(SND_ERROR);\r
@@ -982,13 +982,13 @@ static int ReConnectSkt(SOCKET *Skt)
 }\r
 \r
 \r
-/*----- \83R\83}\83\93\83h\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\82ð\95Ô\82· ------------------------------------\r
+/*----- コマンドコントロールソケットを返す ------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              SOCKET \83R\83}\83\93\83h\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
+*              SOCKET コマンドコントロールソケット\r
 *----------------------------------------------------------------------------*/\r
 \r
 SOCKET AskCmdCtrlSkt(void)\r
@@ -997,13 +997,13 @@ SOCKET AskCmdCtrlSkt(void)
 }\r
 \r
 \r
-/*----- \93]\91\97\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\82ð\95Ô\82· ----------------------------------------\r
+/*----- 転送コントロールソケットを返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              SOCKET \93]\91\97\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
+*              SOCKET 転送コントロールソケット\r
 *----------------------------------------------------------------------------*/\r
 \r
 SOCKET AskTrnCtrlSkt(void)\r
@@ -1012,13 +1012,13 @@ SOCKET AskTrnCtrlSkt(void)
 }\r
 \r
 \r
-/*----- \83R\83}\83\93\83h\81^\93]\91\97\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\82Ì\8b¤\97L\82ð\89ð\8f\9c ------------------------\r
+/*----- コマンド/転送コントロールソケットの共有を解除 ------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SktShareProh(void)\r
@@ -1035,14 +1035,14 @@ void SktShareProh(void)
 }\r
 \r
 \r
-/*----- \83R\83}\83\93\83h\81^\93]\91\97\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\82Ì\8b¤\97L\82ª\89ð\8f\9c\82³\82ê\82Ä\82¢\82é\82©\83`\83F\83b\83N ----\r
+/*----- コマンド/転送コントロールソケットの共有が解除されているかチェック ----\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      YES=\8b¤\97L\89ð\8f\9c/NO=\8b¤\97L\r
+*              int ステータス\r
+*                      YES=共有解除/NO=共有\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskShareProh(void)\r
@@ -1057,13 +1057,13 @@ int AskShareProh(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82©\82ç\90Ø\92f --------------------------------------------------------\r
+/*----- ホストから切断 --------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DisconnectProc(void)\r
@@ -1099,13 +1099,13 @@ void DisconnectProc(void)
 }\r
 \r
 \r
-/*----- \83\\83P\83b\83g\82ª\8b­\90§\90Ø\92f\82³\82ê\82½\82Æ\82«\82Ì\8f\88\97\9d ------------------------------------\r
+/*----- ソケットが強制切断されたときの処理 ------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DisconnectSet(void)\r
@@ -1121,13 +1121,13 @@ void DisconnectSet(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82É\90Ú\91±\92\86\82©\82Ç\82¤\82©\82ð\95Ô\82· ------------------------------------------\r
+/*----- ホストに接続中かどうかを返す ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES/NO)\r
+*              int ステータス (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskConnecting(void)\r
@@ -1142,36 +1142,36 @@ int AskConnecting(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ö\90Ú\91±\82·\82é ------------------------------------------------------\r
+/*----- ホストへ接続する ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Host : \83z\83X\83g\96¼\r
-*              char *User : \83\86\81[\83U\96¼\r
-*              char *Pass : \83p\83X\83\8f\81[\83h\r
-*              char *Acct : \83A\83J\83E\83\93\83g\r
-*              int Port : \83|\81[\83g\r
-*              int Fwall : FireWall\82ð\8eg\82¤\82©\82Ç\82¤\82© (YES/NO)\r
-*              int SavePass : \83p\83X\83\8f\81[\83h\82ð\8dÄ\93ü\97Í\82µ\82½\8e\9e\82É\95Û\91\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
-*              int Security : \83Z\83L\83\85\83\8a\83e\83B (SECURITY_xxx, MDx)\r
+*              char *Host : ホスト名\r
+*              char *User : ユーザ名\r
+*              char *Pass : パスワード\r
+*              char *Acct : アカウント\r
+*              int Port : ポート\r
+*              int Fwall : FireWallを使うかどうか (YES/NO)\r
+*              int SavePass : パスワードを再入力した時に保存するかどうか (YES/NO)\r
+*              int Security : セキュリティ (SECURITY_xxx, MDx)\r
 *\r
 *      Return Value\r
-*              SOCKET \83\\83P\83b\83g\r
+*              SOCKET ソケット\r
 *\r
 *      Note\r
-*              \83z\83X\83g\96¼\81A\83\86\81[\83U\96¼\81A\83p\83X\83\8f\81[\83h\82ª\8ew\92è\82³\82ê\82Ä\82¢\82È\82©\82Á\82½\82Æ\82«\82Í\81A\90Ú\91±\82É\8eg\97p\r
-*              \82µ\82½\82à\82Ì\82ð\83R\83s\81[\82µ\82Ä\82©\82¦\82·\r
-*                      char *Host : \83z\83X\83g\96¼\r
-*                      char *User : \83\86\81[\83U\96¼\r
-*                      char *Pass : \83p\83X\83\8f\81[\83h\r
-*                      char *Acct : \83A\83J\83E\83\93\83g\r
-*\r
-*              FireWall\82Í\8e\9f\82Ì\82æ\82¤\82É\93®\8dì\82·\82é\r
-*                      TYPE1   Connect fire \81¨ USER user(f) \81¨ PASS pass(f) \81¨ SITE host \81¨ USER user(h) \81¨      PASS pass(h) \81¨ ACCT acct\r
-*                      TYPE2   Connect fire \81¨ USER user(f) \81¨ PASS pass(f) \81¨              USER user(h)@host \81¨ PASS pass(h) \81¨ ACCT acct\r
-*                      TYPE3   Connect fire \81¨                                              USER user(h)@host \81¨ PASS pass(h) \81¨ ACCT acct\r
-*                      TYPE4   Connect fire \81¨                                 OPEN host \81¨ USER user(h) \81¨      PASS pass(h) \81¨ ACCT acct\r
+*              ホスト名、ユーザ名、パスワードが指定されていなかったときは、接続に使用\r
+*              したものをコピーしてかえす\r
+*                      char *Host : ホスト名\r
+*                      char *User : ユーザ名\r
+*                      char *Pass : パスワード\r
+*                      char *Acct : アカウント\r
+*\r
+*              FireWallは次のように動作する\r
+*                      TYPE1   Connect fire → USER user(f) → PASS pass(f) → SITE host → USER user(h) →      PASS pass(h) → ACCT acct\r
+*                      TYPE2   Connect fire → USER user(f) → PASS pass(f) →              USER user(h)@host → PASS pass(h) → ACCT acct\r
+*                      TYPE3   Connect fire →                                              USER user(h)@host → PASS pass(h) → ACCT acct\r
+*                      TYPE4   Connect fire →                                 OPEN host → USER user(h) →      PASS pass(h) → ACCT acct\r
 *                      TYPE5   SOCKS4\r
-*                      none    Connect host \81¨                                              USER user(h) \81¨      PASS pass(h) \81¨ ACCT acct\r
+*                      none    Connect host →                                              USER user(h) →      PASS pass(h) → ACCT acct\r
 *----------------------------------------------------------------------------*/\r
 \r
 static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port, int Fwall, int SavePass, int Security)\r
@@ -1217,7 +1217,7 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
        {\r
                if((ContSock = connectsock(Tmp, Port, "", &CancelFlg)) != INVALID_SOCKET)\r
                {\r
-                       // \83o\83b\83t\83@\82ð\96³\8cø\r
+                       // バッファを無効\r
 #ifdef DISABLE_CONTROL_NETWORK_BUFFERS\r
                        int BufferSize = 0;\r
                        setsockopt(ContSock, SOL_SOCKET, SO_SNDBUF, (char*)&BufferSize, sizeof(int));\r
@@ -1231,7 +1231,7 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
                                Flg = 1;\r
                                if(setsockopt(ContSock, SOL_SOCKET, SO_OOBINLINE, (LPSTR)&Flg, sizeof(Flg)) == SOCKET_ERROR)\r
                                        ReportWSError("setsockopt", WSAGetLastError());\r
-                               // \83f\81[\83^\93]\91\97\97p\83\\83P\83b\83g\82ÌTCP\92x\89\84\93]\91\97\82ª\96³\8cø\82³\82ê\82Ä\82¢\82é\82Ì\82Å\94O\82Ì\82½\82ß\r
+                               // データ転送用ソケットのTCP遅延転送が無効されているので念のため\r
                                if(setsockopt(ContSock, IPPROTO_TCP, TCP_NODELAY, (LPSTR)&Flg, sizeof(Flg)) == SOCKET_ERROR)\r
                                        ReportWSError("setsockopt", WSAGetLastError());\r
 #pragma aaa\r
@@ -1245,7 +1245,7 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
 ///////\r
 \r
 \r
-                               /*===== \94F\8fØ\82ð\8ds\82È\82¤ =====*/\r
+                               /*===== 認証を行なう =====*/\r
 \r
                                Sts = FTP_COMPLETE;\r
                                if((Fwall == FWALL_FU_FP_SITE) ||\r
@@ -1312,13 +1312,13 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
                                                        else\r
                                                                strcpy(Buf, User);\r
 \r
-                                                       // FTPES\91Î\89\9e\r
-                                                       // 2\89ñ\88È\8fã\8cÄ\82Î\82ê\82é\8e\96\82ª\82 \82é\82½\82ß\8aù\82ÉFTPES\82Å\90Ú\91±\82µ\82Ä\82¢\82Ä\82à\8dÄ\8am\94F\r
+                                                       // FTPES対応\r
+                                                       // 2回以上呼ばれる事があるため既にFTPESで接続していても再確認\r
                                                        if(CurHost.CryptMode == CRYPT_NONE || CurHost.CryptMode == CRYPT_FTPES)\r
                                                        {\r
                                                                if(IsOpenSSLLoaded() && CurHost.UseFTPES == YES && (Sts = command(ContSock, Reply, &CancelFlg, "AUTH TLS")) == 234)\r
                                                                {\r
-                                                                       // SSL\82É\90Ø\82è\91Ö\82¦\r
+                                                                       // SSLに切り替え\r
                                                                        SetTaskMsg(MSGJPN315);\r
                                                                        CurHost.CryptMode = CRYPT_FTPES;\r
                                                                        if(AttachSSL(ContSock))\r
@@ -1339,7 +1339,7 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
                                                                }\r
                                                                else\r
                                                                {\r
-                                                                       // \88Ã\8d\86\89»\82È\82µ\r
+                                                                       // 暗号化なし\r
                                                                        CurHost.CryptMode = CRYPT_NONE;\r
                                                                        SetTaskMsg(MSGJPN314);\r
                                                                }\r
@@ -1356,7 +1356,7 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
                                                                        {\r
                                                                                CheckOneTimePassword(Pass, Reply, Security);\r
 \r
-                                                                               /* \83p\83X\83\8f\81[\83h\82ª\83X\83y\81[\83X1\8cÂ\82Ì\8e\9e\82Í\83p\83X\83\8f\81[\83h\82Ì\8eÀ\91Ì\82È\82µ\82Æ\82·\82é */\r
+                                                                               /* パスワードがスペース1個の時はパスワードの実体なしとする */\r
                                                                                if(strcmp(Reply, " ") == 0)\r
                                                                                        strcpy(Reply, "");\r
 \r
@@ -1413,7 +1413,7 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
                        else\r
                        {\r
 //#pragma aaa\r
-                               SetTaskMsg(MSGJPN009/*"\90Ú\91±\82Å\82«\82Ü\82¹\82ñ(1) %x", ContSock*/);\r
+                               SetTaskMsg(MSGJPN009/*"接続できません(1) %x", ContSock*/);\r
                                DoClose(ContSock);\r
                                ContSock = INVALID_SOCKET;\r
                        }\r
@@ -1438,20 +1438,20 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
 }\r
 \r
 \r
-/*----- \83\8f\83\93\83^\83C\83\80\83p\83X\83\8f\81[\83h\82Ì\83`\83F\83b\83N ----------------------------------------\r
+/*----- ワンタイムパスワードのチェック ----------------------------------------\r
 *\r
 *      Parameter\r
-*              chat *Pass : \83p\83X\83\8f\81[\83h\81^\83p\83X\83t\83\8c\81[\83Y\r
-*              char *Reply : USER\83R\83}\83\93\83h\82ð\91\97\82Á\82½\82 \82Æ\82Ì\83\8a\83v\83\89\83C\95\8e\9a\97ñ\r
-*                                              \81^PASS\83R\83}\83\93\83h\82Å\91\97\82é\83p\83X\83\8f\81[\83h\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              int Type : \83^\83C\83v (SECURITY_xxx, MDx)\r
+*              chat *Pass : パスワード/パスフレーズ\r
+*              char *Reply : USERコマンドを送ったあとのリプライ文字列\r
+*                                              /PASSコマンドで送るパスワードを返すバッファ\r
+*              int Type : タイプ (SECURITY_xxx, MDx)\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *\r
 *      Note\r
-*              \83\8f\83\93\83^\83C\83\80\83p\83X\83\8f\81[\83h\82Å\82È\82¢\8e\9e\82ÍPass\82ð\82»\82Ì\82Ü\82ÜReply\82É\83R\83s\81[\r
+*              ワンタイムパスワードでない時はPassをそのままReplyにコピー\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CheckOneTimePassword(char *Pass, char *Reply, int Type)\r
@@ -1462,7 +1462,7 @@ static int CheckOneTimePassword(char *Pass, char *Reply, int Type)
        char Seed[MAX_SEED_LEN+1];\r
        int i;\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        Pos = NULL;\r
 \r
        if(Type == SECURITY_AUTO)\r
@@ -1488,10 +1488,10 @@ static int CheckOneTimePassword(char *Pass, char *Reply, int Type)
 \r
        if((Type == MD4) || (Type == MD5) || (Type == SHA1))\r
        {\r
-               /* \83V\81[\83P\83\93\83X\94Ô\8d\86\82ð\8c©\82Â\82¯\82é\83\8b\81[\83v */\r
+               /* シーケンス番号を見つけるループ */\r
                DoPrintf("Analize OTP");\r
                DoPrintf("%s", Pos);\r
-               Sts = FAIL;\r
+               Sts = FFFTP_FAIL;\r
                while((Pos = GetNextField(Pos)) != NULL)\r
                {\r
                        if(IsDigit(*Pos))\r
@@ -1502,9 +1502,9 @@ static int CheckOneTimePassword(char *Pass, char *Reply, int Type)
                                /* Seed */\r
                                if((Pos = GetNextField(Pos)) != NULL)\r
                                {\r
-                                       if(GetOneField(Pos, Seed, MAX_SEED_LEN) == SUCCESS)\r
+                                       if(GetOneField(Pos, Seed, MAX_SEED_LEN) == FFFTP_SUCCESS)\r
                                        {\r
-                                               /* Seed\82Í\89p\90\94\8e\9a\82Ì\82Ý\97L\8cø\82Æ\82·\82é */\r
+                                               /* Seedは英数字のみ有効とする */\r
                                                for(i = strlen(Seed)-1; i >= 0; i--)\r
                                                {\r
                                                        if((IsAlpha(Seed[i]) == 0) && (IsDigit(Seed[i]) == 0))\r
@@ -1516,11 +1516,11 @@ static int CheckOneTimePassword(char *Pass, char *Reply, int Type)
                                                        Make6WordPass(Seq, Seed, Pass, Type, Reply);\r
                                                        DoPrintf("Response=%s", Reply);\r
 \r
-                                                       /* \83V\81[\83P\83\93\83X\94Ô\8d\86\82Ì\83`\83F\83b\83N\82Æ\8cx\8d\90 */\r
+                                                       /* シーケンス番号のチェックと警告 */\r
                                                        if(Seq <= 10)\r
                                                                DialogBox(GetFtpInst(), MAKEINTRESOURCE(otp_notify_dlg), GetMainHwnd(), ExeEscDialogProc);\r
 \r
-                                                       Sts = SUCCESS;\r
+                                                       Sts = FFFTP_SUCCESS;\r
                                                }\r
                                        }\r
                                }\r
@@ -1528,7 +1528,7 @@ static int CheckOneTimePassword(char *Pass, char *Reply, int Type)
                        }\r
                }\r
 \r
-               if(Sts == FAIL)\r
+               if(Sts == FFFTP_FAIL)\r
                        SetTaskMsg(MSGJPN015);\r
        }\r
        else\r
@@ -1552,15 +1552,15 @@ static int CheckOneTimePassword(char *Pass, char *Reply, int Type)
 \r
 \r
 \r
-/*----- \83\\83P\83b\83g\82ð\90Ú\91±\82·\82é ----------------------------------------------------\r
+/*----- ソケットを接続する ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *host : \83z\83X\83g\96¼\r
-*              int port : \83|\81[\83g\94Ô\8d\86\r
-*              char *PreMsg : \83\81\83b\83Z\81[\83W\82Ì\91O\94¼\95\94\95ª\r
+*              char *host : ホスト名\r
+*              int port : ポート番号\r
+*              char *PreMsg : メッセージの前半部分\r
 *\r
 *      Return Value\r
-*              SOCKET \83\\83P\83b\83g\r
+*              SOCKET ソケット\r
 *----------------------------------------------------------------------------*/\r
 \r
 SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork)\r
@@ -1577,7 +1577,7 @@ SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork)
        SOCKS5REPLY Socks5Reply;\r
 \r
        //////////////////////////////\r
-       // \83z\83X\83g\96¼\89ð\8c\88\82Æ\90Ú\91±\82Ì\8f\80\94õ\r
+       // ホスト名解決と接続の準備\r
        //////////////////////////////\r
 \r
        Fwall = FWALL_NONE;\r
@@ -1593,17 +1593,17 @@ SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork)
        CurSockAddr.sin_family = AF_INET;\r
        if((CurSockAddr.sin_addr.s_addr = inet_addr(host)) == INADDR_NONE)\r
        {\r
-               // \83z\83X\83g\96¼\82ª\8ew\92è\82³\82ê\82½\r
-               // \83z\83X\83g\96¼\82©\82ç\83A\83h\83\8c\83X\82ð\8b\81\82ß\82é\r
+               // ホスト名が指定された\r
+               // ホスト名からアドレスを求める\r
                if(((Fwall == FWALL_SOCKS5_NOAUTH) || (Fwall == FWALL_SOCKS5_USER)) &&\r
                   (FwallResolv == YES))\r
                {\r
-                       // \83z\83X\83g\96¼\89ð\8c\88\82ÍSOCKS\83T\81[\83o\82É\94C\82¹\82é\r
+                       // ホスト名解決はSOCKSサーバに任せる\r
                        pHostEntry = NULL;\r
                }\r
                else\r
                {\r
-                       // \83A\83h\83\8c\83X\82ð\8eæ\93¾\r
+                       // アドレスを取得\r
                        SetTaskMsg(MSGJPN016, DomainName);\r
                        pHostEntry = do_gethostbyname(host, HostEntry, MAXGETHOSTSTRUCT, CancelCheckWork);\r
                }\r
@@ -1632,8 +1632,8 @@ SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork)
 \r
        if((Fwall == FWALL_SOCKS4) || (Fwall == FWALL_SOCKS5_NOAUTH) || (Fwall == FWALL_SOCKS5_USER))\r
        {\r
-               // SOCKS\82ð\8eg\82¤\r
-               // SOCKS\82É\90Ú\91±\82·\82é\8f\80\94õ\r
+               // SOCKSを使う\r
+               // SOCKSに接続する準備\r
                if(Fwall == FWALL_SOCKS4)\r
                {\r
                        Socks4Cmd.Ver = SOCKS4_VER;\r
@@ -1662,17 +1662,17 @@ SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork)
                SocksSockAddr.sin_port = htons((u_short)FwallPort);\r
                SocksSockAddr.sin_family = AF_INET;\r
                SetTaskMsg(MSGJPN022, inet_ntoa(SocksSockAddr.sin_addr), ntohs(SocksSockAddr.sin_port));\r
-               // connect\82Å\90Ú\91±\82·\82é\90æ\82ÍSOCKS\83T\81[\83o\r
+               // connectで接続する先はSOCKSサーバ\r
                memcpy(&saSockAddr, &SocksSockAddr, sizeof(SocksSockAddr));\r
        }\r
        else\r
        {\r
-               // connect\82Å\90Ú\91±\82·\82é\82Ì\82Í\90Ú\91±\90æ\82Ì\83z\83X\83g\r
+               // connectで接続するのは接続先のホスト\r
                memcpy(&saSockAddr, &CurSockAddr, sizeof(CurSockAddr));\r
        }\r
 \r
        /////////////\r
-       // \90Ú\91±\8eÀ\8ds\r
+       // 接続実行\r
        /////////////\r
 \r
        if((sSocket = do_socket(AF_INET, SOCK_STREAM, TCP_PORT)) != INVALID_SOCKET)\r
@@ -1682,8 +1682,8 @@ SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork)
                        if(Fwall == FWALL_SOCKS4)\r
                        {\r
                                Socks4Reply.Result = -1;\r
-                               if((SocksSendCmd(sSocket, &Socks4Cmd, Len, CancelCheckWork) != SUCCESS) ||\r
-                                  (Socks4GetCmdReply(sSocket, &Socks4Reply) != SUCCESS) || \r
+                               if((SocksSendCmd(sSocket, &Socks4Cmd, Len, CancelCheckWork) != FFFTP_SUCCESS) ||\r
+                                  (Socks4GetCmdReply(sSocket, &Socks4Reply) != FFFTP_SUCCESS) || \r
                                   (Socks4Reply.Result != SOCKS4_RES_OK))\r
                                {\r
                                        SetTaskMsg(MSGJPN023, Socks4Reply.Result);\r
@@ -1693,15 +1693,15 @@ SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork)
                        }\r
                        else if((Fwall == FWALL_SOCKS5_NOAUTH) || (Fwall == FWALL_SOCKS5_USER))\r
                        {\r
-                               if(Socks5SelMethod(sSocket, CancelCheckWork) == FAIL)\r
+                               if(Socks5SelMethod(sSocket, CancelCheckWork) == FFFTP_FAIL)\r
                                {\r
                                        DoClose(sSocket);\r
                                        sSocket = INVALID_SOCKET;\r
                                }\r
 \r
                                Socks5Reply.Result = -1;\r
-                               if((SocksSendCmd(sSocket, &Socks5Cmd, Len, CancelCheckWork) != SUCCESS) ||\r
-                                  (Socks5GetCmdReply(sSocket, &Socks5Reply) != SUCCESS) || \r
+                               if((SocksSendCmd(sSocket, &Socks5Cmd, Len, CancelCheckWork) != FFFTP_SUCCESS) ||\r
+                                  (Socks5GetCmdReply(sSocket, &Socks5Reply) != FFFTP_SUCCESS) || \r
                                   (Socks5Reply.Result != SOCKS5_RES_OK))\r
                                {\r
                                        SetTaskMsg(MSGJPN024, Socks5Reply.Result);\r
@@ -1717,7 +1717,7 @@ SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork)
                else\r
                {\r
 //#pragma aaa\r
-                       SetTaskMsg(MSGJPN026/*"\90Ú\91±\82Å\82«\82Ü\82¹\82ñ(2) %x", sSocket*/);\r
+                       SetTaskMsg(MSGJPN026/*"接続できません(2) %x", sSocket*/);\r
                        DoClose(sSocket);\r
                        sSocket = INVALID_SOCKET;\r
                }\r
@@ -1729,13 +1729,13 @@ SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \83\8a\83b\83X\83\93\83\\83P\83b\83g\82ð\8eæ\93¾ ------------------------------------------------\r
+/*----- リッスンソケットを取得 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET ctrl_skt : \83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
+*              SOCKET ctrl_skt : コントロールソケット\r
 *\r
 *      Return Value\r
-*              SOCKET \83\8a\83b\83X\83\93\83\\83P\83b\83g\r
+*              SOCKET リッスンソケット\r
 *----------------------------------------------------------------------------*/\r
 \r
 SOCKET GetFTPListenSocket(SOCKET ctrl_skt, int *CancelCheckWork)\r
@@ -1761,7 +1761,7 @@ SOCKET GetFTPListenSocket(SOCKET ctrl_skt, int *CancelCheckWork)
        {\r
                if(Fwall == FWALL_SOCKS4)\r
                {\r
-                       /*===== SOCKS4\82ð\8eg\82¤ =====*/\r
+                       /*===== SOCKS4を使う =====*/\r
                        DoPrintf("Use SOCKS4 BIND");\r
                        if(do_connect(listen_skt, (struct sockaddr *)&SocksSockAddr, sizeof(SocksSockAddr), CancelCheckWork) != SOCKET_ERROR)\r
                        {\r
@@ -1773,8 +1773,8 @@ SOCKET GetFTPListenSocket(SOCKET ctrl_skt, int *CancelCheckWork)
                                Len = offsetof(SOCKS4CMD, UserID) + strlen(FwallUser) + 1;\r
 \r
                                Socks4Reply.Result = -1;\r
-                               if((SocksSendCmd(listen_skt, &Socks4Cmd, Len, CancelCheckWork) != SUCCESS) ||\r
-                                  (Socks4GetCmdReply(listen_skt, &Socks4Reply) != SUCCESS) || \r
+                               if((SocksSendCmd(listen_skt, &Socks4Cmd, Len, CancelCheckWork) != FFFTP_SUCCESS) ||\r
+                                  (Socks4GetCmdReply(listen_skt, &Socks4Reply) != FFFTP_SUCCESS) || \r
                                   (Socks4Reply.Result != SOCKS4_RES_OK))\r
                                {\r
                                        SetTaskMsg(MSGJPN028, Socks4Reply.Result);\r
@@ -1791,11 +1791,11 @@ SOCKET GetFTPListenSocket(SOCKET ctrl_skt, int *CancelCheckWork)
                }\r
                else if((Fwall == FWALL_SOCKS5_NOAUTH) || (Fwall == FWALL_SOCKS5_USER))\r
                {\r
-                       /*===== SOCKS5\82ð\8eg\82¤ =====*/\r
+                       /*===== SOCKS5を使う =====*/\r
                        DoPrintf("Use SOCKS5 BIND");\r
                        if(do_connect(listen_skt, (struct sockaddr *)&SocksSockAddr, sizeof(SocksSockAddr), CancelCheckWork) != SOCKET_ERROR)\r
                        {\r
-                               if(Socks5SelMethod(listen_skt, CancelCheckWork) == FAIL)\r
+                               if(Socks5SelMethod(listen_skt, CancelCheckWork) == FFFTP_FAIL)\r
                                {\r
                                        DoClose(listen_skt);\r
                                        listen_skt = INVALID_SOCKET;\r
@@ -1805,8 +1805,8 @@ SOCKET GetFTPListenSocket(SOCKET ctrl_skt, int *CancelCheckWork)
                                Len = Socks5MakeCmdPacket(&Socks5Cmd, SOCKS5_CMD_BIND, UseIPadrs, CurSockAddr.sin_addr.s_addr, DomainName, CurSockAddr.sin_port);\r
 \r
                                Socks5Reply.Result = -1;\r
-                               if((SocksSendCmd(listen_skt, &Socks5Cmd, Len, CancelCheckWork) != SUCCESS) ||\r
-                                  (Socks5GetCmdReply(listen_skt, &Socks5Reply) != SUCCESS) || \r
+                               if((SocksSendCmd(listen_skt, &Socks5Cmd, Len, CancelCheckWork) != FFFTP_SUCCESS) ||\r
+                                  (Socks5GetCmdReply(listen_skt, &Socks5Reply) != FFFTP_SUCCESS) || \r
                                   (Socks5Reply.Result != SOCKS5_RES_OK))\r
                                {\r
                                        SetTaskMsg(MSGJPN029, Socks5Reply.Result);\r
@@ -1823,7 +1823,7 @@ SOCKET GetFTPListenSocket(SOCKET ctrl_skt, int *CancelCheckWork)
                }\r
                else\r
                {\r
-                       /*===== SOCKS\82ð\8eg\82í\82È\82¢ =====*/\r
+                       /*===== SOCKSを使わない =====*/\r
                        DoPrintf("Use normal BIND");\r
                        saCtrlAddr.sin_port = htons(0);\r
                        saCtrlAddr.sin_family = AF_INET;\r
@@ -1890,13 +1890,13 @@ SOCKET GetFTPListenSocket(SOCKET ctrl_skt, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ö\90Ú\91±\8f\88\97\9d\92\86\82©\82Ç\82¤\82©\82ð\95Ô\82·---------------------------------------\r
+/*----- ホストへ接続処理中かどうかを返す---------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      YES/NO\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -1907,10 +1907,10 @@ int AskTryingConnect(void)
 \r
 \r
 #if 0\r
-///*----- \83u\83\8d\83b\83L\83\93\83O\83R\81[\83\8b\82Ì\83t\83b\83N\83R\81[\83\8b\83o\83b\83N --------------------------------\r
+///*----- ブロッキングコールのフックコールバック --------------------------------\r
 //*\r
 //*    Parameter\r
-//*            \82È\82µ\r
+//*            なし\r
 //*\r
 //*    Return Value\r
 //*            BOOL FALSE\r
@@ -1932,18 +1932,18 @@ int AskTryingConnect(void)
 \r
 \r
 \r
-/*----- SOCKS5\82Ì\83R\83}\83\93\83h\83p\83P\83b\83g\82ð\8dì\90¬\82·\82é ------------------------------------\r
+/*----- SOCKS5のコマンドパケットを作成する ------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKS5REQUEST *Packet : \83p\83P\83b\83g\82ð\8dì\90¬\82·\82é\83\8f\81[\83N\r
-*              char Cmd : \83R\83}\83\93\83h\r
-*              int ValidIP : IP\83A\83h\83\8c\83X\82ð\8eg\82¤\82©\82Ç\82¤\82©(YES/NO)\r
-*              ulong IP : IP\83A\83h\83\8c\83X\r
-*              char *Host : \83z\83X\83g\96¼\r
-*              ushort Port : \83|\81[\83g\r
+*              SOCKS5REQUEST *Packet : パケットを作成するワーク\r
+*              char Cmd : コマンド\r
+*              int ValidIP : IPアドレスを使うかどうか(YES/NO)\r
+*              ulong IP : IPアドレス\r
+*              char *Host : ホスト名\r
+*              ushort Port : ポート\r
 *\r
 *      Return Value\r
-*              int \83R\83}\83\93\83h\83p\83P\83b\83g\82Ì\92·\82³\r
+*              int コマンドパケットの長さ\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int Socks5MakeCmdPacket(SOCKS5REQUEST *Packet, char Cmd, int ValidIP, ulong IP, char *Host, ushort Port)\r
@@ -1954,14 +1954,14 @@ static int Socks5MakeCmdPacket(SOCKS5REQUEST *Packet, char Cmd, int ValidIP, ulo
 \r
        Pos = (uchar *)Packet;\r
        Pos += SOCKS5REQUEST_SIZE;\r
-       TotalLen = SOCKS5REQUEST_SIZE + 2;      /* +2\82Í\83|\81[\83g\82Ì\95ª */\r
+       TotalLen = SOCKS5REQUEST_SIZE + 2;      /* +2はポートの分 */\r
 \r
        Packet->Ver = SOCKS5_VER;\r
        Packet->Cmd = Cmd;\r
        Packet->Rsv = 0;\r
        if(ValidIP == YES)\r
        {\r
-               /* IP\83A\83h\83\8c\83X\82ð\8ew\92è */\r
+               /* IPアドレスを指定 */\r
                Packet->Type = SOCKS5_ADRS_IPV4;\r
                *((ulong *)Pos) = IP;\r
                Pos += 4;\r
@@ -1969,7 +1969,7 @@ static int Socks5MakeCmdPacket(SOCKS5REQUEST *Packet, char Cmd, int ValidIP, ulo
        }\r
        else\r
        {\r
-               /* \83z\83X\83g\96¼\82ð\8ew\92è */\r
+               /* ホスト名を指定 */\r
                Packet->Type = SOCKS5_ADRS_NAME;\r
                Len = strlen(Host);\r
                *Pos++ = Len;\r
@@ -1983,15 +1983,15 @@ static int Socks5MakeCmdPacket(SOCKS5REQUEST *Packet, char Cmd, int ValidIP, ulo
 }\r
 \r
 \r
-/*----- SOCKS\82Ì\83R\83}\83\93\83h\82ð\91\97\82é -------------------------------------------------\r
+/*----- SOCKSのコマンドを送る -------------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET Socket : \83\\83P\83b\83g\r
-*              void *Data : \91\97\82é\83f\81[\83^\r
-*              int Size : \83T\83C\83Y\r
+*              SOCKET Socket : ソケット\r
+*              void *Data : 送るデータ\r
+*              int Size : サイズ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int SocksSendCmd(SOCKET Socket, void *Data, int Size, int *CancelCheckWork)\r
@@ -2000,21 +2000,21 @@ static int SocksSendCmd(SOCKET Socket, void *Data, int Size, int *CancelCheckWor
 \r
        Ret = SendData(Socket, (char *)Data, Size, 0, CancelCheckWork);\r
 \r
-       if(Ret != SUCCESS)\r
+       if(Ret != FFFTP_SUCCESS)\r
                SetTaskMsg(MSGJPN033, *((short *)Data));\r
 \r
        return(Ret);\r
 }\r
 \r
 \r
-/*----- SOCKS5\82Ì\83R\83}\83\93\83h\82É\91Î\82·\82é\83\8a\83v\83\89\83C\83p\83P\83b\83g\82ð\8eó\90M\82·\82é --------------------\r
+/*----- SOCKS5のコマンドに対するリプライパケットを受信する --------------------\r
 *\r
 *      Parameter\r
-*              SOCKET Socket : \83\\83P\83b\83g\r
-*              SOCKS5REPLY *Packet : \83p\83P\83b\83g\r
+*              SOCKET Socket : ソケット\r
+*              SOCKS5REPLY *Packet : パケット\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int Socks5GetCmdReply(SOCKET Socket, SOCKS5REPLY *Packet)\r
@@ -2026,7 +2026,7 @@ static int Socks5GetCmdReply(SOCKET Socket, SOCKS5REPLY *Packet)
        Pos = (uchar *)Packet;\r
        Pos += SOCKS5REPLY_SIZE;\r
 \r
-       if((Ret = ReadNchar(Socket, (char *)Packet, SOCKS5REPLY_SIZE, &CancelFlg)) == SUCCESS)\r
+       if((Ret = ReadNchar(Socket, (char *)Packet, SOCKS5REPLY_SIZE, &CancelFlg)) == FFFTP_SUCCESS)\r
        {\r
                if(Packet->Type == SOCKS5_ADRS_IPV4)\r
                        Len = 4 + 2;\r
@@ -2034,32 +2034,32 @@ static int Socks5GetCmdReply(SOCKET Socket, SOCKS5REPLY *Packet)
                        Len = 6 + 2;\r
                else\r
                {\r
-                       if((Ret = ReadNchar(Socket, (char *)Pos, 1, &CancelFlg)) == SUCCESS)\r
+                       if((Ret = ReadNchar(Socket, (char *)Pos, 1, &CancelFlg)) == FFFTP_SUCCESS)\r
                        {\r
                                Len = *Pos + 2;\r
                                Pos++;\r
                        }\r
                }\r
 \r
-               if(Ret == SUCCESS)\r
+               if(Ret == FFFTP_SUCCESS)\r
                        Ret = ReadNchar(Socket, (char *)Pos, Len, &CancelFlg);\r
        }\r
 \r
-       if(Ret != SUCCESS)\r
+       if(Ret != FFFTP_SUCCESS)\r
                SetTaskMsg(MSGJPN034);\r
 \r
        return(Ret);\r
 }\r
 \r
 \r
-/*----- SOCKS4\82Ì\83R\83}\83\93\83h\82É\91Î\82·\82é\83\8a\83v\83\89\83C\83p\83P\83b\83g\82ð\8eó\90M\82·\82é --------------------\r
+/*----- SOCKS4のコマンドに対するリプライパケットを受信する --------------------\r
 *\r
 *      Parameter\r
-*              SOCKET Socket : \83\\83P\83b\83g\r
-*              SOCKS5REPLY *Packet : \83p\83P\83b\83g\r
+*              SOCKET Socket : ソケット\r
+*              SOCKS5REPLY *Packet : パケット\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int Socks4GetCmdReply(SOCKET Socket, SOCKS4REPLY *Packet)\r
@@ -2068,20 +2068,20 @@ static int Socks4GetCmdReply(SOCKET Socket, SOCKS4REPLY *Packet)
 \r
        Ret = ReadNchar(Socket, (char *)Packet, SOCKS4REPLY_SIZE, &CancelFlg);\r
 \r
-       if(Ret != SUCCESS)\r
+       if(Ret != FFFTP_SUCCESS)\r
                DoPrintf(MSGJPN035);\r
 \r
        return(Ret);\r
 }\r
 \r
 \r
-/*----- SOCKS5\82Ì\94F\8fØ\82ð\8ds\82¤ ----------------------------------------------------\r
+/*----- SOCKS5の認証を行う ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET Socket : \83\\83P\83b\83g\r
+*              SOCKET Socket : ソケット\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int Socks5SelMethod(SOCKET Socket, int *CancelCheckWork)\r
@@ -2094,7 +2094,7 @@ static int Socks5SelMethod(SOCKET Socket, int *CancelCheckWork)
        int Len;\r
        int Len2;\r
 \r
-       Ret = SUCCESS;\r
+       Ret = FFFTP_SUCCESS;\r
        Socks5Method.Ver = SOCKS5_VER;\r
        Socks5Method.Num = 1;\r
        if(FwallType == FWALL_SOCKS5_NOAUTH)\r
@@ -2102,12 +2102,12 @@ static int Socks5SelMethod(SOCKET Socket, int *CancelCheckWork)
        else\r
                Socks5Method.Methods[0] = SOCKS5_AUTH_USER;\r
 \r
-       if((SocksSendCmd(Socket, &Socks5Method, SOCKS5METHODREQUEST_SIZE, CancelCheckWork) != SUCCESS) ||\r
-          (ReadNchar(Socket, (char *)&Socks5MethodReply, SOCKS5METHODREPLY_SIZE, &CancelFlg) != SUCCESS) ||\r
+       if((SocksSendCmd(Socket, &Socks5Method, SOCKS5METHODREQUEST_SIZE, CancelCheckWork) != FFFTP_SUCCESS) ||\r
+          (ReadNchar(Socket, (char *)&Socks5MethodReply, SOCKS5METHODREPLY_SIZE, &CancelFlg) != FFFTP_SUCCESS) ||\r
           (Socks5MethodReply.Method == (uchar)0xFF))\r
        {\r
                SetTaskMsg(MSGJPN036);\r
-               Ret = FAIL;\r
+               Ret = FFFTP_FAIL;\r
        }\r
        else if(Socks5MethodReply.Method == SOCKS5_AUTH_USER)\r
        {\r
@@ -2120,12 +2120,12 @@ static int Socks5SelMethod(SOCKET Socket, int *CancelCheckWork)
                Buf[2 + Len] = Len2;\r
                strcpy(Buf+3+Len, FwallPass);\r
 \r
-               if((SocksSendCmd(Socket, &Buf, Len+Len2+3, CancelCheckWork) != SUCCESS) ||\r
-                  (ReadNchar(Socket, (char *)&Socks5Status, SOCKS5USERPASSSTATUS_SIZE, &CancelFlg) != SUCCESS) ||\r
+               if((SocksSendCmd(Socket, &Buf, Len+Len2+3, CancelCheckWork) != FFFTP_SUCCESS) ||\r
+                  (ReadNchar(Socket, (char *)&Socks5Status, SOCKS5USERPASSSTATUS_SIZE, &CancelFlg) != FFFTP_SUCCESS) ||\r
                   (Socks5Status.Status != 0))\r
                {\r
                        SetTaskMsg(MSGJPN037);\r
-                       Ret = FAIL;\r
+                       Ret = FFFTP_FAIL;\r
                }\r
        }\r
        else\r
@@ -2135,14 +2135,14 @@ static int Socks5SelMethod(SOCKET Socket, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- SOCKS\82ÌBIND\82Ì\91æ\82Q\83\8a\83v\83\89\83C\83\81\83b\83Z\81[\83W\82ð\8eó\82¯\8eæ\82é -------------------------\r
+/*----- SOCKSのBINDの第2リプライメッセージを受け取る -------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET Socket : \83\\83P\83b\83g\r
-*              SOCKET *Data : \83f\81[\83^\83\\83P\83b\83g\82ð\95Ô\82·\83\8f\81[\83N\r
+*              SOCKET Socket : ソケット\r
+*              SOCKET *Data : データソケットを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int SocksGet2ndBindReply(SOCKET Socket, SOCKET *Data)\r
@@ -2150,26 +2150,26 @@ int SocksGet2ndBindReply(SOCKET Socket, SOCKET *Data)
        int Ret;\r
        char Buf[300];\r
 \r
-       Ret = FAIL;\r
+       Ret = FFFTP_FAIL;\r
        if((AskHostFireWall() == YES) && (FwallType == FWALL_SOCKS4))\r
        {\r
                Socks4GetCmdReply(Socket, (SOCKS4REPLY *)Buf);\r
                *Data = Socket;\r
-               Ret = SUCCESS;\r
+               Ret = FFFTP_SUCCESS;\r
        }\r
        else if((AskHostFireWall() == YES) &&\r
                        ((FwallType == FWALL_SOCKS5_NOAUTH) || (FwallType == FWALL_SOCKS5_USER)))\r
        {\r
                Socks5GetCmdReply(Socket, (SOCKS5REPLY *)Buf);\r
                *Data = Socket;\r
-               Ret = SUCCESS;\r
+               Ret = FFFTP_SUCCESS;\r
        }\r
        return(Ret);\r
 }\r
 \r
 \r
 \r
-// \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+// 暗号化通信対応\r
 int AskCryptMode(void)\r
 {\r
        return(CurHost.CryptMode);\r
index a095b53..afc9b2e 100644 (file)
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                              \82c\82h\82r\82j\82Ì\83t\83\8a\81[\83X\83y\81[\83X\82ð\93¾\82é\r
+*                                              DISKのフリースペースを得る\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
@@ -43,7 +43,7 @@
 \r
 typedef DWORD (WINAPI*FUNC_GETDISKFREESPACEEX) (LPCTSTR, PULARGE_INTEGER, PULARGE_INTEGER, PULARGE_INTEGER);\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static HINSTANCE m_hDll = NULL;\r
 \r
@@ -51,13 +51,13 @@ static FUNC_GETDISKFREESPACEEX m_GetDiskFreeSpaceEx = NULL;
 \r
 \r
 \r
-/*----- KERNEL32\82ð\83\8d\81[\83h\82·\82é --------------------------------------------------\r
+/*----- KERNEL32をロードする --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void LoadKernelLib(void)\r
@@ -84,13 +84,13 @@ void LoadKernelLib(void)
 }\r
 \r
 \r
-/*----- KERNEL32\82ð\83\8a\83\8a\81[\83X\82·\82é -------------------------------------------------\r
+/*----- KERNEL32をリリースする -------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ReleaseKernelLib(void)\r
@@ -103,13 +103,13 @@ void ReleaseKernelLib(void)
 }\r
 \r
 \r
-/*----- \83t\83\8a\81[\83G\83\8a\83A\82Ì\83T\83C\83Y\82ð\95\\82í\82·\95\8e\9a\97ñ\82ð\95Ô\82·-------------------------------\r
+/*----- フリーエリアのサイズを表わす文字列を返す-------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              char *\95\8e\9a\97ñ\r
+*              char *文字列\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *AskLocalFreeSpace(char *Path)\r
index 8c0911b..dcfd65f 100644 (file)
--- a/dlgsize.c
+++ b/dlgsize.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                      \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83T\83C\83Y\95Ï\8dX\8f\88\97\9d\r
+*                                      ダイアログボックスのサイズ変更処理\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 \r
 \r
 /*---------------------------------------------------------------------------*/\r
-/* \83T\83C\83Y\95Ï\8dX\89Â\94\\82Æ\82·\82é\83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Í WS_CLIPCHILDREN \83X\83^\83C\83\8b\82ð\92Ç\89Á\82· */\r
-/* \82é\82±\82Æ */\r
+/* サイズ変更可能とするダイアログボックスは WS_CLIPCHILDREN スタイルを追加す */\r
+/* ること */\r
 /*---------------------------------------------------------------------------*/\r
 \r
 \r
-/*----- \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\8f\89\8aú\83T\83C\83Y\82ð\90Ý\92è ----------------------------------\r
+/*----- ダイアログボックスの初期サイズを設定 ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              DIALOGSIZE *Dt : \83_\83C\83A\83\8d\83O\83T\83C\83Y\90Ý\92è\83p\83\89\83\81\81[\83^\r
-*              SIZE *Size : \83_\83C\83A\83\8d\83O\82Ì\83T\83C\83Y\r
+*              HWND hDlg : ウインドウハンドル\r
+*              DIALOGSIZE *Dt : ダイアログサイズ設定パラメータ\r
+*              SIZE *Size : ダイアログのサイズ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DlgSizeInit(HWND hDlg, DIALOGSIZE *Dt, SIZE *Size)\r
@@ -80,15 +80,15 @@ void DlgSizeInit(HWND hDlg, DIALOGSIZE *Dt, SIZE *Size)
 }\r
 \r
 \r
-/*----- \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83T\83C\83Y\82ð\95Ô\82· --------------------------------------\r
+/*----- ダイアログボックスのサイズを返す --------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              DIALOGSIZE *Dt : \83_\83C\83A\83\8d\83O\83T\83C\83Y\90Ý\92è\83p\83\89\83\81\81[\83^\r
-*              SIZE *Size : \83_\83C\83A\83\8d\83O\82Ì\83T\83C\83Y\82ð\95Ô\82·\83\8f\81[\83N\r
+*              HWND hDlg : ウインドウハンドル\r
+*              DIALOGSIZE *Dt : ダイアログサイズ設定パラメータ\r
+*              SIZE *Size : ダイアログのサイズを返すワーク\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AskDlgSize(HWND hDlg, DIALOGSIZE *Dt, SIZE *Size)\r
@@ -100,19 +100,19 @@ void AskDlgSize(HWND hDlg, DIALOGSIZE *Dt, SIZE *Size)
 \r
 \r
 \r
-/*----- \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83T\83C\83Y\95Ï\8dX\8f\88\97\9d ------------------------------------\r
+/*----- ダイアログボックスのサイズ変更処理 ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              DIALOGSIZE *Dt : \83_\83C\83A\83\8d\83O\83T\83C\83Y\90Ý\92è\83p\83\89\83\81\81[\83^\r
-*              RECT *New : \90V\82µ\82¢\83_\83C\83A\83\8d\83O\82Ì\83T\83C\83Y\r
-*              int Flg : \83T\83C\83Y\95Ï\8dX\95û\8cü (WMSZ_xxx)\r
+*              HWND hDlg : ウインドウハンドル\r
+*              DIALOGSIZE *Dt : ダイアログサイズ設定パラメータ\r
+*              RECT *New : 新しいダイアログのサイズ\r
+*              int Flg : サイズ変更方向 (WMSZ_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82É WM_SIZING \83\81\83b\83Z\81[\83W\82ª\97\88\82½\8e\9e\82É\8cÄ\82Ô\8e\96\r
+*              ダイアログボックスに WM_SIZING メッセージが来た時に呼ぶ事\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DlgSizeChange(HWND hDlg, DIALOGSIZE *Dt, RECT *New, int Flg)\r
@@ -121,7 +121,7 @@ void DlgSizeChange(HWND hDlg, DIALOGSIZE *Dt, RECT *New, int Flg)
        RECT Rect;\r
        POINT Point;\r
 \r
-       /* \8dÅ\8f­\83T\83C\83Y\82æ\82è\8f¬\82³\82­\82È\82ç\82È\82¢\82æ\82¤\82É\82·\82é\8f\88\97\9d */\r
+       /* 最少サイズより小さくならないようにする処理 */\r
        if((New->right - New->left) < Dt->MinSize.cx)\r
        {\r
                if((Flg == WMSZ_LEFT) || (Flg == WMSZ_TOPLEFT) || (Flg == WMSZ_BOTTOMLEFT))\r
@@ -137,7 +137,7 @@ void DlgSizeChange(HWND hDlg, DIALOGSIZE *Dt, RECT *New, int Flg)
                        New->bottom = New->top + Dt->MinSize.cy;\r
        }\r
 \r
-       /* \90\85\95½\95û\8cü\82É\88Ú\93®\82·\82é\95\94\95i\82Ì\8f\88\97\9d */\r
+       /* 水平方向に移動する部品の処理 */\r
        if(Dt->CurSize.cx != New->right - New->left)\r
        {\r
                Win = Dt->HorMoveList;\r
@@ -157,7 +157,7 @@ void DlgSizeChange(HWND hDlg, DIALOGSIZE *Dt, RECT *New, int Flg)
                }\r
        }\r
 \r
-       /* \90\82\92¼\95û\8cü\82É\88Ú\93®\82·\82é\95\94\95i\82Ì\8f\88\97\9d */\r
+       /* 垂直方向に移動する部品の処理 */\r
        if(Dt->CurSize.cy != New->bottom - New->top)\r
        {\r
                Win = Dt->VarMoveList;\r
@@ -177,7 +177,7 @@ void DlgSizeChange(HWND hDlg, DIALOGSIZE *Dt, RECT *New, int Flg)
                }\r
        }\r
 \r
-       /* \91å\82«\82³\82ð\95Ï\8dX\82·\82é\95\94\95i\82Ì\8f\88\97\9d */\r
+       /* 大きさを変更する部品の処理 */\r
        if((Dt->CurSize.cx != New->right - New->left) ||\r
           (Dt->CurSize.cy != New->bottom - New->top))\r
        {\r
diff --git a/encutf8.exe b/encutf8.exe
new file mode 100644 (file)
index 0000000..b82793e
Binary files /dev/null and b/encutf8.exe differ
diff --git a/encutf8/ReadMe.txt b/encutf8/ReadMe.txt
new file mode 100644 (file)
index 0000000..ec5b23f
--- /dev/null
@@ -0,0 +1,29 @@
+========================================================================
+    コンソール アプリケーション : encutf8 プロジェクトの概要
+========================================================================
+
+この encutf8 アプリケーションは、AppWizard によって作成されました。
+
+このファイルには、encutf8 アプリケーションを構成する各ファイル
+の内容の概略が記述されています。
+
+
+encutf8.vcproj
+    これは、アプリケーション ウィザードを使用して生成された VC++ プロジェクトのメイン プロジェクト ファイルです。
+    ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション ウィザードで選択されたプラットフォーム、構成、およびプロジェクト機能に関する情報が含まれています。
+
+encutf8.cpp
+    これは、メインのアプリケーション ソース ファイルです。
+
+/////////////////////////////////////////////////////////////////////////////
+その他の標準ファイル :
+
+StdAfx.h, StdAfx.cpp
+    これらのファイルは、プリコンパイル済みヘッダー (PCH) ファイル encutf8.pch とプリコンパイル済み型ファイル StdAfx.obj をビルドするために使用されます。
+
+/////////////////////////////////////////////////////////////////////////////
+その他のメモ :
+
+AppWizard では、ユーザーが追加またはカスタマイズする必要のあるソース コードの部分を示すために、"TODO:" コメントを使用します。
+
+/////////////////////////////////////////////////////////////////////////////
diff --git a/encutf8/encutf8.cpp b/encutf8/encutf8.cpp
new file mode 100644 (file)
index 0000000..ed73504
--- /dev/null
@@ -0,0 +1,63 @@
+// encutf8.cpp : \83R\83\93\83\\81[\83\8b \83A\83v\83\8a\83P\81[\83V\83\87\83\93\82Ì\83G\83\93\83g\83\8a \83|\83C\83\93\83g\82ð\92è\8b`\82µ\82Ü\82·\81B
+//
+
+#include "stdafx.h"
+
+
+int _tmain(int argc, _TCHAR* argv[])
+{
+       FILE* fpIn;
+       FILE* fpOut;
+       fpos_t Length;
+       int InLength;
+       char* pInBuffer;
+       int UTF16Length;
+       wchar_t* pUTF16Buffer;
+       int OutLength;
+       char* pOutBuffer;
+       _tsetlocale(LC_ALL, _T(""));
+       if(argc != 3)
+       {
+               _tprintf(_T("\83}\83\8b\83`\83o\83C\83g\95\8e\9a\81i\83R\81[\83h\83y\81[\83W932\82Ü\82½\82ÍShift JIS\81j\82Å\8f\91\82©\82ê\82½\83e\83L\83X\83g\83t\83@\83C\83\8b\82ðUTF-8\82É\83G\83\93\83R\81[\83h\82µ\82Ü\82·\81B\n"));
+               _tprintf(_T("\83R\83}\83\93\83h\83\89\83C\83\93\n"));
+               _tprintf(_T("encutf8 [in] [out]\n"));
+               _tprintf(_T("[in]    \8c³\82Ì\83\\81[\83X\83t\83@\83C\83\8b\82Ì\83t\83@\83C\83\8b\96¼\n"));
+               _tprintf(_T("[out]   \95Û\91\90æ\82Ì\83t\83@\83C\83\8b\96¼\n"));
+               return 0;
+       }
+       fpIn = _tfopen(argv[1], _T("rb"));
+       if(!fpIn)
+       {
+               _tprintf(_T("\83t\83@\83C\83\8b\"%s\"\82ª\8aJ\82¯\82Ü\82¹\82ñ\81B\n"), argv[1]);
+               return 0;
+       }
+       fseek(fpIn, 0, SEEK_END);
+       fgetpos(fpIn, &Length);
+       fseek(fpIn, 0, SEEK_SET);
+       InLength = Length / sizeof(char);
+       pInBuffer = new char[InLength];
+       UTF16Length = InLength;
+       pUTF16Buffer = new wchar_t[InLength];
+       OutLength = InLength * 4;
+       pOutBuffer = new char[OutLength];
+       if(!pInBuffer || !pUTF16Buffer || !pOutBuffer)
+       {
+               _tprintf(_T("\83\81\83\82\83\8a\82ª\8am\95Û\82Å\82«\82Ü\82¹\82ñ\81B\n"));
+               return 0;
+       }
+       fread(pInBuffer, 1, InLength, fpIn);
+       fclose(fpIn);
+       fpOut = _tfopen(argv[2], _T("wb"));
+       if(!fpIn)
+       {
+               _tprintf(_T("\83t\83@\83C\83\8b\"%s\"\82ª\8dì\90¬\82Å\82«\82Ü\82¹\82ñ\81B\n"), argv[2]);
+               return 0;
+       }
+       fwrite("\xEF\xBB\xBF", 1, 3, fpOut);
+       UTF16Length = MultiByteToWideChar(CP_ACP, 0, pInBuffer, InLength / sizeof(char), pUTF16Buffer, UTF16Length);
+       OutLength = WideCharToMultiByte(CP_UTF8, 0, pUTF16Buffer, UTF16Length, pOutBuffer, OutLength / sizeof(char), NULL, NULL);
+       fwrite(pOutBuffer, sizeof(char), OutLength, fpOut);
+       fclose(fpOut);
+       return 0;
+}
+
diff --git a/encutf8/encutf8.sln b/encutf8/encutf8.sln
new file mode 100644 (file)
index 0000000..4f2c7a1
--- /dev/null
@@ -0,0 +1,20 @@
+
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "encutf8", "encutf8.vcproj", "{655A8FD3-5998-472F-8906-F0A028B70C4F}"
+EndProject
+Global
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution
+               Debug|Win32 = Debug|Win32
+               Release|Win32 = Release|Win32
+       EndGlobalSection
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution
+               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Debug|Win32.ActiveCfg = Debug|Win32
+               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Debug|Win32.Build.0 = Debug|Win32
+               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Release|Win32.ActiveCfg = Release|Win32
+               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Release|Win32.Build.0 = Release|Win32
+       EndGlobalSection
+       GlobalSection(SolutionProperties) = preSolution
+               HideSolutionNode = FALSE
+       EndGlobalSection
+EndGlobal
diff --git a/encutf8/encutf8.vcproj b/encutf8/encutf8.vcproj
new file mode 100644 (file)
index 0000000..1601100
--- /dev/null
@@ -0,0 +1,225 @@
+<?xml version="1.0" encoding="shift_jis"?>
+<VisualStudioProject
+       ProjectType="Visual C++"
+       Version="9.00"
+       Name="encutf8"
+       ProjectGUID="{655A8FD3-5998-472F-8906-F0A028B70C4F}"
+       RootNamespace="encutf8"
+       Keyword="Win32Proj"
+       TargetFrameworkVersion="196613"
+       >
+       <Platforms>
+               <Platform
+                       Name="Win32"
+               />
+       </Platforms>
+       <ToolFiles>
+       </ToolFiles>
+       <Configurations>
+               <Configuration
+                       Name="Debug|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="1"
+                       CharacterSet="1"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+                               MinimalRebuild="true"
+                               BasicRuntimeChecks="3"
+                               RuntimeLibrary="3"
+                               UsePrecompiledHeader="2"
+                               WarningLevel="3"
+                               DebugInformationFormat="4"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLinkerTool"
+                               LinkIncremental="2"
+                               GenerateDebugInformation="true"
+                               SubSystem="1"
+                               TargetMachine="1"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCManifestTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCAppVerifierTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="Release|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="1"
+                       CharacterSet="1"
+                       WholeProgramOptimization="1"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="2"
+                               EnableIntrinsicFunctions="true"
+                               PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+                               RuntimeLibrary="2"
+                               EnableFunctionLevelLinking="true"
+                               UsePrecompiledHeader="2"
+                               WarningLevel="3"
+                               DebugInformationFormat="3"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLinkerTool"
+                               LinkIncremental="1"
+                               GenerateDebugInformation="true"
+                               SubSystem="1"
+                               OptimizeReferences="2"
+                               EnableCOMDATFolding="2"
+                               TargetMachine="1"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCManifestTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCAppVerifierTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                       />
+               </Configuration>
+       </Configurations>
+       <References>
+       </References>
+       <Files>
+               <Filter
+                       Name="\83\\81[\83\83t\83@\83C\83\8b"
+                       Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+                       >
+                       <File
+                               RelativePath=".\encutf8.cpp"
+                               >
+                       </File>
+                       <File
+                               RelativePath=".\stdafx.cpp"
+                               >
+                               <FileConfiguration
+                                       Name="Debug|Win32"
+                                       >
+                                       <Tool
+                                               Name="VCCLCompilerTool"
+                                               UsePrecompiledHeader="1"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration
+                                       Name="Release|Win32"
+                                       >
+                                       <Tool
+                                               Name="VCCLCompilerTool"
+                                               UsePrecompiledHeader="1"
+                                       />
+                               </FileConfiguration>
+                       </File>
+               </Filter>
+               <Filter
+                       Name="\83w\83b\83_\81\83t\83@\83C\83\8b"
+                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
+                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+                       >
+                       <File
+                               RelativePath=".\stdafx.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath=".\targetver.h"
+                               >
+                       </File>
+               </Filter>
+               <Filter
+                       Name="\83\8a\83\\81[\83\83t\83@\83C\83\8b"
+                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+                       >
+               </Filter>
+               <File
+                       RelativePath=".\ReadMe.txt"
+                       >
+               </File>
+       </Files>
+       <Globals>
+       </Globals>
+</VisualStudioProject>
diff --git a/encutf8/stdafx.cpp b/encutf8/stdafx.cpp
new file mode 100644 (file)
index 0000000..f25fa4f
--- /dev/null
@@ -0,0 +1,8 @@
+// stdafx.cpp : \95W\8f\80\83C\83\93\83N\83\8b\81[\83h encutf8.pch \82Ì\82Ý\82ð
+// \8aÜ\82Þ\83\\81[\83\83t\83@\83C\83\8b\82Í\81A\83v\83\8a\83R\83\93\83p\83C\83\8b\8dÏ\82Ý\83w\83b\83_\81[\82É\82È\82è\82Ü\82·\81B
+// stdafx.obj \82É\82Í\83v\83\8a\83R\83\93\83p\83C\83\8b\8dÏ\82Ý\8c^\8fî\95ñ\82ª\8aÜ\82Ü\82ê\82Ü\82·\81B
+
+#include "stdafx.h"
+
+// TODO: \82±\82Ì\83t\83@\83C\83\8b\82Å\82Í\82È\82­\81ASTDAFX.H \82Å\95K\97v\82È
+// \92Ç\89Á\83w\83b\83_\81[\82ð\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B
diff --git a/encutf8/stdafx.h b/encutf8/stdafx.h
new file mode 100644 (file)
index 0000000..4bee9d7
--- /dev/null
@@ -0,0 +1,19 @@
+// stdafx.h : \95W\8f\80\82Ì\83V\83X\83e\83\80 \83C\83\93\83N\83\8b\81[\83\83t\83@\83C\83\8b\82Ì\83C\83\93\83N\83\8b\81[\83\83t\83@\83C\83\8b\81A\82Ü\82½\82Í
+// \8eQ\8fÆ\89ñ\90\94\82ª\91½\82­\81A\82©\82Â\82 \82Ü\82è\95Ï\8dX\82³\82ê\82È\82¢\81A\83v\83\8d\83W\83F\83N\83g\90ê\97p\82Ì\83C\83\93\83N\83\8b\81[\83\83t\83@\83C\83\8b
+// \82ð\8bL\8fq\82µ\82Ü\82·\81B
+//
+
+#pragma once
+
+#include "targetver.h"
+
+#include <stdio.h>
+#include <tchar.h>
+
+
+
+// TODO: \83v\83\8d\83O\83\89\83\80\82É\95K\97v\82È\92Ç\89Á\83w\83b\83_\81[\82ð\82±\82±\82Å\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B
+
+#include <locale.h>
+#include <windows.h>
+
diff --git a/encutf8/targetver.h b/encutf8/targetver.h
new file mode 100644 (file)
index 0000000..b18cde4
--- /dev/null
@@ -0,0 +1,13 @@
+#pragma once
+
+// \88È\89º\82Ì\83}\83N\83\8d\82Í\81A\8dÅ\92á\8cÀ\95K\97v\82È\83v\83\89\83b\83g\83t\83H\81[\83\80\82ð\92è\8b`\82µ\82Ü\82·\81B\8dÅ\92á\8cÀ\95K\97v\82È\83v\83\89\83b\83g\83t\83H\81[\83\80\82Æ\82Í\81A
+// \83A\83v\83\8a\83P\81[\83V\83\87\83\93\82ð\8eÀ\8ds\82·\82é\82½\82ß\82É\95K\97v\82È\8b@\94\\82ð\94õ\82¦\82½\8dÅ\82à\8cÃ\82¢\83o\81[\83W\83\87\83\93\82Ì Windows \82â Internet Explorer \82È\82Ç
+// \82ð\82¢\82¢\82Ü\82·\81B\82±\82ê\82ç\82Ì\83}\83N\83\8d\82Í\81A\8ew\92è\82µ\82½\83o\81[\83W\83\87\83\93\82Æ\81A\82»\82ê\88È\91O\82Ì\83o\81[\83W\83\87\83\93\82Ì\83v\83\89\83b\83g\83t\83H\81[\83\80\8fã\82Å\97\98\97p\82Å\82«\82é\82·\82×\82Ä\82Ì\8b@\94\\82ð\97L\8cø\82É\82·\82é\82±\82Æ\82É\82æ\82Á\82Ä 
+// \93®\8dì\82µ\82Ü\82·\81B
+
+// \89º\82Å\8ew\92è\82³\82ê\82½\92è\8b`\82Ì\91O\82É\91Î\8fÛ\83v\83\89\83b\83g\83t\83H\81[\83\80\82ð\8ew\92è\82µ\82È\82¯\82ê\82Î\82È\82ç\82È\82¢\8fê\8d\87\81A\88È\89º\82Ì\92è\8b`\82ð\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B
+// \88Ù\82È\82é\83v\83\89\83b\83g\83t\83H\81[\83\80\82É\91Î\89\9e\82·\82é\92l\82É\8aÖ\82·\82é\8dÅ\90V\8fî\95ñ\82É\82Â\82¢\82Ä\82Í\81AMSDN \82ð\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B
+#ifndef _WIN32_WINNT            // \8dÅ\92á\8cÀ\95K\97v\82È\83v\83\89\83b\83g\83t\83H\81[\83\80\82ª Windows Vista \82Å\82 \82é\82±\82Æ\82ð\8ew\92è\82µ\82Ü\82·\81B
+#define _WIN32_WINNT 0x0600     // \82±\82ê\82ð Windows \82Ì\91¼\82Ì\83o\81[\83W\83\87\83\93\8cü\82¯\82É\93K\90Ø\82È\92l\82É\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B
+#endif
+
index f1299c4..9436ac5 100644 (file)
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \83t\83@\83C\83\8b\88ê\97\97\r
+*                                                              ファイル一覧\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
@@ -54,7 +54,7 @@
 #include "OleDragDrop.h"\r
 #include "common.h"\r
 \r
-// UTF-8\91Î\89\9e\r
+// UTF-8対応\r
 #undef __MBSWRAPPER_H__\r
 #include "mbswrapper.h"\r
 \r
 #define WM_DRAGOVER            (WM_APP + 102)\r
 \r
 \r
-/*===== \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\83\8a\83X\83g\97p\83X\83g\83\89\83N\83`\83\83 =====*/\r
+/*===== ファイルリストのリスト用ストラクチャ =====*/\r
 \r
 typedef struct {\r
-       FILELIST *Top;                  /* \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª */\r
-       int Files;                              /* \83t\83@\83C\83\8b\82Ì\90\94 */\r
+       FILELIST *Top;                  /* ファイルリストの先頭 */\r
+       int Files;                              /* ファイルの数 */\r
 } FLISTANCHOR;\r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static LRESULT CALLBACK LocalWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);\r
 static LRESULT CALLBACK RemoteWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);\r
@@ -106,7 +106,7 @@ static int AskFilterStr(char *Fname, int Type);
 static BOOL CALLBACK FilterWndProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
 static int atoi_n(const char *Str, int Len);\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern int SepaWidth;\r
 extern int RemoteWidth;\r
@@ -114,7 +114,7 @@ extern int ListHeight;
 extern char FilterStr[FILTER_EXT_LEN+1];\r
 extern HWND hHelpWin;\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern int LocalWidth;\r
 extern int LocalTabWidth[4];\r
 extern int RemoteTabWidth[6];\r
@@ -127,7 +127,7 @@ extern int DispIgnoreHide;
 extern int DispDrives;\r
 extern int MoveMode;\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static HWND hWndListLocal = NULL;\r
 static HWND hWndListRemote = NULL;\r
@@ -137,31 +137,31 @@ static WNDPROC RemoteProcPtr;
 \r
 static HIMAGELIST ListImg = NULL;\r
 \r
-static char FindStr[40+1] = { "*" };           /* \8c\9f\8dõ\95\8e\9a\97ñ */\r
+static char FindStr[40+1] = { "*" };           /* 検索文字列 */\r
 static int IgnoreNew = NO;\r
 static int IgnoreOld = NO;\r
 static int IgnoreExist = NO;\r
 \r
 static int Dragging = NO;\r
 \r
-static int StratusMode;                        /* 0=\83t\83@\83C\83\8b, 1=\83f\83B\83\8c\83N\83g\83\8a, 2=\83\8a\83\93\83N */\r
+static int StratusMode;                        /* 0=ファイル, 1=ディレクトリ, 2=リンク */\r
 \r
 \r
-// \83\8a\83\82\81[\83g\83t\83@\83C\83\8b\83\8a\83X\83g (2007.9.3 yutaka)\r
+// リモートファイルリスト (2007.9.3 yutaka)\r
 static FILELIST *remoteFileListBase;\r
 static FILELIST *remoteFileListBaseNoExpand;\r
 static char remoteFileDir[FMAX_PATH + 1];\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\83\8a\83X\83g\83E\83C\83\93\83h\83E\82ð\8dì\90¬\82·\82é ------------------------------------\r
+/*----- ファイルリストウインドウを作成する ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \90e\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              HINSTANCE hInst : \83C\83\93\83X\83^\83\93\83X\83n\83\93\83h\83\8b\r
+*              HWND hWnd : 親ウインドウのウインドウハンドル\r
+*              HINSTANCE hInst : インスタンスハンドル\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 MakeListWin(HWND hWnd, HINSTANCE hInst)\r
@@ -170,7 +170,7 @@ int MakeListWin(HWND hWnd, HINSTANCE hInst)
        LV_COLUMN LvCol;\r
        long Tmp;\r
 \r
-       /*===== \83\8d\81[\83J\83\8b\91¤\82Ì\83\8a\83X\83g\83r\83\85\81[ =====*/\r
+       /*===== ローカル側のリストビュー =====*/\r
 \r
        hWndListLocal = CreateWindowEx(/*WS_EX_STATICEDGE*/WS_EX_CLIENTEDGE,\r
                        WC_LISTVIEWA, NULL,\r
@@ -219,7 +219,7 @@ int MakeListWin(HWND hWnd, HINSTANCE hInst)
                SendMessage(hWndListLocal, LVM_INSERTCOLUMN, 3, (LPARAM)&LvCol);\r
        }\r
 \r
-       /*===== \83z\83X\83g\91¤\82Ì\83\8a\83X\83g\83r\83\85\81[ =====*/\r
+       /*===== ホスト側のリストビュー =====*/\r
 \r
        hWndListRemote = CreateWindowEx(/*WS_EX_STATICEDGE*/WS_EX_CLIENTEDGE,\r
                        WC_LISTVIEWA, NULL,\r
@@ -279,23 +279,23 @@ int MakeListWin(HWND hWnd, HINSTANCE hInst)
                SendMessage(hWndListRemote, LVM_INSERTCOLUMN, 5, (LPARAM)&LvCol);\r
        }\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        if((hWndListLocal == NULL) ||\r
           (hWndListRemote == NULL))\r
        {\r
-               Sts = FAIL;\r
+               Sts = FFFTP_FAIL;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\83\8a\83X\83g\83E\83C\83\93\83h\83E\82ð\8dí\8f\9c ----------------------------------------\r
+/*----- ファイルリストウインドウを削除 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DeleteListWin(void)\r
@@ -310,13 +310,13 @@ void DeleteListWin(void)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· ------------------\r
+/*----- ローカル側のファイルリストのウインドウハンドルを返す ------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetLocalHwnd(void)\r
@@ -325,13 +325,13 @@ HWND GetLocalHwnd(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· --------------------\r
+/*----- ホスト側のファイルリストのウインドウハンドルを返す --------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetRemoteHwnd(void)\r
@@ -340,16 +340,16 @@ HWND GetRemoteHwnd(void)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83t\83@\83C\83\8b\83\8a\83X\83g\83E\83C\83\93\83h\83E\82Ì\83\81\83b\83Z\81[\83W\8f\88\97\9d ------------------\r
+/*----- ローカル側のファイルリストウインドウのメッセージ処理 ------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message  : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hWnd : ウインドウハンドル\r
+*              UINT message  : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
-*              \83\81\83b\83Z\81[\83W\82É\91Î\89\9e\82·\82é\96ß\82è\92l\r
+*              メッセージに対応する戻り値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static LRESULT CALLBACK LocalWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)\r
@@ -358,16 +358,16 @@ static LRESULT CALLBACK LocalWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\83\8a\83X\83g\83E\83C\83\93\83h\83E\82Ì\83\81\83b\83Z\81[\83W\8f\88\97\9d --------------------\r
+/*----- ホスト側のファイルリストウインドウのメッセージ処理 --------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message  : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hWnd : ウインドウハンドル\r
+*              UINT message  : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
-*              \83\81\83b\83Z\81[\83W\82É\91Î\89\9e\82·\82é\96ß\82è\92l\r
+*              メッセージに対応する戻り値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static LRESULT CALLBACK RemoteWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)\r
@@ -376,20 +376,20 @@ static LRESULT CALLBACK RemoteWndProc(HWND hWnd, UINT message, WPARAM wParam, LP
 }\r
 \r
 \r
-// \83_\83C\83A\83\8d\83O\83v\83\8d\83V\81[\83W\83\83\r
+// ダイアログプロシージャ\r
 static BOOL CALLBACK doOleDlgProc(HWND hDlg, UINT msg, WPARAM wp, LPARAM lp)\r
 {\r
-#define TIMER_ID     (100)      // \8dì\90¬\82·\82é\83^\83C\83}\82Ì\8e¯\95ÊID\r
-#define TIMER_ELAPSE (100)       // WM_TIMER\82Ì\94­\90\8aÔ\8au\r
+#define TIMER_ID     (100)      // 作成するタイマの識別ID\r
+#define TIMER_ELAPSE (100)       // WM_TIMERの発生間隔\r
        MSG message;\r
 \r
        switch( msg ){\r
-       case WM_INITDIALOG:  // \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82ª\8dì\90¬\82³\82ê\82½\82Æ\82«\r
+       case WM_INITDIALOG:  // ダイアログボックスが作成されたとき\r
                SetTimer( hDlg, TIMER_ID, 0, NULL);\r
                return TRUE;\r
 \r
        case WM_TIMER:\r
-               ShowWindow(hDlg, SW_HIDE);  // \83_\83C\83A\83\8d\83O\82Í\89B\82·\r
+               ShowWindow(hDlg, SW_HIDE);  // ダイアログは隠す\r
 \r
                if (wp != TIMER_ID)\r
                        break;\r
@@ -408,18 +408,18 @@ static BOOL CALLBACK doOleDlgProc(HWND hDlg, UINT msg, WPARAM wp, LPARAM lp)
                SetTimer( hDlg, TIMER_ID, TIMER_ELAPSE, NULL );\r
                return TRUE;\r
 \r
-       case WM_COMMAND:     // \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\93à\82Ì\89½\82©\82ª\91I\91ð\82³\82ê\82½\82Æ\82«\r
+       case WM_COMMAND:     // ダイアログボックス内の何かが選択されたとき\r
                switch( LOWORD( wp ) ){\r
-//             case IDOK:       // \81uOK\81v\83{\83^\83\93\82ª\91I\91ð\82³\82ê\82½\r
-               case IDCANCEL:   // \81u\83L\83\83\83\93\83Z\83\8b\81v\83{\83^\83\93\82ª\91I\91ð\82³\82ê\82½\r
-                       // \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82ð\8fÁ\82·\r
+//             case IDOK:       // 「OK」ボタンが選択された\r
+               case IDCANCEL:   // 「キャンセル」ボタンが選択された\r
+                       // ダイアログボックスを消す\r
                        EndDialog( hDlg, 0 );\r
                        break;\r
                }\r
                return TRUE;\r
        }\r
 \r
-       return FALSE;  // DefWindowProc()\82Å\82Í\82È\82­\81AFALSE\82ð\95Ô\82·\82±\82Æ\81I\r
+       return FALSE;  // DefWindowProc()ではなく、FALSEを返すこと!\r
 #undef TIMER_ID     \r
 #undef TIMER_ELAPSE \r
 }\r
@@ -435,7 +435,7 @@ static void doTransferRemoteFile(void)
        int i;\r
        DWORD pid;\r
 \r
-       // \82·\82Å\82É\83\8a\83\82\81[\83g\82©\82ç\93]\91\97\8dÏ\82Ý\82È\82ç\89½\82à\82µ\82È\82¢\81B(2007.9.3 yutaka)\r
+       // すでにリモートから転送済みなら何もしない。(2007.9.3 yutaka)\r
        if (remoteFileListBase != NULL)\r
                return;\r
 \r
@@ -447,8 +447,8 @@ static void doTransferRemoteFile(void)
        // set temporary folder\r
        AskLocalCurDir(LocDir, FMAX_PATH);\r
 \r
-       // \83A\83v\83\8a\82ð\91½\8fd\8bN\93®\82µ\82Ä\82à\83R\83\93\83t\83\8a\83N\83g\82µ\82È\82¢\82æ\82¤\82É\81A\83e\83\93\83|\83\89\83\8a\83t\83H\83\8b\83_\96¼\82É\83v\83\8d\83Z\83XID\r
-       // \82ð\95t\89Á\82·\82é\81B(2007.9.13 yutaka)\r
+       // アプリを多重起動してもコンフリクトしないように、テンポラリフォルダ名にプロセスID\r
+       // を付加する。(2007.9.13 yutaka)\r
        GetTempPath(sizeof(TmpDir), TmpDir);\r
        pid = GetCurrentProcessId();\r
        _snprintf_s(buf, sizeof(buf), _TRUNCATE, "ffftp%d", pid);\r
@@ -460,7 +460,7 @@ static void doTransferRemoteFile(void)
        }\r
 #endif\r
 \r
-       // \8aù\91\82Ì\83t\83@\83C\83\8b\82ð\8dí\8f\9c\82·\82é\r
+       // 既存のファイルを削除する\r
        for (pf = FileListBase ; pf ; pf = pf->Next) {\r
                char fn[FMAX_PATH+1];\r
 \r
@@ -471,10 +471,10 @@ static void doTransferRemoteFile(void)
                remove(fn);\r
        }\r
 \r
-       // \83_\83E\83\93\83\8d\81[\83h\90æ\82ð\83e\83\93\83|\83\89\83\8a\82É\90Ý\92è\r
+       // ダウンロード先をテンポラリに設定\r
        SetLocalDirHist(TmpDir);\r
 \r
-       // FFFTP\82É\83_\83E\83\93\83\8d\81[\83h\97v\8b\81\82ð\8fo\82µ\81A\83_\83E\83\93\83\8d\81[\83h\82Ì\8a®\97¹\82ð\91Ò\82Â\81B\r
+       // FFFTPにダウンロード要求を出し、ダウンロードの完了を待つ。\r
        PostMessage(GetMainHwnd(), WM_COMMAND, MAKEWPARAM(MENU_DOWNLOAD, 0), 0);\r
 \r
        for (i = 0 ; i < 10 ; i++) {\r
@@ -485,7 +485,7 @@ static void doTransferRemoteFile(void)
                        DispatchMessage(&msg);\r
 \r
                } else {\r
-                       // \93]\91\97\83X\83\8c\83b\83h\82ª\93®\82«\8fo\82µ\82½\82ç\94²\82¯\82é\81B\r
+                       // 転送スレッドが動き出したら抜ける。\r
                        if (AskTransferNow() == YES)\r
                                break;\r
                }\r
@@ -493,17 +493,17 @@ static void doTransferRemoteFile(void)
                Sleep(10);\r
        }\r
 \r
-       // OLE D&D\92\86\82É\83\81\83C\83\93\83E\83B\83\93\83h\83E\82ð\83\86\81[\83U\82É\91\80\8dì\82³\82¹\82é\82Æ\81A\82¨\82©\82µ\82­\82È\82é\82Ì\82Å\81A\r
-       // \89B\82µ\83\82\81[\83_\83\8b\83_\83C\83A\83\8d\83O\82ð\8dì\82é\81B\r
+       // OLE D&D中にメインウィンドウをユーザに操作させると、おかしくなるので、\r
+       // 隠しモーダルダイアログを作る。\r
        // (2007.9.11 yutaka)\r
        DialogBox(GetFtpInst(), MAKEINTRESOURCE(IDD_OLEDRAG), GetMainHwnd(), (DLGPROC)doOleDlgProc);\r
 \r
-       // \83_\83E\83\93\83\8d\81[\83h\90æ\82ð\8c³\82É\96ß\82·\r
+       // ダウンロード先を元に戻す\r
        SetLocalDirHist(LocDir);\r
        SetCurrentDirAsDirHist();\r
 \r
-       remoteFileListBase = FileListBase;  // \82 \82Æ\82Å\83t\83\8a\81[\82·\82é\82±\82Æ\r
-       remoteFileListBaseNoExpand = FileListBaseNoExpand;  // \82 \82Æ\82Å\83t\83\8a\81[\82·\82é\82±\82Æ\r
+       remoteFileListBase = FileListBase;  // あとでフリーすること\r
+       remoteFileListBaseNoExpand = FileListBaseNoExpand;  // あとでフリーすること\r
        strncpy_s(remoteFileDir, sizeof(remoteFileDir), TmpDir, _TRUNCATE);\r
 \r
 #if 0\r
@@ -535,7 +535,7 @@ int isDirectory(char *fn)
        return 0;\r
 }\r
 \r
-// \83e\83\93\83|\83\89\83\8a\82Ì\83t\83@\83C\83\8b\82¨\82æ\82Ñ\83t\83H\83\8b\83_\82ð\8dí\8f\9c\82·\82é\81B\r
+// テンポラリのファイルおよびフォルダを削除する。\r
 void doDeleteRemoteFile(void)\r
 {\r
        if (remoteFileListBase != NULL) {\r
@@ -564,9 +564,9 @@ void doDeleteRemoteFile(void)
                                strncat_s(fn, sizeof(fn), "\\", _TRUNCATE);\r
                                strncat_s(fn, sizeof(fn), pf->File, _TRUNCATE);\r
                                if (isDirectory(fn)) {\r
-                                       if (_rmdir(fn) == 0) { // \83f\83B\83\8c\83N\83g\83\8a\82ð\8fÁ\82¹\82½\82ç\83J\83E\83\93\83g\83A\83b\83v\r
+                                       if (_rmdir(fn) == 0) { // ディレクトリを消せたらカウントアップ\r
                                                count++;\r
-                                               if (count >= dirs)  // \82·\82×\82Ä\8fÁ\82¹\82½\82ç\8fI\82í\82è\r
+                                               if (count >= dirs)  // すべて消せたら終わり\r
                                                        goto skip;\r
                                        }\r
                                }\r
@@ -574,7 +574,7 @@ void doDeleteRemoteFile(void)
                        }\r
                }\r
 skip:\r
-               _rmdir(remoteFileDir);  // \8e©\95ª\82Å\8dì\82Á\82½\83f\83B\83\8c\83N\83g\83\8a\82à\8fÁ\82·\r
+               _rmdir(remoteFileDir);  // 自分で作ったディレクトリも消す\r
 #else\r
                SHFILEOPSTRUCT FileOp = { NULL, FO_DELETE, remoteFileDir, NULL, \r
                        FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOERRORUI, \r
@@ -595,7 +595,7 @@ skip:
 \r
 // yutaka\r
 // cf. http://www.nakka.com/lib/\r
-/* \83h\83\8d\83b\83v\83t\83@\83C\83\8b\82Ì\8dì\90¬ */\r
+/* ドロップファイルの作成 */\r
 static HDROP APIPRIVATE CreateDropFileMem(char **FileName,int cnt,BOOL fWide)\r
 {\r
        HDROP hDrop;\r
@@ -605,18 +605,18 @@ static HDROP APIPRIVATE CreateDropFileMem(char **FileName,int cnt,BOOL fWide)
        int i;\r
        \r
        if(fWide == TRUE){\r
-               /* \83\8f\83C\83h\83L\83\83\83\89 */\r
+               /* ワイドキャラ */\r
                for(i = 0;i < cnt;i++){\r
-                       // UTF-8\91Î\89\9e\r
+                       // UTF-8対応\r
 //                     MultiByteToWideChar(CP_ACP,0,FileName[i],-1,wbuf,BUF_SIZE);\r
 //                     flen += (wcslen(wbuf) + 1) * sizeof(wchar_t);\r
                        flen += sizeof(wchar_t) * MtoW(NULL, 0, FileName[i], -1);\r
                }\r
                flen++;\r
        }else{\r
-               /* \83}\83\8b\83`\83o\83C\83g */\r
+               /* マルチバイト */\r
                for(i = 0;i < cnt;i++){\r
-                       // UTF-8\91Î\89\9e\r
+                       // UTF-8対応\r
 //                     flen += lstrlen(FileName[i]) + 1;\r
                        MtoW(wbuf, BUF_SIZE, FileName[i], -1);\r
                        flen += sizeof(char) * WtoA(NULL, 0, wbuf, -1);\r
@@ -629,32 +629,32 @@ static HDROP APIPRIVATE CreateDropFileMem(char **FileName,int cnt,BOOL fWide)
        }\r
 \r
        lpDropFile = (LPDROPFILES) GlobalLock(hDrop);\r
-       lpDropFile->pFiles = sizeof(DROPFILES);         /* \83t\83@\83C\83\8b\96¼\82Ì\83\8a\83X\83g\82Ü\82Å\82Ì\83I\83t\83Z\83b\83g */\r
+       lpDropFile->pFiles = sizeof(DROPFILES);         /* ファイル名のリストまでのオフセット */\r
        lpDropFile->pt.x = 0;\r
        lpDropFile->pt.y = 0;\r
        lpDropFile->fNC = FALSE;\r
-       lpDropFile->fWide = fWide;                                      /* \83\8f\83C\83h\83L\83\83\83\89\82Ì\8fê\8d\87\82Í TRUE */\r
+       lpDropFile->fWide = fWide;                                      /* ワイドキャラの場合は TRUE */\r
 \r
-       /* \8d\\91¢\91Ì\82Ì\8cã\82ë\82É\83t\83@\83C\83\8b\96¼\82Ì\83\8a\83X\83g\82ð\83R\83s\81[\82·\82é\81B(\83t\83@\83C\83\8b\96¼\0\83t\83@\83C\83\8b\96¼\0\83t\83@\83C\83\8b\96¼\0\0) */\r
+       /* 構造体の後ろにファイル名のリストをコピーする。(ファイル名\0ファイル名\0ファイル名\0\0) */\r
        if(fWide == TRUE){\r
-               /* \83\8f\83C\83h\83L\83\83\83\89 */\r
+               /* ワイドキャラ */\r
                wchar_t *buf;\r
 \r
                buf = (wchar_t *)(&lpDropFile[1]);\r
                for(i = 0;i < cnt;i++){\r
-                       // UTF-8\91Î\89\9e\r
+                       // UTF-8対応\r
 //                     MultiByteToWideChar(CP_ACP,0,FileName[i],-1,wbuf,BUF_SIZE);\r
 //                     wcscpy(buf,wbuf);\r
 //                     buf += wcslen(wbuf) + 1;\r
                        buf += MtoW(buf, BUF_SIZE, FileName[i], -1);\r
                }\r
        }else{\r
-               /* \83}\83\8b\83`\83o\83C\83g */\r
+               /* マルチバイト */\r
                char *buf;\r
 \r
                buf = (char *)(&lpDropFile[1]);\r
                for(i = 0;i < cnt;i++){\r
-                       // UTF-8\91Î\89\9e\r
+                       // UTF-8対応\r
 //                     lstrcpy(buf,FileName[i]);\r
 //                     buf += lstrlen(FileName[i]) + 1;\r
                        MtoW(wbuf, BUF_SIZE, FileName[i], -1);\r
@@ -667,7 +667,7 @@ static HDROP APIPRIVATE CreateDropFileMem(char **FileName,int cnt,BOOL fWide)
 }\r
 \r
 \r
-// OLE D&D\82ð\8aJ\8en\82·\82é \r
+// OLE D&Dを開始する \r
 // (2007.8.30 yutaka)\r
 static void doDragDrop(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)\r
 {\r
@@ -675,16 +675,16 @@ static void doDragDrop(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
        POINT pt;\r
        int ret;\r
 \r
-       // \83e\83\93\83|\83\89\83\8a\82ð\82«\82ê\82¢\82É\82·\82é (2007.9.3 yutaka)\r
+       // テンポラリをきれいにする (2007.9.3 yutaka)\r
        doDeleteRemoteFile();\r
 \r
-       /* \83h\83\89\83b\83O&\83h\83\8d\83b\83v\82Ì\8aJ\8en */\r
+       /* ドラッグ&ドロップの開始 */\r
        cf[0] = CF_HDROP;\r
-       cf[1] = CF_HDROP;       /* \83t\83@\83C\83\8b */\r
+       cf[1] = CF_HDROP;       /* ファイル */\r
        if((ret = OLE_IDropSource_Start(hWnd,WM_GETDATA, WM_DRAGOVER, cf,1,DROPEFFECT_COPY | DROPEFFECT_MOVE | DROPEFFECT_LINK)) == DROPEFFECT_MOVE){\r
        }\r
 \r
-       // \83h\83\8d\83b\83v\90æ\82Ì\83A\83v\83\8a\82É WM_LBUTTONUP \82ð\94ò\82Î\82·\81B\r
+       // ドロップ先のアプリに WM_LBUTTONUP を飛ばす。\r
        GetCursorPos(&pt);\r
        ScreenToClient(hWnd, &pt);\r
        PostMessage(hWnd,WM_LBUTTONUP,0,MAKELPARAM(pt.x,pt.y));\r
@@ -692,16 +692,16 @@ static void doDragDrop(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
 \r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\83E\83C\83\93\83h\83E\82Ì\8b¤\92Ê\83\81\83b\83Z\81[\83W\8f\88\97\9d ----------------------------\r
+/*----- ファイル一覧ウインドウの共通メッセージ処理 ----------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message  : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hWnd : ウインドウハンドル\r
+*              UINT message  : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
-*              \83\81\83b\83Z\81[\83W\82É\91Î\89\9e\82·\82é\96ß\82è\92l\r
+*              メッセージに対応する戻り値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)\r
@@ -764,7 +764,7 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                        return(CallWindowProc(ProcPtr, hWnd, message, wParam, lParam));\r
 \r
                case WM_DROPFILES :\r
-                       // \83h\83\89\83b\83O\92\86\82Í\8f\88\97\9d\82µ\82È\82¢\81B\83h\83\89\83b\83O\8cã\82ÉWM_LBUTTONDOWN\82ª\94ò\82ñ\82Å\82­\82é\82½\82ß\81A\82»\82±\82Å\8f\88\97\9d\82·\82é\81B\r
+                       // ドラッグ中は処理しない。ドラッグ後にWM_LBUTTONDOWNが飛んでくるため、そこで処理する。\r
                        if (Dragging == YES) \r
                                return (FALSE);\r
 \r
@@ -807,9 +807,9 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                                        } else if(hWndPnt == hWndListLocal) {\r
                                                PostMessage(GetMainHwnd(), WM_COMMAND, MAKEWPARAM(MENU_DOWNLOAD, 0), 0);\r
                                        }\r
-                               } else { // \93¯\88ê\83E\83B\83\93\83h\83E\93à\82Ì\8fê\8d\87 (yutaka)\r
+                               } else { // 同一ウィンドウ内の場合 (yutaka)\r
                                        if (hWndDragStart == hWndListRemote && hWndPnt == hWndListRemote) {\r
-                                               // remote <-> remote\82Ì\8fê\8d\87\82Í\81A\83T\81[\83o\82Å\82Ì\83t\83@\83C\83\8b\82Ì\88Ú\93®\82ð\8ds\82¤\81B(2007.9.5 yutaka)\r
+                                               // remote <-> remoteの場合は、サーバでのファイルの移動を行う。(2007.9.5 yutaka)\r
                                                if (RemoteDropFileIndex != -1) {\r
                                                        ListView_SetItemState(hWnd, RemoteDropFileIndex, 0, LVIS_DROPHILITED);\r
                                                        MoveRemoteFileProc(RemoteDropFileIndex);\r
@@ -822,15 +822,15 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                        return(CallWindowProc(ProcPtr, hWnd, message, wParam, lParam));\r
 \r
                case WM_DRAGDROP:  \r
-                       // OLE D&D\82ð\8aJ\8en\82·\82é (yutaka)\r
+                       // OLE D&Dを開始する (yutaka)\r
                        doDragDrop(hWnd, message, wParam, lParam);\r
                        return (TRUE);\r
                        break;\r
  \r
-               case WM_GETDATA:  // \83t\83@\83C\83\8b\82Ì\83p\83X\82ðD&D\90æ\82Ì\83A\83v\83\8a\82Ö\95Ô\82· (yutaka)\r
+               case WM_GETDATA:  // ファイルのパスをD&D先のアプリへ返す (yutaka)\r
                        switch(wParam)\r
                        {\r
-                       case CF_HDROP:          /* \83t\83@\83C\83\8b */\r
+                       case CF_HDROP:          /* ファイル */\r
                                {\r
                                        OSVERSIONINFO os_info;\r
                                        BOOL NTFlag = FALSE;\r
@@ -843,9 +843,9 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                                        char LocDir[FMAX_PATH+1];\r
                                        char *PathDir;\r
  \r
-                                       // \95Ï\90\94\82ª\96¢\8f\89\8aú\89»\82Ì\83o\83O\8fC\90³\r
+                                       // 変数が未初期化のバグ修正\r
                                        FileListBaseNoExpand = NULL;\r
-                                       // \83\8d\81[\83J\83\8b\91¤\82Å\91I\82Î\82ê\82Ä\82¢\82é\83t\83@\83C\83\8b\82ðFileListBase\82É\93o\98^\r
+                                       // ローカル側で選ばれているファイルをFileListBaseに登録\r
                                        if (hWndDragStart == hWndListLocal) {\r
                                                AskLocalCurDir(LocDir, FMAX_PATH);\r
                                                PathDir = LocDir;\r
@@ -862,8 +862,8 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                                                        FileListBase = NULL;\r
  \r
                                                } else {\r
-                                                       // \91I\91ð\82³\82ê\82Ä\82¢\82é\83\8a\83\82\81[\83g\83t\83@\83C\83\8b\82Ì\83\8a\83X\83g\83A\83b\83v\r
-                                                       // \82±\82Ì\83^\83C\83~\83\93\83O\82Å\83\8a\83\82\81[\83g\82©\82ç\83\8d\81[\83J\83\8b\82Ì\88ê\8e\9e\83t\83H\83\8b\83_\82Ö\83_\83E\83\93\83\8d\81[\83h\82·\82é\r
+                                                       // 選択されているリモートファイルのリストアップ\r
+                                                       // このタイミングでリモートからローカルの一時フォルダへダウンロードする\r
                                                        // (2007.8.31 yutaka)\r
                                                        doTransferRemoteFile();\r
                                                        PathDir = remoteFileDir;\r
@@ -877,14 +877,14 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                                        for (filenum = 0; pf ; filenum++) {\r
                                                pf = pf->Next;\r
                                        }\r
-                                       // \83t\83@\83C\83\8b\82ª\96¢\91I\91ð\82Ì\8fê\8d\87\82Í\89½\82à\82µ\82È\82¢\81B(yutaka)\r
+                                       // ファイルが未選択の場合は何もしない。(yutaka)\r
                                        if (filenum <= 0) {\r
                                                *((HANDLE *)lParam) = NULL;\r
                                                return (FALSE);\r
                                        }\r
                                        \r
-                                       /* \83t\83@\83C\83\8b\96¼\82Ì\94z\97ñ\82ð\8dì\90¬\82·\82é */\r
-                                       // TODO: GlobalAlloc\82ª\95Ô\82·\82Ì\82Í\83\81\83\82\83\8a\83|\83C\83\93\83^\82Å\82Í\82È\82­\83n\83\93\83h\83\8b\82¾\82ª\8eÀ\8dÛ\82Í\93¯\82\92l\r
+                                       /* ファイル名の配列を作成する */\r
+                                       // TODO: GlobalAllocが返すのはメモリポインタではなくハンドルだが実際は同じ値\r
                                        FileNameList = (char **)GlobalAlloc(GPTR,sizeof(char *) * filenum);\r
                                        if(FileNameList == NULL){\r
                                                abort();\r
@@ -899,7 +899,7 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                                                pf = pf->Next;\r
 #if 0\r
                                                if (FileListBase->Node == NODE_DIR) { \r
-                                                       // \83t\83H\83\8b\83_\82ð\92Í\82ñ\82¾\8fê\8d\87\82Í\82»\82ê\88È\8d~\93W\8aJ\82µ\82È\82¢\r
+                                                       // フォルダを掴んだ場合はそれ以降展開しない\r
                                                        filenum = 1;\r
                                                        break;\r
                                                }\r
@@ -912,11 +912,11 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                                                NTFlag = TRUE;\r
                                        }\r
  \r
-                                       /* \83h\83\8d\83b\83v\83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\8dì\90¬ */\r
-                                       /* NT\82Ì\8fê\8d\87\82ÍUNICODE\82É\82È\82é\82æ\82¤\82É\82·\82é */\r
+                                       /* ドロップファイルリストの作成 */\r
+                                       /* NTの場合はUNICODEになるようにする */\r
                                        *((HANDLE *)lParam) = CreateDropFileMem(FileNameList, filenum, NTFlag);\r
  \r
-                                       /* \83t\83@\83C\83\8b\96¼\82Ì\94z\97ñ\82ð\89ð\95ú\82·\82é */\r
+                                       /* ファイル名の配列を解放する */\r
                                        for (i = 0; i < filenum ; i++) {\r
                                                GlobalFree(FileNameList[i]);\r
                                        }\r
@@ -925,7 +925,7 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                                        if (hWndDragStart == hWndListLocal) {\r
                                                DeleteFileList(&FileListBase);\r
                                        } else {\r
-                                               // \82 \82Æ\82Å\83t\83@\83C\83\8b\8dí\8f\9c\82µ\82Ä\83t\83\8a\81[\82·\82é\r
+                                               // あとでファイル削除してフリーする\r
                                        }\r
  \r
                                        return (TRUE);\r
@@ -945,7 +945,7 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                                int Node, index;\r
                                static int prev_index = -1;\r
 \r
-                               // \93¯\88ê\83E\83B\83\93\83h\83E\93à\82Å\82ÌD&D\82Í\83\8a\83\82\81[\83g\91¤\82Ì\82Ý\r
+                               // 同一ウィンドウ内でのD&Dはリモート側のみ\r
                                if (Win != WIN_REMOTE)\r
                                        break;\r
 \r
@@ -960,7 +960,7 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
 \r
                                hi.pt = Point;\r
 \r
-                               // \88È\91O\82Ì\91I\91ð\82ð\8fÁ\82·\r
+                               // 以前の選択を消す\r
                                ListView_SetItemState(hWnd, prev_index, 0, LVIS_DROPHILITED);\r
                                RemoteDropFileIndex = -1;\r
 \r
@@ -981,7 +981,7 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                        break;\r
 \r
                case WM_RBUTTONDOWN :\r
-                       /* \82±\82±\82Å\83t\83@\83C\83\8b\82ð\91I\82Ô */\r
+                       /* ここでファイルを選ぶ */\r
                        CallWindowProc(ProcPtr, hWnd, message, wParam, lParam);\r
 \r
                        EraseListViewTips();\r
@@ -1021,13 +1021,13 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
                                        if((hWndPnt == hWndListRemote) || (hWndPnt == hWndListLocal))\r
                                                SetCursor(hCsrDrg);\r
                                        else {\r
-                                               // \83}\83E\83X\83|\83C\83\93\83^\82Ì\81~\95\\8e¦\82ð\82â\82ß\82é (yutaka)\r
+                                               // マウスポインタの×表示をやめる (yutaka)\r
 #if 0\r
                                                SetCursor(hCsrNoDrg);\r
 #endif\r
                                        }\r
 \r
-                                       // OLE D&D\82Ì\8aJ\8en\82ð\8ew\8e¦\82·\82é\r
+                                       // OLE D&Dの開始を指示する\r
                                        PostMessage(hWnd, WM_DRAGDROP, MAKEWPARAM(wParam, lParam), 0);\r
 \r
                                }\r
@@ -1073,13 +1073,13 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\83^\83u\95\9d\82ð\8eæ\93¾\82·\82é --------------------------------------\r
+/*----- ファイルリストのタブ幅を取得する --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void GetListTabWidth(void)\r
@@ -1104,13 +1104,13 @@ void GetListTabWidth(void)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\95û\96@\82É\82µ\82½\82ª\82Á\82Ä\83\8a\83X\83g\83r\83\85\81[\82ð\90Ý\92è\82·\82é --------------------\r
+/*----- ファイル一覧方法にしたがってリストビューを設定する --------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetListViewType(void)\r
@@ -1147,13 +1147,13 @@ void SetListViewType(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\88ê\97\97\83E\83C\83\93\83h\83E\82É\83t\83@\83C\83\8b\96¼\82ð\83Z\83b\83g ------------------\r
+/*----- ホスト側のファイル一覧ウインドウにファイル名をセット ------------------\r
 *\r
 *      Parameter\r
-*              int Mode : \83L\83\83\83b\83V\83\85\83\82\81[\83h (CACHE_xxx)\r
+*              int Mode : キャッシュモード (CACHE_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void GetRemoteDirForWnd(int Mode, int *CancelCheckWork)\r
@@ -1215,7 +1215,7 @@ void GetRemoteDirForWnd(int Mode, int *CancelCheckWork)
                        {\r
                                ListType = LIST_UNKNOWN;\r
 \r
-                               while(GetListOneLine(Str, FMAX_PATH, fd) == SUCCESS)\r
+                               while(GetListOneLine(Str, FMAX_PATH, fd) == FFFTP_SUCCESS)\r
                                {\r
                                        if((ListType = AnalizeFileInfo(Str)) != LIST_UNKNOWN)\r
                                        {\r
@@ -1236,7 +1236,7 @@ void GetRemoteDirForWnd(int Mode, int *CancelCheckWork)
                                DispFileList2View(GetRemoteHwnd(), &Anchor);\r
                                EraseDispFileList(&Anchor);\r
 \r
-                               // \90æ\93ª\82Ì\83A\83C\83e\83\80\82ð\91I\91ð\r
+                               // 先頭のアイテムを選択\r
                                ListView_SetItemState(GetRemoteHwnd(), 0, LVIS_FOCUSED, LVIS_FOCUSED);\r
                        }\r
                        else\r
@@ -1248,8 +1248,8 @@ void GetRemoteDirForWnd(int Mode, int *CancelCheckWork)
                else\r
                {\r
 #if defined(HAVE_OPENVMS)\r
-                       /* OpenVMS\82Ì\8fê\8d\87\8bó\83f\83B\83\8c\83N\83g\83\8a\88Ú\93®\82Ì\8e\9e\82É\8fo\82é\82Ì\82Å\81A\83\81\83b\83Z\81[\83W\82¾\82¯\8fo\82³\82È\82¢\r
-                        * \82æ\82¤\82É\82·\82é(VIEW\82Í\83N\83\8a\83A\82µ\82Ä\97Ç\82¢) */\r
+                       /* OpenVMSの場合空ディレクトリ移動の時に出るので、メッセージだけ出さない\r
+                        * ようにする(VIEWはクリアして良い) */\r
                        if (AskHostType() != HTYPE_VMS)\r
 #endif\r
                        SetTaskMsg(MSGJPN049);\r
@@ -1268,13 +1268,13 @@ void GetRemoteDirForWnd(int Mode, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83t\83@\83C\83\8b\88ê\97\97\83E\83C\83\93\83h\83E\82É\83t\83@\83C\83\8b\96¼\82ð\83Z\83b\83g ----------------\r
+/*----- ローカル側のファイル一覧ウインドウにファイル名をセット ----------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void GetLocalDirForWnd(void)\r
@@ -1296,7 +1296,7 @@ void GetLocalDirForWnd(void)
        SetLocalDirHist(Scan);\r
        DispLocalFreeSpace(Scan);\r
 \r
-       /* \83f\83B\83\8c\83N\83g\83\8a\81^\83t\83@\83C\83\8b */\r
+       /* ディレクトリ/ファイル */\r
 \r
        SetYenTail(Scan);\r
        strcat(Scan, "*");\r
@@ -1325,7 +1325,7 @@ void GetLocalDirForWnd(void)
                FindClose(fHnd);\r
        }\r
 \r
-       /* \83h\83\89\83C\83u */\r
+       /* ドライブ */\r
        if(DispDrives)\r
        {\r
                GetLogicalDriveStrings(FMAX_PATH, Scan);\r
@@ -1348,29 +1348,29 @@ void GetLocalDirForWnd(void)
        DispFileList2View(GetLocalHwnd(), &Anchor);\r
        EraseDispFileList(&Anchor);\r
 \r
-       // \90æ\93ª\82Ì\83A\83C\83e\83\80\82ð\91I\91ð\r
+       // 先頭のアイテムを選択\r
        ListView_SetItemState(GetLocalHwnd(), 0, LVIS_FOCUSED, LVIS_FOCUSED);\r
 \r
        return;\r
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\8fî\95ñ\82ð\83t\83@\83C\83\8b\88ê\97\97\97p\83\8a\83X\83g\82É\93o\98^\82·\82é --------------------------\r
+/*----- ファイル情報をファイル一覧用リストに登録する --------------------------\r
 *\r
 *      Parameter\r
-*              FLISTANCHOR *Anchor : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
-*              char *Name : \83t\83@\83C\83\8b\96¼\r
-*              FILETIME *Time : \93ú\95t\r
-*              LONGLONG Size : \83T\83C\83Y\r
-*              int Attr : \91®\90«\r
-*              int Type : \83^\83C\83v (NODE_xxxx)\r
-*              int Link : \83\8a\83\93\83N\82©\82Ç\82¤\82© (YES/NO)\r
-*              char *Owner : \83I\81[\83i\96¼\r
-*              int InfoExist : \8fî\95ñ\82ª\82 \82é\82©\82Ç\82¤\82© (FINFO_xxx)\r
-*              int Win : \83E\83B\83\93\83h\83E\94Ô\8d\86 (WIN_xxxx)\r
+*              FLISTANCHOR *Anchor : ファイルリストの先頭\r
+*              char *Name : ファイル名\r
+*              FILETIME *Time : 日付\r
+*              LONGLONG Size : サイズ\r
+*              int Attr : 属性\r
+*              int Type : タイプ (NODE_xxxx)\r
+*              int Link : リンクかどうか (YES/NO)\r
+*              char *Owner : オーナ名\r
+*              int InfoExist : 情報があるかどうか (FINFO_xxx)\r
+*              int Win : ウィンドウ番号 (WIN_xxxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void AddDispFileList(FLISTANCHOR *Anchor, char *Name, FILETIME *Time, LONGLONG Size, int Attr, int Type, int Link, char *Owner, int InfoExist, int Win)\r
@@ -1475,13 +1475,13 @@ static void AddDispFileList(FLISTANCHOR *Anchor, char *Name, FILETIME *Time, LON
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\97p\83\8a\83X\83g\82ð\83N\83\8a\83A\82·\82é --------------------------------------\r
+/*----- ファイル一覧用リストをクリアする --------------------------------------\r
 *\r
 *      Parameter\r
-*              FLISTANCHOR *Anchor : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              FLISTANCHOR *Anchor : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void EraseDispFileList(FLISTANCHOR *Anchor)\r
@@ -1503,14 +1503,14 @@ static void EraseDispFileList(FLISTANCHOR *Anchor)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\97p\83\8a\83X\83g\82Ì\93à\97e\82ð\83t\83@\83C\83\8b\88ê\97\97\83E\83C\83\93\83h\83E\82É\83Z\83b\83g ------------\r
+/*----- ファイル一覧用リストの内容をファイル一覧ウインドウにセット ------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              FLISTANCHOR *Anchor : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              HWND hWnd : ウインドウハンドル\r
+*              FLISTANCHOR *Anchor : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DispFileList2View(HWND hWnd, FLISTANCHOR *Anchor)\r
@@ -1536,22 +1536,22 @@ static void DispFileList2View(HWND hWnd, FLISTANCHOR *Anchor)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\83E\83C\83\93\83h\83E\81i\83\8a\83X\83g\83r\83\85\81[\81j\82É\92Ç\89Á --------------------------\r
+/*----- ファイル一覧ウインドウ(リストビュー)に追加 --------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int Pos : \91}\93ü\88Ê\92u\r
-*              char *Name : \96¼\91O\r
-*              int Type : \83^\83C\83v (NIDE_xxxx)\r
-*              LONGLONG Size : \83T\83C\83Y\r
-*              FILETIME *Time : \93ú\95t\r
-*              int Attr : \91®\90«\r
-*              char Owner : \83I\81[\83i\96¼\r
-*              int Link : \83\8a\83\93\83N\82©\82Ç\82¤\82©\r
-*              int InfoExist : \8fî\95ñ\82ª\82 \82é\82©\82Ç\82¤\82© (FINFO_xxx)\r
+*              HWND hWnd : ウインドウハンドル\r
+*              int Pos : 挿入位置\r
+*              char *Name : 名前\r
+*              int Type : タイプ (NIDE_xxxx)\r
+*              LONGLONG Size : サイズ\r
+*              FILETIME *Time : 日付\r
+*              int Attr : 属性\r
+*              char Owner : オーナ名\r
+*              int Link : リンクかどうか\r
+*              int InfoExist : 情報があるかどうか (FINFO_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size, FILETIME *Time, int Attr, char *Owner, int Link, int InfoExist)\r
@@ -1562,7 +1562,7 @@ static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size,
        if(Pos == -1)\r
                Pos = SendMessage(hWnd, LVM_GETITEMCOUNT, 0, 0);\r
 \r
-       /* \83A\83C\83R\83\93/\83t\83@\83C\83\8b\96¼ */\r
+       /* アイコン/ファイル名 */\r
        LvItem.mask = LVIF_TEXT | LVIF_IMAGE;\r
        LvItem.iItem = Pos;\r
        LvItem.iSubItem = 0;\r
@@ -1575,7 +1575,7 @@ static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size,
                LvItem.iImage = 4;\r
        LvItem.iItem = SendMessage(hWnd, LVM_INSERTITEM, 0, (LPARAM)&LvItem);\r
 \r
-       /* \93ú\95t/\8e\9e\8d\8f */\r
+       /* 日付/時刻 */\r
        FileTime2TimeString(Time, Tmp, DISPFORM_LEGACY, InfoExist);\r
        LvItem.mask = LVIF_TEXT;\r
        LvItem.iItem = Pos;\r
@@ -1583,7 +1583,7 @@ static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size,
        LvItem.pszText = Tmp;\r
        LvItem.iItem = SendMessage(hWnd, LVM_SETITEM, 0, (LPARAM)&LvItem);\r
 \r
-       /* \83T\83C\83Y */\r
+       /* サイズ */\r
        if(Type == NODE_DIR)\r
                strcpy(Tmp, "<DIR>");\r
        else if(Type == NODE_DRIVE)\r
@@ -1598,7 +1598,7 @@ static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size,
        LvItem.pszText = Tmp;\r
        LvItem.iItem = SendMessage(hWnd, LVM_SETITEM, 0, (LPARAM)&LvItem);\r
 \r
-       /* \8ag\92£\8eq */\r
+       /* 拡張子 */\r
        LvItem.mask = LVIF_TEXT;\r
        LvItem.iItem = Pos;\r
        LvItem.iSubItem = 3;\r
@@ -1607,7 +1607,7 @@ static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size,
 \r
        if(hWnd == GetRemoteHwnd())\r
        {\r
-               /* \91®\90« */\r
+               /* 属性 */\r
                strcpy(Tmp, "");\r
                if(InfoExist & FINFO_ATTR)\r
                        AttrValue2String(Attr, Tmp);\r
@@ -1617,7 +1617,7 @@ static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size,
                LvItem.pszText = Tmp;\r
                LvItem.iItem = SendMessage(hWnd, LVM_SETITEM, 0, (LPARAM)&LvItem);\r
 \r
-               /* \83I\81[\83i\96¼ */\r
+               /* オーナ名 */\r
                LvItem.mask = LVIF_TEXT;\r
                LvItem.iItem = Pos;\r
                LvItem.iSubItem = 5;\r
@@ -1628,13 +1628,13 @@ static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size,
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\96¼\88ê\97\97\83E\83C\83\93\83h\83E\82ð\83\\81[\83g\82µ\92¼\82· --------------------------------\r
+/*----- ファイル名一覧ウインドウをソートし直す --------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83B\83\93\83h\83E\94Ô\8d\86 (WIN_xxxx)\r
+*              int Win : ウィンドウ番号 (WIN_xxxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ReSortDispList(int Win, int *CancelCheckWork)\r
@@ -1647,14 +1647,14 @@ void ReSortDispList(int Win, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\83E\83C\83\93\83h\83E\82Ì\83t\83@\83C\83\8b\82ð\91I\91ð\82·\82é ----------------------------\r
+/*----- ファイル一覧ウインドウのファイルを選択する ----------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int Type : \91I\91ð\95û\96@ (SELECT_xxx)\r
+*              HWND hWnd : ウインドウハンドル\r
+*              int Type : 選択方法 (SELECT_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SelectFileInList(HWND hWnd, int Type)\r
@@ -1722,7 +1722,7 @@ void SelectFileInList(HWND hWnd, int Type)
                                                LvItem.state = 0;\r
                                                if(GetNodeType(Win, i) != NODE_DRIVE)\r
                                                {\r
-                                                       if(((FindMode == 0) && (CheckFname(Name, RegExp) == SUCCESS)) ||\r
+                                                       if(((FindMode == 0) && (CheckFname(Name, RegExp) == FFFTP_SUCCESS)) ||\r
                                                           ((FindMode != 0) && (JreGetStrMatchInfo(Name, 0) != NULL)))\r
                                                        {\r
                                                                LvItem.state = LVIS_SELECTED;\r
@@ -1778,13 +1778,13 @@ void SelectFileInList(HWND hWnd, int Type)
 }\r
 \r
 \r
-/*----- \91I\91ð\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------------------\r
+/*----- 選択ダイアログのコールバック ------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1829,14 +1829,14 @@ static BOOL CALLBACK SelectDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wPara
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\83E\83C\83\93\83h\83E\82Ì\83t\83@\83C\83\8b\82ð\8c\9f\8dõ\82·\82é ----------------------------\r
+/*----- ファイル一覧ウインドウのファイルを検索する ----------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int Type : \8c\9f\8dõ\95û\96@ (FIND_xxx)\r
+*              HWND hWnd : ウインドウハンドル\r
+*              int Type : 検索方法 (FIND_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void FindFileInList(HWND hWnd, int Type)\r
@@ -1876,7 +1876,7 @@ void FindFileInList(HWND hWnd, int Type)
                                                _mbslwr(Name);\r
 \r
                                                LvItem.state = 0;\r
-                                               if(((FindMode == 0) && (CheckFname(Name, RegExp) == SUCCESS)) ||\r
+                                               if(((FindMode == 0) && (CheckFname(Name, RegExp) == FFFTP_SUCCESS)) ||\r
                                                   ((FindMode != 0) && (JreGetStrMatchInfo(Name, 0) != NULL)))\r
                                                {\r
                                                        LvItem.mask = LVIF_STATE;\r
@@ -1900,7 +1900,7 @@ void FindFileInList(HWND hWnd, int Type)
                                _mbslwr(Name);\r
 \r
                                LvItem.state = 0;\r
-                               if(((FindMode == 0) && (CheckFname(Name, RegExp) == SUCCESS)) ||\r
+                               if(((FindMode == 0) && (CheckFname(Name, RegExp) == FFFTP_SUCCESS)) ||\r
                                   ((FindMode != 0) && (JreGetStrMatchInfo(Name, 0) != NULL)))\r
                                {\r
                                        LvItem.mask = LVIF_STATE;\r
@@ -1920,13 +1920,13 @@ void FindFileInList(HWND hWnd, int Type)
 \r
 \r
 #if 0\r
-/*----- \83\8f\83C\83\8b\83h\83J\81[\83h\82ð\90³\8bK\95\\8c»\82É\95Ï\8a·\82·\82é ------------------------------------\r
+/*----- ワイルドカードを正規表現に変換する ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void WildCard2RegExp(char *Str)\r
@@ -1986,13 +1986,13 @@ void WildCard2RegExp(char *Str)
 #endif\r
 \r
 \r
-/*----- \83J\81[\83\\83\8b\88Ê\92u\82Ì\83A\83C\83e\83\80\94Ô\8d\86\82ð\95Ô\82· --------------------------------------\r
+/*----- カーソル位置のアイテム番号を返す --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83B\83\93\83h\83E\94Ô\8d\86 (WIN_xxxx)\r
+*              int Win : ウィンドウ番号 (WIN_xxxx)\r
 *\r
 *      Return Value\r
-*              int \83A\83C\83e\83\80\94Ô\8d\86\r
+*              int アイテム番号\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetCurrentItem(int Win)\r
@@ -2011,13 +2011,13 @@ int GetCurrentItem(int Win)
 }\r
 \r
 \r
-/*----- \83A\83C\83e\83\80\90\94\82ð\95Ô\82· ------------------------------------------------------\r
+/*----- アイテム数を返す ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83B\83\93\83h\83E\94Ô\8d\86 (WIN_xxxx)\r
+*              int Win : ウィンドウ番号 (WIN_xxxx)\r
 *\r
 *      Return Value\r
-*              int \83A\83C\83e\83\80\90\94\r
+*              int アイテム数\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetItemCount(int Win)\r
@@ -2032,13 +2032,13 @@ int GetItemCount(int Win)
 }\r
 \r
 \r
-/*----- \91I\91ð\82³\82ê\82Ä\82¢\82é\83A\83C\83e\83\80\90\94\82ð\95Ô\82· ----------------------------------------\r
+/*----- 選択されているアイテム数を返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83B\83\93\83h\83E\94Ô\8d\86 (WIN_xxxx)\r
+*              int Win : ウィンドウ番号 (WIN_xxxx)\r
 *\r
 *      Return Value\r
-*              int \91I\91ð\82³\82ê\82Ä\82¢\82é\83A\83C\83e\83\80\90\94\r
+*              int 選択されているアイテム数\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetSelectedCount(int Win)\r
@@ -2053,15 +2053,15 @@ int GetSelectedCount(int Win)
 }\r
 \r
 \r
-/*----- \91I\91ð\82³\82ê\82Ä\82¢\82é\8dÅ\8f\89\82Ì\83A\83C\83e\83\80\94Ô\8d\86\82ð\95Ô\82· --------------------------------\r
+/*----- 選択されている最初のアイテム番号を返す --------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83B\83\93\83h\83E\94Ô\8d\86 (WIN_xxxx)\r
-*              int All : \91I\82Î\82ê\82Ä\82¢\82È\82¢\82à\82Ì\82ð\8aÜ\82ß\82é\r
+*              int Win : ウィンドウ番号 (WIN_xxxx)\r
+*              int All : 選ばれていないものを含める\r
 *\r
 *      Return Value\r
-*              int \83A\83C\83e\83\80\94Ô\8d\86\r
-*                      -1 = \91I\91ð\82³\82ê\82Ä\82¢\82È\82¢\r
+*              int アイテム番号\r
+*                      -1 = 選択されていない\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetFirstSelected(int Win, int All)\r
@@ -2081,16 +2081,16 @@ int GetFirstSelected(int Win, int All)
 }\r
 \r
 \r
-/*----- \91I\91ð\82³\82ê\82Ä\82¢\82é\8e\9f\82Ì\83A\83C\83e\83\80\94Ô\8d\86\82ð\95Ô\82· ----------------------------------\r
+/*----- 選択されている次のアイテム番号を返す ----------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83B\83\93\83h\83E\94Ô\8d\86 (WIN_xxxx)\r
-*              int Pos : \8d¡\82Ì\83A\83C\83e\83\80\94Ô\8d\86\r
-*              int All : \91I\82Î\82ê\82Ä\82¢\82È\82¢\82à\82Ì\82à\8aÜ\82ß\82é\r
+*              int Win : ウィンドウ番号 (WIN_xxxx)\r
+*              int Pos : 今のアイテム番号\r
+*              int All : 選ばれていないものも含める\r
 *\r
 *      Return Value\r
-*              int \83A\83C\83e\83\80\94Ô\8d\86\r
-*                      -1 = \91I\91ð\82³\82ê\82Ä\82¢\82È\82¢\r
+*              int アイテム番号\r
+*                      -1 = 選択されていない\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetNextSelected(int Win, int Pos, int All)\r
@@ -2110,15 +2110,15 @@ int GetNextSelected(int Win, int Pos, int All)
 }\r
 \r
 \r
-/*----- \8ew\92è\82³\82ê\82½\96¼\91O\82Ì\83A\83C\83e\83\80\82ð\92T\82· ----------------------------------------\r
+/*----- 指定された名前のアイテムを探す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              char *Name : \96¼\91O\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              char *Name : 名前\r
 *\r
 *      Return Value\r
-*              int \83A\83C\83e\83\80\94Ô\8d\86\r
-*                      -1=\8c©\82Â\82©\82ç\82È\82©\82Á\82½\r
+*              int アイテム番号\r
+*                      -1=見つからなかった\r
 *----------------------------------------------------------------------------*/\r
 \r
 int FindNameNode(int Win, char *Name)\r
@@ -2136,16 +2136,16 @@ int FindNameNode(int Win, char *Name)
 }\r
 \r
 \r
-/*----- \8ew\92è\88Ê\92u\82Ì\83A\83C\83e\83\80\82Ì\96¼\91O\82ð\95Ô\82· ----------------------------------------\r
+/*----- 指定位置のアイテムの名前を返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int Pos : \88Ê\92u\r
-*              char *Buf : \96¼\91O\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              int Max : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int Pos : 位置\r
+*              char *Buf : 名前を返すバッファ\r
+*              int Max : バッファのサイズ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void GetNodeName(int Win, int Pos, char *Buf, int Max)\r
@@ -2167,16 +2167,16 @@ void GetNodeName(int Win, int Pos, char *Buf, int Max)
 }\r
 \r
 \r
-/*----- \8ew\92è\88Ê\92u\82Ì\83A\83C\83e\83\80\82Ì\93ú\95t\82ð\95Ô\82· ----------------------------------------\r
+/*----- 指定位置のアイテムの日付を返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int Pos : \88Ê\92u\r
-*              FILETIME *Buf : \93ú\95t\82ð\95Ô\82·\83o\83b\83t\83@\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int Pos : 位置\r
+*              FILETIME *Buf : 日付を返すバッファ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      YES/NO=\93ú\95t\8fî\95ñ\82ª\82È\82©\82Á\82½\r
+*              int ステータス\r
+*                      YES/NO=日付情報がなかった\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetNodeTime(int Win, int Pos, FILETIME *Buf)\r
@@ -2201,16 +2201,16 @@ int GetNodeTime(int Win, int Pos, FILETIME *Buf)
 }\r
 \r
 \r
-/*----- \8ew\92è\88Ê\92u\82Ì\83A\83C\83e\83\80\82Ì\83T\83C\83Y\82ð\95Ô\82· --------------------------------------\r
+/*----- 指定位置のアイテムのサイズを返す --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int Pos : \88Ê\92u\r
-*              int *Buf : \83T\83C\83Y\82ð\95Ô\82·\83\8f\81[\83N\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int Pos : 位置\r
+*              int *Buf : サイズを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      YES/NO=\83T\83C\83Y\8fî\95ñ\82ª\82È\82©\82Á\82½\r
+*              int ステータス\r
+*                      YES/NO=サイズ情報がなかった\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetNodeSize(int Win, int Pos, LONGLONG *Buf)\r
@@ -2242,16 +2242,16 @@ int GetNodeSize(int Win, int Pos, LONGLONG *Buf)
 }\r
 \r
 \r
-/*----- \8ew\92è\88Ê\92u\82Ì\83A\83C\83e\83\80\82Ì\91®\90«\82ð\95Ô\82· ----------------------------------------\r
+/*----- 指定位置のアイテムの属性を返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int Pos : \88Ê\92u\r
-*              int *Buf : \91®\90«\82ð\95Ô\82·\83\8f\81[\83N\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int Pos : 位置\r
+*              int *Buf : 属性を返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      YES/NO=\83T\83C\83Y\8fî\95ñ\82ª\82È\82©\82Á\82½\r
+*              int ステータス\r
+*                      YES/NO=サイズ情報がなかった\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetNodeAttr(int Win, int Pos, int *Buf)\r
@@ -2280,14 +2280,14 @@ int GetNodeAttr(int Win, int Pos, int *Buf)
 }\r
 \r
 \r
-/*----- \8ew\92è\88Ê\92u\82Ì\83A\83C\83e\83\80\82Ì\83^\83C\83v\82ð\95Ô\82· --------------------------------------\r
+/*----- 指定位置のアイテムのタイプを返す --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int Pos : \88Ê\92u\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int Pos : 位置\r
 *\r
 *      Return Value\r
-*              int \83^\83C\83v (NODE_xxx)\r
+*              int タイプ (NODE_xxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetNodeType(int Win, int Pos)\r
@@ -2319,16 +2319,16 @@ int GetNodeType(int Win, int Pos)
 }\r
 \r
 \r
-/*----- \8ew\92è\88Ê\92u\82Ì\83A\83C\83e\83\80\82Ì\83I\81[\83i\96¼\82ð\95Ô\82· ------------------------------------\r
+/*----- 指定位置のアイテムのオーナ名を返す ------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int Pos : \88Ê\92u\r
-*              char *Buf : \83I\81[\83i\96¼\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              int Max : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int Pos : 位置\r
+*              char *Buf : オーナ名を返すバッファ\r
+*              int Max : バッファのサイズ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void GetNodeOwner(int Win, int Pos, char *Buf, int Max)\r
@@ -2349,13 +2349,13 @@ void GetNodeOwner(int Win, int Pos, char *Buf, int Max)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\88ê\97\97\83E\83C\83\93\83h\83E\82ð\83N\83\8a\83A ------------------------------\r
+/*----- ホスト側のファイル一覧ウインドウをクリア ------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void EraseRemoteDirForWnd(void)\r
@@ -2366,13 +2366,13 @@ void EraseRemoteDirForWnd(void)
 }\r
 \r
 \r
-/*----- \91I\91ð\82³\82ê\82Ä\82¢\82é\83t\83@\83C\83\8b\82Ì\91\8d\83T\83C\83Y\82ð\95Ô\82· --------------------------------\r
+/*----- 選択されているファイルの総サイズを返す --------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
 *\r
 *      Return Value\r
-*              double \83T\83C\83Y\r
+*              double サイズ\r
 *----------------------------------------------------------------------------*/\r
 \r
 double GetSelectedTotalSize(int Win)\r
@@ -2404,16 +2404,16 @@ double GetSelectedTotalSize(int Win)
 \r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\82Å\91I\82Î\82ê\82Ä\82¢\82é\83t\83@\83C\83\8b\82ð\83\8a\83X\83g\82É\93o\98^\82·\82é ------------------\r
+/*----- ファイル一覧で選ばれているファイルをリストに登録する ------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int Expand : \83T\83u\83f\83B\83\8c\83N\83g\83\8a\82ð\93W\8aJ\82·\82é (YES/NO)\r
-*              int All : \91I\82Î\82ê\82Ä\82¢\82È\82¢\82à\82Ì\82à\82·\82×\82Ä\93o\98^\82·\82é (YES/NO)\r
-*              FILELIST **Base : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int Expand : サブディレクトリを展開する (YES/NO)\r
+*              int All : 選ばれていないものもすべて登録する (YES/NO)\r
+*              FILELIST **Base : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void MakeSelectedFileList(int Win, int Expand, int All, FILELIST **Base, int *CancelCheckWork)\r
@@ -2428,7 +2428,7 @@ void MakeSelectedFileList(int Win, int Expand, int All, FILELIST **Base, int *Ca
 \r
        if((All == YES) || (GetSelectedCount(Win) > 0))\r
        {\r
-               /*===== \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82Ì\83t\83@\83C\83\8b =====*/\r
+               /*===== カレントディレクトリのファイル =====*/\r
 \r
                Pos = GetFirstSelected(Win, All);\r
                while(Pos != -1)\r
@@ -2466,7 +2466,7 @@ void MakeSelectedFileList(int Win, int Expand, int All, FILELIST **Base, int *Ca
 \r
                if(Expand == YES)\r
                {\r
-                       /*===== \83f\83B\83\8c\83N\83g\83\8a\83c\83\8a\81[ =====*/\r
+                       /*===== ディレクトリツリー =====*/\r
 \r
                        Pos = GetFirstSelected(Win, All);\r
                        while(Pos != -1)\r
@@ -2523,8 +2523,8 @@ void MakeSelectedFileList(int Win, int Expand, int All, FILELIST **Base, int *Ca
 }\r
 \r
 \r
-/* \83f\83o\83b\83O\97p */\r
-/* \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\93à\97e\82ð\95\\8e¦ */\r
+/* デバッグ用 */\r
+/* ファイルリストの内容を表示 */\r
 static void DispListList(FILELIST *Pos, char *Title)\r
 {\r
        DoPrintf("############ %s ############", Title);\r
@@ -2538,15 +2538,15 @@ static void DispListList(FILELIST *Pos, char *Title)
 }\r
 \r
 \r
-/*----- Drag&Drop\82³\82ê\82½\83t\83@\83C\83\8b\82ð\83\8a\83X\83g\82É\93o\98^\82·\82é -----------------------------\r
+/*----- Drag&Dropされたファイルをリストに登録する -----------------------------\r
 *\r
 *      Parameter\r
-*              WPARAM wParam : \83h\83\8d\83b\83v\82³\82ê\82½\83t\83@\83C\83\8b\82Ì\8fî\95ñ\r
-*              char *Cur : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              FILELIST **Base : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              WPARAM wParam : ドロップされたファイルの情報\r
+*              char *Cur : カレントディレクトリを返すバッファ\r
+*              FILELIST **Base : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void MakeDroppedFileList(WPARAM wParam, char *Cur, FILELIST **Base)\r
@@ -2606,14 +2606,14 @@ void MakeDroppedFileList(WPARAM wParam, char *Cur, FILELIST **Base)
 }\r
 \r
 \r
-/*----- Drag&Drop\82³\82ê\82½\83t\83@\83C\83\8b\82ª\82 \82é\83t\83H\83\8b\83_\82ð\8eæ\93¾\82·\82é -----------------------\r
+/*----- Drag&Dropされたファイルがあるフォルダを取得する -----------------------\r
 *\r
 *      Parameter\r
-*              WPARAM wParam : \83h\83\8d\83b\83v\82³\82ê\82½\83t\83@\83C\83\8b\82Ì\8fî\95ñ\r
-*              char *Cur : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82ð\95Ô\82·\83o\83b\83t\83@\r
+*              WPARAM wParam : ドロップされたファイルの情報\r
+*              char *Cur : カレントディレクトリを返すバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void MakeDroppedDir(WPARAM wParam, char *Cur)\r
@@ -2629,18 +2629,18 @@ void MakeDroppedDir(WPARAM wParam, char *Cur)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83T\83u\83f\83B\83\8c\83N\83g\83\8a\88È\89º\82Ì\83t\83@\83C\83\8b\82ð\83\8a\83X\83g\82É\93o\98^\82·\82é\81i\82P\81j-------\r
+/*----- ホスト側のサブディレクトリ以下のファイルをリストに登録する(1)-------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              char *Cur : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\r
-*              FILELIST **Base : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              char *Path : パス名\r
+*              char *Cur : カレントディレクトリ\r
+*              FILELIST **Base : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              NLST -alLR \82ð\8eg\82¤\r
+*              NLST -alLR を使う\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void MakeRemoteTree1(char *Path, char *Cur, FILELIST **Base, int *CancelCheckWork)\r
@@ -2649,7 +2649,7 @@ static void MakeRemoteTree1(char *Path, char *Cur, FILELIST **Base, int *CancelC
 \r
        if(DoCWD(Path, NO, NO, NO) == FTP_COMPLETE)\r
        {\r
-               /* \83T\83u\83t\83H\83\8b\83_\82à\8aÜ\82ß\82½\83\8a\83X\83g\82ð\8eæ\93¾ */\r
+               /* サブフォルダも含めたリストを取得 */\r
                Sts = DoDirListCmdSkt("R", "", 999, CancelCheckWork);   /* NLST -alLR*/\r
                DoCWD(Cur, NO, NO, NO);\r
 \r
@@ -2660,18 +2660,18 @@ static void MakeRemoteTree1(char *Path, char *Cur, FILELIST **Base, int *CancelC
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83T\83u\83f\83B\83\8c\83N\83g\83\8a\88È\89º\82Ì\83t\83@\83C\83\8b\82ð\83\8a\83X\83g\82É\93o\98^\82·\82é\81i\82Q\81j-------\r
+/*----- ホスト側のサブディレクトリ以下のファイルをリストに登録する(2)-------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              char *Cur : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\r
-*              FILELIST **Base : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              char *Path : パス名\r
+*              char *Cur : カレントディレクトリ\r
+*              FILELIST **Base : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \8ae\83t\83H\83\8b\83_\82É\88Ú\93®\82µ\82Ä\83\8a\83X\83g\82ð\8eæ\93¾\r
+*              各フォルダに移動してリストを取得\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void MakeRemoteTree2(char *Path, char *Cur, FILELIST **Base, int *CancelCheckWork)\r
@@ -2681,14 +2681,14 @@ static void MakeRemoteTree2(char *Path, char *Cur, FILELIST **Base, int *CancelC
        FILELIST *Pos;\r
        FILELIST Pkt;\r
 \r
-       /* VAX VMS \82Í CWD xxx/yyy \82Æ\82¢\82¤\8ew\92è\82ª\82Å\82«\82È\82¢\82Ì\82Å      */\r
-       /* CWD xxx, Cwd yyy \82Æ\95¡\90\94\82É\95ª\82¯\82é                                      */\r
+       /* VAX VMS は CWD xxx/yyy という指定ができないので */\r
+       /* CWD xxx, Cwd yyy と複数に分ける                                       */\r
        if(AskHostType() != HTYPE_VMS)\r
                Sts = DoCWD(Path, NO, NO, NO);\r
        else\r
        {\r
 #if defined(HAVE_OPENVMS)\r
-               /* OpenVMS\82Ì\8fê\8d\87\81A\83f\83B\83\8c\83N\83g\83\8a\88Ú\93®\8e\9e\82Í"HOGE.DIR;1"\82ð"HOGE"\82É\82·\82é */\r
+               /* OpenVMSの場合、ディレクトリ移動時は"HOGE.DIR;1"を"HOGE"にする */\r
                ReformVMSDirName(Path, TRUE);\r
 #endif\r
                Sts = DoCWDStepByStep(Path, Cur);\r
@@ -2710,7 +2710,7 @@ static void MakeRemoteTree2(char *Path, char *Cur, FILELIST **Base, int *CancelC
                        {\r
                                if(Pos->Node == NODE_DIR)\r
                                {\r
-                                       /* \82Ü\82¸\83f\83B\83\8c\83N\83g\83\8a\96¼\82ð\83Z\83b\83g */\r
+                                       /* まずディレクトリ名をセット */\r
                                        strcpy(Pkt.File, Pos->File);\r
                                        Pkt.Node = NODE_DIR;\r
                                        Pkt.Size = 0;\r
@@ -2718,7 +2718,7 @@ static void MakeRemoteTree2(char *Path, char *Cur, FILELIST **Base, int *CancelC
                                        memset(&Pkt.Time, 0, sizeof(FILETIME));\r
                                        AddFileList(&Pkt, Base);\r
 \r
-                                       /* \82»\82Ì\83f\83B\83\8c\83N\83g\83\8a\82Ì\92\86\82ð\8c\9f\8dõ */\r
+                                       /* そのディレクトリの中を検索 */\r
                                        MakeRemoteTree2(Pos->File, Cur, Base, CancelCheckWork);\r
                                }\r
                                Pos = Pos->Next;\r
@@ -2730,18 +2730,18 @@ static void MakeRemoteTree2(char *Path, char *Cur, FILELIST **Base, int *CancelC
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\93à\97e\82ð\95Ê\82Ì\83t\83@\83C\83\8b\83\8a\83X\83g\82É\83R\83s\81[ ----------------------\r
+/*----- ファイルリストの内容を別のファイルリストにコピー ----------------------\r
 *\r
 *      Parameter\r
-*              FILELIST **Base : \83R\83s\81[\90æ\r
-*              FILELIST *List : \83R\83s\81[\8c³\r
+*              FILELIST **Base : コピー先\r
+*              FILELIST *List : コピー元\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83R\83s\81[\82·\82é\82Ì\82Í\83t\83@\83C\83\8b\82Ì\8fî\95ñ\82¾\82¯\r
-*              \83f\83B\83\8c\83N\83g\83\8a\82Ì\8fî\95ñ\82Í\83R\83s\81[\82µ\82È\82¢\r
+*              コピーするのはファイルの情報だけ\r
+*              ディレクトリの情報はコピーしない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void CopyTmpListToFileList(FILELIST **Base, FILELIST *List)\r
@@ -2757,16 +2757,16 @@ static void CopyTmpListToFileList(FILELIST **Base, FILELIST *List)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\8fî\95ñ\82ð\83t\83@\83C\83\8b\83\8a\83X\83g\82É\93o\98^ --------------------------\r
+/*----- ホスト側のファイル情報をファイルリストに登録 --------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \83e\83\93\83|\83\89\83\8a\83t\83@\83C\83\8b\82Ì\83t\83@\83C\83\8b\96¼\94Ô\8d\86 (_ffftp.???)\r
-*              char *Path : \83p\83X\96¼\r
-*              int IncDir : \8dÄ\8bA\8c\9f\8dõ\82Ì\95û\96@ (RDIR_xxx)\r
-*              FILELIST **Base : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              int Num : テンポラリファイルのファイル名番号 (_ffftp.???)\r
+*              char *Path : パス名\r
+*              int IncDir : 再帰検索の方法 (RDIR_xxx)\r
+*              FILELIST **Base : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AddRemoteTreeToFileList(int Num, char *Path, int IncDir, FILELIST **Base)\r
@@ -2792,11 +2792,11 @@ void AddRemoteTreeToFileList(int Num, char *Path, int IncDir, FILELIST **Base)
 \r
                ListType = LIST_UNKNOWN;\r
 \r
-               while(GetListOneLine(Str, FMAX_PATH, fd) == SUCCESS)\r
+               while(GetListOneLine(Str, FMAX_PATH, fd) == FFFTP_SUCCESS)\r
                {\r
                        if((ListType = AnalizeFileInfo(Str)) == LIST_UNKNOWN)\r
                        {\r
-                               if(MakeDirPath(Str, ListType, Path, Dir) == SUCCESS)\r
+                               if(MakeDirPath(Str, ListType, Path, Dir) == FFFTP_SUCCESS)\r
                                {\r
                                        if(IncDir == RDIR_NLST)\r
                                        {\r
@@ -2839,19 +2839,19 @@ void AddRemoteTreeToFileList(int Num, char *Path, int IncDir, FILELIST **Base)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\8fî\95ñ\82Ì\82P\8ds\82ð\8eæ\93¾ ------------------------------------------\r
+/*----- ファイル一覧情報の1行を取得 ------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Buf : \82P\8ds\82Ì\8fî\95ñ\82ð\83Z\83b\83g\82·\82é\83o\83b\83t\83@\r
-*              int Max : \8dÅ\91å\95\8e\9a\90\94\r
-*              FILE *Fd : \83X\83g\83\8a\81[\83\80\r
+*              char *Buf : 1行の情報をセットするバッファ\r
+*              int Max : 最大文字数\r
+*              FILE *Fd : ストリーム\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
 *\r
 *      Note\r
-*              VAX VMS\88È\8aO\82Ì\8e\9e\82Í fgets(Buf, Max, Fd) \82Æ\93¯\82\r
-*              Vax VMS\82Ì\8e\9e\82Í\81A\95¡\90\94\8ds\82Ì\83t\83@\83C\83\8b\8fî\95ñ\82ð\82P\8ds\82É\82Ü\82Æ\82ß\82é\r
+*              VAX VMS以外の時は fgets(Buf, Max, Fd) と同じ\r
+*              Vax VMSの時は、複数行のファイル情報を1行にまとめる\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetListOneLine(char *Buf, int Max, FILE *Fd)\r
@@ -2859,19 +2859,19 @@ static int GetListOneLine(char *Buf, int Max, FILE *Fd)
        char Tmp[FMAX_PATH+1];\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
-       while((Sts == FAIL) && (fgets(Buf, Max, Fd) != NULL))\r
+       Sts = FFFTP_FAIL;\r
+       while((Sts == FFFTP_FAIL) && (fgets(Buf, Max, Fd) != NULL))\r
        {\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
                RemoveReturnCode(Buf);\r
                ReplaceAll(Buf, '\x08', ' ');\r
 \r
-               /* VAX VMS\82Å\82Í\83t\83@\83C\83\8b\8fî\95ñ\82ª\95¡\90\94\8ds\82É\82í\82©\82ê\82Ä\82¢\82é        */\r
-               /* \82»\82ê\82ð\82P\8ds\82É\82Ü\82Æ\82ß\82é                                                         */\r
+               /* VAX VMSではファイル情報が複数行にわかれている     */\r
+               /* それを1行にまとめる                                                               */\r
                if(AskHostType() == HTYPE_VMS)\r
                {\r
-                       if(strchr(Buf, ';') == NULL)    /* \83t\83@\83C\83\8b\96¼\88È\8aO\82Ì\8ds */\r
-                               Sts = FAIL;\r
+                       if(strchr(Buf, ';') == NULL)    /* ファイル名以外の行 */\r
+                               Sts = FFFTP_FAIL;\r
                        else\r
                        {\r
                                Max -= strlen(Buf);\r
@@ -2899,24 +2899,24 @@ static int GetListOneLine(char *Buf, int Max, FILE *Fd)
 }\r
 \r
 \r
-/*----- \83T\83u\83f\83B\83\8c\83N\83g\83\8a\8fî\95ñ\82Ì\89ð\90Í --------------------------------------------\r
+/*----- サブディレクトリ情報の解析 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83t\83@\83C\83\8b\8fî\95ñ\81i\82P\8ds\81j\r
-*              int ListType : \83\8a\83X\83g\82Ì\83^\83C\83v\r
-*              char *Path : \90æ\93ª\82©\82ç\82Ì\83p\83X\96¼\r
-*              char *Dir : \83f\83B\83\8c\83N\83g\83\8a\96¼\r
+*              char *Str : ファイル情報(1行)\r
+*              int ListType : リストのタイプ\r
+*              char *Path : 先頭からのパス名\r
+*              char *Dir : ディレクトリ名\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL=\83f\83B\83\8c\83N\83g\83\8a\8fî\95ñ\82Å\82È\82¢\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL=ディレクトリ情報でない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int MakeDirPath(char *Str, int ListType, char *Path, char *Dir)\r
 {\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        switch(ListType)\r
        {\r
                case LIST_ACOS :\r
@@ -2924,7 +2924,7 @@ static int MakeDirPath(char *Str, int ListType, char *Path, char *Dir)
                        break;\r
 \r
                default:\r
-                       if(*(Str + strlen(Str) - 1) == ':')             /* \8dÅ\8cã\82ª : \82È\82ç\83T\83u\83f\83B\83\8c\83N\83g\83\8a */\r
+                       if(*(Str + strlen(Str) - 1) == ':')             /* 最後が : ならサブディレクトリ */\r
                        {\r
                                if(strcmp(Str, ".:") != 0)\r
                                {\r
@@ -2946,7 +2946,7 @@ static int MakeDirPath(char *Str, int ListType, char *Path, char *Dir)
                                                ReplaceAll(Dir, '\\', '/');\r
                                        }\r
                                }\r
-                               Sts = SUCCESS;\r
+                               Sts = FFFTP_SUCCESS;\r
                        }\r
                        break;\r
        }\r
@@ -2954,14 +2954,14 @@ static int MakeDirPath(char *Str, int ListType, char *Path, char *Dir)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83T\83u\83f\83B\83\8c\83N\83g\83\8a\88È\89º\82Ì\83t\83@\83C\83\8b\82ð\83\8a\83X\83g\82É\93o\98^\82·\82é ----------\r
+/*----- ローカル側のサブディレクトリ以下のファイルをリストに登録する ----------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              FILELIST **Base : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              char *Path : パス名\r
+*              FILELIST **Base : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void MakeLocalTree(char *Path, FILELIST **Base)\r
@@ -3034,14 +3034,14 @@ static void MakeLocalTree(char *Path, FILELIST **Base)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\83\8a\83X\83g\82É\8fî\95ñ\82ð\93o\98^\82·\82é ----------------------------------------\r
+/*----- ファイルリストに情報を登録する ----------------------------------------\r
 *\r
 *      Parameter\r
-*              FILELIST *Pkt : \93o\98^\82·\82é\83t\83@\83C\83\8b\8fî\95ñ\r
-*              FILELIST **Base : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              FILELIST *Pkt : 登録するファイル情報\r
+*              FILELIST **Base : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void AddFileList(FILELIST *Pkt, FILELIST **Base)\r
@@ -3051,7 +3051,7 @@ static void AddFileList(FILELIST *Pkt, FILELIST **Base)
 \r
        DoPrintf("FileList : NODE=%d : %s", Pkt->Node, Pkt->File);\r
 \r
-       /* \83\8a\83X\83g\82Ì\8fd\95¡\82ð\8eæ\82è\8f\9c\82­ */\r
+       /* リストの重複を取り除く */\r
        Pos = *Base;\r
        while(Pos != NULL)\r
        {\r
@@ -3064,7 +3064,7 @@ static void AddFileList(FILELIST *Pkt, FILELIST **Base)
                Pos = Pos->Next;\r
        }\r
 \r
-       if(Pos == NULL)         /* \8fd\95¡\82µ\82Ä\82¢\82È\82¢\82Ì\82Å\93o\98^\82·\82é */\r
+       if(Pos == NULL)         /* 重複していないので登録する */\r
        {\r
                if((Pos = malloc(sizeof(FILELIST))) != NULL)\r
                {\r
@@ -3081,13 +3081,13 @@ static void AddFileList(FILELIST *Pkt, FILELIST **Base)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\83\8a\83X\83g\82ð\83N\83\8a\83A\82·\82é --------------------------------------------\r
+/*----- ファイルリストをクリアする --------------------------------------------\r
 *\r
 *      Parameter\r
-*              FILELIST **Base : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
+*              FILELIST **Base : ファイルリストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DeleteFileList(FILELIST **Base)\r
@@ -3107,16 +3107,16 @@ void DeleteFileList(FILELIST **Base)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\83\8a\83X\83g\82É\8ew\92è\82Ì\83t\83@\83C\83\8b\82ª\82 \82é\82©\83`\83F\83b\83N ------------------------\r
+/*----- ファイルリストに指定のファイルがあるかチェック ------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
-*              FILELIST *Base : \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\90æ\93ª\r
-*              int Caps : \91å\95\8e\9a/\8f¬\95\8e\9a\82Ì\8bæ\95Ê\83\82\81[\83h (COMP_xxx)\r
+*              char *Fname : ファイル名\r
+*              FILELIST *Base : ファイルリストの先頭\r
+*              int Caps : 大文字/小文字の区別モード (COMP_xxx)\r
 *\r
 *      Return Value\r
-*              FILELIST *\8c©\82Â\82©\82Á\82½\83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\83f\81[\83^\r
-*                      NULL=\8c©\82Â\82©\82ç\82È\82¢\r
+*              FILELIST *見つかったファイルリストのデータ\r
+*                      NULL=見つからない\r
 *----------------------------------------------------------------------------*/\r
 \r
 FILELIST *SearchFileList(char *Fname, FILELIST *Base, int Caps)\r
@@ -3151,13 +3151,13 @@ FILELIST *SearchFileList(char *Fname, FILELIST *Base, int Caps)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\8fî\95ñ\82©\82ç\83\8a\83X\83g\83^\83C\83v\82ð\8b\81\82ß\82é ----------------------------------\r
+/*----- ファイル情報からリストタイプを求める ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83t\83@\83C\83\8b\8fî\95ñ\81i\82P\8ds\81j\r
+*              char *Str : ファイル情報(1行)\r
 *\r
 *      Return Value\r
-*              int \83\8a\83X\83g\83^\83C\83v (LIST_xxx)\r
+*              int リストタイプ (LIST_xxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int AnalizeFileInfo(char *Str)\r
@@ -3190,17 +3190,17 @@ static int AnalizeFileInfo(char *Str)
                Ret = LIST_SHIBASOKU;\r
        else\r
        {\r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_UNIX_10, LIST_UNIX_20, LIST_UNIX_12, LIST_UNIX_22, LIST_UNIX_50, LIST_UNIX_60 */\r
                /* MELCOM80 */\r
 \r
-               if(FindField(Str, Tmp, 0, NO) == SUCCESS)\r
+               if(FindField(Str, Tmp, 0, NO) == FFFTP_SUCCESS)\r
                {\r
-                       /* MELCOM80\82Í "d rwxrwxrwx" \82Ì\82æ\82¤\82É\83X\83y\81[\83X\82ª\8bó\82¢\82Ä\82¢\82é */\r
+                       /* MELCOM80は "d rwxrwxrwx" のようにスペースが空いている */\r
                        Flag1 = NO;\r
                        if((strlen(Tmp) == 1) && (strchr("-dDlL", Tmp[0]) != NULL))\r
                        {\r
-                               if(FindField(Str, Tmp, 1, NO) == SUCCESS)\r
+                               if(FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS)\r
                                {\r
                                        if((strlen(Tmp) == 9) ||\r
                                           ((strlen(Tmp) > 9) && (IsDigit(Tmp[9]) != 0)))\r
@@ -3217,14 +3217,14 @@ static int AnalizeFileInfo(char *Str)
                                Add1 = 0;\r
                                if((strlen(Tmp) > 10) && (IsDigit(Tmp[10]) != 0))\r
                                {\r
-                                       /* \82±\82¤\82¢\82¤\8e\9e */\r
+                                       /* こういう時 */\r
                                        /*   drwxr-xr-x1234  owner group  1024  Nov 6 14:21 Linux/    */\r
                                        Add1 = -1;\r
                                }\r
 \r
 ////////////\r
 // LIST_UNIX_60 support\r
-                               if(FindField(Str, Tmp, 7+Add1, NO) == SUCCESS)\r
+                               if(FindField(Str, Tmp, 7+Add1, NO) == FFFTP_SUCCESS)\r
                                {\r
                                        GetMonth(Tmp, &Month, &Day);\r
                                        if(Month != 0)\r
@@ -3237,7 +3237,7 @@ static int AnalizeFileInfo(char *Str)
 ////////////\r
 // LIST_UNIX_12 support\r
                                if((Ret == LIST_UNKNOWN) &&\r
-                                  (FindField(Str, Tmp, 6+Add1, NO) == SUCCESS))\r
+                                  (FindField(Str, Tmp, 6+Add1, NO) == FFFTP_SUCCESS))\r
                                {\r
                                        GetMonth(Tmp, &Month, &Day);\r
                                        if(Month != 0)\r
@@ -3250,7 +3250,7 @@ static int AnalizeFileInfo(char *Str)
 ////////////\r
 // LIST_UNIX_70 support\r
                                if((Ret == LIST_UNKNOWN) &&\r
-                                  (FindField(Str, Tmp, 6+Add1, NO) == SUCCESS))\r
+                                  (FindField(Str, Tmp, 6+Add1, NO) == FFFTP_SUCCESS))\r
                                {\r
                                        GetMonth(Tmp, &Month, &Day);\r
                                        if(Month != 0)\r
@@ -3261,7 +3261,7 @@ static int AnalizeFileInfo(char *Str)
 ///////////\r
 \r
                                if((Ret == LIST_UNKNOWN) &&\r
-                                  (FindField(Str, Tmp, 5+Add1, NO) == SUCCESS))\r
+                                  (FindField(Str, Tmp, 5+Add1, NO) == FFFTP_SUCCESS))\r
                                {\r
                                        GetMonth(Tmp, &Month, &Day);\r
                                        if(Month != 0)\r
@@ -3271,7 +3271,7 @@ static int AnalizeFileInfo(char *Str)
                                }\r
 \r
                                if((Ret == LIST_UNKNOWN) &&\r
-                                  (FindField(Str, Tmp, 4+Add1, NO) == SUCCESS))\r
+                                  (FindField(Str, Tmp, 4+Add1, NO) == FFFTP_SUCCESS))\r
                                {\r
                                        GetMonth(Tmp, &Month, &Day);\r
                                        if(Month != 0)\r
@@ -3281,7 +3281,7 @@ static int AnalizeFileInfo(char *Str)
                                }\r
 \r
                                if((Ret == LIST_UNKNOWN) &&\r
-                                  (FindField(Str, Tmp, 3+Add1, NO) == SUCCESS))\r
+                                  (FindField(Str, Tmp, 3+Add1, NO) == FFFTP_SUCCESS))\r
                                {\r
                                        GetMonth(Tmp, &Month, &Day);\r
                                        if(Month != 0)\r
@@ -3295,21 +3295,21 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_AS400 */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                           (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                        {\r
-                               if((FindField(Str, Tmp, 3, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 3, NO) == FFFTP_SUCCESS) &&\r
                                   (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                                {\r
-                                       if((FindField(Str, Tmp, 1, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS) &&\r
                                           (IsDigit(Tmp[0]) != 0))\r
                                        {\r
-                                               if(FindField(Str, Tmp, 5, NO) == SUCCESS)\r
+                                               if(FindField(Str, Tmp, 5, NO) == FFFTP_SUCCESS)\r
                                                {\r
                                                        Ret = LIST_AS400;\r
                                                }\r
@@ -3318,24 +3318,24 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_M1800 */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 5, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 5, NO) == FFFTP_SUCCESS) &&\r
                           (CheckYYMMDDformat(Tmp, '*', NO) != 0))\r
                        {\r
-                               if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                                   ((IsDigit(Tmp[0]) != 0) || (StrAllSameChar(Tmp, '*') == YES)))\r
                                {\r
-                                       if((FindField(Str, Tmp, 3, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 3, NO) == FFFTP_SUCCESS) &&\r
                                           ((IsDigit(Tmp[0]) != 0) || (StrAllSameChar(Tmp, '*') == YES)))\r
                                        {\r
-                                               if((FindField(Str, Tmp, 0, NO) == SUCCESS) &&\r
+                                               if((FindField(Str, Tmp, 0, NO) == FFFTP_SUCCESS) &&\r
                                                   (strlen(Tmp) == 4))\r
                                                {\r
-                                                       if(FindField(Str, Tmp, 6, NO) == SUCCESS)\r
+                                                       if(FindField(Str, Tmp, 6, NO) == FFFTP_SUCCESS)\r
                                                        {\r
                                                                Ret = LIST_M1800;\r
                                                        }\r
@@ -3345,21 +3345,21 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_GP6000 */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 1, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS) &&\r
                           (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                        {\r
-                               if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                                   (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                                {\r
-                                       if((FindField(Str, Tmp, 5, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 5, NO) == FFFTP_SUCCESS) &&\r
                                           (IsDigit(Tmp[0]) != 0))\r
                                        {\r
-                                               if(FindField(Str, Tmp, 6, NO) == SUCCESS)\r
+                                               if(FindField(Str, Tmp, 6, NO) == FFFTP_SUCCESS)\r
                                                {\r
                                                        Ret = LIST_GP6000;\r
                                                }\r
@@ -3368,20 +3368,20 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_DOS_1, LIST_DOS_2 */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 1, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS) &&\r
                           (CheckHHMMformat(Tmp) == YES))\r
                        {\r
-                               if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                                   ((Tmp[0] == '<') || (IsDigit(Tmp[0]) != 0)))\r
                                {\r
-                                       if(FindField(Str, Tmp, 3, NO) == SUCCESS)\r
+                                       if(FindField(Str, Tmp, 3, NO) == FFFTP_SUCCESS)\r
                                        {\r
-                                               if((FindField(Str, Tmp, 0, NO) == SUCCESS) &&\r
+                                               if((FindField(Str, Tmp, 0, NO) == FFFTP_SUCCESS) &&\r
                                                   (CheckYYMMDDformat(Tmp, NUL, YES) != 0))\r
                                                {\r
                                                        TmpInt = atoi(Tmp);\r
@@ -3395,18 +3395,18 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_DOS_3 */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 3, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 3, NO) == FFFTP_SUCCESS) &&\r
                           (CheckHHMMformat(Tmp) == YES))\r
                        {\r
-                               if((FindField(Str, Tmp, 1, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS) &&\r
                                   ((Tmp[0] == '<') || (IsDigit(Tmp[0]) != 0)))\r
                                {\r
-                                       if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                                           (CheckYYMMDDformat(Tmp, NUL, YES) != 0))\r
                                        {\r
                                                Ret = LIST_DOS_3;\r
@@ -3415,21 +3415,21 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_DOS_4 */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 0, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 0, NO) == FFFTP_SUCCESS) &&\r
                           (CheckYYYYMMDDformat(Tmp, NUL) == YES))\r
                        {\r
-                               if((FindField(Str, Tmp, 1, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS) &&\r
                                   (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                                {\r
-                                       if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                                           ((Tmp[0] == '<') || (IsDigit(Tmp[0]) != 0)))\r
                                        {\r
-                                               if(FindField(Str, Tmp, 3, NO) == SUCCESS)\r
+                                               if(FindField(Str, Tmp, 3, NO) == FFFTP_SUCCESS)\r
                                                {\r
                                                        Ret = LIST_DOS_4;\r
                                                }\r
@@ -3438,20 +3438,20 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_CHAMELEON */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if(FindField(Str, Tmp, 2, NO) == SUCCESS)\r
+                       if(FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS)\r
                        {\r
                                GetMonth(Tmp, &Month, &Day);\r
                                if((Month != 0) && (Day == 0))\r
                                {\r
-                                       if((FindField(Str, Tmp, 1, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS) &&\r
                                           ((Tmp[0] == '<') || (IsDigit(Tmp[0]) != 0)))\r
                                        {\r
-                                               if((FindField(Str, Tmp, 5, NO) == SUCCESS) &&\r
+                                               if((FindField(Str, Tmp, 5, NO) == FFFTP_SUCCESS) &&\r
                                                   (CheckHHMMformat(Tmp) == YES))\r
                                                {\r
                                                        Ret = LIST_CHAMELEON;\r
@@ -3461,21 +3461,21 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_OS2 */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 3, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 3, NO) == FFFTP_SUCCESS) &&\r
                           (CheckHHMMformat(Tmp) == YES))\r
                        {\r
-                               if((FindField(Str, Tmp, 0, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 0, NO) == FFFTP_SUCCESS) &&\r
                                   (IsDigit(Tmp[0]) != 0))\r
                                {\r
-                                       if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                                           (CheckYYMMDDformat(Tmp, NUL, YES) != 0))\r
                                        {\r
-                                               if(FindField(Str, Tmp, 4, NO) == SUCCESS)\r
+                                               if(FindField(Str, Tmp, 4, NO) == FFFTP_SUCCESS)\r
                                                {\r
                                                        Ret = LIST_OS2;\r
                                                }\r
@@ -3484,37 +3484,37 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_OS7 */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 0, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 0, NO) == FFFTP_SUCCESS) &&\r
                           (strlen(Tmp) == 10))\r
                        {\r
-                               if((FindField(Str, Tmp, 3, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 3, NO) == FFFTP_SUCCESS) &&\r
                                   (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                                {\r
-                                       if((FindField(Str, Tmp, 4, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 4, NO) == FFFTP_SUCCESS) &&\r
                                           (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                                        {\r
-                                               if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                                               if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                                                   (IsDigit(Tmp[0]) != 0))\r
                                                {\r
-                                                       if(FindField(Str, Tmp, 5, NO) == SUCCESS)\r
+                                                       if(FindField(Str, Tmp, 5, NO) == FFFTP_SUCCESS)\r
                                                        {\r
                                                                Ret = LIST_OS7_2;\r
                                                        }\r
                                                }\r
                                        }\r
                                }\r
-                               else if((FindField(Str, Tmp, 1, NO) == SUCCESS) &&\r
+                               else if((FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS) &&\r
                                                (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                                {\r
-                                       if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                                           (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                                        {\r
-                                               if(FindField(Str, Tmp, 3, NO) == SUCCESS)\r
+                                               if(FindField(Str, Tmp, 3, NO) == FFFTP_SUCCESS)\r
                                                {\r
                                                        Ret = LIST_OS7_1;\r
                                                }\r
@@ -3523,23 +3523,23 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_ALLIED */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 0, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 0, NO) == FFFTP_SUCCESS) &&\r
                           ((Tmp[0] == '<') || (IsDigit(Tmp[0]) != 0)))\r
                        {\r
-                               if((FindField(Str, Tmp, 5, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 5, NO) == FFFTP_SUCCESS) &&\r
                                   (CheckHHMMformat(Tmp) == YES))\r
                                {\r
-                                       if(FindField(Str, Tmp, 3, NO) == SUCCESS)\r
+                                       if(FindField(Str, Tmp, 3, NO) == FFFTP_SUCCESS)\r
                                        {\r
                                                GetMonth(Tmp, &Month, &Day);\r
                                                if(Month != 0)\r
                                                {\r
-                                                       if((FindField(Str, Tmp, 6, NO) == SUCCESS) &&\r
+                                                       if((FindField(Str, Tmp, 6, NO) == FFFTP_SUCCESS) &&\r
                                                           (IsDigit(Tmp[0]) != 0))\r
                                                        {\r
                                                                Ret = LIST_ALLIED;\r
@@ -3550,21 +3550,21 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_OS9 */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 1, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS) &&\r
                           (CheckYYMMDDformat(Tmp, NUL, NO) != 0))\r
                        {\r
-                               if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                                   (IsDigit(Tmp[0]) != 0) && (strlen(Tmp) == 4))\r
                                {\r
-                                       if((FindField(Str, Tmp, 5, NO) == SUCCESS) &&\r
+                                       if((FindField(Str, Tmp, 5, NO) == FFFTP_SUCCESS) &&\r
                                           (IsDigit(Tmp[0]) != 0))\r
                                        {\r
-                                               if(FindField(Str, Tmp, 6, NO) == SUCCESS)\r
+                                               if(FindField(Str, Tmp, 6, NO) == FFFTP_SUCCESS)\r
                                                {\r
                                                        Ret = LIST_OS9;\r
                                                }\r
@@ -3573,19 +3573,19 @@ static int AnalizeFileInfo(char *Str)
                        }\r
                }\r
 \r
-               /* \88È\89º\82Ì\83t\83H\81[\83}\83b\83g\82ð\83`\83F\83b\83N */\r
+               /* 以下のフォーマットをチェック */\r
                /* LIST_IBM */\r
 \r
                if(Ret == LIST_UNKNOWN)\r
                {\r
-                       if((FindField(Str, Tmp, 2, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 2, NO) == FFFTP_SUCCESS) &&\r
                           (CheckYYYYMMDDformat(Tmp, NUL) == YES))\r
                        {\r
-                               if((FindField(Str, Tmp, 1, NO) == SUCCESS) && IsDigit(Tmp[0]))\r
+                               if((FindField(Str, Tmp, 1, NO) == FFFTP_SUCCESS) && IsDigit(Tmp[0]))\r
                                {\r
-                                       if((FindField(Str, Tmp, 7, NO) == SUCCESS) && IsDigit(Tmp[0]))\r
+                                       if((FindField(Str, Tmp, 7, NO) == FFFTP_SUCCESS) && IsDigit(Tmp[0]))\r
                                        {\r
-                                               if(FindField(Str, Tmp, 9, NO) == SUCCESS)\r
+                                               if(FindField(Str, Tmp, 9, NO) == FFFTP_SUCCESS)\r
                                                {\r
                                                        Ret = LIST_IBM;\r
                                                }\r
@@ -3602,17 +3602,17 @@ DoPrintf("ListType=%d", Ret);
 }\r
 \r
 \r
-/*----- UNIX\8cn\83\8a\83X\83g\83^\83C\83v\82Ì\83`\83F\83b\83N\82ð\8ds\82È\82¤ ----------------------------------\r
+/*----- UNIX系リストタイプのチェックを行なう ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83t\83@\83C\83\8b\8fî\95ñ\81i\82P\8ds\81j\r
-*              char *Tmp : \88ê\8e\9e\83\8f\81[\83N\r
-*              int Add1 : \89Á\8eZ\83p\83\89\83\81\81[\83^1\r
-*              int Add2 : \89Á\8eZ\83p\83\89\83\81\81[\83^2\r
-*              int Day : \93ú (0=\82±\82±\82Å\8eæ\93¾\82·\82é)\r
+*              char *Str : ファイル情報(1行)\r
+*              char *Tmp : 一時ワーク\r
+*              int Add1 : 加算パラメータ1\r
+*              int Add2 : 加算パラメータ2\r
+*              int Day : 日 (0=ここで取得する)\r
 *\r
 *      Return Value\r
-*              int \83\8a\83X\83g\83^\83C\83v (LIST_xxx)\r
+*              int リストタイプ (LIST_xxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CheckUnixType(char *Str, char *Tmp, int Add1, int Add2, int Day)\r
@@ -3626,37 +3626,37 @@ static int CheckUnixType(char *Str, char *Tmp, int Add1, int Add2, int Day)
        Flag = 0;\r
        Ret = LIST_UNKNOWN;\r
 \r
-//Day\82É\82æ\82Á\82ÄAdd3\82ð\95Ï\82¦\82é\r
+//DayによってAdd3を変える\r
 \r
        Add3 = 0;\r
        if(Day != 0)\r
                Add3 = -1;\r
 \r
-       // unix\8cn\83`\83F\83b\83N\r
+       // unix系チェック\r
        if((Day != 0) ||\r
-          ((FindField(Str, Tmp, 6+Add1+Add2+Add3, NO) == SUCCESS) &&\r
+          ((FindField(Str, Tmp, 6+Add1+Add2+Add3, NO) == FFFTP_SUCCESS) &&\r
                ((atoi(Tmp) >= 1) && (atoi(Tmp) <= 31))))\r
        {\r
-               if((FindField(Str, Tmp, 7+Add1+Add2+Add3, NO) == SUCCESS) &&\r
-                  ((atoi(Tmp) >= 1900) || (GetHourAndMinute(Tmp, &Hour, &Minute) == SUCCESS)))\r
+               if((FindField(Str, Tmp, 7+Add1+Add2+Add3, NO) == FFFTP_SUCCESS) &&\r
+                  ((atoi(Tmp) >= 1900) || (GetHourAndMinute(Tmp, &Hour, &Minute) == FFFTP_SUCCESS)))\r
                {\r
-                       if(FindField(Str, Tmp, 8+Add1+Add2+Add3, NO) == SUCCESS)\r
+                       if(FindField(Str, Tmp, 8+Add1+Add2+Add3, NO) == FFFTP_SUCCESS)\r
                        {\r
                                Flag = 1;\r
                        }\r
                }\r
        }\r
 \r
-       // \92\86\8d\91\8cêSolaris\90ê\97p\r
+       // 中国語Solaris専用\r
        if(Flag == 0)\r
        {\r
-          if((FindField(Str, Tmp, 7+Add1+Add2+Add3, NO) == SUCCESS) &&\r
+          if((FindField(Str, Tmp, 7+Add1+Add2+Add3, NO) == FFFTP_SUCCESS) &&\r
                  ((atoi(Tmp) >= 1) && (atoi(Tmp) <= 31)))\r
                {\r
-                       if((FindField(Str, Tmp, 5+Add1+Add2+Add3, NO) == SUCCESS) &&\r
+                       if((FindField(Str, Tmp, 5+Add1+Add2+Add3, NO) == FFFTP_SUCCESS) &&\r
                           (atoi(Tmp) >= 1900))\r
                        {\r
-                               if((FindField(Str, Tmp, 6+Add1+Add2+Add3, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Tmp, 6+Add1+Add2+Add3, NO) == FFFTP_SUCCESS) &&\r
                                   (((atoi(Tmp) >= 1) && (atoi(Tmp) <= 9) && \r
                                         ((unsigned char)Tmp[1] == 0xD4) &&\r
                                         ((unsigned char)Tmp[2] == 0xC2)) ||\r
@@ -3664,7 +3664,7 @@ static int CheckUnixType(char *Str, char *Tmp, int Add1, int Add2, int Day)
                                         ((unsigned char)Tmp[2] == 0xD4) && \r
                                         ((unsigned char)Tmp[3] == 0xC2))))\r
                                {\r
-                                       if(FindField(Str, Tmp, 8+Add1+Add2+Add3, NO) == SUCCESS)\r
+                                       if(FindField(Str, Tmp, 8+Add1+Add2+Add3, NO) == FFFTP_SUCCESS)\r
                                        {\r
                                                Flag = 2;\r
                                        }\r
@@ -3756,18 +3756,18 @@ static int CheckUnixType(char *Str, char *Tmp, int Add1, int Add2, int Day)
 }\r
 \r
 \r
-/*----- HH:MM \8c`\8e®\82Ì\95\8e\9a\97ñ\82©\82Ç\82¤\82©\82ð\83`\83F\83b\83N ----------------------------------\r
+/*----- HH:MM 形式の文字列かどうかをチェック ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES/NO)\r
+*              int ステータス (YES/NO)\r
 *\r
 *      Note\r
-*              \8bæ\90Ø\82è\95\8e\9a\82Í\89½\82Å\82à\82æ\82¢\r
-*              \8e\9e\95ª\82Å\82È\82­\82Ä\82à\82æ\82¢\r
-*              \8cã\82ë\82É\97]\95ª\82È\95\8e\9a\82ª\95t\82¢\82Ä\82¢\82Ä\82à\82æ\82¢\r
+*              区切り文字は何でもよい\r
+*              時分でなくてもよい\r
+*              後ろに余分な文字が付いていてもよい\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CheckHHMMformat(char *Str)\r
@@ -3788,22 +3788,22 @@ static int CheckHHMMformat(char *Str)
 }\r
 \r
 \r
-/*----- YY/MM/DD \8c`\8e®\82Ì\95\8e\9a\97ñ\82©\82Ç\82¤\82©\82ð\83`\83F\83b\83N -------------------------------\r
+/*----- YY/MM/DD 形式の文字列かどうかをチェック -------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              char Sym : \90\94\8e\9a\82Ì\91ã\82í\82è\82É\8eg\82¦\82é\8bL\8d\86 (NUL=\90\94\8e\9a\88È\8aO\8eg\82¦\82È\82¢)\r
-*              int Dig3 : 3\8c\85\82Ì\94N\82ð\8b\96\89Â\r
+*              char *Str : 文字列\r
+*              char Sym : 数字の代わりに使える記号 (NUL=数字以外使えない)\r
+*              int Dig3 : 3桁の年を許可\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      0 = \8aY\93\96\82µ\82È\82¢\r
+*              int ステータス\r
+*                      0 = 該当しない\r
 *                      1 = ??/??/??, ??/??/???\r
 *                      2 = ???/??/??\r
 *\r
 *      Note\r
-*              \8bæ\90Ø\82è\95\8e\9a\82Í\89½\82Å\82à\82æ\82¢\r
-*              \94N\8c\8e\93ú\82Å\82È\82­\82Ä\82à\82æ\82¢\r
+*              区切り文字は何でもよい\r
+*              年月日でなくてもよい\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CheckYYMMDDformat(char *Str, char Sym, int Dig3)\r
@@ -3845,18 +3845,18 @@ static int CheckYYMMDDformat(char *Str, char Sym, int Dig3)
 }\r
 \r
 \r
-/*----- YYYY/MM/DD \8c`\8e®\82Ì\95\8e\9a\97ñ\82©\82Ç\82¤\82©\82ð\83`\83F\83b\83N -----------------------------\r
+/*----- YYYY/MM/DD 形式の文字列かどうかをチェック -----------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              char Sym : \90\94\8e\9a\82Ì\91ã\82í\82è\82É\8eg\82¦\82é\8bL\8d\86 (NUL=\90\94\8e\9a\88È\8aO\8eg\82¦\82È\82¢)\r
+*              char *Str : 文字列\r
+*              char Sym : 数字の代わりに使える記号 (NUL=数字以外使えない)\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES/NO)\r
+*              int ステータス (YES/NO)\r
 *\r
 *      Note\r
-*              \8bæ\90Ø\82è\95\8e\9a\82Í\89½\82Å\82à\82æ\82¢\r
-*              \94N\8c\8e\93ú\82Å\82È\82­\82Ä\82à\82æ\82¢\r
+*              区切り文字は何でもよい\r
+*              年月日でなくてもよい\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CheckYYYYMMDDformat(char *Str, char Sym)\r
@@ -3878,21 +3878,21 @@ static int CheckYYYYMMDDformat(char *Str, char Sym)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\8fî\95ñ\82©\82ç\83t\83@\83C\83\8b\96¼\81A\83T\83C\83Y\82È\82Ç\82ð\8eæ\82è\8fo\82· ----------------------\r
+/*----- ファイル情報からファイル名、サイズなどを取り出す ----------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83t\83@\83C\83\8b\8fî\95ñ\81i\82P\8ds\81j\r
-*              int ListType : \83\8a\83X\83g\82Ì\83^\83C\83v\r
-*              char *Name : \83t\83@\83C\83\8b\96¼\82Ì\83R\83s\81[\90æ\r
-*              LONGLONG *Size : \83T\83C\83Y\82Ì\83R\83s\81[\90æ\r
-*              FILETIME *Time : \93ú\95t\82Ì\83R\83s\81[\90æ\r
-*              int *Attr : \91®\90«\82Ì\83R\83s\81[\90æ\r
-*              char *Owner : \83I\81[\83i\96¼\r
-*              int *Link : \83\8a\83\93\83N\82©\82Ç\82¤\82© (YES/NO)\r
-*              int *InfoExist : \8e\9e\8d\8f\82Ì\8fî\95ñ\82ª\82 \82Á\82½\82©\82Ç\82¤\82© (YES/NO)\r
+*              char *Str : ファイル情報(1行)\r
+*              int ListType : リストのタイプ\r
+*              char *Name : ファイル名のコピー先\r
+*              LONGLONG *Size : サイズのコピー先\r
+*              FILETIME *Time : 日付のコピー先\r
+*              int *Attr : 属性のコピー先\r
+*              char *Owner : オーナ名\r
+*              int *Link : リンクかどうか (YES/NO)\r
+*              int *InfoExist : 時刻の情報があったかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              int \8eí\97Þ (NODE_xxxx)\r
+*              int 種類 (NODE_xxxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size, FILETIME *Time, int *Attr, char *Owner, int *Link, int *InfoExist)\r
@@ -3914,7 +3914,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
        static const int DosDate[3][3][2] = { { {0, 0}, {3, 4}, {6, 7} }, { {6, 7}, {0, 0}, {3, 4} }, { {6, 7}, {0, 0}, {3, 4} } };\r
        static const int DosLongFname[3] = { YES, YES, NO };\r
 \r
-       /* \82Ü\82¸\83N\83\8a\83A\82µ\82Ä\82¨\82­ */\r
+       /* まずクリアしておく */\r
        Ret = NODE_NONE;\r
        *Size = -1;\r
        *Attr = 0;\r
@@ -3943,7 +3943,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
 \r
                        *InfoExist |= (FINFO_DATE | FINFO_SIZE);\r
 \r
-                       /* \8e\9e\8d\8f */\r
+                       /* 時刻 */\r
                        FindField(Str, Buf, DosPos[offs][0], NO);\r
                        if((Pos = strchr(Buf, ':')) != NULL)\r
                        {\r
@@ -3968,7 +3968,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                                }\r
                        }\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, DosPos[offs][1], NO);\r
                        if((offs2 = CheckYYMMDDformat(Buf, NUL, YES)) == 0)\r
                                break;\r
@@ -3979,12 +3979,12 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, DosPos[offs][2], NO);\r
                        *Size = _atoi64(Buf);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, DosPos[offs][3], DosLongFname[offs]) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, DosPos[offs][3], DosLongFname[offs]) == FFFTP_SUCCESS)\r
                        {\r
                                Ret = NODE_FILE;\r
                                if(Buf[0] == '<')\r
@@ -3995,13 +3995,13 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_DOS_4 :\r
                        *InfoExist |= (FINFO_TIME | FINFO_DATE | FINFO_SIZE);\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, 0, NO);\r
                        sTime.wYear = atoi(Buf);\r
                        sTime.wMonth = atoi(Buf+5);\r
                        sTime.wDay = atoi(Buf+8);\r
 \r
-                       /* \8e\9e\8d\8f */\r
+                       /* 時刻 */\r
                        *InfoExist |= FINFO_TIME;\r
                        FindField(Str, Buf, 1, NO);\r
                        sTime.wHour = atoi(Buf);\r
@@ -4011,12 +4011,12 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 2, NO);\r
                        *Size = _atoi64(Buf);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 3, YES) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 3, YES) == FFFTP_SUCCESS)\r
                        {\r
                                Ret = NODE_FILE;\r
                                if(Buf[0] == '<')\r
@@ -4027,7 +4027,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_OS2 :\r
                        *InfoExist |= (FINFO_DATE | FINFO_SIZE);\r
 \r
-                       /* \8e\9e\8d\8f */\r
+                       /* 時刻 */\r
                        FindField(Str, Buf, 3, NO);\r
                        if((Pos = strchr(Buf, ':')) != NULL)\r
                        {\r
@@ -4038,7 +4038,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                                sTime.wMilliseconds = 0;\r
                        }\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, 2, NO);\r
                        sTime.wYear = Assume1900or2000(atoi(Buf+6));\r
                        sTime.wMonth = atoi(Buf+0);\r
@@ -4046,12 +4046,12 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 0, NO);\r
                        *Size = _atoi64(Buf);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 4, YES) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 4, YES) == FFFTP_SUCCESS)\r
                        {\r
                                FindField(Str, Buf, 1, NO);\r
                                Ret = NODE_FILE;\r
@@ -4063,20 +4063,20 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_CHAMELEON :\r
                        *InfoExist |= (FINFO_TIME | FINFO_DATE | FINFO_SIZE | FINFO_ATTR);\r
 \r
-                       /* \91®\90« */\r
+                       /* 属性 */\r
                        FindField(Str, Buf, 6, NO);\r
                        strcat(Buf, "------");\r
                        *Attr = AttrString2Value(Buf+1);\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, 2, NO);\r
-                       GetMonth(Buf, &sTime.wMonth, &sTime.wDay);      /* wDay\82Í\8fí\82É0 */\r
+                       GetMonth(Buf, &sTime.wMonth, &sTime.wDay);      /* wDayは常に0 */\r
                        FindField(Str, Buf, 3, NO);\r
                        sTime.wDay = atoi(Buf);\r
                        FindField(Str, Buf, 4, NO);\r
                        sTime.wYear = atoi(Buf);\r
 \r
-                       /* \8e\9e\8d\8f */\r
+                       /* 時刻 */\r
                        FindField(Str, Buf, 5, NO);\r
                        sTime.wHour = atoi(Buf);\r
                        sTime.wMinute = atoi(Buf+3);\r
@@ -4085,12 +4085,12 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 1, NO);\r
                        *Size = _atoi64(Buf);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 0, NO) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 0, NO) == FFFTP_SUCCESS)\r
                        {\r
                                Ret = NODE_FILE;\r
                                if(Buf[0] == '<')\r
@@ -4101,18 +4101,18 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_AS400 :\r
                        *InfoExist |= (FINFO_TIME | FINFO_DATE | FINFO_SIZE);\r
 \r
-                       /* \83I\81[\83i\96¼ */\r
+                       /* オーナ名 */\r
                        FindField(Str, Buf, 0, NO);\r
                        strncpy(Owner, Buf, OWNER_NAME_LEN);\r
 \r
-                       /* \8e\9e\8d\8f */\r
+                       /* 時刻 */\r
                        FindField(Str, Buf, 3, NO);\r
                        sTime.wHour = atoi(Buf);\r
                        sTime.wMinute = atoi(Buf+3);\r
                        sTime.wSecond = 0;\r
                        sTime.wMilliseconds = 0;\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, 2, NO);\r
                        sTime.wYear = Assume1900or2000(atoi(Buf));\r
                        sTime.wMonth = atoi(Buf + 3);\r
@@ -4120,12 +4120,12 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 1, NO);\r
                        *Size = _atoi64(Buf);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 5, YES) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 5, YES) == FFFTP_SUCCESS)\r
                        {\r
                                Ret = NODE_FILE;\r
                                if((Pos = strchr(Fname, '/')) != NULL)\r
@@ -4139,12 +4139,12 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_M1800 :\r
                        *InfoExist |= FINFO_ATTR;\r
 \r
-                       /* \91®\90« */\r
+                       /* 属性 */\r
                        FindField(Str, Buf, 0, NO);\r
                        strcat(Buf, "------");\r
                        *Attr = AttrString2Value(Buf+1);\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        Time->dwLowDateTime = 0;\r
                        Time->dwHighDateTime = 0;\r
                        FindField(Str, Buf, 5, NO);\r
@@ -4163,8 +4163,8 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                                SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
                        }\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 6, YES) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 6, YES) == FFFTP_SUCCESS)\r
                        {\r
                                RemoveTailingSpaces(Fname);\r
                                Ret = NODE_FILE;\r
@@ -4179,18 +4179,18 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_GP6000 :\r
                        *InfoExist |= (FINFO_TIME | FINFO_DATE | FINFO_SIZE | FINFO_ATTR);\r
 \r
-                       /* \83I\81[\83i\96¼ */\r
+                       /* オーナ名 */\r
                        FindField(Str, Buf, 3, NO);\r
                        strncpy(Owner, Buf, OWNER_NAME_LEN);\r
 \r
-                       /* \8e\9e\8d\8f */\r
+                       /* 時刻 */\r
                        FindField(Str, Buf, 2, NO);\r
                        sTime.wHour = atoi(Buf);\r
                        sTime.wMinute = atoi(Buf+3);\r
                        sTime.wSecond = 0;\r
                        sTime.wMilliseconds = 0;\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, 1, NO);\r
                        sTime.wYear = Assume1900or2000(atoi(Buf));\r
                        sTime.wMonth = atoi(Buf + 3);\r
@@ -4198,16 +4198,16 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 5, NO);\r
                        *Size = _atoi64(Buf);\r
 \r
-                       /* \91®\90« */\r
+                       /* 属性 */\r
                        FindField(Str, Buf, 0, NO);\r
                        *Attr = AttrString2Value(Buf+1);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 6, YES) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 6, YES) == FFFTP_SUCCESS)\r
                        {\r
                                Ret = NODE_FILE;\r
                                if(strchr("dl", Buf[0]) != NULL)\r
@@ -4217,7 +4217,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
 \r
                case LIST_ACOS :\r
                case LIST_ACOS_4 :\r
-                       /* \96¼\91O */\r
+                       /* 名前 */\r
                        FindField(Str, Fname, 0, NO);\r
                        Ret = NODE_FILE;\r
                        break;\r
@@ -4225,11 +4225,11 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_VMS :\r
                        *InfoExist |= (FINFO_TIME | FINFO_DATE | FINFO_SIZE);\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 1, NO);\r
                        *Size = _atoi64(Buf) * BLOCK_SIZE;\r
 \r
-                       /* \8e\9e\8d\8f\81^\93ú\95t */\r
+                       /* 時刻/日付 */\r
                        FindField(Str, Buf, 2, NO);\r
                        GetVMSdate(Buf, &sTime.wYear, &sTime.wMonth, &sTime.wDay);\r
 \r
@@ -4241,7 +4241,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \96¼\91O */\r
+                       /* 名前 */\r
                        FindField(Str, Fname, 0, NO);\r
 \r
                        Ret = NODE_FILE;\r
@@ -4249,8 +4249,8 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        {\r
                                if(_strnicmp(Pos, ".DIR;", 5) == 0)\r
                                {\r
-                                       /* OpenVMS\82Ì\8fê\8d\87\81A\83t\83@\83C\83\8b/\83f\83B\83\8c\83N\83g\83\8a\8dí\8f\9c\8e\9e\82É\82Í".DIR;?"\82Ü\82Å\82È\82¢\82Æ\r
-                                        * \8dí\8f\9c\82Å\82«\82È\82¢\82Ì\82Å\81A\82±\82±\82Å\82Í\82Â\82Ô\82³\82È\82¢ */\r
+                                       /* OpenVMSの場合、ファイル/ディレクトリ削除時には".DIR;?"までないと\r
+                                        * 削除できないので、ここではつぶさない */\r
 #if !defined(HAVE_OPENVMS)\r
                                        *Pos = NUL;\r
 #endif\r
@@ -4263,21 +4263,21 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        *InfoExist |= FINFO_SIZE;\r
                        offs = 2;\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 2, NO);\r
                        *Size = _atoi64(Buf);\r
-                       /* \82±\82±\82Ébreak\82Í\82È\82¢ */\r
+                       /* ここにbreakはない */\r
 \r
                case LIST_OS7_1 :\r
                        *InfoExist |= (FINFO_TIME | FINFO_DATE | FINFO_ATTR);\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, 1+offs, NO);\r
                        sTime.wYear = Assume1900or2000(atoi(Buf));\r
                        sTime.wMonth = atoi(Buf + 3);\r
                        sTime.wDay = atoi(Buf + 6);\r
 \r
-                       /* \8e\9e\8d\8f */\r
+                       /* 時刻 */\r
                        FindField(Str, Buf, 2+offs, NO);\r
                        sTime.wHour = atoi(Buf);\r
                        sTime.wMinute = atoi(Buf+3);\r
@@ -4286,12 +4286,12 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \91®\90« */\r
+                       /* 属性 */\r
                        FindField(Str, Buf, 0, NO);\r
                        *Attr = AttrString2Value(Buf+1);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 3+offs, YES) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 3+offs, YES) == FFFTP_SUCCESS)\r
                        {\r
                                RemoveTailingSpaces(Fname);\r
                                Ret = NODE_FILE;\r
@@ -4301,7 +4301,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        break;\r
 \r
                case LIST_STRATUS :\r
-                       if(FindField(Str, Buf, 0, NO) != SUCCESS)\r
+                       if(FindField(Str, Buf, 0, NO) != FFFTP_SUCCESS)\r
                                break;\r
                        if(_strnicmp(Buf, "Files:", 6) == 0)\r
                                StratusMode = 0;\r
@@ -4320,15 +4320,15 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
 \r
                                *InfoExist |= (FINFO_TIME | FINFO_DATE);\r
 \r
-                               /* \93ú\95t */\r
-                               if(FindField(Str, Buf, 2+offs, NO) != SUCCESS)\r
+                               /* 日付 */\r
+                               if(FindField(Str, Buf, 2+offs, NO) != FFFTP_SUCCESS)\r
                                        break;\r
                                sTime.wYear = Assume1900or2000(atoi(Buf));\r
                                sTime.wMonth = atoi(Buf + 3);\r
                                sTime.wDay = atoi(Buf + 6);\r
 \r
-                               /* \8e\9e\8d\8f */\r
-                               if(FindField(Str, Buf, 3+offs, NO) != SUCCESS)\r
+                               /* 時刻 */\r
+                               if(FindField(Str, Buf, 3+offs, NO) != FFFTP_SUCCESS)\r
                                        break;\r
                                sTime.wHour = atoi(Buf);\r
                                sTime.wMinute = atoi(Buf+3);\r
@@ -4337,21 +4337,21 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                                SystemTimeToFileTime(&sTime, Time);\r
                                SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                               /* \96¼\91O */\r
-                               if(FindField(Str, Fname, 4+offs, YES) != SUCCESS)\r
+                               /* 名前 */\r
+                               if(FindField(Str, Fname, 4+offs, YES) != FFFTP_SUCCESS)\r
                                        break;\r
 \r
                                if(StratusMode == 0)\r
                                {\r
                                        *InfoExist |= FINFO_SIZE;\r
 \r
-                                       /* \83T\83C\83Y */\r
-                                       if(FindField(Str, Buf, 1, NO) != SUCCESS)\r
+                                       /* サイズ */\r
+                                       if(FindField(Str, Buf, 1, NO) != FFFTP_SUCCESS)\r
                                                break;\r
                                        *Size = _atoi64(Buf) * 4096;\r
 \r
-                                       /* \8eí\97Þ\81i\83I\81[\83i\96¼\82Ì\83t\83B\81[\83\8b\83h\82É\82¢\82ê\82é\81j */\r
-                                       if(FindField(Str, Buf, 2, NO) != SUCCESS)\r
+                                       /* 種類(オーナ名のフィールドにいれる) */\r
+                                       if(FindField(Str, Buf, 2, NO) != FFFTP_SUCCESS)\r
                                                break;\r
                                        strncpy(Owner, Buf, OWNER_NAME_LEN);\r
 \r
@@ -4365,21 +4365,21 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_IRMX :\r
                        *InfoExist |= (FINFO_DATE | FINFO_SIZE);\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        for(offs = 11; offs > 7; offs--)\r
                        {\r
-                               if((err = FindField(Str, Buf, offs, NO)) == SUCCESS)\r
+                               if((err = FindField(Str, Buf, offs, NO)) == FFFTP_SUCCESS)\r
                                        break;\r
                        }\r
-                       if(err != SUCCESS)\r
+                       if(err != FFFTP_SUCCESS)\r
                                break;\r
                        if(IsDigit(*Buf) == 0)\r
                                break;\r
                        sTime.wYear = Assume1900or2000(atoi(Buf));\r
-                       if(FindField(Str, Buf, --offs, NO) != SUCCESS)\r
+                       if(FindField(Str, Buf, --offs, NO) != FFFTP_SUCCESS)\r
                                break;\r
                        GetMonth(Buf, &sTime.wMonth, &sTime.wDay);\r
-                       if(FindField(Str, Buf, --offs, NO) != SUCCESS)\r
+                       if(FindField(Str, Buf, --offs, NO) != FFFTP_SUCCESS)\r
                                break;\r
                        if(IsDigit(*Buf) == 0)\r
                                break;\r
@@ -4391,36 +4391,36 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \83I\81[\83i\96¼ */\r
-                       if(FindField(Str, Buf, --offs, NO) != SUCCESS)\r
+                       /* オーナ名 */\r
+                       if(FindField(Str, Buf, --offs, NO) != FFFTP_SUCCESS)\r
                                break;\r
                        strncpy(Owner, Buf, OWNER_NAME_LEN);\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        do\r
                        {\r
-                               if((err = FindField(Str, Buf, --offs, NO)) != SUCCESS)\r
+                               if((err = FindField(Str, Buf, --offs, NO)) != FFFTP_SUCCESS)\r
                                        break;\r
                        }\r
                        while(IsDigit(*Buf) == 0);\r
                        --offs;\r
-                       if((err = FindField(Str, Buf, --offs, NO)) != SUCCESS)\r
+                       if((err = FindField(Str, Buf, --offs, NO)) != FFFTP_SUCCESS)\r
                                break;\r
                        RemoveComma(Buf);\r
                        *Size = _atoi64(Buf);\r
-                       if((err = FindField(Str, Buf, --offs, NO)) != SUCCESS)\r
+                       if((err = FindField(Str, Buf, --offs, NO)) != FFFTP_SUCCESS)\r
                                break;\r
                        if(IsDigit(*Buf) == 0)\r
                                break;\r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 0, NO) != SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 0, NO) != FFFTP_SUCCESS)\r
                                break;\r
-                       /* \8eí\97Þ */\r
+                       /* 種類 */\r
                        if(offs == 0)\r
                                Ret = NODE_FILE;\r
                        else\r
                        {\r
-                               if((FindField(Str, Buf, 1, NO) == SUCCESS) &&\r
+                               if((FindField(Str, Buf, 1, NO) == FFFTP_SUCCESS) &&\r
                                   (strcmp(Buf, "DR") == 0))\r
                                        Ret = NODE_DIR;\r
                                else\r
@@ -4431,15 +4431,15 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_ALLIED :\r
                        *InfoExist |= (FINFO_TIME | FINFO_DATE | FINFO_SIZE);\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, 3, NO);\r
-                       GetMonth(Buf, &sTime.wMonth, &sTime.wDay);      /* wDay\82Í\8fí\82É0 */\r
+                       GetMonth(Buf, &sTime.wMonth, &sTime.wDay);      /* wDayは常に0 */\r
                        FindField(Str, Buf, 4, NO);\r
                        sTime.wDay = atoi(Buf);\r
                        FindField(Str, Buf, 6, NO);\r
                        sTime.wYear = atoi(Buf);\r
 \r
-                       /* \8e\9e\8d\8f */\r
+                       /* 時刻 */\r
                        FindField(Str, Buf, 5, NO);\r
                        sTime.wHour = atoi(Buf);\r
                        sTime.wMinute = atoi(Buf+3);\r
@@ -4448,12 +4448,12 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 0, NO);\r
                        *Size = _atoi64(Buf);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 1, NO) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 1, NO) == FFFTP_SUCCESS)\r
                        {\r
                                Ret = NODE_FILE;\r
                                if(Buf[0] == '<')\r
@@ -4464,7 +4464,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_OS9 :\r
                        *InfoExist |= (FINFO_TIME | FINFO_DATE | FINFO_SIZE);\r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, 1, NO);\r
                        sTime.wYear = Assume1900or2000(atoi(Buf));\r
                        sTime.wMonth = atoi(Buf + 3);\r
@@ -4472,7 +4472,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \8e\9e\8d\8f */\r
+                       /* 時刻 */\r
                        FindField(Str, Buf, 2, NO);\r
                        sTime.wHour = atoi_n(Buf, 2);\r
                        sTime.wMinute = atoi(Buf+2);\r
@@ -4481,19 +4481,19 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 5, NO);\r
                        *Size = _atoi64(Buf);\r
 \r
-                       /* \83I\81[\83i\96¼ */\r
+                       /* オーナ名 */\r
                        FindField(Str, Buf, 0, NO);\r
                        strncpy(Owner, Buf, OWNER_NAME_LEN);\r
 \r
-                       /* \83I\81[\83i\96¼ */\r
+                       /* オーナ名 */\r
                        FindField(Str, Buf, 3, NO);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 6, NO) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 6, NO) == FFFTP_SUCCESS)\r
                        {\r
                                if((Buf[0] == 'd') || (Buf[0] == 'D'))\r
                                        Ret = NODE_DIR;\r
@@ -4506,7 +4506,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        *InfoExist |= FINFO_DATE;\r
 \r
 \r
-                       /* \93ú\95t */\r
+                       /* 日付 */\r
                        FindField(Str, Buf, 2, NO);\r
                        sTime.wYear = atoi(Buf);\r
                        sTime.wMonth = atoi(Buf + 5);\r
@@ -4518,9 +4518,9 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \96¼\91O */\r
+                       /* 名前 */\r
                        FindField(Str, Buf, 8, NO);\r
-                       if(FindField(Str, Fname, 9, NO) == SUCCESS)\r
+                       if(FindField(Str, Fname, 9, NO) == FFFTP_SUCCESS)\r
                        {\r
                                if(strcmp(Buf, "PO") == 0)\r
                                        Ret = NODE_DIR;\r
@@ -4532,20 +4532,20 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_AGILENT :\r
                        *InfoExist |= (FINFO_SIZE | FINFO_ATTR);\r
 \r
-                       /* \83I\81[\83i\96¼ */\r
+                       /* オーナ名 */\r
                        FindField(Str, Buf, 2, NO);\r
                        strncpy(Owner, Buf, OWNER_NAME_LEN);\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 4, NO);\r
                        *Size = _atoi64(Buf);\r
 \r
-                       /* \91®\90« */\r
+                       /* 属性 */\r
                        FindField(Str, Buf, 0, NO);\r
                        *Attr = AttrString2Value(Buf+1);\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 5, YES) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 5, YES) == FFFTP_SUCCESS)\r
                        {\r
                                Ret = NODE_FILE;\r
                                if(strchr("dl", Buf[0]) != NULL)\r
@@ -4556,20 +4556,20 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_SHIBASOKU :\r
                        *InfoExist |= (FINFO_TIME | FINFO_DATE | FINFO_SIZE);\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 0, NO);\r
                        if(IsDigit(Buf[0]))\r
                        {\r
                                *Size = _atoi64(Buf);\r
 \r
-                               /* \93ú\95t */\r
+                               /* 日付 */\r
                                FindField(Str, Buf, 1, NO);\r
                                Buf[3] = '\0';\r
                                GetMonth(Buf, &sTime.wMonth, &sTime.wDay);\r
                                sTime.wDay = atoi(Buf+4);\r
                                sTime.wYear = atoi(Buf+7);\r
 \r
-                               /* \8e\9e\8d\8f */\r
+                               /* 時刻 */\r
                                FindField(Str, Buf, 2, NO);\r
                                sTime.wHour = atoi(Buf);\r
                                sTime.wMinute = atoi(Buf+3);\r
@@ -4578,12 +4578,12 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                                SystemTimeToFileTime(&sTime, Time);\r
                                SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                               /* \96¼\91O */\r
+                               /* 名前 */\r
                                FindField(Str, Fname, 3, NO);\r
 \r
-                               /* \8eí\97Þ */\r
+                               /* 種類 */\r
                                Ret = NODE_FILE;\r
-                               if(FindField(Str, Buf, 4, NO) == SUCCESS)\r
+                               if(FindField(Str, Buf, 4, NO) == FFFTP_SUCCESS)\r
                                {\r
                                        if(strcmp(Buf, "<DIR>") == 0)\r
                                                Ret = NODE_DIR;\r
@@ -4618,10 +4618,10 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                case LIST_UNIX_73 :\r
                case LIST_UNIX_74 :\r
                case LIST_UNIX_75 :\r
-// MELCOM\82Í\83r\83b\83g\83t\83\89\83O\82É\82È\82Á\82Ä\82¢\82é\r
+// MELCOMはビットフラグになっている\r
 //             case LIST_MELCOM :\r
                default:\r
-                       /* offs\82Í\83T\83C\83Y\82Ì\88Ê\92u, offs=0\82Í\83J\83\89\83\804 */\r
+                       /* offsはサイズの位置, offs=0はカラム4 */\r
                        offs = 0;\r
                        if((ListType == LIST_UNIX_12) ||\r
                           (ListType == LIST_UNIX_13) ||\r
@@ -4652,7 +4652,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                           (ListType == LIST_UNIX_74))\r
                                offs = 1;\r
 \r
-                       /* offs2\82Í\8e\9e\8aÔ(\82à\82µ\82­\82Í\94N)\82Ì\88Ê\92u */\r
+                       /* offs2は時間(もしくは年)の位置 */\r
                        offs2 = 0;\r
                        if((ListType == LIST_UNIX_11) ||\r
                           (ListType == LIST_UNIX_13) ||\r
@@ -4665,7 +4665,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                           (ListType == LIST_UNIX_73))\r
                                offs2 = -1;\r
 \r
-                       /* offs3\82Í\83I\81[\83i\96¼\82Ì\88Ê\92u */\r
+                       /* offs3はオーナ名の位置 */\r
                        offs3 = 0;\r
                        if((ListType == LIST_UNIX_12) ||\r
                           (ListType == LIST_UNIX_13) ||\r
@@ -4697,15 +4697,15 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
 \r
                        *InfoExist |= (FINFO_DATE | FINFO_SIZE | FINFO_ATTR);\r
 \r
-                       /* \91®\90« */\r
+                       /* 属性 */\r
                        FindField(Str, Buf, 0, NO);\r
                        *Attr = AttrString2Value(Buf+1);\r
 \r
-                       /* \83I\81[\83i\96¼ */\r
+                       /* オーナ名 */\r
                        FindField(Str, Buf, 2+offs3, NO);\r
                        strncpy(Owner, Buf, OWNER_NAME_LEN);\r
 \r
-                       /* \83T\83C\83Y */\r
+                       /* サイズ */\r
                        FindField(Str, Buf, 4+offs, NO);\r
                        Pos = Buf;\r
                        if((*Pos != NUL) && (IsDigit(*Pos) == 0))\r
@@ -4724,20 +4724,20 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
 \r
                        if(Flag2 == 0)\r
                        {\r
-                               /* \8e\9e\8d\8f\81^\93ú\95t */\r
+                               /* 時刻/日付 */\r
                                GetLocalTime(&sTime);\r
                                memcpy(&sTimeNow, &sTime, sizeof(SYSTEMTIME));\r
                                sTime.wSecond = 0;\r
                                sTime.wMilliseconds = 0;\r
 \r
                                FindField(Str, Buf, 5+offs, NO);\r
-                               /* \93ú\95t\82ª yy/mm/dd \82Ì\8fê\8d\87\82É\91Î\89\9e */\r
-                               if(GetYearMonthDay(Buf, &sTime.wYear, &sTime.wMonth, &sTime.wDay) == SUCCESS)\r
+                               /* 日付が yy/mm/dd の場合に対応 */\r
+                               if(GetYearMonthDay(Buf, &sTime.wYear, &sTime.wMonth, &sTime.wDay) == FFFTP_SUCCESS)\r
                                {\r
                                        sTime.wYear = Assume1900or2000(sTime.wYear);\r
 \r
                                        FindField(Str, Buf, 7+offs+offs2, NO);\r
-                                       if(GetHourAndMinute(Buf, &sTime.wHour, &sTime.wMinute) == SUCCESS)\r
+                                       if(GetHourAndMinute(Buf, &sTime.wHour, &sTime.wMinute) == FFFTP_SUCCESS)\r
                                                *InfoExist |= FINFO_TIME;\r
                                }\r
                                else\r
@@ -4750,7 +4750,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                                        }\r
 \r
                                        FindField(Str, Buf, 7+offs+offs2, NO);\r
-                                       if(GetHourAndMinute(Buf, &sTime.wHour, &sTime.wMinute) == FAIL)\r
+                                       if(GetHourAndMinute(Buf, &sTime.wHour, &sTime.wMinute) == FFFTP_FAIL)\r
                                        {\r
                                                sTime.wYear = atoi(Buf);\r
                                        }\r
@@ -4758,8 +4758,8 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                                        {\r
                                                *InfoExist |= FINFO_TIME;\r
 \r
-                                               /* \94N\82ª\82È\82¢ */\r
-                                               /* \8c»\8dÝ\82Ì\93ú\95t\82©\82ç\90\84\92è */\r
+                                               /* 年がない */\r
+                                               /* 現在の日付から推定 */\r
                                                if((sTimeNow.wMonth == 12) && (sTime.wMonth == 1))\r
                                                        sTime.wYear++;\r
                                                else if(sTimeNow.wMonth+1 == sTime.wMonth)\r
@@ -4769,7 +4769,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
 \r
 \r
 //#################\r
-                                               /* \8d¡\94N\82Ì\8d¡\93ú\88È\8d~\82Ì\83t\83@\83C\83\8b\82Í\81A\8eÀ\82Í\8b\8e\94N\82Ì\83t\83@\83C\83\8b */\r
+                                               /* 今年の今日以降のファイルは、実は去年のファイル */\r
                                                if((sTime.wYear == sTimeNow.wYear) &&\r
                                                   ((sTime.wMonth > sTimeNow.wMonth) ||\r
                                                        ((sTime.wMonth == sTimeNow.wMonth) && (sTime.wDay > sTimeNow.wDay))))\r
@@ -4781,7 +4781,7 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        }\r
                        else\r
                        {\r
-                               /* LIST_UNIX_?4, LIST_UNIX_?5 \82Ì\8e\9e */\r
+                               /* LIST_UNIX_?4, LIST_UNIX_?5 の時 */\r
                                FindField(Str, Buf, 5+offs, NO);\r
                                sTime.wYear = atoi(Buf);\r
                                FindField(Str, Buf, 6+offs, NO);\r
@@ -4796,8 +4796,8 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                        SystemTimeToFileTime(&sTime, Time);\r
                        SpecificLocalFileTime2FileTime(Time, AskHostTimeZone());\r
 \r
-                       /* \96¼\91O */\r
-                       if(FindField(Str, Fname, 8+offs+offs2, YES) == SUCCESS)\r
+                       /* 名前 */\r
+                       if(FindField(Str, Fname, 8+offs+offs2, YES) == FFFTP_SUCCESS)\r
                        {\r
                                Flag = 'B';\r
                                if(OrgListType & LIST_MELCOM)\r
@@ -4843,17 +4843,17 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
 }\r
 \r
 \r
-/*----- \8ew\92è\82Ì\94Ô\8d\86\82Ì\83t\83B\81[\83\8b\83h\82ð\8b\81\82ß\82é ----------------------------------------\r
+/*----- 指定の番号のフィールドを求める ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              char *Buf : \95\8e\9a\97ñ\82Ì\83R\83s\81[\90æ\r
-*              int Num : \83t\83B\81[\83\8b\83h\94Ô\8d\86\r
-*              int ToLast : \95\8e\9a\97ñ\82Ì\8dÅ\8cã\82Ü\82Å\83R\83s\81[ (YES/NO)\r
+*              char *Str : 文字列\r
+*              char *Buf : 文字列のコピー先\r
+*              int Num : フィールド番号\r
+*              int ToLast : 文字列の最後までコピー (YES/NO)\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int FindField(char *Str, char *Buf, int Num, int ToLast)\r
@@ -4861,7 +4861,7 @@ static int FindField(char *Str, char *Buf, int Num, int ToLast)
        char *Pos;\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        *Buf = NUL;\r
        if(Num >= 0)\r
        {\r
@@ -4896,21 +4896,21 @@ static int FindField(char *Str, char *Buf, int Num, int ToLast)
                        strncpy(Buf, Str, Pos - Str);\r
                        *(Buf + (Pos - Str)) = NUL;\r
                }\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82©\82ç\8c\8e\82ð\8b\81\82ß\82é --------------------------------------------------\r
+/*----- 文字列から月を求める --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              WORD *Month : \8c\8e (0=\8c\8e\82ð\95\\82·\95\8e\9a\97ñ\82Å\82Í\82È\82¢)\r
-*              WORD *Day : \93ú (0=\93ú\82Í\8aÜ\82Ü\82ê\82Ä\82¢\82È\82¢)\r
+*              char *Str : 文字列\r
+*              WORD *Month : 月 (0=月を表す文字列ではない)\r
+*              WORD *Day : 日 (0=日は含まれていない)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void GetMonth(char *Str, WORD *Month, WORD *Day)\r
@@ -4930,8 +4930,8 @@ static void GetMonth(char *Str, WORD *Month, WORD *Day)
        }\r
        else\r
        {\r
-               /* \81u10\8c\8e\81v\82Ì\82æ\82¤\82È\93ú\95t\82ð\95Ô\82·\82à\82Ì\82ª\82 \82é */\r
-               /* \8a¿\8e\9a\82ªJIS\82Ì\8e\9e\82Ì\82ÝSJIS\82É\95Ï\8a· */\r
+               /* 「10月」のような日付を返すものがある */\r
+               /* 漢字がJISの時のみSJISに変換 */\r
                ConvAutoToSJIS(Str, KANJI_NOCNV);\r
 \r
                Pos = Str;\r
@@ -4939,10 +4939,10 @@ static void GetMonth(char *Str, WORD *Month, WORD *Day)
                {\r
                        if(!IsDigit(*Pos))\r
                        {\r
-                               // UTF-8\91Î\89\9e\r
-//                             if((_mbsncmp(Pos, "\8c\8e", 1) == 0) ||\r
-//                                (memcmp(Pos, "\xB7\xEE", 2) == 0) || /* EUC\82Ì\81u\8c\8e\81v */\r
-//                                (memcmp(Pos, "\xD4\xC2", 2) == 0))   /* GB\83R\81[\83h\82Ì\81u\8c\8e\81v */\r
+                               // UTF-8対応\r
+//                             if((_mbsncmp(Pos, "", 1) == 0) ||\r
+//                                (memcmp(Pos, "\xB7\xEE", 2) == 0) || /* EUCの「月」 */\r
+//                                (memcmp(Pos, "\xD4\xC2", 2) == 0))   /* GBコードの「月」 */\r
                                if(memcmp(Pos, "\xE6\x9C\x88", 3) == 0 || memcmp(Pos, "\x8C\x8E", 2) == 0 || memcmp(Pos, "\xB7\xEE", 2) == 0 || memcmp(Pos, "\xD4\xC2", 2) == 0)\r
                                {\r
                                        Pos += 2;\r
@@ -4951,7 +4951,7 @@ static void GetMonth(char *Str, WORD *Month, WORD *Day)
                                                *Month = 0;\r
                                        else\r
                                        {\r
-                                               /* \81u10\8c\8e11\93ú\81v\82Ì\82æ\82¤\82É\93ú\82ª\82­\82Á\82Â\82¢\82Ä\82¢\82é\8e\96\82ª\82 \82é */\r
+                                               /* 「10月11日」のように日がくっついている事がある */\r
                                                if(*Pos != NUL)\r
                                                {\r
                                                        *Day = atoi(Pos);\r
@@ -4962,14 +4962,14 @@ static void GetMonth(char *Str, WORD *Month, WORD *Day)
                                }\r
                                else if(_mbsncmp(Pos, "/", 1) == 0)\r
                                {\r
-                                       /* \81u10/\81v\82Ì\82æ\82¤\82È\93ú\95t\82ð\95Ô\82·\82à\82Ì\82ª\82 \82é */\r
+                                       /* 「10/」のような日付を返すものがある */\r
                                        Pos += 1;\r
                                        *Month = atoi(Str);\r
                                        if((*Month < 1) || (*Month > 12))\r
                                                *Month = 0;\r
                                        else\r
                                        {\r
-                                               /* \81u10/11\81v\82Ì\82æ\82¤\82É\93ú\82ª\82­\82Á\82Â\82¢\82Ä\82¢\82é\8e\96\82ª\82 \82é */\r
+                                               /* 「10/11」のように日がくっついている事がある */\r
                                                if(*Pos != NUL)\r
                                                {\r
                                                        *Day = atoi(Pos);\r
@@ -4987,27 +4987,27 @@ static void GetMonth(char *Str, WORD *Month, WORD *Day)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82©\82ç\94N\8c\8e\93ú\82ð\8b\81\82ß\82é ----------------------------------------------\r
+/*----- 文字列から年月日を求める ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              WORD *Year : \94N\r
-*              WORD *Month : \8c\8e\r
-*              WORD *Day : \93ú\r
+*              char *Str : 文字列\r
+*              WORD *Year : \r
+*              WORD *Month : \r
+*              WORD *Day : \r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL=\93ú\95t\82ð\95\\82·\95\8e\9a\82Å\82Í\82È\82¢)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL=日付を表す文字ではない)\r
 *\r
 *      Note\r
-*              \88È\89º\82Ì\8c`\8e®\82ð\83T\83|\81[\83g\r
+*              以下の形式をサポート\r
 *                      01/07/25\r
-*              FAIL\82ð\95Ô\82·\8e\9e\82Í *Year = 0; *Month = 0; *Day = 0\r
+*              FFFTP_FAILを返す時は *Year = 0; *Month = 0; *Day = 0\r
 *----------------------------------------------------------------------------*/\r
 static int GetYearMonthDay(char *Str, WORD *Year, WORD *Month, WORD *Day)\r
 {\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(strlen(Str) == 8)\r
        {\r
                if(IsDigit(Str[0]) && IsDigit(Str[1]) && !IsDigit(Str[2]) &&\r
@@ -5017,28 +5017,28 @@ static int GetYearMonthDay(char *Str, WORD *Year, WORD *Month, WORD *Day)
                        *Year = atoi(&Str[0]);\r
                        *Month = atoi(&Str[3]);\r
                        *Day = atoi(&Str[6]);\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82©\82ç\8e\9e\8d\8f\82ð\8eæ\82è\8fo\82· ----------------------------------------------\r
+/*----- 文字列から時刻を取り出す ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              WORD *Hour : \8e\9e\r
-*              WORD *Minute : \95ª\r
+*              char *Str : 文字列\r
+*              WORD *Hour : \r
+*              WORD *Minute : \r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL=\8e\9e\8d\8f\82ð\95\\82·\95\8e\9a\82Å\82Í\82È\82¢)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL=時刻を表す文字ではない)\r
 *\r
 *      Note\r
-*              \88È\89º\82Ì\8c`\8e®\82ð\83T\83|\81[\83g\r
+*              以下の形式をサポート\r
 *                      HH:MM\r
-*                      HH\8e\9eMM\95ª\r
-*              FAIL\82ð\95Ô\82·\8e\9e\82Í *Hour = 0; *Minute = 0\r
+*                      HH時MM分\r
+*              FFFTP_FAILを返す時は *Hour = 0; *Minute = 0\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetHourAndMinute(char *Str, WORD *Hour, WORD *Minute)\r
@@ -5046,7 +5046,7 @@ static int GetHourAndMinute(char *Str, WORD *Hour, WORD *Minute)
        int Ret;\r
        char *Pos;\r
 \r
-       Ret = FAIL;\r
+       Ret = FFFTP_FAIL;\r
        if((_mbslen(Str) >= 3) && (isdigit(Str[0]) != 0))\r
        {\r
                *Hour = atoi(Str);\r
@@ -5059,12 +5059,12 @@ static int GetHourAndMinute(char *Str, WORD *Hour, WORD *Minute)
                                {\r
                                        *Minute = atoi(Pos);\r
                                        if(*Minute < 60)\r
-                                               Ret = SUCCESS;\r
+                                               Ret = FFFTP_SUCCESS;\r
                                }\r
                        }\r
                        else\r
                        {\r
-                               /* \8a¿\8e\9a\82ªJIS\82Ì\8e\9e\82Ì\82ÝSJIS\82É\95Ï\8a· */\r
+                               /* 漢字がJISの時のみSJISに変換 */\r
                                ConvAutoToSJIS(Str, KANJI_NOCNV);\r
 \r
                                Pos = Str;\r
@@ -5072,9 +5072,9 @@ static int GetHourAndMinute(char *Str, WORD *Hour, WORD *Minute)
                                {\r
                                        if(IsDigit(*Pos) == 0)\r
                                        {\r
-                                               // UTF-8\91Î\89\9e\r
-//                                             if((_mbsncmp(Pos, "\8e\9e", 1) == 0) ||\r
-//                                                (memcmp(Pos, "\xBB\xFE", 2) == 0))   /* EUC\82Ì\81u\8e\9e\81v */\r
+                                               // UTF-8対応\r
+//                                             if((_mbsncmp(Pos, "", 1) == 0) ||\r
+//                                                (memcmp(Pos, "\xBB\xFE", 2) == 0))   /* EUCの「時」 */\r
                                                if(memcmp(Pos, "\xE6\x99\x82", 3) == 0 || memcmp(Pos, "\x8E\x9E", 2) == 0 || memcmp(Pos, "\xBB\xFE", 2) == 0)\r
                                                {\r
                                                        Pos += 2;\r
@@ -5082,7 +5082,7 @@ static int GetHourAndMinute(char *Str, WORD *Hour, WORD *Minute)
                                                        {\r
                                                                *Minute = atoi(Pos);\r
                                                                if(*Minute < 60)\r
-                                                                       Ret = SUCCESS;\r
+                                                                       Ret = FFFTP_SUCCESS;\r
                                                        }\r
                                                }\r
                                                break;\r
@@ -5096,10 +5096,10 @@ static int GetHourAndMinute(char *Str, WORD *Hour, WORD *Minute)
        {\r
                *Hour = 0;\r
                *Minute = 0;\r
-               Ret = SUCCESS;\r
+               Ret = FFFTP_SUCCESS;\r
        }\r
 \r
-       if(Ret == FAIL)\r
+       if(Ret == FFFTP_FAIL)\r
        {\r
                *Hour = 0;\r
                *Minute = 0;\r
@@ -5108,21 +5108,21 @@ static int GetHourAndMinute(char *Str, WORD *Hour, WORD *Minute)
 }\r
 \r
 \r
-/*----- VAX VMS\82Ì\93ú\95t\95\8e\9a\97ñ\82©\82ç\93ú\95t\82ð\8eæ\82è\8fo\82· ---------------------------------\r
+/*----- VAX VMSの日付文字列から日付を取り出す ---------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              WORD *Year : \94N\r
-*              WORD *Month : \8c\8e\r
-*              WORD *Day : \93ú\r
+*              char *Str : 文字列\r
+*              WORD *Year : \r
+*              WORD *Month : \r
+*              WORD *Day : \r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL=\93ú\95t\82ð\95\\82·\95\8e\9a\82Å\82Í\82È\82¢)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL=日付を表す文字ではない)\r
 *\r
 *      Note\r
-*              \88È\89º\82Ì\8c`\8e®\82ð\83T\83|\81[\83g\r
+*              以下の形式をサポート\r
 *                      18-SEP-1998\r
-*              FAIL\82ð\95Ô\82·\8e\9e\82Í *Year = 0; *Month = 0; *Day = 0\r
+*              FFFTP_FAILを返す時は *Year = 0; *Month = 0; *Day = 0\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetVMSdate(char *Str, WORD *Year, WORD *Month, WORD *Day)\r
@@ -5132,7 +5132,7 @@ static int GetVMSdate(char *Str, WORD *Year, WORD *Month, WORD *Day)
        WORD Tmp;\r
        char Buf[4];\r
 \r
-       Ret = FAIL;\r
+       Ret = FFFTP_FAIL;\r
        *Day = atoi(Str);\r
        if((Pos = strchr(Str, '-')) != NULL)\r
        {\r
@@ -5144,11 +5144,11 @@ static int GetVMSdate(char *Str, WORD *Year, WORD *Month, WORD *Day)
                {\r
                        Pos++;\r
                        *Year = atoi(Pos);\r
-                       Ret = SUCCESS;\r
+                       Ret = FFFTP_SUCCESS;\r
                }\r
        }\r
 \r
-       if(Ret == FAIL)\r
+       if(Ret == FFFTP_FAIL)\r
        {\r
                *Year = 0;\r
                *Month = 0;\r
@@ -5158,13 +5158,13 @@ static int GetVMSdate(char *Str, WORD *Year, WORD *Month, WORD *Day)
 }\r
 \r
 \r
-/*----- 1900\94N\91ã\82©2000\94N\91ã\82©\82ð\8c\88\82ß\82é ------------------------------------------\r
+/*----- 1900年代か2000年代かを決める ------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Year : \94N\81i\82Q\8c\85\81j\r
+*              int Year : 年(2桁)\r
 *\r
 *      Return Value\r
-*              int \94N\r
+*              int \r
 *----------------------------------------------------------------------------*/\r
 \r
 int Assume1900or2000(int Year)\r
@@ -5178,13 +5178,13 @@ int Assume1900or2000(int Year)
 \r
 \r
 \r
-/*----- "."\82â".."\82©\82Ç\82¤\82©\82ð\95Ô\82· -----------------------------------------------\r
+/*----- "."や".."かどうかを返す -----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              char *Fname : ファイル名\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES="."\82©".."\82Ì\82Ç\82¿\82ç\82©/NO)\r
+*              int ステータス (YES="."か".."のどちらか/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CheckSpecialDirName(char *Fname)\r
@@ -5199,18 +5199,18 @@ static int CheckSpecialDirName(char *Fname)
 }\r
 \r
 \r
-/*----- \83t\83B\83\8b\83^\82É\8ew\92è\82³\82ê\82½\83t\83@\83C\83\8b\96¼\82©\82Ç\82¤\82©\82ð\95Ô\82· --------------------------\r
+/*----- フィルタに指定されたファイル名かどうかを返す --------------------------\r
 *\r
 *      Parameter\r
-*              char Fname : \83t\83@\83C\83\8b\96¼\r
-*              int Type : \83t\83@\83C\83\8b\82Ì\83^\83C\83v (NODE_xxx)\r
+*              char Fname : ファイル名\r
+*              int Type : ファイルのタイプ (NODE_xxx)\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      YES/NO=\95\\8e¦\82µ\82È\82¢\r
+*              int ステータス\r
+*                      YES/NO=表示しない\r
 *\r
 *      Note\r
-*              \83t\83B\83\8b\83^\95\8e\9a\97ñ\82Í\88È\89º\82Ì\8c`\8e®\r
+*              フィルタ文字列は以下の形式\r
 *                      *.txt;*.log\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -5237,7 +5237,7 @@ static int AskFilterStr(char *Fname, int Type)
                        if((Pos = strchr(Tmp, ';')) != NULL)\r
                                *Pos = NUL;\r
 \r
-                       if(CheckFname(Fname, Tmp) == SUCCESS)\r
+                       if(CheckFname(Fname, Tmp) == FFFTP_SUCCESS)\r
                        {\r
                                Ret = YES;\r
                                break;\r
@@ -5250,13 +5250,13 @@ static int AskFilterStr(char *Fname, int Type)
 }\r
 \r
 \r
-/*----- \83t\83B\83\8b\83^\82ð\90Ý\92è\82·\82é ----------------------------------------------------\r
+/*----- フィルタを設定する ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetFilter(int *CancelCheckWork)\r
@@ -5271,13 +5271,13 @@ void SetFilter(int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \83t\83B\83\8b\83^\93ü\97Í\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------------------\r
+/*----- フィルタ入力ダイアログのコールバック ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
index 45d15f4..c71194a 100644 (file)
--- a/ftpproc.c
+++ b/ftpproc.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \82e\82s\82o\83R\83}\83\93\83h\91\80\8dì\r
+*                                                              FTPコマンド操作\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include <htmlhelp.h>\r
 #include "helpid.h"\r
 \r
-// UTF-8\91Î\89\9e\r
+// UTF-8対応\r
 #undef __MBSWRAPPER_H__\r
 #include "mbswrapper.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static int CheckRemoteFile(TRANSPACKET *Pkt, FILELIST *ListList);\r
 static BOOL CALLBACK UpExistDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
@@ -74,11 +74,11 @@ static LRESULT CALLBACK SizeNotifyDlgWndProc(HWND hDlg, UINT message, WPARAM wPa
 static LRESULT CALLBACK SizeDlgWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
 static int RenameUnuseableName(char *Fname);\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ ====*/\r
+/*===== 外部参照 ====*/\r
 \r
 extern HWND hHelpWin;\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern int FnameCnv;\r
 extern int RecvMode;\r
 extern int SendMode;\r
@@ -92,28 +92,28 @@ extern int VaxSemicolon;
 extern int DebugConsole;\r
 extern int CancelFlg;\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
-static char TmpString[FMAX_PATH+80];           /* \83e\83\93\83|\83\89\83\8a */\r
-static int CurWin;                                             /* \83E\83C\83\93\83h\83E\94Ô\8d\86 */\r
+static char TmpString[FMAX_PATH+80];           /* テンポラリ */\r
+static int CurWin;                                             /* ウインドウ番号 */\r
 \r
-int UpExistMode = EXIST_OVW;           /* \83A\83b\83v\83\8d\81[\83h\82Å\93¯\82\96¼\91O\82Ì\83t\83@\83C\83\8b\82ª\82 \82é\8e\9e\82Ì\88µ\82¢\95û EXIST_xxx */\r
-int ExistMode = EXIST_OVW;             /* \93¯\82\96¼\91O\82Ì\83t\83@\83C\83\8b\82ª\82 \82é\8e\9e\82Ì\88µ\82¢\95û EXIST_xxx */\r
-static int ExistNotify;                /* \8am\94F\83_\83C\83A\83\8d\83O\82ð\8fo\82·\82©\82Ç\82¤\82© YES/NO */\r
+int UpExistMode = EXIST_OVW;           /* アップロードで同じ名前のファイルがある時の扱い方 EXIST_xxx */\r
+int ExistMode = EXIST_OVW;             /* 同じ名前のファイルがある時の扱い方 EXIST_xxx */\r
+static int ExistNotify;                /* 確認ダイアログを出すかどうか YES/NO */\r
 \r
-static double FileSize;                /* \83t\83@\83C\83\8b\91\8d\97e\97Ê */\r
+static double FileSize;                /* ファイル総容量 */\r
 \r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\82Å\8ew\92è\82³\82ê\82½\83t\83@\83C\83\8b\82ð\83_\83E\83\93\83\8d\81[\83h\82·\82é --------------------\r
+/*----- ファイル一覧で指定されたファイルをダウンロードする --------------------\r
 *\r
 *      Parameter\r
-*              int ChName : \96¼\91O\82ð\95Ï\82¦\82é\82©\82Ç\82¤\82© (YES/NO)\r
-*              int ForceFile : \83f\83B\83\8c\83N\83g\83\8a\82ð\83t\83@\83C\83\8b\8c©\82È\82·\82©\82Ç\82¤\82© (YES/NO)\r
-*              int All : \91S\82Ä\82ª\91I\82Î\82ê\82Ä\82¢\82é\95¨\82Æ\82µ\82Ä\88µ\82¤\82©\82Ç\82¤\82© (YES/NO)\r
+*              int ChName : 名前を変えるかどうか (YES/NO)\r
+*              int ForceFile : ディレクトリをファイル見なすかどうか (YES/NO)\r
+*              int All : 全てが選ばれている物として扱うかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DownLoadProc(int ChName, int ForceFile, int All)\r
@@ -122,7 +122,7 @@ void DownLoadProc(int ChName, int ForceFile, int All)
        FILELIST *Pos;\r
        TRANSPACKET Pkt;\r
 \r
-       if(CheckClosedAndReconnect() == SUCCESS)\r
+       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
        {\r
                DisableUserOpe();\r
 \r
@@ -152,7 +152,7 @@ void DownLoadProc(int ChName, int ForceFile, int All)
                                else if(FnameCnv == FNAME_UPPER)\r
                                        _mbsupr(TmpString);\r
                                RemoveAfterSemicolon(TmpString);\r
-                               if(RenameUnuseableName(TmpString) == FAIL)\r
+                               if(RenameUnuseableName(TmpString) == FFFTP_FAIL)\r
                                        break;\r
                        }\r
                        else\r
@@ -160,7 +160,7 @@ void DownLoadProc(int ChName, int ForceFile, int All)
                                CurWin = WIN_REMOTE;\r
                                if(DialogBox(GetFtpInst(), MAKEINTRESOURCE(updown_as_dlg), GetMainHwnd(), UpDownAsDialogCallBack) == YES)\r
                                {\r
-                                       if(RenameUnuseableName(TmpString) == FAIL)\r
+                                       if(RenameUnuseableName(TmpString) == FFFTP_FAIL)\r
                                                break;\r
                                }\r
                                else\r
@@ -204,11 +204,11 @@ void DownLoadProc(int ChName, int ForceFile, int All)
                                Pkt.Size = Pos->Size;\r
                                Pkt.Time = Pos->Time;\r
                                Pkt.KanjiCode = AskHostKanjiCode();\r
-                               // UTF-8\91Î\89\9e\r
+                               // UTF-8対応\r
                                Pkt.KanjiCodeDesired = AskLocalKanjiCode();\r
                                Pkt.KanaCnv = AskHostKanaCnv();\r
 \r
-                               Pkt.Mode = CheckLocalFile(&Pkt);        /* Pkt.ExistSize \82ª\83Z\83b\83g\82³\82ê\82é */\r
+                               Pkt.Mode = CheckLocalFile(&Pkt);        /* Pkt.ExistSize がセットされる */\r
                                if(Pkt.Mode == EXIST_ABORT)\r
                                        break;\r
                                else if(Pkt.Mode != EXIST_IGNORE)\r
@@ -237,20 +237,20 @@ void DownLoadProc(int ChName, int ForceFile, int All)
 }\r
 \r
 \r
-/*----- \8ew\92è\82³\82ê\82½\83t\83@\83C\83\8b\82ð\88ê\82Â\83_\83E\83\93\83\8d\81[\83h\82·\82é ------------------------------\r
+/*----- 指定されたファイルを一つダウンロードする ------------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              char *Fname : ファイル名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DirectDownLoadProc(char *Fname)\r
 {\r
        TRANSPACKET Pkt;\r
 \r
-       if(CheckClosedAndReconnect() == SUCCESS)\r
+       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
        {\r
                DisableUserOpe();\r
 \r
@@ -275,7 +275,7 @@ void DirectDownLoadProc(char *Fname)
                                _mbsupr(TmpString);\r
                        RemoveAfterSemicolon(TmpString);\r
 \r
-                       if(RenameUnuseableName(TmpString) == SUCCESS)\r
+                       if(RenameUnuseableName(TmpString) == FFFTP_SUCCESS)\r
                        {\r
                                strcat(Pkt.LocalFile, TmpString);\r
                                ReplaceAll(Pkt.LocalFile, '/', '\\');\r
@@ -304,14 +304,14 @@ void DirectDownLoadProc(char *Fname)
                                strcpy(Pkt.Cmd, "RETR-S ");\r
                                Pkt.Type = AskTransferTypeAssoc(Pkt.RemoteFile, AskTransferType());\r
 \r
-                               /* \83T\83C\83Y\82Æ\93ú\95t\82Í\93]\91\97\91¤\83X\83\8c\83b\83h\82Å\8eæ\93¾\82µ\81A\83Z\83b\83g\82·\82é */\r
+                               /* サイズと日付は転送側スレッドで取得し、セットする */\r
 \r
                                Pkt.KanjiCode = AskHostKanjiCode();\r
-                               // UTF-8\91Î\89\9e\r
+                               // UTF-8対応\r
                                Pkt.KanjiCodeDesired = AskLocalKanjiCode();\r
                                Pkt.KanaCnv = AskHostKanaCnv();\r
 \r
-                               Pkt.Mode = CheckLocalFile(&Pkt);        /* Pkt.ExistSize \82ª\83Z\83b\83g\82³\82ê\82é */\r
+                               Pkt.Mode = CheckLocalFile(&Pkt);        /* Pkt.ExistSize がセットされる */\r
                                if((Pkt.Mode != EXIST_ABORT) && (Pkt.Mode != EXIST_IGNORE))\r
                                        AddTransFileList(&Pkt);\r
                        }\r
@@ -336,13 +336,13 @@ void DirectDownLoadProc(char *Fname)
 }\r
 \r
 \r
-/*----- \93ü\97Í\82³\82ê\82½\83t\83@\83C\83\8b\96¼\82Ì\83t\83@\83C\83\8b\82ð\88ê\82Â\83_\83E\83\93\83\8d\81[\83h\82·\82é ------------------\r
+/*----- 入力されたファイル名のファイルを一つダウンロードする ------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void InputDownLoadProc(void)\r
@@ -364,13 +364,13 @@ void InputDownLoadProc(void)
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\83_\83E\83\93\83\8d\81[\83h\82ð\8ds\82¤ ----------------------------------------\r
+/*----- ミラーリングダウンロードを行う ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Notify : \8am\94F\82ð\8ds\82¤\82©\82Ç\82¤\82© (YES/NO)\r
+*              int Notify : 確認を行うかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void MirrorDownloadProc(int Notify)\r
@@ -386,7 +386,7 @@ void MirrorDownloadProc(int Notify)
        int Level;\r
        int Mode;\r
 \r
-       if(CheckClosedAndReconnect() == SUCCESS)\r
+       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
        {\r
                DisableUserOpe();\r
 \r
@@ -399,7 +399,7 @@ void MirrorDownloadProc(int Notify)
 \r
                if((Notify == YES) || (Notify == YES_LIST))\r
                {\r
-                       /*===== \83t\83@\83C\83\8b\83\8a\83X\83g\8eæ\93¾ =====*/\r
+                       /*===== ファイルリスト取得 =====*/\r
 \r
                        LocalListBase = NULL;\r
                        MakeSelectedFileList(WIN_LOCAL, YES, YES, &LocalListBase, &CancelFlg);\r
@@ -409,7 +409,7 @@ void MirrorDownloadProc(int Notify)
                        RemotePos = RemoteListBase;\r
                        while(RemotePos != NULL)\r
                        {\r
-                               RemotePos->Attr = YES;          /* RemotePos->Attr\82Í\93]\91\97\82·\82é\82©\82Ç\82¤\82©\82Ì\83t\83\89\83O\82É\8eg\97p (YES/NO) */\r
+                               RemotePos->Attr = YES;          /* RemotePos->Attrは転送するかどうかのフラグに使用 (YES/NO) */\r
                                RemotePos = RemotePos->Next;\r
                        }\r
 \r
@@ -423,7 +423,7 @@ void MirrorDownloadProc(int Notify)
                                }\r
                                else\r
                                {\r
-                                       LocalPos->Attr = NO;    /* LocalPos->Attr\82Í\8dí\8f\9c\82·\82é\82©\82Ç\82¤\82©\82Ì\83t\83\89\83O\82É\8eg\97p (YES/NO) */\r
+                                       LocalPos->Attr = NO;    /* LocalPos->Attrは削除するかどうかのフラグに使用 (YES/NO) */\r
 \r
                                        if(LocalPos->Node == NODE_DIR)\r
                                        {\r
@@ -445,7 +445,7 @@ void MirrorDownloadProc(int Notify)
                                }\r
                        }\r
 \r
-                       /*===== \83t\83@\83C\83\8b\83\8a\83X\83g\94ä\8ar =====*/\r
+                       /*===== ファイルリスト比較 =====*/\r
 \r
                        RemotePos = RemoteListBase;\r
                        while(RemotePos != NULL)\r
@@ -504,7 +504,7 @@ void MirrorDownloadProc(int Notify)
 \r
                        DispMirrorFiles(LocalListBase, RemoteListBase);\r
 \r
-                       /*===== \8dí\8f\9c\81^\83A\83b\83v\83\8d\81[\83h =====*/\r
+                       /*===== 削除/アップロード =====*/\r
 \r
                        LocalPos = LocalListBase;\r
                        while(LocalPos != NULL)\r
@@ -559,7 +559,7 @@ void MirrorDownloadProc(int Notify)
                                                Pkt.Time = RemotePos->Time;\r
 //                                             Pkt.Attr = 0;\r
                                                Pkt.KanjiCode = AskHostKanjiCode();\r
-                                               // UTF-8\91Î\89\9e\r
+                                               // UTF-8対応\r
                                                Pkt.KanjiCodeDesired = AskLocalKanjiCode();\r
                                                Pkt.KanaCnv = AskHostKanaCnv();\r
                                                Pkt.Mode = EXIST_OVW;\r
@@ -605,14 +605,14 @@ void MirrorDownloadProc(int Notify)
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\82Ì\83t\83@\83C\83\8b\88ê\97\97\82ð\95\\8e¦ --------------------------------------\r
+/*----- ミラーリングのファイル一覧を表示 --------------------------------------\r
 *\r
 *      Parameter\r
-*              FILELIST *Local : \83\8d\81[\83J\83\8b\91¤\r
-*              FILELIST *Remote : \83\8a\83\82\81[\83g\91¤\r
+*              FILELIST *Local : ローカル側\r
+*              FILELIST *Remote : リモート側\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DispMirrorFiles(FILELIST *Local, FILELIST *Remote)\r
@@ -648,15 +648,15 @@ static void DispMirrorFiles(FILELIST *Local, FILELIST *Remote)
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\8e\9e\82Ì\83\8d\81[\83J\83\8b\91¤\82Ì\83t\83H\83\8b\83_\8dí\8f\9c ------------------------------\r
+/*----- ミラーリング時のローカル側のフォルダ削除 ------------------------------\r
 *\r
 *      Parameter\r
-*              FILELIST *Local : \83t\83@\83C\83\8b\83\8a\83X\83g\r
+*              FILELIST *Local : ファイルリスト\r
 *              TRANSPACKET *Pkt : \r
 *              TRANSPACKET **Base : \r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void MirrorDeleteAllLocalDir(FILELIST *Local, TRANSPACKET *Pkt, TRANSPACKET **Base)\r
@@ -685,17 +685,17 @@ static void MirrorDeleteAllLocalDir(FILELIST *Local, TRANSPACKET *Pkt, TRANSPACK
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\96¼\82Ì\83Z\83~\83R\83\8d\83\93\88È\8d~\82ð\8eæ\82è\8f\9c\82­ ----------------------------------\r
+/*----- ファイル名のセミコロン以降を取り除く ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83t\83@\83C\83\8b\96¼\r
+*              char *Path : ファイル名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              Path\82Ì\93à\97e\82ª\8f\91\82«\8a·\82¦\82ç\82ê\82é\r
-*              \83I\83v\83V\83\87\83\93\90Ý\92è\82É\82æ\82Á\82Ä\8f\88\97\9d\82ð\90Ø\91Ö\82¦\82é\r
+*              Pathの内容が書き換えられる\r
+*              オプション設定によって処理を切替える\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void RemoveAfterSemicolon(char *Path)\r
@@ -711,17 +711,17 @@ static void RemoveAfterSemicolon(char *Path)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\82É\93¯\82\96¼\91O\82Ì\83t\83@\83C\83\8b\82ª\82È\82¢\82©\83`\83F\83b\83N --------------------------\r
+/*----- ローカルに同じ名前のファイルがないかチェック --------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
 *\r
 *      Return Value\r
-*              int \8f\88\97\9d\95û\96@\r
+*              int 処理方法\r
 *                      EXIST_OVW/EXIST_RESUME/EXIST_IGNORE\r
 *\r
 *      Note\r
-*              Pkt.ExistSize, ExistMode\81AExistNotify \82ª\95Ï\8dX\82³\82ê\82é\r
+*              Pkt.ExistSize, ExistMode、ExistNotify が変更される\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CheckLocalFile(TRANSPACKET *Pkt)\r
@@ -753,7 +753,7 @@ static int CheckLocalFile(TRANSPACKET *Pkt)
 \r
                        if(Ret == EXIST_NEW)\r
                        {\r
-                               /*\83t\83@\83C\83\8b\93ú\95t\83`\83F\83b\83N */\r
+                               /*ファイル日付チェック */\r
                                if(CompareFileTime(&Find.ftLastWriteTime, &Pkt->Time) < 0)\r
                                        Ret = EXIST_OVW;\r
                                else\r
@@ -765,13 +765,13 @@ static int CheckLocalFile(TRANSPACKET *Pkt)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\82É\93¯\82\96¼\91O\82Ì\83t\83@\83C\83\8b\82ª\82 \82é\8e\9e\82Ì\8am\94F\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ----\r
+/*----- ローカルに同じ名前のファイルがある時の確認ダイアログのコールバック ----\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -806,7 +806,7 @@ static BOOL CALLBACK DownExistDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wP
                        {\r
                                case IDOK_ALL :\r
                                        ExistNotify = NO;\r
-                                       /* \82±\82±\82É break \82Í\82È\82¢ */\r
+                                       /* ここに break はない */\r
 \r
                                case IDOK :\r
                                        ExistMode = AskRadioButtonValue(hDlg, DownExistButton, DOWNEXISTBUTTONS);\r
@@ -833,14 +833,14 @@ static BOOL CALLBACK DownExistDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wP
 \r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\82Å\8ew\92è\82³\82ê\82½\83t\83@\83C\83\8b\82ð\83A\83b\83v\83\8d\81[\83h\82·\82é --------------------\r
+/*----- ファイル一覧で指定されたファイルをアップロードする --------------------\r
 *\r
 *      Parameter\r
-*              int ChName : \96¼\91O\82ð\95Ï\82¦\82é\82©\82Ç\82¤\82© (YES/NO)\r
-*              int All : \91S\82Ä\82ª\91I\82Î\82ê\82Ä\82¢\82é\95¨\82Æ\82µ\82Ä\88µ\82¤\82©\82Ç\82¤\82© (YES/NO)\r
+*              int ChName : 名前を変えるかどうか (YES/NO)\r
+*              int All : 全てが選ばれている物として扱うかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void UpLoadListProc(int ChName, int All)\r
@@ -854,16 +854,16 @@ void UpLoadListProc(int ChName, int All)
        char Tmp[FMAX_PATH+1];\r
        int FirstAdd;\r
 \r
-       if(CheckClosedAndReconnect() == SUCCESS)\r
+       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
        {\r
                DisableUserOpe();\r
 \r
-               // \83\8d\81[\83J\83\8b\91¤\82Å\91I\82Î\82ê\82Ä\82¢\82é\83t\83@\83C\83\8b\82ðFileListBase\82É\93o\98^\r
+               // ローカル側で選ばれているファイルをFileListBaseに登録\r
                FileListBase = NULL;\r
                MakeSelectedFileList(WIN_LOCAL, YES, All, &FileListBase, &CancelFlg);\r
 \r
-               // \8c»\8dÝ\83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\88ê\97\97\82É\95\\8e¦\82³\82ê\82Ä\82¢\82é\82à\82Ì\82ðRemoteList\82É\93o\98^\r
-               // \93¯\96¼\83t\83@\83C\83\8b\83`\83F\83b\83N\97p\r
+               // 現在ホスト側のファイル一覧に表示されているものをRemoteListに登録\r
+               // 同名ファイルチェック用\r
                RemoteList = NULL;\r
                AddRemoteTreeToFileList(AskCurrentFileListNum(), "", RDIR_NONE, &RemoteList);\r
 \r
@@ -886,7 +886,7 @@ void UpLoadListProc(int ChName, int All)
                        }\r
                        else\r
                        {\r
-                               // \96¼\91O\82ð\95Ï\8dX\82·\82é\r
+                               // 名前を変更する\r
                                strcpy(TmpString, Pos->File);\r
                                CurWin = WIN_LOCAL;\r
                                if(DialogBox(GetFtpInst(), MAKEINTRESOURCE(updown_as_dlg), GetMainHwnd(), UpDownAsDialogCallBack) == YES)\r
@@ -910,10 +910,10 @@ void UpLoadListProc(int ChName, int All)
 \r
                        if(Pos->Node == NODE_DIR)\r
                        {\r
-                               // \83t\83H\83\8b\83_\82Ì\8fê\8d\87\r
+                               // フォルダの場合\r
 \r
-                               // \83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\88ê\97\97\82ðRemoteList\82É\93o\98^\r
-                               // \93¯\96¼\83t\83@\83C\83\8b\83`\83F\83b\83N\97p\r
+                               // ホスト側のファイル一覧をRemoteListに登録\r
+                               // 同名ファイルチェック用\r
                                if(RemoteList != NULL)\r
                                        DeleteFileList(&RemoteList);\r
                                RemoteList = NULL;\r
@@ -927,7 +927,7 @@ void UpLoadListProc(int ChName, int All)
                                }\r
                                else\r
                                {\r
-                                       // \83t\83H\83\8b\83_\82ð\8dì\90¬\r
+                                       // フォルダを作成\r
                                        if((FirstAdd == YES) && (AskNoFullPathMode() == YES))\r
                                        {\r
                                                strcpy(Pkt1.Cmd, "SETCUR");\r
@@ -942,7 +942,7 @@ void UpLoadListProc(int ChName, int All)
                        }\r
                        else if(Pos->Node == NODE_FILE)\r
                        {\r
-                               // \83t\83@\83C\83\8b\82Ì\8fê\8d\87\r
+                               // ファイルの場合\r
                                AskLocalCurDir(Pkt.LocalFile, FMAX_PATH);\r
                                SetYenTail(Pkt.LocalFile);\r
                                strcat(Pkt.LocalFile, Pos->File);\r
@@ -954,7 +954,7 @@ void UpLoadListProc(int ChName, int All)
                                Pkt.Time = Pos->Time;\r
                                Pkt.Attr = AskUpLoadFileAttr(Pkt.RemoteFile);\r
                                Pkt.KanjiCode = AskHostKanjiCode();\r
-                               // UTF-8\91Î\89\9e\r
+                               // UTF-8対応\r
                                Pkt.KanjiCodeDesired = AskLocalKanjiCode();\r
                                Pkt.KanaCnv = AskHostKanaCnv();\r
                                Pkt.Mode = CheckRemoteFile(&Pkt, RemoteList);\r
@@ -998,13 +998,13 @@ void UpLoadListProc(int ChName, int All)
 }\r
 \r
 \r
-/*----- \83h\83\89\83b\83O\81\95\83h\83\8d\83b\83v\82Å\8ew\92è\82³\82ê\82½\83t\83@\83C\83\8b\82ð\83A\83b\83v\83\8d\81[\83h\82·\82é --------------\r
+/*----- ドラッグ&ドロップで指定されたファイルをアップロードする --------------\r
 *\r
 *      Parameter\r
-*              WPARAM wParam : \83h\83\8d\83b\83v\82³\82ê\82½\83t\83@\83C\83\8b\82Ì\8fî\95ñ\r
+*              WPARAM wParam : ドロップされたファイルの情報\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void UpLoadDragProc(WPARAM wParam)\r
@@ -1019,16 +1019,16 @@ void UpLoadDragProc(WPARAM wParam)
        int FirstAdd;\r
        char Cur[FMAX_PATH+1];\r
 \r
-       if(CheckClosedAndReconnect() == SUCCESS)\r
+       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
        {\r
                DisableUserOpe();\r
 \r
-               // \83\8d\81[\83J\83\8b\91¤\82Å\91I\82Î\82ê\82Ä\82¢\82é\83t\83@\83C\83\8b\82ðFileListBase\82É\93o\98^\r
+               // ローカル側で選ばれているファイルをFileListBaseに登録\r
                FileListBase = NULL;\r
                MakeDroppedFileList(wParam, Cur, &FileListBase);\r
 \r
-               // \8c»\8dÝ\83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\88ê\97\97\82É\95\\8e¦\82³\82ê\82Ä\82¢\82é\82à\82Ì\82ðRemoteList\82É\93o\98^\r
-               // \93¯\96¼\83t\83@\83C\83\8b\83`\83F\83b\83N\97p\r
+               // 現在ホスト側のファイル一覧に表示されているものをRemoteListに登録\r
+               // 同名ファイルチェック用\r
                RemoteList = NULL;\r
                AddRemoteTreeToFileList(AskCurrentFileListNum(), "", RDIR_NONE, &RemoteList);\r
 \r
@@ -1063,10 +1063,10 @@ void UpLoadDragProc(WPARAM wParam)
 \r
                        if(Pos->Node == NODE_DIR)\r
                        {\r
-                               // \83t\83H\83\8b\83_\82Ì\8fê\8d\87\r
+                               // フォルダの場合\r
 \r
-                               // \83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\88ê\97\97\82ðRemoteList\82É\93o\98^\r
-                               // \93¯\96¼\83t\83@\83C\83\8b\83`\83F\83b\83N\97p\r
+                               // ホスト側のファイル一覧をRemoteListに登録\r
+                               // 同名ファイルチェック用\r
                                if(RemoteList != NULL)\r
                                        DeleteFileList(&RemoteList);\r
                                RemoteList = NULL;\r
@@ -1094,7 +1094,7 @@ void UpLoadDragProc(WPARAM wParam)
                        }\r
                        else if(Pos->Node == NODE_FILE)\r
                        {\r
-                               // \83t\83@\83C\83\8b\82Ì\8fê\8d\87\r
+                               // ファイルの場合\r
                                strcpy(Pkt.LocalFile, Cur);\r
                                SetYenTail(Pkt.LocalFile);\r
                                strcat(Pkt.LocalFile, Pos->File);\r
@@ -1106,7 +1106,7 @@ void UpLoadDragProc(WPARAM wParam)
                                Pkt.Time = Pos->Time;\r
                                Pkt.Attr = AskUpLoadFileAttr(Pkt.RemoteFile);\r
                                Pkt.KanjiCode = AskHostKanjiCode();\r
-                               // UTF-8\91Î\89\9e\r
+                               // UTF-8対応\r
                                Pkt.KanjiCodeDesired = AskLocalKanjiCode();\r
                                Pkt.KanaCnv = AskHostKanaCnv();\r
                                Pkt.Mode = CheckRemoteFile(&Pkt, RemoteList);\r
@@ -1150,13 +1150,13 @@ void UpLoadDragProc(WPARAM wParam)
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\83A\83b\83v\83\8d\81[\83h\82ð\8ds\82¤ ----------------------------------------\r
+/*----- ミラーリングアップロードを行う ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Notify : \8am\94F\82ð\8ds\82¤\82©\82Ç\82¤\82© (YES/NO)\r
+*              int Notify : 確認を行うかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void MirrorUploadProc(int Notify)\r
@@ -1175,7 +1175,7 @@ void MirrorUploadProc(int Notify)
        FILETIME TmpFtimeL;\r
        FILETIME TmpFtimeR;\r
 \r
-       if(CheckClosedAndReconnect() == SUCCESS)\r
+       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
        {\r
                DisableUserOpe();\r
 \r
@@ -1188,7 +1188,7 @@ void MirrorUploadProc(int Notify)
 \r
                if((Notify == YES) || (Notify == YES_LIST))\r
                {\r
-                       /*===== \83t\83@\83C\83\8b\83\8a\83X\83g\8eæ\93¾ =====*/\r
+                       /*===== ファイルリスト取得 =====*/\r
 \r
                        LocalListBase = NULL;\r
                        MakeSelectedFileList(WIN_LOCAL, YES, YES, &LocalListBase, &CancelFlg);\r
@@ -1198,7 +1198,7 @@ void MirrorUploadProc(int Notify)
                        LocalPos = LocalListBase;\r
                        while(LocalPos != NULL)\r
                        {\r
-                               LocalPos->Attr = YES;           /* LocalPos->Attr\82Í\93]\91\97\82·\82é\82©\82Ç\82¤\82©\82Ì\83t\83\89\83O\82É\8eg\97p (YES/NO) */\r
+                               LocalPos->Attr = YES;           /* LocalPos->Attrは転送するかどうかのフラグに使用 (YES/NO) */\r
                                LocalPos = LocalPos->Next;\r
                        }\r
 \r
@@ -1212,7 +1212,7 @@ void MirrorUploadProc(int Notify)
                                }\r
                                else\r
                                {\r
-                                       RemotePos->Attr = NO;   /* RemotePos->Attr\82Í\8dí\8f\9c\82·\82é\82©\82Ç\82¤\82©\82Ì\83t\83\89\83O\82É\8eg\97p (YES/NO) */\r
+                                       RemotePos->Attr = NO;   /* RemotePos->Attrは削除するかどうかのフラグに使用 (YES/NO) */\r
 \r
                                        if(RemotePos->Node == NODE_DIR)\r
                                        {\r
@@ -1234,7 +1234,7 @@ void MirrorUploadProc(int Notify)
                                }\r
                        }\r
 \r
-                       /*===== \83t\83@\83C\83\8b\83\8a\83X\83g\94ä\8ar =====*/\r
+                       /*===== ファイルリスト比較 =====*/\r
 \r
                        LocalPos = LocalListBase;\r
                        while(LocalPos != NULL)\r
@@ -1321,7 +1321,7 @@ void MirrorUploadProc(int Notify)
 \r
                        DispMirrorFiles(LocalListBase, RemoteListBase);\r
 \r
-                       /*===== \8dí\8f\9c\81^\83A\83b\83v\83\8d\81[\83h =====*/\r
+                       /*===== 削除/アップロード =====*/\r
 \r
                        RemotePos = RemoteListBase;\r
                        while(RemotePos != NULL)\r
@@ -1374,7 +1374,7 @@ void MirrorUploadProc(int Notify)
                                                Pkt.Time = LocalPos->Time;\r
                                                Pkt.Attr = AskUpLoadFileAttr(Pkt.RemoteFile);\r
                                                Pkt.KanjiCode = AskHostKanjiCode();\r
-                                               // UTF-8\91Î\89\9e\r
+                                               // UTF-8対応\r
                                                Pkt.KanjiCodeDesired = AskLocalKanjiCode();\r
                                                Pkt.KanaCnv = AskHostKanaCnv();\r
                                                Pkt.Mode = EXIST_OVW;\r
@@ -1420,15 +1420,15 @@ void MirrorUploadProc(int Notify)
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\8e\9e\82Ì\83z\83X\83g\91¤\82Ì\83t\83H\83\8b\83_\8dí\8f\9c --------------------------------\r
+/*----- ミラーリング時のホスト側のフォルダ削除 --------------------------------\r
 *\r
 *      Parameter\r
-*              FILELIST *Base : \83t\83@\83C\83\8b\83\8a\83X\83g\r
+*              FILELIST *Base : ファイルリスト\r
 *              TRANSPACKET *Pkt : \r
 *              TRANSPACKET **Base : \r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void MirrorDeleteAllDir(FILELIST *Remote, TRANSPACKET *Pkt, TRANSPACKET **Base)\r
@@ -1457,13 +1457,13 @@ static void MirrorDeleteAllDir(FILELIST *Remote, TRANSPACKET *Pkt, TRANSPACKET *
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\83A\83b\83v\83\8d\81[\83h\8aJ\8en\8am\94F\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N --------------\r
+/*----- ミラーリングアップロード開始確認ウインドウのコールバック --------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1506,13 +1506,13 @@ static BOOL CALLBACK MirrorNotifyCallBack(HWND hDlg, UINT iMessage, WPARAM wPara
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\83A\83b\83v\83\8d\81[\83h\8f\88\97\9d\93à\97e\8am\94F\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ----------\r
+/*----- ミラーリングアップロード処理内容確認ウインドウのコールバック ----------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1586,7 +1586,7 @@ static BOOL CALLBACK MirrorDispListCallBack(HWND hDlg, UINT iMessage, WPARAM wPa
                                                Num = SendDlgItemMessage(hDlg, MIRROR_LIST, LB_GETSELITEMS, Num, (LPARAM)List);\r
                                                for(Num--; Num >= 0; Num--)\r
                                                {\r
-                                                       if(RemoveTmpTransFileListItem(Base, List[Num]) == SUCCESS)\r
+                                                       if(RemoveTmpTransFileListItem(Base, List[Num]) == FFFTP_SUCCESS)\r
                                                                SendDlgItemMessage(hDlg, MIRROR_LIST, LB_DELETESTRING, List[Num], 0);\r
                                                        else\r
                                                                MessageBeep(-1);\r
@@ -1621,14 +1621,14 @@ static BOOL CALLBACK MirrorDispListCallBack(HWND hDlg, UINT iMessage, WPARAM wPa
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\82Å\93]\91\97\81^\8dí\8f\9c\82·\82é\83t\83@\83C\83\8b\82Ì\90\94\82ð\90\94\82¦\83_\83C\83A\83\8d\83O\82É\95\\8e¦---------\r
+/*----- ミラーリングで転送/削除するファイルの数を数えダイアログに表示---------\r
 *\r
 *      Parameter\r
 *              HWND hWnd : \r
 *              TRANSPACKET *Pkt : \r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void CountMirrorFiles(HWND hDlg, TRANSPACKET *Pkt)\r
@@ -1687,16 +1687,16 @@ static void CountMirrorFiles(HWND hDlg, TRANSPACKET *Pkt)
 \r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\82Å\93]\91\97\81^\8dí\8f\9c\82µ\82È\82¢\83t\83@\83C\83\8b\82©\82Ç\82¤\82©\82ð\95Ô\82· ------------------\r
+/*----- ミラーリングで転送/削除しないファイルかどうかを返す ------------------\r
 *\r
 *      Parameter\r
-*              char Fname : \83t\83@\83C\83\8b\96¼\r
-*              int Mode : \83\82\81[\83h\r
-*                      0=\93]\91\97\82µ\82È\82¢\83t\83@\83C\83\8b, 1=\8dí\8f\9c\82µ\82È\82¢\83t\83@\83C\83\8b\r
+*              char Fname : ファイル名\r
+*              int Mode : モード\r
+*                      0=転送しないファイル, 1=削除しないファイル\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      YES=\93]\91\97\81E\8dí\8f\9c\82µ\82È\82¢/NO\r
+*              int ステータス\r
+*                      YES=転送・削除しない/NO\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int AskMirrorNoTrn(char *Fname, int Mode)\r
@@ -1714,7 +1714,7 @@ static int AskMirrorNoTrn(char *Fname, int Mode)
                Fname = GetFileName(Fname);\r
                while(*Tbl != NUL)\r
                {\r
-                       if(CheckFname(Fname, Tbl) == SUCCESS)\r
+                       if(CheckFname(Fname, Tbl) == FFFTP_SUCCESS)\r
                        {\r
                                Ret = YES;\r
                                break;\r
@@ -1726,13 +1726,13 @@ static int AskMirrorNoTrn(char *Fname, int Mode)
 }\r
 \r
 \r
-/*----- \83A\83b\83v\83\8d\81[\83h\82·\82é\83t\83@\83C\83\8b\82Ì\91®\90«\82ð\95Ô\82· ----------------------------------\r
+/*----- アップロードするファイルの属性を返す ----------------------------------\r
 *\r
 *      Parameter\r
-*              char Fname : \83t\83@\83C\83\8b\96¼\r
+*              char Fname : ファイル名\r
 *\r
 *      Return Value\r
-*              int \91®\90« (-1=\90Ý\92è\82È\82µ)\r
+*              int 属性 (-1=設定なし)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int AskUpLoadFileAttr(char *Fname)\r
@@ -1749,7 +1749,7 @@ static int AskUpLoadFileAttr(char *Fname)
                Sts = CheckFname(Fname, Tbl);\r
                Tbl += strlen(Tbl) + 1;\r
 \r
-               if((Sts == SUCCESS) && (*Tbl != NUL))\r
+               if((Sts == FFFTP_SUCCESS) && (*Tbl != NUL))\r
                {\r
                        Ret = xtoi(Tbl);\r
                        break;\r
@@ -1760,18 +1760,18 @@ static int AskUpLoadFileAttr(char *Fname)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82É\93¯\82\96¼\91O\82Ì\83t\83@\83C\83\8b\82ª\82È\82¢\82©\83`\83F\83b\83N- ---------------------------a\r
+/*----- ホストに同じ名前のファイルがないかチェック- ---------------------------a\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
 *              FILELIST *ListList : \r
 *\r
 *      Return Value\r
-*              int \8f\88\97\9d\95û\96@\r
+*              int 処理方法\r
 *                      EXIST_OVW/EXIST_UNIQUE/EXIST_IGNORE\r
 *\r
 *      Note\r
-*              Pkt.ExistSize, UpExistMode\81AExistNotify \82ª\95Ï\8dX\82³\82ê\82é\r
+*              Pkt.ExistSize, UpExistMode、ExistNotify が変更される\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CheckRemoteFile(TRANSPACKET *Pkt, FILELIST *ListList)\r
@@ -1800,7 +1800,7 @@ static int CheckRemoteFile(TRANSPACKET *Pkt, FILELIST *ListList)
 \r
                        if(Ret == EXIST_NEW)\r
                        {\r
-                               /*\83t\83@\83C\83\8b\93ú\95t\83`\83F\83b\83N */\r
+                               /*ファイル日付チェック */\r
                                if(CompareFileTime(&Exist->Time, &Pkt->Time) < 0)\r
                                        Ret = EXIST_OVW;\r
                                else\r
@@ -1812,13 +1812,13 @@ static int CheckRemoteFile(TRANSPACKET *Pkt, FILELIST *ListList)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82É\93¯\82\96¼\91O\82Ì\83t\83@\83C\83\8b\82ª\82 \82é\8e\9e\82Ì\8am\94F\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ------\r
+/*----- ホストに同じ名前のファイルがある時の確認ダイアログのコールバック ------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1854,7 +1854,7 @@ static BOOL CALLBACK UpExistDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wPar
                        {\r
                                case IDOK_ALL :\r
                                        ExistNotify = NO;\r
-                                       /* \82±\82±\82É break \82Í\82È\82¢ */\r
+                                       /* ここに break はない */\r
 \r
                                case IDOK :\r
                                        UpExistMode = AskRadioButtonValue(hDlg, UpExistButton, UPEXISTBUTTONS);\r
@@ -1878,13 +1878,13 @@ static BOOL CALLBACK UpExistDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wPar
 }\r
 \r
 \r
-/*----- \83A\83b\83v\83\8d\81[\83h\81^\83_\83E\83\93\83\8d\81[\83h\83t\83@\83C\83\8b\96¼\93ü\97Í\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ------\r
+/*----- アップロード/ダウンロードファイル名入力ダイアログのコールバック ------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1923,13 +1923,13 @@ static BOOL CALLBACK UpDownAsDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wPa
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\82Å\8ew\92è\82³\82ê\82½\83t\83@\83C\83\8b\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 DeleteProc(void)\r
@@ -1953,7 +1953,7 @@ void DeleteProc(void)
        else\r
        {\r
                Win = WIN_REMOTE;\r
-               if(CheckClosedAndReconnect() == SUCCESS)\r
+               if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                        MakeSelectedFileList(Win, YES, NO, &FileListBase, &CancelFlg);\r
                else\r
                        Sts = NO;\r
@@ -2003,17 +2003,17 @@ void DeleteProc(void)
 }\r
 \r
 \r
-/*----- \83T\83u\83f\83B\83\8c\83N\83g\83\8a\88È\89º\82ð\91S\82Ä\8dí\8f\9c\82·\82é ------------------------------------\r
+/*----- サブディレクトリ以下を全て削除する ------------------------------------\r
 *\r
 *      Parameter\r
-*              FILELIST *Dt : \8dí\8f\9c\82·\82é\83t\83@\83C\83\8b\82Ì\83\8a\83X\83g\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int *Sw : \91\80\8dì\95û\96@ (YES/NO/YES_ALL/NO_ALL)\r
-*              int *Flg : \83t\83@\83C\83\8b\82ð\8dí\8f\9c\82µ\82½\82©\82Ç\82¤\82©\82Ì\83t\83\89\83O (YES/NO)\r
-*              char *CurDir : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\r
+*              FILELIST *Dt : 削除するファイルのリスト\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int *Sw : 操作方法 (YES/NO/YES_ALL/NO_ALL)\r
+*              int *Flg : ファイルを削除したかどうかのフラグ (YES/NO)\r
+*              char *CurDir : カレントディレクトリ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DeleteAllDir(FILELIST *Dt, int Win, int *Sw, int *Flg, char *CurDir)\r
@@ -2035,17 +2035,17 @@ static void DeleteAllDir(FILELIST *Dt, int Win, int *Sw, int *Flg, char *CurDir)
 }\r
 \r
 \r
-/*----- \8dí\8f\9c\82·\82é\82©\82Ç\82¤\82©\82Ì\8am\94F\82Æ\8dí\8f\9c\8eÀ\8ds --------------------------------------\r
+/*----- 削除するかどうかの確認と削除実行 --------------------------------------\r
 *\r
 *      Parameter\r
-*              FILELIST *Dt : \8dí\8f\9c\82·\82é\83t\83@\83C\83\8b\82Ì\83\8a\83X\83g\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int *Sw : \91\80\8dì\95û\96@ (YES/NO/YES_ALL/NO_ALL)\r
-*              int *Flg : \83t\83@\83C\83\8b\82ð\8dí\8f\9c\82µ\82½\82©\82Ç\82¤\82©\82Ì\83t\83\89\83O (YES/NO)\r
-*              char *CurDir : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\r
+*              FILELIST *Dt : 削除するファイルのリスト\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int *Sw : 操作方法 (YES/NO/YES_ALL/NO_ALL)\r
+*              int *Flg : ファイルを削除したかどうかのフラグ (YES/NO)\r
+*              char *CurDir : カレントディレクトリ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DelNotifyAndDo(FILELIST *Dt, int Win, int *Sw, int *Flg, char *CurDir)\r
@@ -2090,8 +2090,8 @@ static void DelNotifyAndDo(FILELIST *Dt, int Win, int *Sw, int *Flg, char *CurDi
                }\r
                else\r
                {\r
-                       /* \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\8e\9e\82Ì\82½\82ß\82Ì\8f\88\97\9d */\r
-                       if(ProcForNonFullpath(Path, CurDir, GetMainHwnd(), 0) == FAIL)\r
+                       /* フルパスを使わない時のための処理 */\r
+                       if(ProcForNonFullpath(Path, CurDir, GetMainHwnd(), 0) == FFFTP_FAIL)\r
                                *Sw = NO_ALL;\r
 \r
                        if(*Sw != NO_ALL)\r
@@ -2108,13 +2108,13 @@ static void DelNotifyAndDo(FILELIST *Dt, int Win, int *Sw, int *Flg, char *CurDi
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\8dí\8f\9c\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------------------\r
+/*----- ファイル削除ダイアログのコールバック ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -2157,13 +2157,13 @@ static BOOL CALLBACK DeleteDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wPara
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\82Å\8ew\92è\82³\82ê\82½\83t\83@\83C\83\8b\82Ì\96¼\91O\82ð\95Ï\8dX\82·\82é ----------------------\r
+/*----- ファイル一覧で指定されたファイルの名前を変更する ----------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void RenameProc(void)\r
@@ -2175,7 +2175,7 @@ void RenameProc(void)
        int RenFlg;\r
        int Sts;\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        if(GetFocus() == GetLocalHwnd())\r
                Win = WIN_LOCAL;\r
        else\r
@@ -2184,7 +2184,7 @@ void RenameProc(void)
                Sts = CheckClosedAndReconnect();\r
        }\r
 \r
-       if(Sts == SUCCESS)\r
+       if(Sts == FFFTP_SUCCESS)\r
        {\r
                DisableUserOpe();\r
 \r
@@ -2234,9 +2234,9 @@ void RenameProc(void)
 \r
 \r
 //\r
-// \83\8a\83\82\81[\83g\91¤\82Å\82Ì\83t\83@\83C\83\8b\82Ì\88Ú\93®\81i\83\8a\83l\81[\83\80\81j\82ð\8ds\82¤\r
+// リモート側でのファイルの移動(リネーム)を行う\r
 //  \r
-// RenameProc()\82ð\83x\81[\83X\82É\89ü\91¢\81B(2007.9.5 yutaka)\r
+// RenameProc()をベースに改造。(2007.9.5 yutaka)\r
 //\r
 void MoveRemoteFileProc(int drop_index)\r
 {\r
@@ -2257,7 +2257,7 @@ void MoveRemoteFileProc(int drop_index)
 \r
        AskRemoteCurDir(HostDir, FMAX_PATH);\r
 \r
-       // \83h\83\8d\83b\83v\90æ\82Ì\83t\83H\83\8b\83_\96¼\82ð\93¾\82é\r
+       // ドロップ先のフォルダ名を得る\r
        GetNodeName(WIN_REMOTE, drop_index, Pkt.File, FMAX_PATH);\r
 \r
        if(MoveMode == MOVE_DLG)\r
@@ -2268,7 +2268,7 @@ void MoveRemoteFileProc(int drop_index)
                }\r
        }\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
 #if 0\r
        if(GetFocus() == GetLocalHwnd())\r
                Win = WIN_LOCAL;\r
@@ -2282,7 +2282,7 @@ void MoveRemoteFileProc(int drop_index)
                Sts = CheckClosedAndReconnect();\r
 #endif\r
 \r
-       if(Sts == SUCCESS)\r
+       if(Sts == FFFTP_SUCCESS)\r
        {\r
                DisableUserOpe();\r
 \r
@@ -2309,12 +2309,12 @@ void MoveRemoteFileProc(int drop_index)
 \r
                                if((Sts == YES) && (strlen(TmpString) != 0))\r
                                {\r
-                                       // \83p\83X\82Ì\90Ý\92è(local)\r
+                                       // パスの設定(local)\r
                                        strncpy_s(Old, sizeof(Old), HostDir, _TRUNCATE);\r
                                        strncat_s(Old, sizeof(Old), "/", _TRUNCATE);\r
                                        strncat_s(Old, sizeof(Old), Pos->File, _TRUNCATE);\r
 \r
-                                       // \83p\83X\82Ì\90Ý\92è(remote)\r
+                                       // パスの設定(remote)\r
                                        strncpy_s(New, sizeof(New), HostDir, _TRUNCATE);\r
                                        strncat_s(New, sizeof(New), "/", _TRUNCATE);\r
                                        strncat_s(New, sizeof(New), Pkt.File, _TRUNCATE);\r
@@ -2354,13 +2354,13 @@ void MoveRemoteFileProc(int drop_index)
 \r
 \r
 \r
-/*----- \90V\83t\83@\83C\83\8b\96¼\93ü\97Í\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------\r
+/*----- 新ファイル名入力ダイアログのコールバック ------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -2402,13 +2402,13 @@ static BOOL CALLBACK RenameDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wPara
 }\r
 \r
 \r
-/*----- \90V\82µ\82¢\83f\83B\83\8c\83N\83g\83\8a\82ð\8dì\90¬\82·\82é ------------------------------------------\r
+/*----- 新しいディレクトリを作成する ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void MkdirProc(void)\r
@@ -2444,7 +2444,7 @@ void MkdirProc(void)
                }\r
                else\r
                {\r
-                       if(CheckClosedAndReconnect() == SUCCESS)\r
+                       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                        {\r
                                DisableUserOpe();\r
                                DoMKD(Path);\r
@@ -2457,13 +2457,13 @@ void MkdirProc(void)
 }\r
 \r
 \r
-/*----- \83q\83X\83g\83\8a\83\8a\83X\83g\82ð\8eg\82Á\82½\83f\83B\83\8c\83N\83g\83\8a\82Ì\88Ú\93® ------------------------------\r
+/*----- ヒストリリストを使ったディレクトリの移動 ------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83R\83\93\83{\83{\83b\83N\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND hWnd : コンボボックスのウインドウハンドル\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ChangeDirComboProc(HWND hWnd)\r
@@ -2484,7 +2484,7 @@ void ChangeDirComboProc(HWND hWnd)
                }\r
                else\r
                {\r
-                       if(CheckClosedAndReconnect() == SUCCESS)\r
+                       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                        {\r
                                DisableUserOpe();\r
                                if(DoCWD(Tmp, YES, NO, YES) < FTP_RETRY)\r
@@ -2497,13 +2497,13 @@ void ChangeDirComboProc(HWND hWnd)
 }\r
 \r
 \r
-/*----- \83u\83b\83N\83}\81[\83N\82ð\8eg\82Á\82½\83f\83B\83\8c\83N\83g\83\8a\82Ì\88Ú\93® --------------------------------\r
+/*----- ブックマークを使ったディレクトリの移動 --------------------------------\r
 *\r
 *      Parameter\r
-*              int MarkID : \83u\83b\83N\83}\81[\83N\82Ì\83\81\83j\83\85\81[ID\r
+*              int MarkID : ブックマークのメニューID\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ChangeDirBmarkProc(int MarkID)\r
@@ -2516,14 +2516,14 @@ void ChangeDirBmarkProc(int MarkID)
        if((Sts == BMARK_TYPE_LOCAL) || (Sts == BMARK_TYPE_BOTH))\r
        {\r
                DisableUserOpe();\r
-               if(DoLocalCWD(Local) == SUCCESS)\r
+               if(DoLocalCWD(Local) == FFFTP_SUCCESS)\r
                        GetLocalDirForWnd();\r
                EnableUserOpe();\r
        }\r
 \r
        if((Sts == BMARK_TYPE_REMOTE) || (Sts == BMARK_TYPE_BOTH))\r
        {\r
-               if(CheckClosedAndReconnect() == SUCCESS)\r
+               if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                {\r
                        DisableUserOpe();\r
                        if(DoCWD(Remote, YES, NO, YES) < FTP_RETRY)\r
@@ -2535,13 +2535,13 @@ void ChangeDirBmarkProc(int MarkID)
 }\r
 \r
 \r
-/*----- \83f\83B\83\8c\83N\83g\83\8a\96¼\82ð\93ü\97Í\82µ\82Ä\83f\83B\83\8c\83N\83g\83\8a\82Ì\88Ú\93® ----------------------------\r
+/*----- ディレクトリ名を入力してディレクトリの移動 ----------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ChangeDirDirectProc(int Win)\r
@@ -2573,7 +2573,7 @@ void ChangeDirDirectProc(int Win)
                }\r
                else\r
                {\r
-                       if(CheckClosedAndReconnect() == SUCCESS)\r
+                       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                        {\r
                                DisableUserOpe();\r
                                if(DoCWD(Path, YES, NO, YES) < FTP_RETRY)\r
@@ -2586,13 +2586,13 @@ void ChangeDirDirectProc(int Win)
 }\r
 \r
 \r
-/*----- Drop\82³\82ê\82½\83t\83@\83C\83\8b\82É\82æ\82é\83f\83B\83\8c\83N\83g\83\8a\82Ì\88Ú\93® ----------------------------\r
+/*----- Dropされたファイルによるディレクトリの移動 ----------------------------\r
 *\r
 *      Parameter\r
-*              WPARAM wParam : \83h\83\8d\83b\83v\82³\82ê\82½\83t\83@\83C\83\8b\82Ì\8fî\95ñ\r
+*              WPARAM wParam : ドロップされたファイルの情報\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ChangeDirDropFileProc(WPARAM wParam)\r
@@ -2608,13 +2608,13 @@ void ChangeDirDropFileProc(WPARAM wParam)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\82Ì\91®\90«\95Ï\8dX ----------------------------------------------------\r
+/*----- ファイルの属性変更 ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ChmodProc(void)\r
@@ -2629,7 +2629,7 @@ void ChmodProc(void)
 \r
        if(GetFocus() == GetRemoteHwnd())\r
        {\r
-               if(CheckClosedAndReconnect() == SUCCESS)\r
+               if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                {\r
                        DisableUserOpe();\r
                        FileListBase = NULL;\r
@@ -2693,13 +2693,13 @@ void ChmodProc(void)
 }\r
 \r
 \r
-/*----- \91®\90«\95Ï\8dX\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------------------\r
+/*----- 属性変更ダイアログのコールバック --------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -2756,14 +2756,14 @@ BOOL CALLBACK ChmodDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARA
 }\r
 \r
 \r
-/*----- \91®\90«\82ð\83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82É\90Ý\92è ----------------------------------------\r
+/*----- 属性をダイアログボックスに設定 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int Attr : \91®\90«\r
+*              HWND hWnd : ダイアログボックスのウインドウハンドル\r
+*              int Attr : 属性\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SetAttrToDialog(HWND hDlg, int Attr)\r
@@ -2793,13 +2793,13 @@ static void SetAttrToDialog(HWND hDlg, int Attr)
 }\r
 \r
 \r
-/*----- \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\93à\97e\82©\82ç\91®\90«\82ð\8eæ\93¾ --------------------------------\r
+/*----- ダイアログボックスの内容から属性を取得 --------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND hWnd : ダイアログボックスのウインドウハンドル\r
 *\r
 *      Return Value\r
-*              int \91®\90«\r
+*              int 属性\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetAttrFromDialog(HWND hDlg)\r
@@ -2835,13 +2835,13 @@ static int GetAttrFromDialog(HWND hDlg)
 \r
 \r
 \r
-/*----- \94C\88Ó\82Ì\83R\83}\83\93\83h\82ð\91\97\82é --------------------------------------------------\r
+/*----- 任意のコマンドを送る --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SomeCmdProc(void)\r
@@ -2852,7 +2852,7 @@ void SomeCmdProc(void)
 \r
        if(GetFocus() == GetRemoteHwnd())\r
        {\r
-               if(CheckClosedAndReconnect() == SUCCESS)\r
+               if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                {\r
                        DisableUserOpe();\r
                        FileListBase = NULL;\r
@@ -2877,13 +2877,13 @@ void SomeCmdProc(void)
 \r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\91\8d\97e\97Ê\82Ì\8cv\8eZ\82ð\8ds\82¤ --------------------------------------------\r
+/*----- ファイル総容量の計算を行う --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void CalcFileSizeProc(void)\r
@@ -2896,7 +2896,7 @@ void CalcFileSizeProc(void)
 \r
        if((All = DialogBox(GetFtpInst(), MAKEINTRESOURCE(filesize_notify_dlg), GetMainHwnd(), SizeNotifyDlgWndProc)) != NO_ALL)\r
        {\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
                if(GetFocus() == GetLocalHwnd())\r
                        Win = WIN_LOCAL;\r
                else\r
@@ -2905,7 +2905,7 @@ void CalcFileSizeProc(void)
                        Sts = CheckClosedAndReconnect();\r
                }\r
 \r
-               if(Sts == SUCCESS)\r
+               if(Sts == FFFTP_SUCCESS)\r
                {\r
                        ListBase = NULL;\r
                        MakeSelectedFileList(Win, YES, All, &ListBase, &CancelFlg);\r
@@ -2926,16 +2926,16 @@ void CalcFileSizeProc(void)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\97e\97Ê\8c\9f\8dõ\8am\94F\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------\r
+/*----- ファイル容量検索確認ダイアログのコールバック --------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message  : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message  : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
-*              \83\81\83b\83Z\81[\83W\82É\91Î\89\9e\82·\82é\96ß\82è\92l\r
+*              メッセージに対応する戻り値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static LRESULT CALLBACK SizeNotifyDlgWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)\r
@@ -2969,16 +2969,16 @@ static LRESULT CALLBACK SizeNotifyDlgWndProc(HWND hDlg, UINT message, WPARAM wPa
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\97e\97Ê\8c\9f\8dõ\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------\r
+/*----- ファイル容量検索ダイアログのコールバック ------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message  : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message  : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
-*              \83\81\83b\83Z\81[\83W\82É\91Î\89\9e\82·\82é\96ß\82è\92l\r
+*              メッセージに対応する戻り値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static LRESULT CALLBACK SizeDlgWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)\r
@@ -3012,13 +3012,13 @@ static LRESULT CALLBACK SizeDlgWndProc(HWND hDlg, UINT message, WPARAM wParam, L
 }\r
 \r
 \r
-/*----- \83f\83B\83\8c\83N\83g\83\8a\88Ú\93®\8e¸\94s\8e\9e\82Ì\83G\83\89\81[\82ð\95\\8e¦ ----------------------------------\r
+/*----- ディレクトリ移動失敗時のエラーを表示 ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND hDlg : ウインドウハンドル\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispCWDerror(HWND hWnd)\r
@@ -3028,13 +3028,13 @@ void DispCWDerror(HWND hWnd)
 }\r
 \r
 \r
-/*----- URL\82ð\83N\83\8a\83b\83v\83{\81[\83h\82É\83R\83s\81[ -------------------------------------------\r
+/*----- URLをクリップボードにコピー -------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void CopyURLtoClipBoard(void)\r
@@ -3072,7 +3072,7 @@ void CopyURLtoClipBoard(void)
                                        sprintf(Port, ":%d", AskHostPort());\r
 \r
                                Set = Total;\r
-                               Total += strlen(Path) + strlen(Host) + strlen(Port) + 8;        /* 8\82Í "ftp://\r\n" \82Ì\82Ô\82ñ */\r
+                               Total += strlen(Path) + strlen(Host) + strlen(Port) + 8;        /* 8は "ftp://\r\n" のぶん */\r
                                if(AskHostType() == HTYPE_VMS)\r
                                        Total++;\r
 \r
@@ -3099,22 +3099,22 @@ void CopyURLtoClipBoard(void)
 }\r
 \r
 \r
-/*----- \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\83t\83@\83C\83\8b\83A\83N\83Z\83X\82Ì\8f\80\94õ ------------------------------\r
+/*----- フルパスを使わないファイルアクセスの準備 ------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              char *CurDir : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\r
-*              HWND hWnd : \83G\83\89\81[\83E\83C\83\93\83h\83E\82ð\95\\8e¦\82·\82é\8dÛ\82Ì\90e\83E\83C\83\93\83h\83E\r
-*              int Type : \8eg\97p\82·\82é\83\\83P\83b\83g\82Ì\8eí\97Þ\r
-*                      0=\83R\83}\83\93\83h\83\\83P\83b\83g, 1=\93]\91\97\83\\83P\83b\83g\r
+*              char *Path : パス名\r
+*              char *CurDir : カレントディレクトリ\r
+*              HWND hWnd : エラーウインドウを表示する際の親ウインドウ\r
+*              int Type : 使用するソケットの種類\r
+*                      0=コマンドソケット, 1=転送ソケット\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X(SUCCESS/FAIL)\r
+*              int ステータス(FFFTP_SUCCESS/FFFTP_FAIL)\r
 *\r
 *      Note\r
-*              \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\8e\9e\82Í\81A\r
-*                      \82±\82Ì\83\82\83W\83\85\81[\83\8b\93à\82Å CWD \82ð\8ds\82È\82¢\81A\r
-*                      Path \82É\83t\83@\83C\83\8b\96¼\82Ì\82Ý\8ec\82·\81B\81i\83p\83X\96¼\82Í\8fÁ\82·\81j\r
+*              フルパスを使わない時は、\r
+*                      このモジュール内で CWD を行ない、\r
+*                      Path にファイル名のみ残す。(パス名は消す)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ProcForNonFullpath(char *Path, char *CurDir, HWND hWnd, int Type)\r
@@ -3123,7 +3123,7 @@ int ProcForNonFullpath(char *Path, char *CurDir, HWND hWnd, int Type)
        int Cmd;\r
        char Tmp[FMAX_PATH+1];\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        if(AskNoFullPathMode() == YES)\r
        {\r
                strcpy(Tmp, Path);\r
@@ -3147,7 +3147,7 @@ int ProcForNonFullpath(char *Path, char *CurDir, HWND hWnd, int Type)
                        if(Cmd/100 != FTP_COMPLETE)\r
                        {\r
                                DispCWDerror(hWnd);\r
-                               Sts = FAIL;\r
+                               Sts = FFFTP_FAIL;\r
                        }\r
                        else\r
                                strcpy(CurDir, Tmp);\r
@@ -3158,13 +3158,13 @@ int ProcForNonFullpath(char *Path, char *CurDir, HWND hWnd, int Type)
 }\r
 \r
 \r
-/*----- \83f\83B\83\8c\83N\83g\83\8a\96¼\82ðVAX VMS\83X\83^\83C\83\8b\82É\95Ï\8a·\82·\82é -----------------------------\r
+/*----- ディレクトリ名をVAX VMSスタイルに変換する -----------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
 *              ddd:[xxx.yyy]/rrr/ppp  --> ddd:[xxx.yyy.rrr.ppp]\r
@@ -3194,13 +3194,13 @@ void ReformToVMSstyleDirName(char *Path)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\96¼\82ðVAX VMS\83X\83^\83C\83\8b\82É\95Ï\8a·\82·\82é ---------------------------------\r
+/*----- ファイル名をVAX VMSスタイルに変換する ---------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
 *              ddd:[xxx.yyy]/rrr/ppp  --> ddd:[xxx.yyy.rrr]ppp\r
@@ -3222,17 +3222,17 @@ void ReformToVMSstylePathName(char *Path)
 \r
 \r
 #if defined(HAVE_OPENVMS)\r
-/*----- VMS\82Ì"HOGE.DIR;?"\82Æ\82¢\82¤\83f\83B\83\8c\83N\83g\83\8a\96¼\82©\82ç"HOGE"\82ð\8eæ\82è\8fo\82· ---------------\r
+/*----- VMSの"HOGE.DIR;?"というディレクトリ名から"HOGE"を取り出す ---------------\r
 *\r
 *      Parameter\r
-*              char *DirName : "HOGE.DIR;?"\8c`\8e®\82Ì\83f\83B\83\8c\83N\83g\83\8a\96¼\r
-*              int Flg       : ";"\82Ì\83`\83F\83b\83N\82ð\82·\82é(TRUE)\82©\82µ\82È\82¢(FALSE)\82©\r
+*              char *DirName : "HOGE.DIR;?"形式のディレクトリ名\r
+*              int Flg       : ";"のチェックをする(TRUE)かしない(FALSE)か\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              DirName\82ð\92¼\90Ú\8f\91\82«\82©\82¦\82é\r
+*              DirNameを直接書きかえる\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ReformVMSDirName(char *DirName, int Flg)\r
@@ -3240,12 +3240,12 @@ void ReformVMSDirName(char *DirName, int Flg)
        char *p;\r
 \r
        if (Flg == TRUE) {\r
-               /* ';'\82ª\82È\82¢\8fê\8d\87\82ÍVMS\8c`\8e®\82\82á\82È\82³\82»\82¤\82È\82Ì\82Å\89½\82à\82µ\82È\82¢ */\r
+               /* ';'がない場合はVMS形式じゃなさそうなので何もしない */\r
                if ((p = strrchr(DirName, ';')) == NULL)\r
                        return;\r
        }\r
 \r
-       /* ".DIR"\82ª\82 \82Á\82½\82ç\82Â\82Ô\82· */\r
+       /* ".DIR"があったらつぶす */\r
        if ((p = strrchr(DirName, '.'))) {\r
                if (memcmp(p + 1, "DIR", 3) == 0)\r
                        *p = '\0';\r
@@ -3254,17 +3254,17 @@ void ReformVMSDirName(char *DirName, int Flg)
 #endif\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\96¼\82É\8eg\82¦\82È\82¢\95\8e\9a\82ª\82È\82¢\82©\83`\83F\83b\83N\82µ\96¼\91O\82ð\95Ï\8dX\82·\82é --------------\r
+/*----- ファイル名に使えない文字がないかチェックし名前を変更する --------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              char *Fname : ファイル名\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL=\92\86\8e~\82·\82é\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL=中止する\r
 *\r
 *      Note\r
-*              Fname\82ð\92¼\90Ú\8f\91\82«\82©\82¦\82é\r
+*              Fnameを直接書きかえる\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int RenameUnuseableName(char *Fname)\r
@@ -3272,7 +3272,7 @@ static int RenameUnuseableName(char *Fname)
        int Tmp;\r
        int Ret;\r
 \r
-       Ret = SUCCESS;\r
+       Ret = FFFTP_SUCCESS;\r
        while(1)\r
        {\r
                if((_mbschr(Fname, ':') != NULL) ||\r
@@ -3286,7 +3286,7 @@ static int RenameUnuseableName(char *Fname)
                {\r
                        if(InputDialogBox(forcerename_dlg, GetMainHwnd(), NULL, Fname, FMAX_PATH+1, &Tmp, IDH_HELP_TOPIC_0000001) == NO)\r
                        {\r
-                               Ret = FAIL;\r
+                               Ret = FFFTP_FAIL;\r
                                break;\r
                        }\r
                }\r
index 8aa9db2..9573c3e 100644 (file)
--- a/getput.c
+++ b/getput.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                      \83_\83E\83\93\83\8d\81[\83h\81^\83A\83b\83v\83\8d\81[\83h\r
+*                                                      ダウンロード/アップロード\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 / THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
 /============================================================================*/\r
 \r
-/* \82±\82Ì\83\\81[\83X\82Í\88ê\95\94\81AWS_FTP Version 93.12.05 \82Ì\83\\81[\83X\82ð\8eQ\8dl\82É\82µ\82Ü\82µ\82½\81B */\r
-/* \83X\83\8c\83b\83h\82Ì\8dì\90¬\81^\8fI\97¹\82É\8aÖ\82µ\82Ä\81A\94ó\8cû\93a\8dì\90¬\82Ì\83p\83b\83`\82ð\91g\82Ý\8d\9e\82Ý\82Ü\82µ\82½\81B */\r
+/* このソースは一部、WS_FTP Version 93.12.05 のソースを参考にしました。 */\r
+/* スレッドの作成/終了に関して、樋口殿作成のパッチを組み込みました。 */\r
 \r
 /*\r
-       \88ê\95\94\81A\8d\82\91¬\89»\82Ì\82½\82ß\82Ì\83R\81[\83h\92Ç\89Á by H.Shirouzu at 2002/10/02\r
+       一部、高速化のためのコード追加 by H.Shirouzu at 2002/10/02\r
 */\r
 \r
 #define        STRICT\r
 \r
 #ifdef DISABLE_TRANSFER_NETWORK_BUFFERS\r
 #undef BUFSIZE\r
-#define BUFSIZE                        (64 * 1024)     // RWIN\92l\88È\89º\82Å\8f[\95ª\82È\91å\82«\82³\82ª\96]\82Ü\82µ\82¢\82Æ\8ev\82í\82ê\82é\81B\r
+#define BUFSIZE                        (64 * 1024)     // RWIN値以下で充分な大きさが望ましいと思われる。\r
 #undef SET_BUFFER_SIZE\r
 #endif\r
 \r
-#define TIMER_DISPLAY          1               /* \95\\8e¦\8dX\90V\97p\83^\83C\83}\82ÌID */\r
-#define DISPLAY_TIMING         500             /* \95\\8e¦\8dX\90V\8e\9e\8aÔ 0.5\95b */\r
+#define TIMER_DISPLAY          1               /* 表示更新用タイマのID */\r
+#define DISPLAY_TIMING         500             /* 表示更新時間 0.5秒 */\r
 \r
 #define ERR_MSG_LEN                    1024\r
 \r
 \r
-/* \8dí\8f\9c\8am\94F\83_\83C\83A\83\8d\83O\82Ì\8fî\95ñ */\r
+/* 削除確認ダイアログの情報 */\r
 typedef struct {\r
        int Cur;\r
        TRANSPACKET *Pkt;\r
 } MIRRORDELETEINFO;\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static void DispTransPacket(TRANSPACKET *Pkt);\r
 static void EraseTransFileList(void);\r
@@ -106,35 +106,35 @@ static int MirrorDelNotify(int Cur, int Notify, TRANSPACKET *Pkt);
 static BOOL CALLBACK MirrorDeleteDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
 static void SetErrorMsg(char *fmt, ...);\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static HANDLE hTransferThread;\r
 static int fTransferThreadExit = FALSE;\r
 \r
-static HANDLE hRunMutex;                               /* \93]\91\97\83X\83\8c\83b\83h\8eÀ\8ds\83~\83\85\81[\83e\83b\83N\83X */\r
-static HANDLE hListAccMutex;                   /* \93]\91\97\83t\83@\83C\83\8b\83A\83N\83Z\83X\97p\83~\83\85\81[\83e\83b\83N\83X */\r
+static HANDLE hRunMutex;                               /* 転送スレッド実行ミューテックス */\r
+static HANDLE hListAccMutex;                   /* 転送ファイルアクセス用ミューテックス */\r
 \r
-static int TransFiles = 0;                             /* \93]\91\97\91Ò\82¿\83t\83@\83C\83\8b\90\94 */\r
-static TRANSPACKET *TransPacketBase = NULL;    /* \93]\91\97\83t\83@\83C\83\8b\83\8a\83X\83g */\r
+static int TransFiles = 0;                             /* 転送待ちファイル数 */\r
+static TRANSPACKET *TransPacketBase = NULL;    /* 転送ファイルリスト */\r
 \r
-static int Canceled;           /* \92\86\8e~\83t\83\89\83O YES/NO */\r
-static int ClearAll;           /* \91S\82Ä\92\86\8e~\83t\83\89\83O YES/NO */\r
+static int Canceled;           /* 中止フラグ YES/NO */\r
+static int ClearAll;           /* 全て中止フラグ YES/NO */\r
 \r
-static int ForceAbort;         /* \93]\91\97\92\86\8e~\83t\83\89\83O */\r
-                                                       /* \82±\82Ì\83t\83\89\83O\82Í\83X\83\8c\83b\83h\82ð\8fI\97¹\82³\82¹\82é\82Æ\82«\82É\8eg\82¤ */\r
+static int ForceAbort;         /* 転送中止フラグ */\r
+                                                       /* このフラグはスレッドを終了させるときに使う */\r
 \r
-static LONGLONG AllTransSizeNow;       /* \8d¡\89ñ\82Ì\93]\91\97\82Å\93]\91\97\82µ\82½\83T\83C\83Y */\r
-static time_t TimeStart;       /* \93]\91\97\8aJ\8en\8e\9e\8aÔ */\r
+static LONGLONG AllTransSizeNow;       /* 今回の転送で転送したサイズ */\r
+static time_t TimeStart;       /* 転送開始時間 */\r
 \r
-static int KeepDlg = NO;       /* \93]\91\97\92\86\83_\83C\83A\83\8d\83O\82ð\8fÁ\82³\82È\82¢\82©\82Ç\82¤\82© (YES/NO) */\r
-static int MoveToForeground = NO;              /* \83E\83C\83\93\83h\83E\82ð\91O\96Ê\82É\88Ú\93®\82·\82é\82©\82Ç\82¤\82© (YES/NO) */\r
+static int KeepDlg = NO;       /* 転送中ダイアログを消さないかどうか (YES/NO) */\r
+static int MoveToForeground = NO;              /* ウインドウを前面に移動するかどうか (YES/NO) */\r
 \r
 static char CurDir[FMAX_PATH+1] = { "" };\r
 static char ErrMsg[ERR_MSG_LEN+7];\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern int SaveTimeStamp;\r
 extern int RmEOF;\r
 // extern int TimeOut;\r
@@ -145,13 +145,13 @@ extern int FolderAttr;
 extern int FolderAttrNum;\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\93]\91\97\83X\83\8c\83b\83h\82ð\8bN\93®\82·\82é ----------------------------------------\r
+/*----- ファイル転送スレッドを起動する ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 int MakeTransferThread(void)\r
@@ -167,19 +167,19 @@ int MakeTransferThread(void)
        fTransferThreadExit = FALSE;\r
        hTransferThread = (HANDLE)_beginthreadex(NULL, 0, TransferThread, 0, 0, &dwID);\r
        if (hTransferThread == NULL)\r
-               return(FAIL); /* XXX */\r
+               return(FFFTP_FAIL); /* XXX */\r
 \r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\93]\91\97\83X\83\8c\83b\83h\82ð\8fI\97¹\82·\82é ----------------------------------------\r
+/*----- ファイル転送スレッドを終了する ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void CloseTransferThread(void)\r
@@ -204,15 +204,15 @@ void CloseTransferThread(void)
 }\r
 \r
 \r
-/*----- \93]\91\97\82·\82é\83t\83@\83C\83\8b\8fî\95ñ\82ð\83\8a\83X\83g\82É\92Ç\89Á\82·\82é --------------------------------\r
+/*----- 転送するファイル情報をリストに追加する --------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              TRANSPACKET **Base : \83\8a\83X\83g\82Ì\90æ\93ª\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              TRANSPACKET **Base : リストの先頭\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 AddTmpTransFileList(TRANSPACKET *Pkt, TRANSPACKET **Base)\r
@@ -221,7 +221,7 @@ int AddTmpTransFileList(TRANSPACKET *Pkt, TRANSPACKET **Base)
        TRANSPACKET *Prev;\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Pos = malloc(sizeof(TRANSPACKET))) != NULL)\r
        {\r
                memcpy(Pos, Pkt, sizeof(TRANSPACKET));\r
@@ -236,19 +236,19 @@ int AddTmpTransFileList(TRANSPACKET *Pkt, TRANSPACKET **Base)
                                Prev = Prev->Next;\r
                        Prev->Next = Pos;\r
                }\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \93]\91\97\82·\82é\83t\83@\83C\83\8b\8fî\95ñ\83\8a\83X\83g\82ð\83N\83\8a\83A\82·\82é --------------------------------\r
+/*----- 転送するファイル情報リストをクリアする --------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET **Base : \83\8a\83X\83g\82Ì\90æ\93ª\r
+*              TRANSPACKET **Base : リストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void EraseTmpTransFileList(TRANSPACKET **Base)\r
@@ -268,15 +268,15 @@ void EraseTmpTransFileList(TRANSPACKET **Base)
 }\r
 \r
 \r
-/*----- \93]\91\97\82·\82é\83t\83@\83C\83\8b\8fî\95ñ\83\8a\83X\83g\82©\82ç\82P\82Â\82Ì\8fî\95ñ\82ð\8eæ\82è\8f\9c\82­ --------------------\r
+/*----- 転送するファイル情報リストから1つの情報を取り除く --------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              TRANSPACKET **Base : \83\8a\83X\83g\82Ì\90æ\93ª\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              TRANSPACKET **Base : リストの先頭\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 RemoveTmpTransFileListItem(TRANSPACKET **Base, int Num)\r
@@ -285,13 +285,13 @@ int RemoveTmpTransFileListItem(TRANSPACKET **Base, int Num)
        TRANSPACKET *Prev;\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        Pos = *Base;\r
        if(Num == 0)\r
        {\r
                *Base = Pos->Next;\r
                free(Pos);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
        {\r
@@ -303,7 +303,7 @@ int RemoveTmpTransFileListItem(TRANSPACKET **Base, int Num)
                        {\r
                                Prev->Next = Pos->Next;\r
                                free(Pos);\r
-                               Sts = SUCCESS;\r
+                               Sts = FFFTP_SUCCESS;\r
                                break;\r
                        }\r
                }\r
@@ -312,13 +312,13 @@ int RemoveTmpTransFileListItem(TRANSPACKET **Base, int Num)
 }\r
 \r
 \r
-/*----- \93]\91\97\82·\82é\83t\83@\83C\83\8b\8fî\95ñ\82ð\93]\91\97\83t\83@\83C\83\8b\83\8a\83X\83g\82É\93o\98^\82·\82é --------------------\r
+/*----- 転送するファイル情報を転送ファイルリストに登録する --------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AddTransFileList(TRANSPACKET *Pkt)\r
@@ -327,7 +327,7 @@ void AddTransFileList(TRANSPACKET *Pkt)
 \r
        WaitForSingleObject(hListAccMutex, INFINITE);\r
 \r
-       if(AddTmpTransFileList(Pkt, &TransPacketBase) == SUCCESS)\r
+       if(AddTmpTransFileList(Pkt, &TransPacketBase) == FFFTP_SUCCESS)\r
        {\r
                if((strncmp(Pkt->Cmd, "RETR", 4) == 0) ||\r
                   (strncmp(Pkt->Cmd, "STOR", 4) == 0))\r
@@ -342,17 +342,17 @@ void AddTransFileList(TRANSPACKET *Pkt)
 }\r
 \r
 \r
-/*----- \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\82ð\93]\91\97\83t\83@\83C\83\8b\83\8a\83X\83g\82É\92Ç\89Á\82·\82é ------------------------\r
+/*----- 転送ファイル情報を転送ファイルリストに追加する ------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              TRANSPACKET **Base : \83\8a\83X\83g\82Ì\90æ\93ª\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              TRANSPACKET **Base : リストの先頭\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              Pkt\8e©\91Ì\82ð\83\8a\83X\83g\82É\98A\8c\8b\82·\82é\r
+*              Pkt自体をリストに連結する\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AppendTransFileList(TRANSPACKET *Pkt)\r
@@ -389,13 +389,13 @@ void AppendTransFileList(TRANSPACKET *Pkt)
 }\r
 \r
 \r
-/*----- \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\82ð\95\\8e¦\82·\82é --------------------------------------------\r
+/*----- 転送ファイル情報を表示する --------------------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DispTransPacket(TRANSPACKET *Pkt)\r
@@ -419,13 +419,13 @@ static void DispTransPacket(TRANSPACKET *Pkt)
 }\r
 \r
 \r
-/*----- \93]\91\97\83t\83@\83C\83\8b\83\8a\83X\83g\82ð\83N\83\8a\83A\82·\82é ----------------------------------------\r
+/*----- 転送ファイルリストをクリアする ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void EraseTransFileList(void)\r
@@ -441,7 +441,7 @@ static void EraseTransFileList(void)
        New = TransPacketBase;\r
        while(New != NULL)\r
        {\r
-               /* \8dÅ\8cã\82Ì"BACKCUR"\82Í\95K\97v\82È\82Ì\82Å\8fÁ\82³\82È\82¢ */\r
+               /* 最後の"BACKCUR"は必要なので消さない */\r
                if(strcmp(New->Cmd, "BACKCUR") == 0)\r
                {\r
                        if(NotDel != NULL)\r
@@ -468,13 +468,13 @@ static void EraseTransFileList(void)
 }\r
 \r
 \r
-/*----- \93]\91\97\92\86\83_\83C\83A\83\8d\83O\82ð\8fÁ\82³\82È\82¢\82æ\82¤\82É\82·\82é\82©\82Ç\82¤\82©\82ð\90Ý\92è --------------------\r
+/*----- 転送中ダイアログを消さないようにするかどうかを設定 --------------------\r
 *\r
 *      Parameter\r
-*              int Sw : \93]\91\97\92\86\83_\83C\83A\83\8d\83O\82ð\8fÁ\82³\82È\82¢\82©\82Ç\82¤\82© (YES/NO)\r
+*              int Sw : 転送中ダイアログを消さないかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void KeepTransferDialog(int Sw)\r
@@ -484,13 +484,13 @@ void KeepTransferDialog(int Sw)
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\93]\91\97\92\86\82©\82Ç\82¤\82©\82ð\95Ô\82· ----------------------------------------------\r
+/*----- 現在転送中かどうかを返す ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES/NO=\93]\91\97\92\86\82Å\82Í\82È\82¢)\r
+*              int ステータス (YES/NO=転送中ではない)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskTransferNow(void)\r
@@ -499,13 +499,13 @@ int AskTransferNow(void)
 }\r
 \r
 \r
-/*----- \93]\91\97\82·\82é\83t\83@\83C\83\8b\82Ì\90\94\82ð\95Ô\82· --------------------------------------------\r
+/*----- 転送するファイルの数を返す --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \93]\91\97\82·\82é\83t\83@\83C\83\8b\82Ì\90\94\r
+*              int 転送するファイルの数\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskTransferFileNum(void)\r
@@ -514,13 +514,13 @@ int AskTransferFileNum(void)
 }\r
 \r
 \r
-/*----- \93]\91\97\92\86\83E\83C\83\93\83h\83E\82ð\91O\96Ê\82É\8fo\82· ------------------------------------------\r
+/*----- 転送中ウインドウを前面に出す ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void GoForwardTransWindow(void)\r
@@ -530,13 +530,13 @@ void GoForwardTransWindow(void)
 }\r
 \r
 \r
-/*----- \93]\91\97\83\\83P\83b\83g\82Ì\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\8fî\95ñ\82ð\8f\89\8aú\89» ------------------------\r
+/*----- 転送ソケットのカレントディレクトリ情報を初期化 ------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void InitTransCurDir(void)\r
@@ -546,13 +546,13 @@ void InitTransCurDir(void)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\93]\91\97\83X\83\8c\83b\83h\82Ì\83\81\83C\83\93\83\8b\81[\83v ------------------------------------\r
+/*----- ファイル転送スレッドのメインループ ------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Dummy : \8eg\82í\82È\82¢\r
+*              void *Dummy : 使わない\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static ULONG WINAPI TransferThread(void *Dummy)\r
@@ -614,18 +614,18 @@ static ULONG WINAPI TransferThread(void *Dummy)
                        if(hWndTrans != NULL)\r
                                SendMessage(hWndTrans, WM_SET_PACKET, 0, (LPARAM)TransPacketBase);\r
 \r
-                       /* \83_\83E\83\93\83\8d\81[\83h */\r
+                       /* ダウンロード */\r
                        if(strncmp(TransPacketBase->Cmd, "RETR", 4) == 0)\r
                        {\r
-                               /* \95s\90³\82È\83p\83X\82ð\8c\9f\8fo */\r
+                               /* 不正なパスを検出 */\r
                                if(CheckPathViolation(TransPacketBase) == NO)\r
                                {\r
-                                       /* \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\82½\82ß\82Ì\8f\88\97\9d */\r
-                                       if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == SUCCESS)\r
+                                       /* フルパスを使わないための処理 */\r
+                                       if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == FFFTP_SUCCESS)\r
                                        {\r
                                                if(strncmp(TransPacketBase->Cmd, "RETR-S", 6) == 0)\r
                                                {\r
-                                                       /* \83T\83C\83Y\82Æ\93ú\95t\82ð\8eæ\93¾ */\r
+                                                       /* サイズと日付を取得 */\r
                                                        DoSIZE(TransPacketBase->RemoteFile, &TransPacketBase->Size);\r
                                                        DoMDTM(TransPacketBase->RemoteFile, &TransPacketBase->Time);\r
                                                        strcpy(TransPacketBase->Cmd, "RETR ");\r
@@ -634,38 +634,38 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                                Down = YES;\r
 //                                             if(DoDownLoad(AskTrnCtrlSkt(), TransPacketBase, NO) == 429)\r
 //                                             {\r
-//                                                     if(ReConnectTrnSkt() == SUCCESS)\r
+//                                                     if(ReConnectTrnSkt() == FFFTP_SUCCESS)\r
                                                                DoDownLoad(AskTrnCtrlSkt(), TransPacketBase, NO, &Canceled);\r
 //                                             }\r
                                        }\r
                                }\r
                        }\r
-                       /* \83A\83b\83v\83\8d\81[\83h */\r
+                       /* アップロード */\r
                        else if(strncmp(TransPacketBase->Cmd, "STOR", 4) == 0)\r
                        {\r
-                               /* \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\82½\82ß\82Ì\8f\88\97\9d */\r
-                               if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == SUCCESS)\r
+                               /* フルパスを使わないための処理 */\r
+                               if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == FFFTP_SUCCESS)\r
                                {\r
                                        Up = YES;\r
 //                                     if(DoUpLoad(AskTrnCtrlSkt(), TransPacketBase) == 429)\r
 //                                     {\r
-//                                             if(ReConnectTrnSkt() == SUCCESS)\r
+//                                             if(ReConnectTrnSkt() == FFFTP_SUCCESS)\r
                                                        DoUpLoad(AskTrnCtrlSkt(), TransPacketBase);\r
 //                                     }\r
                                }\r
                        }\r
-                       /* \83t\83H\83\8b\83_\8dì\90¬\81i\83\8d\81[\83J\83\8b\82Ü\82½\82Í\83z\83X\83g\81j */\r
+                       /* フォルダ作成(ローカルまたはホスト) */\r
                        else if(strncmp(TransPacketBase->Cmd, "MKD", 3) == 0)\r
                        {\r
                                DispTransFileInfo(TransPacketBase, MSGJPN078, FALSE, YES);\r
 \r
                                if(strlen(TransPacketBase->RemoteFile) > 0)\r
                                {\r
-                                       /* \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\82½\82ß\82Ì\8f\88\97\9d */\r
+                                       /* フルパスを使わないための処理 */\r
                                        CwdSts = FTP_COMPLETE;\r
 \r
                                        strcpy(Tmp, TransPacketBase->RemoteFile);\r
-                                       if(ProcForNonFullpath(Tmp, CurDir, hWndTrans, 1) == FAIL)\r
+                                       if(ProcForNonFullpath(Tmp, CurDir, hWndTrans, 1) == FFFTP_FAIL)\r
                                        {\r
                                                ClearAll = YES;\r
                                                CwdSts = FTP_ERROR;\r
@@ -675,8 +675,8 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                        {\r
                                                Up = YES;\r
                                                CommandProcTrn(NULL, "MKD %s", Tmp);\r
-                                               /* \82·\82Å\82É\83t\83H\83\8b\83_\82ª\82 \82é\8fê\8d\87\82à\82 \82é\82Ì\82Å\81A */\r
-                                               /* \82±\82±\82Å\82Í\83G\83\89\81[\83`\83F\83b\83N\82Í\82µ\82È\82¢ */\r
+                                               /* すでにフォルダがある場合もあるので、 */\r
+                                               /* ここではエラーチェックはしない */\r
 \r
                                        if(FolderAttr)\r
                                                CommandProcTrn(NULL, "%s %03d %s", AskHostChmodCmd(), FolderAttrNum, Tmp);\r
@@ -688,13 +688,13 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                        DoLocalMKD(TransPacketBase->LocalFile);\r
                                }\r
                        }\r
-                       /* \83f\83B\83\8c\83N\83g\83\8a\8dì\90¬\81i\8fí\82É\83z\83X\83g\91¤\81j */\r
+                       /* ディレクトリ作成(常にホスト側) */\r
                        else if(strncmp(TransPacketBase->Cmd, "R-MKD", 5) == 0)\r
                        {\r
                                DispTransFileInfo(TransPacketBase, MSGJPN079, FALSE, YES);\r
 \r
-                               /* \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\82½\82ß\82Ì\8f\88\97\9d */\r
-                               if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == SUCCESS)\r
+                               /* フルパスを使わないための処理 */\r
+                               if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == FFFTP_SUCCESS)\r
                                {\r
                                        Up = YES;\r
                                        CommandProcTrn(NULL, "%s%s", TransPacketBase->Cmd+2, TransPacketBase->RemoteFile);\r
@@ -703,7 +703,7 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                                CommandProcTrn(NULL, "%s %03d %s", AskHostChmodCmd(), FolderAttrNum, TransPacketBase->RemoteFile);\r
                                }\r
                        }\r
-                       /* \83f\83B\83\8c\83N\83g\83\8a\8dí\8f\9c\81i\8fí\82É\83z\83X\83g\91¤\81j */\r
+                       /* ディレクトリ削除(常にホスト側) */\r
                        else if(strncmp(TransPacketBase->Cmd, "R-RMD", 5) == 0)\r
                        {\r
                                DispTransFileInfo(TransPacketBase, MSGJPN080, FALSE, YES);\r
@@ -711,15 +711,15 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                DelNotify = MirrorDelNotify(WIN_REMOTE, DelNotify, TransPacketBase);\r
                                if((DelNotify == YES) || (DelNotify == YES_ALL))\r
                                {\r
-                                       /* \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\82½\82ß\82Ì\8f\88\97\9d */\r
-                                       if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == SUCCESS)\r
+                                       /* フルパスを使わないための処理 */\r
+                                       if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == FFFTP_SUCCESS)\r
                                        {\r
                                                Up = YES;\r
                                                CommandProcTrn(NULL, "%s%s", TransPacketBase->Cmd+2, TransPacketBase->RemoteFile);\r
                                        }\r
                                }\r
                        }\r
-                       /* \83t\83@\83C\83\8b\8dí\8f\9c\81i\8fí\82É\83z\83X\83g\91¤\81j */\r
+                       /* ファイル削除(常にホスト側) */\r
                        else if(strncmp(TransPacketBase->Cmd, "R-DELE", 6) == 0)\r
                        {\r
                                DispTransFileInfo(TransPacketBase, MSGJPN081, FALSE, YES);\r
@@ -727,15 +727,15 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                DelNotify = MirrorDelNotify(WIN_REMOTE, DelNotify, TransPacketBase);\r
                                if((DelNotify == YES) || (DelNotify == YES_ALL))\r
                                {\r
-                                       /* \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\82½\82ß\82Ì\8f\88\97\9d */\r
-                                       if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == SUCCESS)\r
+                                       /* フルパスを使わないための処理 */\r
+                                       if(MakeNonFullPath(TransPacketBase, CurDir, Tmp) == FFFTP_SUCCESS)\r
                                        {\r
                                                Up = YES;\r
                                                CommandProcTrn(NULL, "%s%s", TransPacketBase->Cmd+2, TransPacketBase->RemoteFile);\r
                                        }\r
                                }\r
                        }\r
-                       /* \83f\83B\83\8c\83N\83g\83\8a\8dì\90¬\81i\8fí\82É\83\8d\81[\83J\83\8b\91¤\81j */\r
+                       /* ディレクトリ作成(常にローカル側) */\r
                        else if(strncmp(TransPacketBase->Cmd, "L-MKD", 5) == 0)\r
                        {\r
                                DispTransFileInfo(TransPacketBase, MSGJPN082, FALSE, YES);\r
@@ -743,7 +743,7 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                Down = YES;\r
                                DoLocalMKD(TransPacketBase->LocalFile);\r
                        }\r
-                       /* \83f\83B\83\8c\83N\83g\83\8a\8dí\8f\9c\81i\8fí\82É\83\8d\81[\83J\83\8b\91¤\81j */\r
+                       /* ディレクトリ削除(常にローカル側) */\r
                        else if(strncmp(TransPacketBase->Cmd, "L-RMD", 5) == 0)\r
                        {\r
                                DispTransFileInfo(TransPacketBase, MSGJPN083, FALSE, YES);\r
@@ -755,7 +755,7 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                        DoLocalRMD(TransPacketBase->LocalFile);\r
                                }\r
                        }\r
-                       /* \83t\83@\83C\83\8b\8dí\8f\9c\81i\8fí\82É\83\8d\81[\83J\83\8b\91¤\81j */\r
+                       /* ファイル削除(常にローカル側) */\r
                        else if(strncmp(TransPacketBase->Cmd, "L-DELE", 6) == 0)\r
                        {\r
                                DispTransFileInfo(TransPacketBase, MSGJPN084, FALSE, YES);\r
@@ -767,7 +767,7 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                        DoLocalDELE(TransPacketBase->LocalFile);\r
                                }\r
                        }\r
-                       /* \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82ð\90Ý\92è */\r
+                       /* カレントディレクトリを設定 */\r
                        else if(strcmp(TransPacketBase->Cmd, "SETCUR") == 0)\r
                        {\r
                                if(AskShareProh() == YES)\r
@@ -783,7 +783,7 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                }\r
                                strcpy(CurDir, TransPacketBase->RemoteFile);\r
                        }\r
-                       /* \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82ð\96ß\82· */\r
+                       /* カレントディレクトリを戻す */\r
                        else if(strcmp(TransPacketBase->Cmd, "BACKCUR") == 0)\r
                        {\r
                                if(AskShareProh() == NO)\r
@@ -793,13 +793,13 @@ static ULONG WINAPI TransferThread(void *Dummy)
                                        strcpy(CurDir, TransPacketBase->RemoteFile);\r
                                }\r
                        }\r
-                       /* \8e©\93®\8fI\97¹\82Ì\82½\82ß\82Ì\92Ê\92m */\r
+                       /* 自動終了のための通知 */\r
                        else if(strcmp(TransPacketBase->Cmd, "GOQUIT") == 0)\r
                        {\r
                                GoExit = YES;\r
                        }\r
 \r
-                       /*===== \82P\82Â\82Ì\8f\88\97\9d\8fI\82í\82è =====*/\r
+                       /*===== 1つの処理終わり =====*/\r
 \r
                        if(ForceAbort == NO)\r
                        {\r
@@ -870,20 +870,20 @@ static ULONG WINAPI TransferThread(void *Dummy)
 }\r
 \r
 \r
-/*----- \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\83t\83@\83C\83\8b\83A\83N\83Z\83X\82Ì\8f\80\94õ ------------------------------\r
+/*----- フルパスを使わないファイルアクセスの準備 ------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83p\83P\83b\83g\r
-*              char *Cur : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\r
-*              char *Tmp : \8dì\8bÆ\97p\83G\83\8a\83A\r
+*              TRANSPACKET *Pkt : 転送パケット\r
+*              char *Cur : カレントディレクトリ\r
+*              char *Tmp : 作業用エリア\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X(SUCCESS/FAIL)\r
+*              int ステータス(FFFTP_SUCCESS/FFFTP_FAIL)\r
 *\r
 *      Note\r
-*              \83t\83\8b\83p\83X\82ð\8eg\82í\82È\82¢\8e\9e\82Í\81A\r
-*                      \82±\82Ì\83\82\83W\83\85\81[\83\8b\93à\82Å CWD \82ð\8ds\82È\82¢\81A\r
-*                      Pkt->RemoteFile \82É\83t\83@\83C\83\8b\96¼\82Ì\82Ý\8ec\82·\81B\81i\83p\83X\96¼\82Í\8fÁ\82·\81j\r
+*              フルパスを使わない時は、\r
+*                      このモジュール内で CWD を行ない、\r
+*                      Pkt->RemoteFile にファイル名のみ残す。(パス名は消す)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int MakeNonFullPath(TRANSPACKET *Pkt, char *Cur, char *Tmp)\r
@@ -891,7 +891,7 @@ static int MakeNonFullPath(TRANSPACKET *Pkt, char *Cur, char *Tmp)
        int Sts;\r
 \r
        Sts = ProcForNonFullpath(Pkt->RemoteFile, Cur, Pkt->hWndTrans, 1);\r
-       if(Sts == FAIL)\r
+       if(Sts == FFFTP_FAIL)\r
                ClearAll = YES;\r
 \r
        return(Sts);\r
@@ -900,19 +900,19 @@ static int MakeNonFullPath(TRANSPACKET *Pkt, char *Cur, char *Tmp)
 \r
 \r
 \r
-/*----- \83_\83E\83\93\83\8d\81[\83h\82ð\8ds\82È\82¤ --------------------------------------------------\r
+/*----- ダウンロードを行なう --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET cSkt : \83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              int DirList : \83f\83B\83\8c\83N\83g\83\8a\83\8a\83X\83g\82Ì\83_\83E\83\93\83\8d\81[\83h(YES/NO)\r
+*              SOCKET cSkt : コントロールソケット\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              int DirList : ディレクトリリストのダウンロード(YES/NO)\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *\r
 *      Note\r
-*              \82±\82Ì\83\82\83W\83\85\81[\83\8b\82Í\81A\83t\83@\83C\83\8b\88ê\97\97\82Ì\8eæ\93¾\82È\82Ç\82ð\8ds\82È\82¤\8dÛ\82É\83\81\83C\83\93\82Ì\83X\83\8c\83b\83h\r
-*              \82©\82ç\82à\8cÄ\82Î\82ê\82é\81B\83\81\83C\83\93\82Ì\83X\83\8c\83b\83h\82©\82ç\8cÄ\82Î\82ê\82é\8e\9e\82Í Pkt->hWndTrans == NULL\81B\r
+*              このモジュールは、ファイル一覧の取得などを行なう際にメインのスレッド\r
+*              からも呼ばれる。メインのスレッドから呼ばれる時は Pkt->hWndTrans == NULL。\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoDownLoad(SOCKET cSkt, TRANSPACKET *Pkt, int DirList, int *CancelCheckWork)\r
@@ -968,13 +968,13 @@ int DoDownLoad(SOCKET cSkt, TRANSPACKET *Pkt, int DirList, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \92Ê\8fí\83\82\81[\83h\82Å\83t\83@\83C\83\8b\82ð\83_\83E\83\93\83\8d\81[\83h ------------------------------------\r
+/*----- 通常モードでファイルをダウンロード ------------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DownLoadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork)\r
@@ -996,7 +996,7 @@ static int DownLoadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork)
                        iRetCode = command(Pkt->ctrl_skt, Reply, CancelCheckWork, "%s", Buf);\r
                        if(iRetCode/100 == FTP_PRELIM)\r
                        {\r
-                               if(SocksGet2ndBindReply(listen_socket, &data_socket) == FAIL)\r
+                               if(SocksGet2ndBindReply(listen_socket, &data_socket) == FFFTP_FAIL)\r
                                {\r
                                        iLength = sizeof(saSockAddr1);\r
                                        data_socket = do_accept(listen_socket, (struct sockaddr *)&saSockAddr1, (int *)&iLength);\r
@@ -1017,7 +1017,7 @@ static int DownLoadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork)
 \r
                                if(data_socket != INVALID_SOCKET)\r
                                {\r
-                                       // FTPS\91Î\89\9e\r
+                                       // FTPS対応\r
 //                                     iRetCode = DownLoadFile(Pkt, data_socket, CreateMode, CancelCheckWork);\r
                                        if(AskCryptMode() == CRYPT_FTPES || AskCryptMode() == CRYPT_FTPIS)\r
                                        {\r
@@ -1053,13 +1053,13 @@ static int DownLoadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- Passive\83\82\81[\83h\82Å\83t\83@\83C\83\8b\82ð\83_\83E\83\93\83\8d\81[\83h ---------------------------------\r
+/*----- Passiveモードでファイルをダウンロード ---------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DownLoadPassive(TRANSPACKET *Pkt, int *CancelCheckWork)\r
@@ -1076,11 +1076,11 @@ static int DownLoadPassive(TRANSPACKET *Pkt, int *CancelCheckWork)
        iRetCode = command(Pkt->ctrl_skt, Buf, CancelCheckWork, "PASV");\r
        if(iRetCode/100 == FTP_COMPLETE)\r
        {\r
-               if(GetAdrsAndPort(Buf, Adrs, &Port, 19) == SUCCESS)\r
+               if(GetAdrsAndPort(Buf, Adrs, &Port, 19) == FFFTP_SUCCESS)\r
                {\r
                        if((data_socket = connectsock(Adrs, Port, MSGJPN091, CancelCheckWork)) != INVALID_SOCKET)\r
                        {\r
-                               // \95Ï\90\94\82ª\96¢\8f\89\8aú\89»\82Ì\83o\83O\8fC\90³\r
+                               // 変数が未初期化のバグ修正\r
                                Flg = 1;\r
                                if(setsockopt(data_socket, IPPROTO_TCP, TCP_NODELAY, (LPSTR)&Flg, sizeof(Flg)) == SOCKET_ERROR)\r
                                        ReportWSError("setsockopt", WSAGetLastError());\r
@@ -1091,7 +1091,7 @@ static int DownLoadPassive(TRANSPACKET *Pkt, int *CancelCheckWork)
                                        iRetCode = command(Pkt->ctrl_skt, Reply, CancelCheckWork, "%s", Buf);\r
                                        if(iRetCode/100 == FTP_PRELIM)\r
                                        {\r
-                                               // FTPS\91Î\89\9e\r
+                                               // FTPS対応\r
 //                                             iRetCode = DownLoadFile(Pkt, data_socket, CreateMode, CancelCheckWork);\r
                                                if(AskCryptMode() == CRYPT_FTPES || AskCryptMode() == CRYPT_FTPIS)\r
                                                {\r
@@ -1134,20 +1134,20 @@ static int DownLoadPassive(TRANSPACKET *Pkt, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \83_\83E\83\93\83\8d\81[\83h\82Ì\8eÀ\8ds ----------------------------------------------------\r
+/*----- ダウンロードの実行 ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              SOCKET dSkt : \83f\81[\83^\83\\83P\83b\83g\r
-*              int CreateMode : \83t\83@\83C\83\8b\8dì\90¬\83\82\81[\83h (CREATE_ALWAYS/OPEN_ALWAYS)\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              SOCKET dSkt : データソケット\r
+*              int CreateMode : ファイル作成モード (CREATE_ALWAYS/OPEN_ALWAYS)\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *\r
 *      Note\r
-*              \93]\91\97\82Ì\8co\89ß\95\\8e¦\82Í\r
-*                      \83_\83C\83A\83\8d\83O\82ð\8fo\82·(Pkt->hWndTrans!=NULL)\8fê\8d\87\81A\83C\83\93\83^\81[\83o\83\8b\83^\83C\83}\82Å\8co\89ß\82ð\95\\8e¦\82·\82é\r
-*                      \83_\83C\83A\83\8d\83O\82ð\8fo\82³\82È\82¢\8fê\8d\87\81A\82±\82Ì\83\8b\81[\83`\83\93\82©\82çDispDownloadSize()\82ð\8cÄ\82Ô\r
+*              転送の経過表示は\r
+*                      ダイアログを出す(Pkt->hWndTrans!=NULL)場合、インターバルタイマで経過を表示する\r
+*                      ダイアログを出さない場合、このルーチンからDispDownloadSize()を呼ぶ\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *CancelCheckWork)\r
@@ -1177,7 +1177,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
 /* End */\r
 #endif\r
 \r
-       // \94O\82Ì\82½\82ß\8eó\90M\83o\83b\83t\83@\82ð\96³\8cø\82É\82·\82é\r
+       // 念のため受信バッファを無効にする\r
 #ifdef DISABLE_TRANSFER_NETWORK_BUFFERS\r
        int buf_size = 0;\r
        setsockopt(dSkt, SOL_SOCKET, SO_RCVBUF, (char *)&buf_size, sizeof(buf_size));\r
@@ -1191,16 +1191,16 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
 \r
        dwFileAttributes = GetFileAttributes(Pkt->LocalFile);\r
        if (dwFileAttributes != INVALID_FILE_ATTRIBUTES && (dwFileAttributes & FILE_ATTRIBUTE_READONLY)) {\r
-               // \93Ç\82Ý\8eæ\82è\90ê\97p\r
+               // 読み取り専用\r
                if (MessageBox(GetMainHwnd(), MSGJPN296, MSGJPN086, MB_YESNO) == IDYES) {\r
-                       // \91®\90«\82ð\89ð\8f\9c\r
+                       // 属性を解除\r
                        SetFileAttributes(Pkt->LocalFile, dwFileAttributes ^ FILE_ATTRIBUTE_READONLY);\r
                }\r
        }\r
 \r
        if((iFileHandle = CreateFile(Pkt->LocalFile, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, &Sec, CreateMode, FILE_ATTRIBUTE_NORMAL, NULL)) != INVALID_HANDLE_VALUE)\r
        {\r
-               // UTF-8\91Î\89\9e\r
+               // UTF-8対応\r
                char Buf3[(BUFSIZE + 3) * 4];\r
                CODECONVINFO cInfo2;\r
                int ProcessedBOM = NO;\r
@@ -1219,7 +1219,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                InitCodeConvInfo(&cInfo2);\r
                cInfo2.KanaCnv = Pkt->KanaCnv;\r
 \r
-               /*===== \83t\83@\83C\83\8b\82ð\8eó\90M\82·\82é\83\8b\81[\83v =====*/\r
+               /*===== ファイルを受信するループ =====*/\r
                while((Pkt->Abort == ABORT_NONE) && (ForceAbort == NO))\r
                {\r
 //                     FD_ZERO(&ReadFds);\r
@@ -1266,7 +1266,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                                break;\r
                        }\r
 \r
-                       /* \8a¿\8e\9a\83R\81[\83h\95Ï\8a· */\r
+                       /* 漢字コード変換 */\r
                        if(Pkt->KanjiCode != KANJI_NOCNV)\r
                        {\r
                                cInfo.Str = Buf;\r
@@ -1275,8 +1275,8 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                                cInfo.BufSize = BUFSIZE+3;\r
                                do\r
                                {\r
-                                       // \82±\82±\82Å\91S\82ÄUTF-8\82Ö\95Ï\8a·\82·\82é\r
-                                       // TODO: SJIS\88È\8aO\82à\92¼\90ÚUTF-8\82Ö\95Ï\8a·\r
+                                       // ここで全てUTF-8へ変換する\r
+                                       // TODO: SJIS以外も直接UTF-8へ変換\r
 //                                     if(Pkt->KanjiCode == KANJI_JIS)\r
 //                                             Continue = ConvJIStoSJIS(&cInfo);\r
 //                                     else\r
@@ -1292,7 +1292,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
 //                                                     memcpy(Buf3, cInfo.Str, cInfo.StrLen);\r
 //                                                     cInfo2.OutLen = cInfo.StrLen;\r
 //                                                     Continue = NO;\r
-                                                       // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                                       // カナ変換のため\r
                                                        Continue = ConvSJIStoJIS(&cInfo);\r
                                                        cInfo2.Str = cInfo.Buf;\r
                                                        cInfo2.StrLen = cInfo.OutLen;\r
@@ -1337,7 +1337,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
 //                                                     memcpy(Buf3, cInfo.Str, cInfo.StrLen);\r
 //                                                     cInfo2.OutLen = cInfo.StrLen;\r
 //                                                     Continue = NO;\r
-                                                       // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                                       // カナ変換のため\r
                                                        Continue = ConvJIStoSJIS(&cInfo);\r
                                                        cInfo2.Str = cInfo.Buf;\r
                                                        cInfo2.StrLen = cInfo.OutLen;\r
@@ -1391,7 +1391,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
 //                                                     memcpy(Buf3, cInfo.Str, cInfo.StrLen);\r
 //                                                     cInfo2.OutLen = cInfo.StrLen;\r
 //                                                     Continue = NO;\r
-                                                       // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                                       // カナ変換のため\r
                                                        Continue = ConvEUCtoSJIS(&cInfo);\r
                                                        cInfo2.Str = cInfo.Buf;\r
                                                        cInfo2.StrLen = cInfo.OutLen;\r
@@ -1485,7 +1485,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                                AllTransSizeNow += iNumBytes;\r
                        else\r
                        {\r
-                               /* \93]\91\97\83_\83C\83A\83\8d\83O\82ð\8fo\82³\82È\82¢\8e\9e\82Ì\8co\89ß\95\\8e¦ */\r
+                               /* 転送ダイアログを出さない時の経過表示 */\r
                                DispDownloadSize(Pkt->ExistSize);\r
                        }\r
 \r
@@ -1493,7 +1493,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                                ForceAbort = YES;\r
                }\r
 \r
-               /* \8f\91\82«\8ec\82µ\82½\83f\81[\83^\82ð\8f\91\82«\8d\9e\82Þ */\r
+               /* 書き残したデータを書き込む */\r
                if(Pkt->KanjiCode != KANJI_NOCNV)\r
                {\r
                        cInfo.Buf = Buf2;\r
@@ -1505,7 +1505,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                                switch(Pkt->KanjiCodeDesired)\r
                                {\r
                                case KANJI_SJIS:\r
-                                       // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                       // カナ変換のため\r
                                        cInfo2.Str = cInfo.Buf;\r
                                        cInfo2.StrLen = cInfo.OutLen;\r
                                        cInfo2.Buf = Buf3;\r
@@ -1534,7 +1534,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                                        cInfo2.OutLen = cInfo.OutLen;\r
                                        break;\r
                                case KANJI_JIS:\r
-                                       // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                       // カナ変換のため\r
                                        cInfo2.Str = cInfo.Buf;\r
                                        cInfo2.StrLen = cInfo.OutLen;\r
                                        cInfo2.Buf = Buf3;\r
@@ -1572,7 +1572,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                                        ConvSJIStoJIS(&cInfo2);\r
                                        break;\r
                                case KANJI_EUC:\r
-                                       // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                       // カナ変換のため\r
                                        cInfo2.Str = cInfo.Buf;\r
                                        cInfo2.StrLen = cInfo.OutLen;\r
                                        cInfo2.Buf = Buf3;\r
@@ -1626,7 +1626,7 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                                Pkt->Abort = ABORT_DISKFULL;\r
                }\r
 \r
-               /* \83O\83\89\83t\95\\8e¦\82ð\8dX\90V */\r
+               /* グラフ表示を更新 */\r
                if(Pkt->hWndTrans != NULL)\r
                {\r
                        KillTimer(Pkt->hWndTrans, TIMER_DISPLAY);\r
@@ -1635,11 +1635,11 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
                }\r
                else\r
                {\r
-                       /* \93]\91\97\83_\83C\83A\83\8d\83O\82ð\8fo\82³\82È\82¢\8e\9e\82Ì\8co\89ß\95\\8e¦\82ð\8fÁ\82· */\r
+                       /* 転送ダイアログを出さない時の経過表示を消す */\r
                        DispDownloadSize(-1);\r
                }\r
 \r
-               /* \83t\83@\83C\83\8b\82Ì\83^\83C\83\80\83X\83^\83\93\83v\82ð\8d\87\82í\82¹\82é */\r
+               /* ファイルのタイムスタンプを合わせる */\r
                if((SaveTimeStamp == YES) &&\r
                   ((Pkt->Time.dwLowDateTime != 0) || (Pkt->Time.dwHighDateTime != 0)))\r
                {\r
@@ -1666,10 +1666,10 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
 \r
        if(ForceAbort == NO)\r
        {\r
-               /* Abort\82ð\83z\83X\83g\82É\93`\82¦\82é */\r
+               /* Abortをホストに伝える */\r
                if(Pkt->Abort != ABORT_NONE && iFileHandle != INVALID_HANDLE_VALUE)\r
                {\r
-                       SendData(Pkt->ctrl_skt, "\xFF\xF4\xFF", 3, MSG_OOB, CancelCheckWork);   /* MSG_OOB\82É\92\8d\88Ó */\r
+                       SendData(Pkt->ctrl_skt, "\xFF\xF4\xFF", 3, MSG_OOB, CancelCheckWork);   /* MSG_OOBに注意 */\r
                        SendData(Pkt->ctrl_skt, "\xF2", 1, 0, CancelCheckWork);\r
                        command(Pkt->ctrl_skt, NULL, CancelCheckWork, "ABOR");\r
                }\r
@@ -1694,14 +1694,14 @@ static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *Canc
 }\r
 \r
 \r
-/*----- \83_\83E\83\93\83\8d\81[\83h\8fI\97¹\81^\92\86\8e~\8e\9e\82Ì\83\81\83b\83Z\81[\83W\82ð\95\\8e¦ ----------------------------\r
+/*----- ダウンロード終了/中止時のメッセージを表示 ----------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              int iRetCode : \89\9e\93\9a\83R\81[\83h\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              int iRetCode : 応答コード\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DispDownloadFinishMsg(TRANSPACKET *Pkt, int iRetCode)\r
@@ -1715,8 +1715,8 @@ static void DispDownloadFinishMsg(TRANSPACKET *Pkt, int iRetCode)
                        strcpy(Fname, Pkt->RemoteFile);\r
 \r
 #if defined(HAVE_OPENVMS)\r
-                       /* OpenVMS\82Ì\8fê\8d\87\81A\8bó\83f\83B\83\8c\83N\83g\83\8a\82Ö\88Ú\93®\82·\82é\82Æ550 File not found\82É\82È\82Á\82Ä\r
-                        * \83G\83\89\81[\83_\83C\83A\83\8d\83O\82â\83G\83\89\81[\83\81\83b\83Z\81[\83W\82ª\8fo\82é\82Ì\82Å\89½\82à\82µ\82È\82¢ */\r
+                       /* OpenVMSの場合、空ディレクトリへ移動すると550 File not foundになって\r
+                        * エラーダイアログやエラーメッセージが出るので何もしない */\r
                        if (AskHostType() == HTYPE_VMS)\r
                                return;\r
 #endif\r
@@ -1751,15 +1751,15 @@ static void DispDownloadFinishMsg(TRANSPACKET *Pkt, int iRetCode)
 }\r
 \r
 \r
-/*----- \83_\83E\83\93\83\8d\81[\83h\81^\83A\83b\83v\83\8d\81[\83h\83G\83\89\81[\82Ì\83_\83C\83A\83\8d\83O\82ð\95\\8e¦ --------------------\r
+/*----- ダウンロード/アップロードエラーのダイアログを表示 --------------------\r
 *\r
 *      Parameter\r
-*              int RedID : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83\8a\83\\81[\83XID\r
-*              HWND hWnd : \8f\91\82«\8d\9e\82Ý\92\86\83_\83C\83A\83\8d\83O\82Ì\83E\83C\83\93\83h\83E\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              int RedID : ダイアログボックスのリソースID\r
+*              HWND hWnd : 書き込み中ダイアログのウインドウ\r
+*              char *Fname : ファイル名\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES=\92\86\8e~/NO=\91S\82Ä\92\86\8e~)\r
+*              int ステータス (YES=中止/NO=全て中止)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DispUpDownErrDialog(int ResID, HWND hWnd, char *Fname)\r
@@ -1772,13 +1772,13 @@ static int DispUpDownErrDialog(int ResID, HWND hWnd, char *Fname)
 }\r
 \r
 \r
-/*----- \83_\83E\83\93\83\8d\81[\83h\83G\83\89\81[\81^\83A\83b\83v\83\8d\81[\83h\83G\83\89\81[\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N --------\r
+/*----- ダウンロードエラー/アップロードエラーダイアログのコールバック --------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1810,19 +1810,19 @@ static BOOL CALLBACK UpDownErrorDialogProc(HWND hDlg, UINT message, WPARAM wPara
 }\r
 \r
 \r
-/*----- \83_\83E\83\93\83\8d\81[\83h\82Ì\83\8a\83W\83\85\81[\83\80\82Ì\8f\80\94õ\82ð\8ds\82¤ ----------------------------------\r
+/*----- ダウンロードのリジュームの準備を行う ----------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              iont ProcMode : \8f\88\97\9d\83\82\81[\83h(EXIST_xxx)\r
-*              LONGLONG Size : \83\8d\81[\83h\8dÏ\82Ý\82Ì\83t\83@\83C\83\8b\82Ì\83T\83C\83Y\r
-*              int *Mode : \83t\83@\83C\83\8b\8dì\90¬\83\82\81[\83h (CREATE_xxxx)\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              iont ProcMode : 処理モード(EXIST_xxx)\r
+*              LONGLONG Size : ロード済みのファイルのサイズ\r
+*              int *Mode : ファイル作成モード (CREATE_xxxx)\r
 *\r
 *      Return Value\r
-*              int \93]\91\97\82ð\8ds\82¤\82©\82Ç\82¤\82©(YES/NO=\82±\82Ì\83t\83@\83C\83\8b\82ð\92\86\8e~/NO_ALL=\91S\82Ä\92\86\8e~)\r
+*              int 転送を行うかどうか(YES/NO=このファイルを中止/NO_ALL=全て中止)\r
 *\r
 *      Note\r
-*              Pkt->ExistSize\82Ì\83Z\83b\83g\82ð\8ds\82È\82¤\r
+*              Pkt->ExistSizeのセットを行なう\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int SetDownloadResume(TRANSPACKET *Pkt, int ProcMode, LONGLONG Size, int *Mode, int *CancelCheckWork)\r
@@ -1842,7 +1842,7 @@ static int SetDownloadResume(TRANSPACKET *Pkt, int ProcMode, LONGLONG Size, int
                iRetCode = command(Pkt->ctrl_skt, Reply, CancelCheckWork, "REST %s", MakeNumString(Size, Tmp, FALSE));\r
                if(iRetCode/100 < FTP_RETRY)\r
                {\r
-                       /* \83\8a\83W\83\85\81[\83\80 */\r
+                       /* リジューム */\r
                        if(Pkt->hWndTrans != NULL)\r
                                Pkt->ExistSize = Size;\r
                        *Mode = OPEN_ALWAYS;\r
@@ -1852,7 +1852,7 @@ static int SetDownloadResume(TRANSPACKET *Pkt, int ProcMode, LONGLONG Size, int
                        Com = DialogBox(GetFtpInst(), MAKEINTRESOURCE(noresume_dlg), Pkt->hWndTrans, NoResumeWndProc);\r
                        if(Com != YES)\r
                        {\r
-                               if(Com == NO_ALL)               /* \91S\82Ä\92\86\8e~ */\r
+                               if(Com == NO_ALL)               /* 全て中止 */\r
                                        ClearAll = YES;\r
                                Pkt->Abort = ABORT_USER;\r
                        }\r
@@ -1862,13 +1862,13 @@ static int SetDownloadResume(TRANSPACKET *Pkt, int ProcMode, LONGLONG Size, int
 }\r
 \r
 \r
-/*----- resume\83G\83\89\81[\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------------------\r
+/*----- resumeエラーダイアログのコールバック ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1903,14 +1903,14 @@ static BOOL CALLBACK NoResumeWndProc(HWND hDlg, UINT iMessage, WPARAM wParam, LP
 \r
 \r
 \r
-/*----- \83A\83b\83v\83\8d\81[\83h\82ð\8ds\82È\82¤ --------------------------------------------------\r
+/*----- アップロードを行なう --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET cSkt : \83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
+*              SOCKET cSkt : コントロールソケット\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DoUpLoad(SOCKET cSkt, TRANSPACKET *Pkt)\r
@@ -1922,7 +1922,7 @@ static int DoUpLoad(SOCKET cSkt, TRANSPACKET *Pkt)
 \r
        if(Pkt->Mode != EXIST_IGNORE)\r
        {\r
-               if(CheckFileReadable(Pkt->LocalFile) == SUCCESS)\r
+               if(CheckFileReadable(Pkt->LocalFile) == FFFTP_SUCCESS)\r
                {\r
                        if(Pkt->Type == TYPE_I)\r
                                Pkt->KanjiCode = KANJI_NOCNV;\r
@@ -1949,7 +1949,7 @@ static int DoUpLoad(SOCKET cSkt, TRANSPACKET *Pkt)
                        else\r
                                SetErrorMsg(Reply);\r
 \r
-                       /* \91®\90«\95Ï\8dX */\r
+                       /* 属性変更 */\r
                        if((Pkt->Attr != -1) && ((iRetCode/100) == FTP_COMPLETE))\r
                                command(Pkt->ctrl_skt, Reply, &Canceled, "%s %03X %s", AskHostChmodCmd(), Pkt->Attr, Pkt->RemoteFile);\r
                }\r
@@ -1972,13 +1972,13 @@ static int DoUpLoad(SOCKET cSkt, TRANSPACKET *Pkt)
 }\r
 \r
 \r
-/*----- \92Ê\8fí\83\82\81[\83h\82Å\83t\83@\83C\83\8b\82ð\83A\83b\83v\83\8d\81[\83h ------------------------------------\r
+/*----- 通常モードでファイルをアップロード ------------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int UpLoadNonPassive(TRANSPACKET *Pkt)\r
@@ -2003,7 +2003,7 @@ static int UpLoadNonPassive(TRANSPACKET *Pkt)
                iRetCode = command(Pkt->ctrl_skt, Reply, &Canceled, "%s", Buf);\r
                if((iRetCode/100) == FTP_PRELIM)\r
                {\r
-                       if(SocksGet2ndBindReply(listen_socket, &data_socket) == FAIL)\r
+                       if(SocksGet2ndBindReply(listen_socket, &data_socket) == FFFTP_FAIL)\r
                        {\r
                                iLength=sizeof(saSockAddr1);\r
                                data_socket = do_accept(listen_socket,(struct sockaddr *)&saSockAddr1, (int *)&iLength);\r
@@ -2024,7 +2024,7 @@ static int UpLoadNonPassive(TRANSPACKET *Pkt)
 \r
                        if(data_socket != INVALID_SOCKET)\r
                        {\r
-                               // FTPS\91Î\89\9e\r
+                               // FTPS対応\r
 //                             iRetCode = UpLoadFile(Pkt, data_socket);\r
                                if(AskCryptMode() == CRYPT_FTPES || AskCryptMode() == CRYPT_FTPIS)\r
                                {\r
@@ -2057,13 +2057,13 @@ static int UpLoadNonPassive(TRANSPACKET *Pkt)
 }\r
 \r
 \r
-/*----- Passive\83\82\81[\83h\82Å\83t\83@\83C\83\8b\82ð\83A\83b\83v\83\8d\81[\83h ---------------------------------\r
+/*----- Passiveモードでファイルをアップロード ---------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int UpLoadPassive(TRANSPACKET *Pkt)\r
@@ -2080,11 +2080,11 @@ static int UpLoadPassive(TRANSPACKET *Pkt)
        iRetCode = command(Pkt->ctrl_skt, Buf, &Canceled, "PASV");\r
        if(iRetCode/100 == FTP_COMPLETE)\r
        {\r
-               if(GetAdrsAndPort(Buf, Adrs, &Port, 19) == SUCCESS)\r
+               if(GetAdrsAndPort(Buf, Adrs, &Port, 19) == FFFTP_SUCCESS)\r
                {\r
                        if((data_socket = connectsock(Adrs, Port, MSGJPN109, &Canceled)) != INVALID_SOCKET)\r
                        {\r
-                               // \95Ï\90\94\82ª\96¢\8f\89\8aú\89»\82Ì\83o\83O\8fC\90³\r
+                               // 変数が未初期化のバグ修正\r
                                Flg = 1;\r
                                if(setsockopt(data_socket, IPPROTO_TCP, TCP_NODELAY, (LPSTR)&Flg, sizeof(Flg)) == SOCKET_ERROR)\r
                                        ReportWSError("setsockopt", WSAGetLastError());\r
@@ -2098,7 +2098,7 @@ static int UpLoadPassive(TRANSPACKET *Pkt)
                                iRetCode = command(Pkt->ctrl_skt, Reply, &Canceled, "%s", Buf);\r
                                if(iRetCode/100 == FTP_PRELIM)\r
                                {\r
-                                       // FTPS\91Î\89\9e\r
+                                       // FTPS対応\r
 //                                     iRetCode = UpLoadFile(Pkt, data_socket);\r
                                        if(AskCryptMode() == CRYPT_FTPES || AskCryptMode() == CRYPT_FTPIS)\r
                                        {\r
@@ -2142,18 +2142,18 @@ static int UpLoadPassive(TRANSPACKET *Pkt)
 }\r
 \r
 \r
-/*----- \83A\83b\83v\83\8d\81[\83h\82Ì\8eÀ\8ds ----------------------------------------------------\r
+/*----- アップロードの実行 ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              SOCKET dSkt : \83f\81[\83^\83\\83P\83b\83g\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              SOCKET dSkt : データソケット\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *\r
 *      Note\r
-*              \93]\91\97\82Ì\8co\89ß\95\\8e¦\82Í\81A\83C\83\93\83^\81[\83o\83\8b\83^\83C\83}\82Å\8co\89ß\82ð\95\\8e¦\82·\82é\r
-*              \93]\91\97\83_\83C\83A\83\8d\83O\82ð\8fo\82³\82È\82¢\82Å\83A\83b\83v\83\8d\81[\83h\82·\82é\82±\82Æ\82Í\82È\82¢\r
+*              転送の経過表示は、インターバルタイマで経過を表示する\r
+*              転送ダイアログを出さないでアップロードすることはない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)\r
@@ -2184,7 +2184,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
 /* End */\r
 #endif\r
 \r
-       // \94O\82Ì\82½\82ß\91\97\90M\83o\83b\83t\83@\82ð\96³\8cø\82É\82·\82é\r
+       // 念のため送信バッファを無効にする\r
 #ifdef DISABLE_TRANSFER_NETWORK_BUFFERS\r
        int buf_size = 0;\r
        setsockopt(dSkt, SOL_SOCKET, SO_SNDBUF, (char *)&buf_size, sizeof(buf_size));\r
@@ -2199,7 +2199,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
        if((iFileHandle = CreateFile(Pkt->LocalFile, GENERIC_READ,\r
                FILE_SHARE_READ|FILE_SHARE_WRITE, &Sec, OPEN_EXISTING, 0, NULL)) != INVALID_HANDLE_VALUE)\r
        {\r
-               // UTF-8\91Î\89\9e\r
+               // UTF-8対応\r
                char Buf3[(BUFSIZE + 3) * 4];\r
                CODECONVINFO cInfo2;\r
                int ProcessedBOM = NO;\r
@@ -2224,7 +2224,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                InitCodeConvInfo(&cInfo2);\r
                cInfo2.KanaCnv = Pkt->KanaCnv;\r
 \r
-               /*===== \83t\83@\83C\83\8b\82ð\91\97\90M\82·\82é\83\8b\81[\83v =====*/\r
+               /*===== ファイルを送信するループ =====*/\r
                while((Pkt->Abort == ABORT_NONE) &&\r
                          (ForceAbort == NO) &&\r
                          (ReadFile(iFileHandle, Buf, BUFSIZE, &iNumBytes, NULL) == TRUE))\r
@@ -2232,7 +2232,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                        if(iNumBytes == 0)\r
                                break;\r
 \r
-                       /* EOF\8f\9c\8b\8e */\r
+                       /* EOF除去 */\r
                        EofPos = NULL;\r
                        if((RmEOF == YES) && (Pkt->Type == TYPE_A))\r
                        {\r
@@ -2240,7 +2240,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                                        iNumBytes = EofPos - Buf;\r
                        }\r
 \r
-                       /* \8a¿\8e\9a\83R\81[\83h\95Ï\8a· */\r
+                       /* 漢字コード変換 */\r
                        if(Pkt->KanjiCode != KANJI_NOCNV)\r
                        {\r
                                cInfo.Str = Buf;\r
@@ -2249,8 +2249,8 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                                cInfo.BufSize = BUFSIZE+3;\r
                                do\r
                                {\r
-                                       // \82±\82±\82Å\91S\82ÄUTF-8\82Ö\95Ï\8a·\82·\82é\r
-                                       // TODO: SJIS\88È\8aO\82à\92¼\90ÚUTF-8\82Ö\95Ï\8a·\r
+                                       // ここで全てUTF-8へ変換する\r
+                                       // TODO: SJIS以外も直接UTF-8へ変換\r
 //                                     if(Pkt->KanjiCode == KANJI_JIS)\r
 //                                             Continue = ConvSJIStoJIS(&cInfo);\r
 //                                     else\r
@@ -2264,7 +2264,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
 //                                                     memcpy(Buf3, cInfo.Str, cInfo.StrLen);\r
 //                                                     cInfo2.OutLen = cInfo.StrLen;\r
 //                                                     Continue = NO;\r
-                                                       // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                                       // カナ変換のため\r
                                                        Continue = ConvSJIStoJIS(&cInfo);\r
                                                        cInfo2.Str = cInfo.Buf;\r
                                                        cInfo2.StrLen = cInfo.OutLen;\r
@@ -2309,7 +2309,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
 //                                                     memcpy(Buf3, cInfo.Str, cInfo.StrLen);\r
 //                                                     cInfo2.OutLen = cInfo.StrLen;\r
 //                                                     Continue = NO;\r
-                                                       // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                                       // カナ変換のため\r
                                                        Continue = ConvJIStoSJIS(&cInfo);\r
                                                        cInfo2.Str = cInfo.Buf;\r
                                                        cInfo2.StrLen = cInfo.OutLen;\r
@@ -2363,7 +2363,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
 //                                                     memcpy(Buf3, cInfo.Str, cInfo.StrLen);\r
 //                                                     cInfo2.OutLen = cInfo.StrLen;\r
 //                                                     Continue = NO;\r
-                                                       // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                                       // カナ変換のため\r
                                                        Continue = ConvEUCtoSJIS(&cInfo);\r
                                                        cInfo2.Str = cInfo.Buf;\r
                                                        cInfo2.StrLen = cInfo.OutLen;\r
@@ -2441,8 +2441,8 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                                                break;\r
                                        }\r
 \r
-//                                     if(TermCodeConvAndSend(&tInfo, dSkt, Buf2, cInfo.OutLen, Pkt->Type) == FAIL)\r
-                                       if(TermCodeConvAndSend(&tInfo, dSkt, Buf3, cInfo2.OutLen, Pkt->Type) == FAIL)\r
+//                                     if(TermCodeConvAndSend(&tInfo, dSkt, Buf2, cInfo.OutLen, Pkt->Type) == FFFTP_FAIL)\r
+                                       if(TermCodeConvAndSend(&tInfo, dSkt, Buf3, cInfo2.OutLen, Pkt->Type) == FFFTP_FAIL)\r
                                        {\r
                                                Pkt->Abort = ABORT_ERROR;\r
                                                        break;\r
@@ -2452,7 +2452,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                        }\r
                        else\r
                        {\r
-                               if(TermCodeConvAndSend(&tInfo, dSkt, Buf, iNumBytes, Pkt->Type) == FAIL)\r
+                               if(TermCodeConvAndSend(&tInfo, dSkt, Buf, iNumBytes, Pkt->Type) == FFFTP_FAIL)\r
                                        Pkt->Abort = ABORT_ERROR;\r
                        }\r
 \r
@@ -2469,7 +2469,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
 \r
                if((ForceAbort == NO) && (Pkt->Abort == ABORT_NONE))\r
                {\r
-                       /* \91\97\82è\8ec\82µ\82½\83f\81[\83^\82ð\91\97\90M */\r
+                       /* 送り残したデータを送信 */\r
                        if(Pkt->KanjiCode != KANJI_NOCNV)\r
                        {\r
                                cInfo.Buf = Buf2;\r
@@ -2481,7 +2481,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                                        switch(Pkt->KanjiCode)\r
                                        {\r
                                        case KANJI_SJIS:\r
-                                               // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                               // カナ変換のため\r
                                                cInfo2.Str = cInfo.Buf;\r
                                                cInfo2.StrLen = cInfo.OutLen;\r
                                                cInfo2.Buf = Buf3;\r
@@ -2510,7 +2510,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                                                cInfo2.OutLen = cInfo.OutLen;\r
                                                break;\r
                                        case KANJI_JIS:\r
-                                               // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                               // カナ変換のため\r
                                                cInfo2.Str = cInfo.Buf;\r
                                                cInfo2.StrLen = cInfo.OutLen;\r
                                                cInfo2.Buf = Buf3;\r
@@ -2548,7 +2548,7 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                                                ConvSJIStoJIS(&cInfo2);\r
                                                break;\r
                                        case KANJI_EUC:\r
-                                               // \83J\83i\95Ï\8a·\82Ì\82½\82ß\r
+                                               // カナ変換のため\r
                                                cInfo2.Str = cInfo.Buf;\r
                                                cInfo2.StrLen = cInfo.OutLen;\r
                                                cInfo2.Buf = Buf3;\r
@@ -2593,24 +2593,24 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
                                        break;\r
                                }\r
 \r
-//                             if(TermCodeConvAndSend(&tInfo, dSkt, Buf2, cInfo.OutLen, Pkt->Type) == FAIL)\r
-                               if(TermCodeConvAndSend(&tInfo, dSkt, Buf3, cInfo2.OutLen, Pkt->Type) == FAIL)\r
+//                             if(TermCodeConvAndSend(&tInfo, dSkt, Buf2, cInfo.OutLen, Pkt->Type) == FFFTP_FAIL)\r
+                               if(TermCodeConvAndSend(&tInfo, dSkt, Buf3, cInfo2.OutLen, Pkt->Type) == FFFTP_FAIL)\r
                                        Pkt->Abort = ABORT_ERROR;\r
                                cInfo2.Buf = Buf3;\r
                                cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
                                FlushRestData(&cInfo2);\r
-                               if(TermCodeConvAndSend(&tInfo, dSkt, Buf3, cInfo2.OutLen, Pkt->Type) == FAIL)\r
+                               if(TermCodeConvAndSend(&tInfo, dSkt, Buf3, cInfo2.OutLen, Pkt->Type) == FFFTP_FAIL)\r
                                        Pkt->Abort = ABORT_ERROR;\r
                        }\r
 \r
                        tInfo.Buf = Buf2;\r
                        tInfo.BufSize = BUFSIZE+3;\r
                        FlushRestTermCodeConvData(&tInfo);\r
-                       if(SendData(dSkt, Buf2, tInfo.OutLen, 0, &Canceled) == FAIL)\r
+                       if(SendData(dSkt, Buf2, tInfo.OutLen, 0, &Canceled) == FFFTP_FAIL)\r
                                Pkt->Abort = ABORT_ERROR;\r
                }\r
 \r
-               /* \83O\83\89\83t\95\\8e¦\82ð\8dX\90V */\r
+               /* グラフ表示を更新 */\r
                if(Pkt->hWndTrans != NULL)\r
                {\r
                        KillTimer(Pkt->hWndTrans, TIMER_DISPLAY);\r
@@ -2650,17 +2650,17 @@ static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt)
 }\r
 \r
 \r
-/*----- \83o\83b\83t\83@\82Ì\93à\97e\82ð\89ü\8ds\83R\81[\83h\95Ï\8a·\82µ\82Ä\91\97\90M --------------------------------\r
+/*----- バッファの内容を改行コード変換して送信 --------------------------------\r
 *\r
 *      Parameter\r
-*              TERMCODECONVINFO *tInfo : \89ü\8ds\83R\81[\83h\95Ï\8a·\83p\83P\83b\83g\r
-*              SOCKET Skt : \83\\83P\83b\83g\r
-*              char *Data : \83f\81[\83^\r
-*              int Size : \83f\81[\83^\82Ì\83T\83C\83Y\r
-*              int Ascii : \83\82\81[\83h\81@\81@(TYPE_xx)\r
+*              TERMCODECONVINFO *tInfo : 改行コード変換パケット\r
+*              SOCKET Skt : ソケット\r
+*              char *Data : データ\r
+*              int Size : データのサイズ\r
+*              int Ascii : モード  (TYPE_xx)\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int TermCodeConvAndSend(TERMCODECONVINFO *tInfo, SOCKET Skt, char *Data, int Size, int Ascii)\r
@@ -2669,9 +2669,9 @@ static int TermCodeConvAndSend(TERMCODECONVINFO *tInfo, SOCKET Skt, char *Data,
        int Continue;\r
        int Ret;\r
 \r
-       Ret = SUCCESS;\r
+       Ret = FFFTP_SUCCESS;\r
 \r
-// CR-LF\88È\8aO\82Ì\89ü\8ds\83R\81[\83h\82ð\95Ï\8a·\82µ\82È\82¢\83\82\81[\83h\82Í\82±\82±\82Ö\92Ç\89Á\r
+// CR-LF以外の改行コードを変換しないモードはここへ追加\r
        if(Ascii == TYPE_A)\r
        {\r
                tInfo->Str = Data;\r
@@ -2681,7 +2681,7 @@ static int TermCodeConvAndSend(TERMCODECONVINFO *tInfo, SOCKET Skt, char *Data,
                do\r
                {\r
                        Continue = ConvTermCodeToCRLF(tInfo);\r
-                       if((Ret = SendData(Skt, Buf3, tInfo->OutLen, 0, &Canceled)) == FAIL)\r
+                       if((Ret = SendData(Skt, Buf3, tInfo->OutLen, 0, &Canceled)) == FFFTP_FAIL)\r
                                break;\r
                }\r
                while(Continue == YES);\r
@@ -2693,14 +2693,14 @@ static int TermCodeConvAndSend(TERMCODECONVINFO *tInfo, SOCKET Skt, char *Data,
 }\r
 \r
 \r
-/*----- \83A\83b\83v\83\8d\81[\83h\8fI\97¹\81^\92\86\8e~\8e\9e\82Ì\83\81\83b\83Z\81[\83W\82ð\95\\8e¦ ----------------------------\r
+/*----- アップロード終了/中止時のメッセージを表示 ----------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              int iRetCode : \89\9e\93\9a\83R\81[\83h\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              int iRetCode : 応答コード\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DispUploadFinishMsg(TRANSPACKET *Pkt, int iRetCode)\r
@@ -2732,19 +2732,19 @@ static void DispUploadFinishMsg(TRANSPACKET *Pkt, int iRetCode)
 }\r
 \r
 \r
-/*----- \83A\83b\83v\83\8d\81[\83h\82Ì\83\8a\83W\83\85\81[\83\80\82Ì\8f\80\94õ\82ð\8ds\82¤ ----------------------------------\r
+/*----- アップロードのリジュームの準備を行う ----------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              iont ProcMode : \8f\88\97\9d\83\82\81[\83h(EXIST_xxx)\r
-*              LONGLONG Size : \83z\83X\83g\82É\82 \82é\83t\83@\83C\83\8b\82Ì\83T\83C\83Y\r
-*              int *Mode : \83\8a\83W\83\85\81[\83\80\82ð\8ds\82¤\82©\82Ç\82¤\82© (YES/NO)\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              iont ProcMode : 処理モード(EXIST_xxx)\r
+*              LONGLONG Size : ホストにあるファイルのサイズ\r
+*              int *Mode : リジュームを行うかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X = YES\r
+*              int ステータス = YES\r
 *\r
 *      Note\r
-*              Pkt->ExistSize\82Ì\83Z\83b\83g\82ð\8ds\82È\82¤\r
+*              Pkt->ExistSizeのセットを行なう\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int SetUploadResume(TRANSPACKET *Pkt, int ProcMode, LONGLONG Size, int *Mode)\r
@@ -2763,13 +2763,13 @@ static int SetUploadResume(TRANSPACKET *Pkt, int ProcMode, LONGLONG Size, int *M
 }\r
 \r
 \r
-/*----- \93]\91\97\92\86\83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------------\r
+/*----- 転送中ダイアログボックスのコールバック --------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -2809,7 +2809,7 @@ static LRESULT CALLBACK TransDlgProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM
 \r
                                case TRANS_STOP_ALL :\r
                                        ClearAll = YES;\r
-                                       /* \82±\82±\82É break \82Í\82È\82¢ */\r
+                                       /* ここに break はない */\r
 \r
                                case IDCANCEL :\r
                                        Pkt->Abort = ABORT_USER;\r
@@ -2838,14 +2838,14 @@ static LRESULT CALLBACK TransDlgProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM
 }\r
 \r
 \r
-/*----- \93]\91\97\83X\83e\81[\83^\83X\82ð\95\\8e¦ --------------------------------------------------\r
+/*----- 転送ステータスを表示 --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int End : \93]\91\97\82ª\8a®\97¹\82µ\82½\82©\82Ç\82¤\82© (YES/NO)\r
+*              HWND hWnd : ウインドウハンドル\r
+*              int End : 転送が完了したかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DispTransferStatus(HWND hWnd, int End, TRANSPACKET *Pkt)\r
@@ -2925,16 +2925,16 @@ static void DispTransferStatus(HWND hWnd, int End, TRANSPACKET *Pkt)
 }\r
 \r
 \r
-/*----- \93]\91\97\82·\82é\83t\83@\83C\83\8b\82Ì\8fî\95ñ\82ð\95\\8e¦ ------------------------------------------\r
+/*----- 転送するファイルの情報を表示 ------------------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *Pkt : \93]\91\97\83t\83@\83C\83\8b\8fî\95ñ\r
-*              char *Title : \83E\83C\83\93\83h\83E\82Ì\83^\83C\83g\83\8b\r
-*              int SkipButton : \81u\82±\82Ì\83t\83@\83C\83\8b\82ð\92\86\8e~\81v\83{\83^\83\93\82Ì\97L\96³ (TRUE/FALSE)\r
-*              int Info : \83t\83@\83C\83\8b\8fî\95ñ\82ð\95\\8e¦\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
+*              TRANSPACKET *Pkt : 転送ファイル情報\r
+*              char *Title : ウインドウのタイトル\r
+*              int SkipButton : 「このファイルを中止」ボタンの有無 (TRUE/FALSE)\r
+*              int Info : ファイル情報を表示するかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DispTransFileInfo(TRANSPACKET *Pkt, char *Title, int SkipButton, int Info)\r
@@ -2963,7 +2963,7 @@ static void DispTransFileInfo(TRANSPACKET *Pkt, char *Title, int SkipButton, int
                        else if(Pkt->Type == TYPE_A)\r
                                SendDlgItemMessage(Pkt->hWndTrans, TRANS_MODE, WM_SETTEXT, 0, (LPARAM)MSGJPN120);\r
 \r
-                       // UTF-8\91Î\89\9e\r
+                       // UTF-8対応\r
                        if(Pkt->KanjiCode == KANJI_NOCNV)\r
                                SendDlgItemMessage(Pkt->hWndTrans, TRANS_KANJI, WM_SETTEXT, 0, (LPARAM)MSGJPN121);\r
                        else if(Pkt->KanjiCode == KANJI_SJIS)\r
@@ -2987,17 +2987,17 @@ static void DispTransFileInfo(TRANSPACKET *Pkt, char *Title, int SkipButton, int
 }\r
 \r
 \r
-/*----- PASV\83R\83}\83\93\83h\82Ì\96ß\82è\92l\82©\82ç\83A\83h\83\8c\83X\82Æ\83|\81[\83g\94Ô\8d\86\82ð\92\8a\8fo --------------------\r
+/*----- PASVコマンドの戻り値からアドレスとポート番号を抽出 --------------------\r
 *\r
 *      Parameter\r
-*              char *Str : PASV\83R\83}\83\93\83h\82Ì\83\8a\83v\83\89\83C\r
-*              char *Adrs : \83A\83h\83\8c\83X\82Ì\83R\83s\81[\90æ ("www.xxx.yyy.zzz")\r
-*              int *Port : \83|\81[\83g\94Ô\8d\86\82ð\83Z\83b\83g\82·\82é\83\8f\81[\83N\r
-*              int Max : \83A\83h\83\8c\83X\95\8e\9a\97ñ\82Ì\8dÅ\91å\92·\r
+*              char *Str : PASVコマンドのリプライ\r
+*              char *Adrs : アドレスのコピー先 ("www.xxx.yyy.zzz")\r
+*              int *Port : ポート番号をセットするワーク\r
+*              int Max : ã\82¢ã\83\89ã\83¬ã\82¹æ\96\87å­\97å\88\97ã\81®æ\9c\80大é\95·\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetAdrsAndPort(char *Str, char *Adrs, int *Port, int Max)\r
@@ -3006,7 +3006,7 @@ static int GetAdrsAndPort(char *Str, char *Adrs, int *Port, int Max)
        char *Btm;\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
 \r
        Pos = strchr(Str, '(');\r
        if(Pos != NULL)\r
@@ -3039,7 +3039,7 @@ static int GetAdrsAndPort(char *Str, char *Adrs, int *Port, int Max)
                                                        {\r
                                                                Btm++;\r
                                                                *Port = (atoi(Pos) * 0x100) + atoi(Btm);\r
-                                                               Sts = SUCCESS;\r
+                                                               Sts = FFFTP_SUCCESS;\r
                                                        }\r
                                                }\r
                                        }\r
@@ -3051,13 +3051,13 @@ static int GetAdrsAndPort(char *Str, char *Adrs, int *Port, int Max)
 }\r
 \r
 \r
-/*----- Windows\82Ì\83X\83y\83V\83\83\83\8b\83f\83o\83C\83X\82©\82Ç\82¤\82©\82ð\95Ô\82· -----------------------------\r
+/*----- Windowsのスペシャルデバイスかどうかを返す -----------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              char *Fname : ファイル名\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES/NO)\r
+*              int ステータス (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int IsSpecialDevice(char *Fname)\r
@@ -3065,7 +3065,7 @@ static int IsSpecialDevice(char *Fname)
        int Sts;\r
 \r
        Sts = NO;\r
-       // \94ä\8ar\82ª\95s\8a®\91S\82È\83o\83O\8fC\90³\r
+       // 比較が不完全なバグ修正\r
 //     if((_stricmp(Fname, "CON") == 0) ||\r
 //        (_stricmp(Fname, "PRN") == 0) ||\r
 //        (_stricmp(Fname, "AUX") == 0) ||\r
@@ -3092,7 +3092,7 @@ static int IsSpecialDevice(char *Fname)
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\82Å\82Ì\83t\83@\83C\83\8b\8dí\8f\9c\8am\94F --------------------------------------\r
+/*----- ミラーリングでのファイル削除確認 --------------------------------------\r
 *\r
 *      Parameter\r
 *              int Cur\r
@@ -3127,13 +3127,13 @@ static int MirrorDelNotify(int Cur, int Notify, TRANSPACKET *Pkt)
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\82Å\82Ì\83t\83@\83C\83\8b\8dí\8f\9c\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ------------------\r
+/*----- ミラーリングでのファイル削除ダイアログのコールバック ------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -3206,13 +3206,13 @@ static void SetErrorMsg(char *fmt, ...)
 \r
 \r
 \r
-/*----- \83_\83E\83\93\83\8d\81[\83h\8e\9e\82Ì\95s\90³\82È\83p\83X\82ð\83`\83F\83b\83N ----------------------------------\r
+/*----- ダウンロード時の不正なパスをチェック ----------------------------------\r
 *\r
 *      Parameter\r
-*              TRANSPACKET *packet : \83_\83E\83\93\83\8d\81[\83h\8fî\95ñ\r
+*              TRANSPACKET *packet : ダウンロード情報\r
 *\r
 *      Return Value\r
-*              int YES=\95s\90³\82È\83p\83X/NO=\96â\91è\82È\82¢\83p\83X\r
+*              int YES=不正なパス/NO=問題ないパス\r
 *----------------------------------------------------------------------------*/\r
 int CheckPathViolation(TRANSPACKET *packet)\r
 {\r
index e7c2a0b..34bdeb9 100644 (file)
--- a/helpid.h
+++ b/helpid.h
@@ -1,60 +1,60 @@
-#define        IDH_HELP_TOPIC_0000001  1       /* \82Í\82\82ß\82É */\r
-#define        IDH_HELP_TOPIC_0000002  2       /* \8eg\82¢\95û */\r
-#define        IDH_HELP_TOPIC_0000003  3       /* \89æ\96Ê\82Ì\90à\96¾ */\r
-#define        IDH_HELP_TOPIC_0000005  5       /* \83z\83X\83g\82Ö\82Ì\90Ú\91±\82Æ\90Ø\92f */\r
-#define        IDH_HELP_TOPIC_0000006  6       /* \83t\83@\83C\83\8b\88ê\97\97 */\r
-#define        IDH_HELP_TOPIC_0000007  7       /* \93]\91\97\83\82\81[\83h */\r
-#define        IDH_HELP_TOPIC_0000008  8       /* \83_\83E\83\93\83\8d\81[\83h */\r
-#define        IDH_HELP_TOPIC_0000009  9       /* \83_\83E\83\93\83\8d\81[\83h\82Ì\8am\94F */\r
-#define        IDH_HELP_TOPIC_0000010  10      /* \83A\83b\83v\83\8d\81[\83h */\r
-#define        IDH_HELP_TOPIC_0000011  11      /* \83A\83b\83v\83\8d\81[\83h\82Ì\8am\94F */\r
-#define        IDH_HELP_TOPIC_0000012  12      /* \83~\83\89\81[\83\8a\83\93\83O\83A\83b\83v\83\8d\81[\83h */\r
-#define        IDH_HELP_TOPIC_0000013  13      /* \83~\83\89\81[\83\8a\83\93\83O\83_\83E\83\93\83\8d\81[\83h */\r
-#define        IDH_HELP_TOPIC_0000014  14      /* \83t\83@\83C\83\8b\82ð\8aJ\82­ */\r
-#define        IDH_HELP_TOPIC_0000015  15      /* \83t\83@\83C\83\8b\8dí\8f\9c */\r
-#define        IDH_HELP_TOPIC_0000016  16      /* \83t\83@\83C\83\8b\96¼\95Ï\8dX */\r
-#define        IDH_HELP_TOPIC_0000017  17      /* \91®\90«\95Ï\8dX */\r
-#define        IDH_HELP_TOPIC_0000018  18      /* \83t\83H\83\8b\83_\8dì\90¬ */\r
-#define        IDH_HELP_TOPIC_0000019  19      /* \83u\83b\83N\83}\81[\83N */\r
-#define        IDH_HELP_TOPIC_0000020  20      /* \83t\83@\83C\83\8b\82Ì\8c\9f\8dõ */\r
-#define        IDH_HELP_TOPIC_0000021  21      /* \83t\83B\83\8b\83^ */\r
-#define        IDH_HELP_TOPIC_0000022  22      /* \83t\83H\83\8b\83_\82Ì\93¯\8e\9e\88Ú\93® */\r
-#define        IDH_HELP_TOPIC_0000023  23      /* \94C\88Ó\82Ì\83R\83}\83\93\83h */\r
-#define        IDH_HELP_TOPIC_0000024  24      /* \83R\83}\83\93\83h\83\89\83C\83\93 */\r
-#define        IDH_HELP_TOPIC_0000025  25      /* \83C\83\93\83|\81[\83g */\r
-#define        IDH_HELP_TOPIC_0000027  27      /* \83z\83X\83g\88ê\97\97 */\r
-#define        IDH_HELP_TOPIC_0000028  28      /* \8aî\96{ */\r
-#define        IDH_HELP_TOPIC_0000029  29      /* \8ag\92£ */\r
-#define        IDH_HELP_TOPIC_0000030  30      /* \95\8e\9a\83R\81[\83h */\r
-#define        IDH_HELP_TOPIC_0000031  31      /* \83_\83C\83A\83\8b\83A\83b\83v */\r
-#define        IDH_HELP_TOPIC_0000032  32      /* \8d\82\93x */\r
-#define        IDH_HELP_TOPIC_0000034  34      /* \90Ú\91± */\r
-#define        IDH_HELP_TOPIC_0000035  35      /* \83R\83}\83\93\83h */\r
-#define        IDH_HELP_TOPIC_0000036  36      /* \95\\8e¦ */\r
-#define        IDH_HELP_TOPIC_0000037  37      /* \83c\81[\83\8b */\r
-#define        IDH_HELP_TOPIC_0000038  38      /* \83I\83v\83V\83\87\83\93 */\r
-#define        IDH_HELP_TOPIC_0000039  39      /* \83w\83\8b\83v */\r
-#define        IDH_HELP_TOPIC_0000040  40      /* \8aÂ\8b«\90Ý\92è */\r
-#define        IDH_HELP_TOPIC_0000041  41      /* \83\86\81[\83U */\r
-#define        IDH_HELP_TOPIC_0000042  42      /* \93]\91\97\82P */\r
-#define        IDH_HELP_TOPIC_0000043  43      /* \93]\91\97\82Q */\r
-#define        IDH_HELP_TOPIC_0000044  44      /* \93]\91\97\82R */\r
-#define        IDH_HELP_TOPIC_0000045  45      /* \83~\83\89\81[\83\8a\83\93\83O */\r
-#define        IDH_HELP_TOPIC_0000046  46      /* \91\80\8dì */\r
-#define        IDH_HELP_TOPIC_0000047  47      /* \95\\8e¦ */\r
-#define        IDH_HELP_TOPIC_0000048  48      /* \90Ú\91±/\90Ø\92f */\r
+#define     IDH_HELP_TOPIC_0000001  1       /* はじめに */\r
+#define        IDH_HELP_TOPIC_0000002  2       /* 使い方 */\r
+#define        IDH_HELP_TOPIC_0000003  3       /* 画面の説明 */\r
+#define        IDH_HELP_TOPIC_0000005  5       /* ホストへの接続と切断 */\r
+#define        IDH_HELP_TOPIC_0000006  6       /* ファイル一覧 */\r
+#define        IDH_HELP_TOPIC_0000007  7       /* 転送モード */\r
+#define        IDH_HELP_TOPIC_0000008  8       /* ダウンロード */\r
+#define        IDH_HELP_TOPIC_0000009  9       /* ダウンロードの確認 */\r
+#define        IDH_HELP_TOPIC_0000010  10      /* アップロード */\r
+#define        IDH_HELP_TOPIC_0000011  11      /* アップロードの確認 */\r
+#define        IDH_HELP_TOPIC_0000012  12      /* ミラーリングアップロード */\r
+#define        IDH_HELP_TOPIC_0000013  13      /* ミラーリングダウンロード */\r
+#define        IDH_HELP_TOPIC_0000014  14      /* ファイルを開く */\r
+#define        IDH_HELP_TOPIC_0000015  15      /* ファイル削除 */\r
+#define        IDH_HELP_TOPIC_0000016  16      /* ファイル名変更 */\r
+#define        IDH_HELP_TOPIC_0000017  17      /* 属性変更 */\r
+#define        IDH_HELP_TOPIC_0000018  18      /* フォルダ作成 */\r
+#define        IDH_HELP_TOPIC_0000019  19      /* ブックマーク */\r
+#define        IDH_HELP_TOPIC_0000020  20      /* ファイルの検索 */\r
+#define        IDH_HELP_TOPIC_0000021  21      /* フィルタ */\r
+#define        IDH_HELP_TOPIC_0000022  22      /* フォルダの同時移動 */\r
+#define        IDH_HELP_TOPIC_0000023  23      /* 任意のコマンド */\r
+#define        IDH_HELP_TOPIC_0000024  24      /* コマンドライン */\r
+#define        IDH_HELP_TOPIC_0000025  25      /* インポート */\r
+#define        IDH_HELP_TOPIC_0000027  27      /* ホスト一覧 */\r
+#define        IDH_HELP_TOPIC_0000028  28      /* 基本 */\r
+#define        IDH_HELP_TOPIC_0000029  29      /* 拡張 */\r
+#define        IDH_HELP_TOPIC_0000030  30      /* 文字コード */\r
+#define        IDH_HELP_TOPIC_0000031  31      /* ダイアルアップ */\r
+#define        IDH_HELP_TOPIC_0000032  32      /* 高度 */\r
+#define        IDH_HELP_TOPIC_0000034  34      /* 接続 */\r
+#define        IDH_HELP_TOPIC_0000035  35      /* コマンド */\r
+#define        IDH_HELP_TOPIC_0000036  36      /* 表示 */\r
+#define        IDH_HELP_TOPIC_0000037  37      /* ツール */\r
+#define        IDH_HELP_TOPIC_0000038  38      /* オプション */\r
+#define        IDH_HELP_TOPIC_0000039  39      /* ヘルプ */\r
+#define        IDH_HELP_TOPIC_0000040  40      /* 環境設定 */\r
+#define        IDH_HELP_TOPIC_0000041  41      /* ユーザ */\r
+#define        IDH_HELP_TOPIC_0000042  42      /* 転送1 */\r
+#define        IDH_HELP_TOPIC_0000043  43      /* 転送2 */\r
+#define        IDH_HELP_TOPIC_0000044  44      /* 転送3 */\r
+#define        IDH_HELP_TOPIC_0000045  45      /* ミラーリング */\r
+#define        IDH_HELP_TOPIC_0000046  46      /* 操作 */\r
+#define        IDH_HELP_TOPIC_0000047  47      /* 表示 */\r
+#define        IDH_HELP_TOPIC_0000048  48      /* 接続/切断 */\r
 #define        IDH_HELP_TOPIC_0000049  49      /* FireWall */\r
-#define        IDH_HELP_TOPIC_0000050  50      /* \83c\81[\83\8b */\r
-#define        IDH_HELP_TOPIC_0000051  51      /* \83T\83E\83\93\83h */\r
-#define        IDH_HELP_TOPIC_0000052  52      /* \82»\82Ì\91¼ */\r
-#define        IDH_HELP_TOPIC_0000054  54      /* JIS\8a¿\8e\9a\83R\81[\83h\82É\82Â\82¢\82Ä */\r
-#define        IDH_HELP_TOPIC_0000055  55      /* \8a¿\8e\9a\82Ì\83t\83@\83C\83\8b\96¼\82É\82Â\82¢\82Ä */\r
-#define        IDH_HELP_TOPIC_0000056  56      /* \83p\83X\83\8f\81[\83h\82Ì\8eæ\82è\88µ\82¢\82É\82Â\82¢\82Ä */\r
-#define        IDH_HELP_TOPIC_0000057  57      /* jre32.dll\82É\82Â\82¢\82Ä */\r
-#define        IDH_HELP_TOPIC_0000058  58      /* \83o\81[\83W\83\87\83\93\83A\83b\83v\82É\82Â\82¢\82Ä */\r
-#define        IDH_HELP_TOPIC_0000059  59      /* \83A\83\93\83C\83\93\83X\83g\81[\83\8b\82É\82Â\82¢\82Ä */\r
-#define        IDH_HELP_TOPIC_0000060  60      /* \8dì\90¬ */\r
-#define        IDH_HELP_TOPIC_0000061  61      /* \83t\83@\83C\83\8b\82Ì\91I\91ð */\r
-#define        IDH_HELP_TOPIC_0000062  62      /* \83u\83b\83N\83}\81[\83N */\r
-#define        IDH_HELP_TOPIC_0000064  64      /* \83}\83X\83^\81[\83p\83X\83\8f\81[\83h */\r
-#define        IDH_HELP_TOPIC_0000065  65      /* \88Ã\8d\86\89» */\r
+#define        IDH_HELP_TOPIC_0000050  50      /* ツール */\r
+#define        IDH_HELP_TOPIC_0000051  51      /* サウンド */\r
+#define        IDH_HELP_TOPIC_0000052  52      /* その他 */\r
+#define        IDH_HELP_TOPIC_0000054  54      /* JIS漢字コードについて */\r
+#define        IDH_HELP_TOPIC_0000055  55      /* 漢字のファイル名について */\r
+#define        IDH_HELP_TOPIC_0000056  56      /* パスワードの取り扱いについて */\r
+#define        IDH_HELP_TOPIC_0000057  57      /* jre32.dllについて */\r
+#define        IDH_HELP_TOPIC_0000058  58      /* バージョンアップについて */\r
+#define        IDH_HELP_TOPIC_0000059  59      /* アンインストールについて */\r
+#define        IDH_HELP_TOPIC_0000060  60      /* 作成 */\r
+#define        IDH_HELP_TOPIC_0000061  61      /* ファイルの選択 */\r
+#define        IDH_HELP_TOPIC_0000062  62      /* ブックマーク */\r
+#define        IDH_HELP_TOPIC_0000064  64      /* マスターパスワード */\r
+#define        IDH_HELP_TOPIC_0000065  65      /* 暗号化 */\r
index 91c3c74..0d69cfe 100644 (file)
--- a/history.c
+++ b/history.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                                              \83q\83X\83g\83\8a\r
+*                                                                              ヒストリ\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include "resource.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static void CopyHostToHistory(HOSTDATA *Host, HISTORYDATA *New);\r
 static void AddOneFnameToMenu(char *Host, char *User, char *Remote, int Num);\r
 static void RemoveAllHistoryFromMenu(void);\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern int FileHist;\r
 extern int PassToHist;\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static HISTORYDATA *HistoryBase = NULL;\r
 static int HistoryNum = 0;\r
 \r
-/* \83q\83X\83g\83\8a\82Ì\83\81\83j\83\85\81[\8d\80\96Ú\82ÌID */\r
+/* ヒストリのメニュー項目のID */\r
 static int MenuHistId[HISTORY_MAX] = {\r
        MENU_HIST_1,  MENU_HIST_2,  MENU_HIST_3,  MENU_HIST_4,  MENU_HIST_5,\r
        MENU_HIST_6,  MENU_HIST_7,  MENU_HIST_8,  MENU_HIST_9,  MENU_HIST_10,\r
@@ -70,14 +70,14 @@ static int MenuHistId[HISTORY_MAX] = {
 \r
 \r
 \r
-/*----- \83z\83X\83g\8fî\95ñ\82ð\83q\83X\83g\83\8a\83\8a\83X\83g\82Ì\90æ\93ª\82É\92Ç\89Á\82·\82é ----------------------------\r
+/*----- ホスト情報をヒストリリストの先頭に追加する ----------------------------\r
 *\r
 *      Parameter\r
-*              HOSTDATA *Host : \83z\83X\83g\83f\81[\83^\r
-*              int TrMode : \93]\91\97\83\82\81[\83h\r
+*              HOSTDATA *Host : ホストデータ\r
+*              int TrMode : 転送モード\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AddHostToHistory(HOSTDATA *Host, int TrMode)\r
@@ -91,13 +91,13 @@ void AddHostToHistory(HOSTDATA *Host, int TrMode)
 }\r
 \r
 \r
-/*----- \83q\83X\83g\83\8a\82ð\83q\83X\83g\83\8a\83\8a\83X\83g\82Ì\90æ\93ª\82É\92Ç\89Á\82·\82é ------------------------------\r
+/*----- ヒストリをヒストリリストの先頭に追加する ------------------------------\r
 *\r
 *      Parameter\r
-*              HISTORYDATA *Hist : \83q\83X\83g\83\8a\83f\81[\83^\r
+*              HISTORYDATA *Hist : ヒストリデータ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AddHistoryToHistory(HISTORYDATA *Hist)\r
@@ -120,13 +120,13 @@ void AddHistoryToHistory(HISTORYDATA *Hist)
 }\r
 \r
 \r
-/*----- \83q\83X\83g\83\8a\82Ì\90\94\82ð\95Ô\82· ----------------------------------------------------\r
+/*----- ヒストリの数を返す ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83q\83X\83g\83\8a\82Ì\90\94\r
+*              int ヒストリの数\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskHistoryNum(void)\r
@@ -135,13 +135,13 @@ int AskHistoryNum(void)
 }\r
 \r
 \r
-/*----- \83q\83X\83g\83\8a\82Ì\90\94\82ð\83`\83F\83b\83N\82µ\91½\82·\82¬\82½\82ç\8dí\8f\9c --------------------------------\r
+/*----- ヒストリの数をチェックし多すぎたら削除 --------------------------------\r
 *\r
 *      Parameter\r
-*              int Space : \8bó\82¯\82Ä\82¨\82­\8cÂ\90\94 (0\81`)\r
+*              int Space : 空けておく個数 (0~)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void CheckHistoryNum(int Space)\r
@@ -153,7 +153,7 @@ void CheckHistoryNum(int Space)
 \r
        if(HistoryNum > FileHist-Space)\r
        {\r
-               /* \8ec\82·\82×\82«\83q\83X\83g\83\8a\82ð\92T\82· */\r
+               /* 残すべきヒストリを探す */\r
                Pos = HistoryBase;\r
                Prev = NULL;\r
                for(i = 0; i < FileHist-Space; i++)\r
@@ -162,7 +162,7 @@ void CheckHistoryNum(int Space)
                        Pos = Pos->Next;\r
                }\r
 \r
-               /* \82¢\82ç\82È\82¢\83q\83X\83g\83\8a\82ð\8fÁ\82· */\r
+               /* いらないヒストリを消す */\r
                if(Prev == NULL)\r
                        HistoryBase = NULL;\r
                else\r
@@ -180,14 +180,14 @@ void CheckHistoryNum(int Space)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\8fî\95ñ\82ð\83q\83X\83g\83\8a\82É\83Z\83b\83g ------------------------------------------\r
+/*----- ホスト情報をヒストリにセット ------------------------------------------\r
 *\r
 *      Parameter\r
-*              HOSTDATA *Host : \83z\83X\83g\83f\81[\83^\r
-*              HISTORYDATA *New : \83q\83X\83g\83\8a\82ð\83Z\83b\83g\82·\82é\83\8f\81[\83N\r
+*              HOSTDATA *Host : ホストデータ\r
+*              HISTORYDATA *New : ヒストリをセットするワーク\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void CopyHostToHistory(HOSTDATA *Host, HISTORYDATA *New)\r
@@ -223,7 +223,7 @@ static void CopyHostToHistory(HOSTDATA *Host, HISTORYDATA *New)
        New->DialupAlways = Host->DialupAlways;\r
        New->DialupNotify = Host->DialupNotify;\r
        strcpy(New->DialEntry, Host->DialEntry);\r
-       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+       // 暗号化通信対応\r
        New->UseFTPES = Host->UseFTPES;\r
        New->UseFTPIS = Host->UseFTPIS;\r
        New->UseSFTP = Host->UseSFTP;\r
@@ -231,14 +231,14 @@ static void CopyHostToHistory(HOSTDATA *Host, HISTORYDATA *New)
 }\r
 \r
 \r
-/*----- \83q\83X\83g\83\8a\8fî\95ñ\82ð\83z\83X\83g\8fî\95ñ\82É\83Z\83b\83g --------------------------------------\r
+/*----- ヒストリ情報をホスト情報にセット --------------------------------------\r
 *\r
 *      Parameter\r
-*              HISTORYDATA *Hist : \83q\83X\83g\83\8a\r
-*              HOSTDATA *Host : \83z\83X\83g\83f\81[\83^\82ð\83Z\83b\83g\82·\82é\83\8f\81[\83N\r
+*              HISTORYDATA *Hist : ヒストリ\r
+*              HOSTDATA *Host : ホストデータをセットするワーク\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void CopyHistoryToHost(HISTORYDATA *Hist, HOSTDATA *Host)\r
@@ -276,7 +276,7 @@ void CopyHistoryToHost(HISTORYDATA *Hist, HOSTDATA *Host)
        Host->DialupAlways = Hist->DialupAlways;\r
        Host->DialupNotify = Hist->DialupNotify;\r
        strcpy(Host->DialEntry, Hist->DialEntry);\r
-       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+       // 暗号化通信対応\r
        Host->UseFTPES = Hist->UseFTPES;\r
        Host->UseFTPIS = Hist->UseFTPIS;\r
        Host->UseSFTP = Hist->UseSFTP;\r
@@ -284,13 +284,13 @@ void CopyHistoryToHost(HISTORYDATA *Hist, HOSTDATA *Host)
 }\r
 \r
 \r
-/*----- \83q\83X\83g\83\8a\8fî\95ñ\82Ì\8f\89\8aú\92l\82ð\8eæ\93¾ --------------------------------------------\r
+/*----- ヒストリ情報の初期値を取得 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              HISTORYDATA *Set : \83q\83X\83g\83\8a\82ð\83Z\83b\83g\82·\82é\83\8f\81[\83N\r
+*              HISTORYDATA *Set : ヒストリをセットするワーク\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void CopyDefaultHistory(HISTORYDATA *Set)\r
@@ -303,13 +303,13 @@ void CopyDefaultHistory(HISTORYDATA *Set)
 }\r
 \r
 \r
-/*----- \91S\83q\83X\83g\83\8a\82ð\83\81\83j\83\85\81[\82É\83Z\83b\83g ------------------------------------------\r
+/*----- 全ヒストリをメニューにセット ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetAllHistoryToMenu(void)\r
@@ -329,16 +329,16 @@ void SetAllHistoryToMenu(void)
 }\r
 \r
 \r
-/*----- \83q\83X\83g\83\8a\82ð\83\81\83j\83\85\81[\82É\92Ç\89Á ----------------------------------------------\r
+/*----- ヒストリをメニューに追加 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Host : \83z\83X\83g\96¼\r
-*              char *User : \83\86\81[\83U\96¼\r
-*              char *Remote : \83z\83X\83g\82Ì\83t\83H\83\8b\83_\r
-*              int Num : \94Ô\8d\86\r
+*              char *Host : ホスト名\r
+*              char *User : ユーザ名\r
+*              char *Remote : ホストのフォルダ\r
+*              int Num : 番号\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void AddOneFnameToMenu(char *Host, char *User, char *Remote, int Num)\r
@@ -364,13 +364,13 @@ static void AddOneFnameToMenu(char *Host, char *User, char *Remote, int Num)
 }\r
 \r
 \r
-/*----- \91S\83q\83X\83g\83\8a\82ð\83\81\83j\83\85\81[\82©\82ç\8dí\8f\9c ------------------------------------------\r
+/*----- 全ヒストリをメニューから削除 ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void RemoveAllHistoryFromMenu(void)\r
@@ -389,15 +389,15 @@ static void RemoveAllHistoryFromMenu(void)
 }\r
 \r
 \r
-/*----- \8ew\92è\83\81\83j\83\85\81[\83R\83}\83\93\83h\82É\91Î\89\9e\82·\82é\83q\83X\83g\83\8a\82ð\95Ô\82· --------------------------\r
+/*----- 指定メニューコマンドに対応するヒストリを返す --------------------------\r
 *\r
 *      Parameter\r
-*              int MenuCmd : \8eæ\82è\8fo\82·\83q\83X\83g\83\8a\82É\8a\84\82è\93\96\82Ä\82ç\82ê\82½\83\81\83j\83\85\81[\83R\83}\83\93\83h (MENU_xxx)\r
-*              HISTORYDATA *Buf : \83q\83X\83g\83\8a\83f\81[\83^\82ð\95Ô\82·\83o\83b\83t\83@\r
+*              int MenuCmd : 取り出すヒストリに割り当てられたメニューコマンド (MENU_xxx)\r
+*              HISTORYDATA *Buf : ヒストリデータを返すバッファ\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 GetHistoryByCmd(int MenuCmd, HISTORYDATA *Buf)\r
@@ -406,14 +406,14 @@ int GetHistoryByCmd(int MenuCmd, HISTORYDATA *Buf)
        int i;\r
        HISTORYDATA *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        Pos = HistoryBase;\r
        for(i = 0; i < HistoryNum; i++)\r
        {\r
                if(MenuHistId[i] == MenuCmd)\r
                {\r
                        memcpy(Buf, Pos, sizeof(HISTORYDATA));\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
                Pos = Pos->Next;\r
        }\r
@@ -421,15 +421,15 @@ int GetHistoryByCmd(int MenuCmd, HISTORYDATA *Buf)
 }\r
 \r
 \r
-/*----- \8ew\92è\94Ô\8d\86\82É\91Î\89\9e\82·\82é\83q\83X\83g\83\8a\82ð\95Ô\82· --------------------------------------\r
+/*----- 指定番号に対応するヒストリを返す --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \94Ô\8d\86(0\81`)\r
-*              HISTORYDATA *Buf : \83q\83X\83g\83\8a\83f\81[\83^\82ð\95Ô\82·\83o\83b\83t\83@\r
+*              int Num : 番号(0~)\r
+*              HISTORYDATA *Buf : ヒストリデータを返すバッファ\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 GetHistoryByNum(int Num, HISTORYDATA *Buf)\r
index a3aa94d..8b590b9 100644 (file)
--- a/hostman.c
+++ b/hostman.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \83z\83X\83g\88ê\97\97\r
+*                                                              ホスト一覧\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include <htmlhelp.h>\r
 #include "helpid.h"\r
 \r
-// UTF-8\91Î\89\9e\r
+// UTF-8対応\r
 #undef __MBSWRAPPER_H__\r
 #include "mbswrapper.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
 static LRESULT CALLBACK HostListWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);\r
@@ -67,39 +67,39 @@ static BOOL CALLBACK AdvSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPA
 static BOOL CALLBACK CodeSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
 static BOOL CALLBACK DialupSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
 static BOOL CALLBACK Adv2SettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
-// \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+// 暗号化通信対応\r
 static BOOL CALLBACK CryptSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern HWND hHelpWin;\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern char UserMailAdrs[USER_MAIL_LEN+1];\r
 extern HFONT ListFont;\r
 extern char DefaultLocalPath[FMAX_PATH+1];\r
 extern int ConnectAndSet;\r
 extern SIZE HostDlgSize;\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
-static int Hosts = 0;                                          /* \83z\83X\83g\90\94 */\r
-static int ConnectingHost;                                     /* \90Ú\91±\92\86\82Ì\83z\83X\83g */\r
-static int CurrentHost;                                                /* \83J\81[\83\\83\8b\88Ê\92u\82Ì\83z\83X\83g */\r
-static HOSTLISTDATA *HostListTop = NULL;       /* \83z\83X\83g\88ê\97\97\83f\81[\83^ */\r
-static HOSTDATA TmpHost;                                       /* \83z\83X\83g\8fî\95ñ\83R\83s\81[\97p */\r
-static int Apply;                                                      /* \83v\83\8d\83p\83e\83B\83V\81[\83g\82ÅOK\82ð\89\9f\82µ\82½\83t\83\89\83O */\r
+static int Hosts = 0;                                          /* ホスト数 */\r
+static int ConnectingHost;                                     /* 接続中のホスト */\r
+static int CurrentHost;                                                /* カーソル位置のホスト */\r
+static HOSTLISTDATA *HostListTop = NULL;       /* ホスト一覧データ */\r
+static HOSTDATA TmpHost;                                       /* ホスト情報コピー用 */\r
+static int Apply;                                                      /* プロパティシートでOKを押したフラグ */\r
 static WNDPROC HostListProcPtr;\r
 \r
 \r
 \r
-/*----- \83z\83X\83g\88ê\97\97\83E\83C\83\93\83h\83E --------------------------------------------------\r
+/*----- ホスト一覧ウインドウ --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Type : \83_\83C\83A\83\8d\83O\82Ì\83^\83C\83v (DLG_TYPE_xxx)\r
+*              int Type : ダイアログのタイプ (DLG_TYPE_xxx)\r
 *\r
 *      Return Value\r
-*              \83X\83e\81[\83^\83X (YES=\8eÀ\8ds/NO=\8eæ\8fÁ)\r
+*              ステータス (YES=実行/NO=取消)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int SelectHost(int Type)\r
@@ -113,7 +113,7 @@ int SelectHost(int Type)
 \r
        Sts = DialogBox(GetFtpInst(), MAKEINTRESOURCE(Dlg), GetMainHwnd(), SelectHostProc);\r
 \r
-       /* \83z\83X\83g\90Ý\92è\82ð\95Û\91 */\r
+       /* ホスト設定を保存 */\r
        SetNodeLevelAll();\r
        SaveRegistory();\r
 \r
@@ -121,13 +121,13 @@ int SelectHost(int Type)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\88ê\97\97\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------------\r
+/*----- ホスト一覧ウインドウのコールバック ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -156,7 +156,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
        switch (message)\r
        {\r
                case WM_INITDIALOG :\r
-                       /* TreeView\82Å\82Ì\83_\83u\83\8b\83N\83\8a\83b\83N\82ð\82Â\82©\82Ü\82¦\82é\82½\82ß */\r
+                       /* TreeViewでのダブルクリックをつかまえるため */\r
                        HostListProcPtr = (WNDPROC)SetWindowLong(GetDlgItem(hDlg, HOST_LIST), GWL_WNDPROC, (LONG)HostListWndProc);\r
 \r
 \r
@@ -164,7 +164,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
 \r
                        if(AskConnecting() == YES)\r
                        {\r
-                               /* \90Ú\91±\92\86\82Í\81u\95Ï\8dX\81v\82Ì\82Ý\8b\96\89 */\r
+                               /* 接続中は「変更」のみ許可 */\r
                                EnableWindow(GetDlgItem(hDlg, HOST_NEW), FALSE);\r
                                EnableWindow(GetDlgItem(hDlg, HOST_FOLDER), FALSE);\r
                                EnableWindow(GetDlgItem(hDlg, HOST_COPY), FALSE);\r
@@ -199,7 +199,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
                                                EndDialog(hDlg, YES);\r
                                                break;\r
                                        }\r
-                                       /* \82±\82±\82Ébreak\82Í\82È\82¢ */\r
+                                       /* ここにbreakはない */\r
 \r
                                case IDCANCEL :\r
                                        AskDlgSize(hDlg, &DlgSize, &HostDlgSize);\r
@@ -334,7 +334,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
 \r
                                                        if((Level1 == Level2) && (Data2->Set.Level & SET_LEVEL_GROUP))\r
                                                        {\r
-                                                               //Data2\82Ìchild\82Ö\r
+                                                               //Data2のchildへ\r
                                                                if(Data1->Next != NULL)\r
                                                                        Data1->Next->Prev = Data1->Prev;\r
                                                                if(Data1->Prev != NULL)\r
@@ -351,7 +351,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
                                                        }\r
                                                        else if(Level1 < Level2)\r
                                                        {\r
-                                                               //Data1\82ÌPrev\82ÌChild\82ÌNext\82Ì\96\96\94ö\82Ö\r
+                                                               //Data1のPrevのChildのNextの末尾へ\r
                                                                Data2 = Data1->Prev->Child;\r
                                                                while(Data2->Next != NULL)\r
                                                                        Data2 = Data2->Next;\r
@@ -372,7 +372,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
                                                        }\r
                                                        else\r
                                                        {\r
-                                                               //Data2\82Ìprev\82Ö\r
+                                                               //Data2のprevへ\r
                                                                if(Data1->Next != NULL)\r
                                                                        Data1->Next->Prev = Data1->Prev;\r
                                                                if(Data1->Prev != NULL)\r
@@ -427,7 +427,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
                                                        {\r
                                                                if(Data1->Next != NULL)\r
                                                                {\r
-                                                                       //Data2 = Data1\82ÌNext\r
+                                                                       //Data2 = Data1Next\r
                                                                        Data2 = Data1->Next;\r
                                                                        Level2 = GetNodeLevelByData(Data2);\r
                                                                }\r
@@ -442,7 +442,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
                                                if(((Data2 == NULL) && (Level1 > 0)) ||\r
                                                   (Level1 > Level2))\r
                                                {\r
-                                                       //Data1\82ÌParent\82ÌNext\82Ö\r
+                                                       //Data1のParentのNextへ\r
                                                        Data2 = Data1->Parent;\r
 \r
                                                        if(Data1->Next != NULL)\r
@@ -470,7 +470,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
                                                {\r
                                                        if(Data2->Set.Level & SET_LEVEL_GROUP)\r
                                                        {\r
-                                                               //Data2\82ÌChild\82Ö\r
+                                                               //Data2のChildへ\r
                                                                if(Data1->Next != NULL)\r
                                                                        Data1->Next->Prev = Data1->Prev;\r
                                                                if(Data1->Prev != NULL)\r
@@ -489,7 +489,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
                                                        }\r
                                                        else\r
                                                        {\r
-                                                               //Data2\82ÌNext\82Ö\r
+                                                               //Data2のNextへ\r
                                                                if(Data1->Next != NULL)\r
                                                                        Data1->Next->Prev = Data1->Prev;\r
                                                                if(Data1->Prev != NULL)\r
@@ -557,7 +557,7 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
                                        switch(tView->hdr.code)\r
                                        {\r
                                                case TVN_SELCHANGED :\r
-                                                       /* \83t\83H\83\8b\83_\82ª\91I\82Î\82ê\82½\82Æ\82«\82Í\90Ú\91±\81A\83R\83s\81[\83{\83^\83\93\82Í\8bÖ\8e~ */\r
+                                                       /* フォルダが選ばれたときは接続、コピーボタンは禁止 */\r
                                                        Item.hItem = hItem;\r
                                                        Item.mask = TVIF_PARAM;\r
                                                        SendDlgItemMessage(hDlg, HOST_LIST, TVM_GETITEM, TVGN_CARET, (LPARAM)&Item);\r
@@ -582,16 +582,16 @@ static BOOL CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
 }\r
 \r
 \r
-/*----- \83z\83X\83g\88ê\97\97TreeView\82Ì\83\81\83b\83Z\81[\83W\8f\88\97\9d ------------------------------------\r
+/*----- ホスト一覧TreeViewのメッセージ処理 ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message  : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hWnd : ウインドウハンドル\r
+*              UINT message  : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
-*              \83\81\83b\83Z\81[\83W\82É\91Î\89\9e\82·\82é\96ß\82è\92l\r
+*              メッセージに対応する戻り値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static LRESULT CALLBACK HostListWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)\r
@@ -606,14 +606,14 @@ static LRESULT CALLBACK HostListWndProc(HWND hWnd, UINT message, WPARAM wParam,
 }\r
 \r
 \r
-/*----- \8e\9f\82Ì\90Ý\92è\94Ô\8d\86\82Ì\83m\81[\83h\82ð\95Ô\82· --------------------------------------------\r
+/*----- 次の設定番号のノードを返す --------------------------------------------\r
 *\r
 *      Parameter\r
-*              HOSTLISTDATA *Pos : \83m\81[\83h\83f\81[\83^\r
+*              HOSTLISTDATA *Pos : ノードデータ\r
 *\r
 *      Return Value\r
-*              HOSTLISTDATA *\8e\9f\82Ì\83m\81[\83h\r
-*                      NULL=\8e\9f\82Í\82È\82¢\r
+*              HOSTLISTDATA *次のノード\r
+*                      NULL=次はない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static HOSTLISTDATA *GetNextNode(HOSTLISTDATA *Pos)\r
@@ -644,13 +644,13 @@ static HOSTLISTDATA *GetNextNode(HOSTLISTDATA *Pos)
 }\r
 \r
 \r
-/*----- \83m\81[\83h\82Ì\83\8c\83x\83\8b\90\94\82ð\95Ô\82·\81i\90Ý\92è\94Ô\8d\86\8ew\92è\81j --------------------------------\r
+/*----- ノードのレベル数を返す(設定番号指定) --------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
+*              int Num : 設定値号番号\r
 *\r
 *      Return Value\r
-*              int \83\8c\83x\83\8b\90\94 (-1=\90Ý\92è\82ª\82È\82¢\81j\r
+*              int レベル数 (-1=設定がない)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetNodeLevel(int Num)\r
@@ -673,13 +673,13 @@ static int GetNodeLevel(int Num)
 }\r
 \r
 \r
-/*----- \83m\81[\83h\82Ì\83\8c\83x\83\8b\90\94\82ð\95Ô\82·\81i\83m\81[\83h\83f\81[\83^\8ew\92è\81j-----------------------------\r
+/*----- ノードのレベル数を返す(ノードデータ指定)-----------------------------\r
 *\r
 *      Parameter\r
-*              HOSTLISTDATA *Data : \90Ý\92è\92l\r
+*              HOSTLISTDATA *Data : 設定値\r
 *\r
 *      Return Value\r
-*              int \83\8c\83x\83\8b\90\94\r
+*              int レベル数\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetNodeLevelByData(HOSTLISTDATA *Data)\r
@@ -696,13 +696,13 @@ static int GetNodeLevelByData(HOSTLISTDATA *Data)
 }\r
 \r
 \r
-/*----- \83m\81[\83h\82Ì\90Ý\92è\94Ô\8d\86\82ð\95Ô\82· ------------------------------------------------\r
+/*----- ノードの設定番号を返す ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HOSTLISTDATA *Data : \90Ý\92è\92l\r
+*              HOSTLISTDATA *Data : 設定値\r
 *\r
 *      Return Value\r
-*              int \90Ý\92è\94Ô\8d\86\r
+*              int 設定番号\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetNodeNumByData(HOSTLISTDATA *Data)\r
@@ -721,13 +721,13 @@ static int GetNodeNumByData(HOSTLISTDATA *Data)
 }\r
 \r
 \r
-/*----- \8ew\92è\94Ô\8d\86\82Ì\83m\81[\83h\82ð\95Ô\82· ------------------------------------------------\r
+/*----- 指定番号のノードを返す ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\94Ô\8d\86\r
+*              int Num : 設定番号\r
 *\r
 *      Return Value\r
-*              HOSTLISTDATA * : \90Ý\92è\92l\r
+*              HOSTLISTDATA * : 設定値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static HOSTLISTDATA *GetNodeByNum(int Num)\r
@@ -742,13 +742,13 @@ static HOSTLISTDATA *GetNodeByNum(int Num)
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82Ì\8ae\83m\81[\83h\82Ì\83\8c\83x\83\8b\94Ô\8d\86\82ð\83Z\83b\83g ----------------------------\r
+/*----- 設定値リストの各ノードのレベル番号をセット ----------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\94Ô\8d\86\r
+*              int Num : 設定番号\r
 *\r
 *      Return Value\r
-*              HOSTLISTDATA * : \90Ý\92è\92l\r
+*              HOSTLISTDATA * : 設定値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int SetNodeLevelAll(void)\r
@@ -763,20 +763,20 @@ static int SetNodeLevelAll(void)
                Pos->Set.Level |= GetNodeLevelByData(Pos);\r
                Pos = GetNextNode(Pos);\r
        }\r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82É\92Ç\89Á ----------------------------------------------------\r
+/*----- 設定値リストに追加 ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HOSTDATA *Set : \92Ç\89Á\82·\82é\90Ý\92è\92l\r
-*              int Pos : \92Ç\89Á\82·\82é\88Ê\92u (0\81` : -1=\8dÅ\8cã)\r
-*              int Level : \83\8c\83x\83\8b\90\94 (SET_LEVEL_SAME=\92Ç\89Á\88Ê\92u\82Ì\82à\82Ì\82Æ\93¯\83\8c\83x\83\8b)\r
+*              HOSTDATA *Set : 追加する設定値\r
+*              int Pos : 追加する位置 (0~ : -1=最後)\r
+*              int Level : レベル数 (SET_LEVEL_SAME=追加位置のものと同レベル)\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 AddHostToList(HOSTDATA *Set, int Pos, int Level)\r
@@ -786,7 +786,7 @@ int AddHostToList(HOSTDATA *Set, int Pos, int Level)
        HOSTLISTDATA *Last;\r
        int Cur;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Pos >= -1) && (Pos <= Hosts))\r
        {\r
                if(Pos == -1)\r
@@ -844,22 +844,22 @@ int AddHostToList(HOSTDATA *Set, int Pos, int Level)
                                }\r
                        }\r
                        Hosts++;\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82ð\8dX\90V\82·\82é ------------------------------------------------\r
+/*----- 設定値リストを更新する ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
-*              HOSTDATA *Set : \90Ý\92è\92l\82ð\83R\83s\81[\82·\82é\83\8f\81[\83N\r
+*              int Num : 設定値号番号\r
+*              HOSTDATA *Set : 設定値をコピーするワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int UpdateHostToList(int Num, HOSTDATA *Set)\r
@@ -867,25 +867,25 @@ static int UpdateHostToList(int Num, HOSTDATA *Set)
        int Sts;\r
        HOSTLISTDATA *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Num >= 0) && (Num < Hosts))\r
        {\r
                Pos = GetNodeByNum(Num);\r
                memcpy(&Pos->Set, Set, sizeof(HOSTDATA));\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82©\82ç\8dí\8f\9c --------------------------------------------------\r
+/*----- 設定値リストから削除 --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \8dí\8f\9c\82·\82é\94Ô\8d\86\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
 static int DelHostFromList(int Num)\r
@@ -893,7 +893,7 @@ static int DelHostFromList(int Num)
        int Sts;\r
        HOSTLISTDATA *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Num >= 0) && (Num < Hosts))\r
        {\r
                if(Num == 0)\r
@@ -918,23 +918,23 @@ static int DelHostFromList(int Num)
                }\r
                free(Pos);\r
                Hosts--;\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82©\82ç\83m\81[\83h\83f\81[\83^\82ð\8dí\8f\9c ------------------------------------\r
+/*----- 設定値リストからノードデータを削除 ------------------------------------\r
 *\r
 *      Parameter\r
-*              HOSTLISTDATA *Pos : \8dí\8f\9c\82·\82é\83m\81[\83h\r
+*              HOSTLISTDATA *Pos : 削除するノード\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *\r
 *      Note\r
-*              Pos->Next, Pos->Child\82Ì\91S\82Ä\82Ì\83m\81[\83h\82ð\8dí\8f\9c\82·\82é\r
+*              Pos->Next, Pos->Childの全てのノードを削除する\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DeleteChildAndNext(HOSTLISTDATA *Pos)\r
@@ -951,22 +951,22 @@ static int DeleteChildAndNext(HOSTLISTDATA *Pos)
                Hosts--;\r
                Pos = Next;\r
        }\r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82©\82ç\90Ý\92è\92l\82ð\8eæ\82è\8fo\82· --------------------------------------\r
+/*----- 設定値リストから設定値を取り出す --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
-*              HOSTDATA *Set : \90Ý\92è\92l\82ð\83R\83s\81[\82·\82é\83\8f\81[\83N\r
+*              int Num : 設定値号番号\r
+*              HOSTDATA *Set : 設定値をコピーするワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *\r
 *      Note\r
-*              \8c»\8dÝ\83z\83X\83g\82É\90Ú\91±\92\86\82Ì\8e\9e\82Í\81ACopyHostFromListInConnect() \82ð\8eg\82¤\8e\96\r
+*              現在ホストに接続中の時は、CopyHostFromListInConnect() を使う事\r
 *----------------------------------------------------------------------------*/\r
 \r
 int CopyHostFromList(int Num, HOSTDATA *Set)\r
@@ -974,29 +974,29 @@ int CopyHostFromList(int Num, HOSTDATA *Set)
        int Sts;\r
        HOSTLISTDATA *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Num >= 0) && (Num < Hosts))\r
        {\r
                Pos = GetNodeByNum(Num);\r
                memcpy(Set, &Pos->Set, sizeof(HOSTDATA));\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82©\82ç\90Ý\92è\92l\82ð\8eæ\82è\8fo\82· --------------------------------------\r
+/*----- 設定値リストから設定値を取り出す --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
-*              HOSTDATA *Set : \90Ý\92è\92l\82ð\83R\83s\81[\82·\82é\83\8f\81[\83N\r
+*              int Num : 設定値号番号\r
+*              HOSTDATA *Set : 設定値をコピーするワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *\r
 *      Note\r
-*              \8c»\8dÝ\83z\83X\83g\82É\90Ú\91±\92\86\82Ì\8e\9e\82É\8eg\82¤\r
+*              現在ホストに接続中の時に使う\r
 *----------------------------------------------------------------------------*/\r
 \r
 int CopyHostFromListInConnect(int Num, HOSTDATA *Set)\r
@@ -1004,7 +1004,7 @@ int CopyHostFromListInConnect(int Num, HOSTDATA *Set)
        int Sts;\r
        HOSTLISTDATA *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Num >= 0) && (Num < Hosts))\r
        {\r
                Pos = GetNodeByNum(Num);\r
@@ -1021,26 +1021,26 @@ int CopyHostFromListInConnect(int Num, HOSTDATA *Set)
                Set->UseNLST_R = Pos->Set.UseNLST_R;\r
                Set->LastDir = Pos->Set.LastDir;\r
                Set->TimeZone = Pos->Set.TimeZone;\r
-               // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+               // 暗号化通信対応\r
                Set->UseFTPES = Pos->Set.UseFTPES;\r
                Set->UseFTPIS = Pos->Set.UseFTPIS;\r
                Set->UseSFTP = Pos->Set.UseSFTP;\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82Ì\83u\83b\83N\83}\81[\83N\82ð\8dX\90V --------------------------------------\r
+/*----- 設定値リストのブックマークを更新 --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
-*              char *Bmask : \83u\83b\83N\83}\81[\83N\95\8e\9a\97ñ\r
-*              int Len : \83u\83b\83N\83}\81[\83N\95\8e\9a\97ñ\82Ì\92·\82³\r
+*              int Num : 設定値号番号\r
+*              char *Bmask : ブックマーク文字列\r
+*              int Len : ブックマーク文字列の長さ\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 SetHostBookMark(int Num, char *Bmask, int Len)\r
@@ -1048,24 +1048,24 @@ int SetHostBookMark(int Num, char *Bmask, int Len)
        int Sts;\r
        HOSTLISTDATA *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Num >= 0) && (Num < Hosts))\r
        {\r
                Pos = GetNodeByNum(Num);\r
                memcpy(Pos->Set.BookMark, Bmask, Len);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82Ì\83u\83b\83N\83}\81[\83N\95\8e\9a\97ñ\82ð\95Ô\82· --------------------------------\r
+/*----- 設定値リストのブックマーク文字列を返す --------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
+*              int Num : 設定値号番号\r
 *\r
 *      Return Value\r
-*              char *\83u\83b\83N\83}\81[\83N\95\8e\9a\97ñ\r
+*              char *ブックマーク文字列\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *AskHostBookMark(int Num)\r
@@ -1083,16 +1083,16 @@ char *AskHostBookMark(int Num)
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82Ì\83f\83B\83\8c\83N\83g\83\8a\82ð\8dX\90V --------------------------------------\r
+/*----- 設定値リストのディレクトリを更新 --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
-*              char *LocDir : \83\8d\81[\83J\83\8b\82Ì\83f\83B\83\8c\83N\83g\83\8a\r
-*              char *HostDir : \83z\83X\83g\82Ì\83f\83B\83\8c\83N\83g\83\8a\r
+*              int Num : 設定値号番号\r
+*              char *LocDir : ローカルのディレクトリ\r
+*              char *HostDir : ホストのディレクトリ\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 SetHostDir(int Num, char *LocDir, char *HostDir)\r
@@ -1100,27 +1100,27 @@ int SetHostDir(int Num, char *LocDir, char *HostDir)
        int Sts;\r
        HOSTLISTDATA *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Num >= 0) && (Num < Hosts))\r
        {\r
                Pos = GetNodeByNum(Num);\r
                strcpy(Pos->Set.LocalInitDir, LocDir);\r
                strcpy(Pos->Set.RemoteInitDir, HostDir);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82Ì\83p\83X\83\8f\81[\83h\82ð\8dX\90V ----------------------------------------\r
+/*----- 設定値リストのパスワードを更新 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
-*              char *Pass : \83p\83X\83\8f\81[\83h\r
+*              int Num : 設定値号番号\r
+*              char *Pass : パスワード\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 SetHostPassword(int Num, char *Pass)\r
@@ -1128,25 +1128,25 @@ int SetHostPassword(int Num, char *Pass)
        int Sts;\r
        HOSTLISTDATA *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Num >= 0) && (Num < Hosts))\r
        {\r
                Pos = GetNodeByNum(Num);\r
                strcpy(Pos->Set.PassWord, Pass);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \8ew\92è\82Ì\90Ý\92è\96¼\82ð\8e\9d\82Â\90Ý\92è\82Ì\94Ô\8d\86\82ð\95Ô\82· ------------------------------------\r
+/*----- 指定の設定名を持つ設定の番号を返す ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Name : \90Ý\92è\96¼\r
+*              char *Name : 設定名\r
 *\r
 *      Return Value\r
-*              int \90Ý\92è\94Ô\8d\86 (0\81`)\r
-*                      -1=\8c©\82Â\82©\82ç\82È\82¢\r
+*              int 設定番号 (0~)\r
+*                      -1=見つからない\r
 *----------------------------------------------------------------------------*/\r
 \r
 int SearchHostName(char *Name)\r
@@ -1170,18 +1170,18 @@ int SearchHostName(char *Name)
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\83\8a\83X\83g\82Ì\83\\81[\83g\95û\96@\82ð\8dX\90V ----------------------------------------\r
+/*----- 設定値リストのソート方法を更新 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
-*              int LFSort : \83\8d\81[\83J\83\8b\82Ì\83t\83@\83C\83\8b\82Ì\83\\81[\83g\95û\96@\r
-*              int LDSort : \83\8d\81[\83J\83\8b\82Ì\83t\83H\83\8b\83_\82Ì\83\\81[\83g\95û\96@\r
-*              int RFSort : \83\8a\83\82\81[\83g\82Ì\83t\83@\83C\83\8b\82Ì\83\\81[\83g\95û\96@\r
-*              int RDSort : \83\8a\83\82\81[\83g\82Ì\83t\83H\83\8b\83_\82Ì\83\\81[\83g\95û\96@\r
+*              int Num : 設定値号番号\r
+*              int LFSort : ローカルのファイルのソート方法\r
+*              int LDSort : ローカルのフォルダのソート方法\r
+*              int RFSort : リモートのファイルのソート方法\r
+*              int RDSort : リモートのフォルダのソート方法\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 SetHostSort(int Num, int LFSort, int LDSort, int RFSort, int RDSort)\r
@@ -1189,28 +1189,28 @@ int SetHostSort(int Num, int LFSort, int LDSort, int RFSort, int RDSort)
        int Sts;\r
        HOSTLISTDATA *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Num >= 0) && (Num < Hosts))\r
        {\r
                Pos = GetNodeByNum(Num);\r
                Pos->Set.Sort = LFSort * 0x1000000 | LDSort * 0x10000 | RFSort * 0x100 | RDSort;\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \93o\98^\82³\82ê\82Ä\82¢\82é\83\\81[\83g\95û\96@\82ð\95ª\89ð\82·\82é ------------------------------------\r
+/*----- 登録されているソート方法を分解する ------------------------------------\r
 *\r
 *      Parameter\r
-*              ulong Sort : \83\\81[\83g\95û\96@ \r
-*              int *LFSort : \83\8d\81[\83J\83\8b\82Ì\83t\83@\83C\83\8b\82Ì\83\\81[\83g\95û\96@\82ð\8ai\94[\82·\82é\83\8f\81[\83N\r
-*              int *LDSort : \83\8d\81[\83J\83\8b\82Ì\83t\83H\83\8b\83_\82Ì\83\\81[\83g\95û\96@\82ð\8ai\94[\82·\82é\83\8f\81[\83N\r
-*              int *RFSort : \83\8a\83\82\81[\83g\82Ì\83t\83@\83C\83\8b\82Ì\83\\81[\83g\95û\96@\82ð\8ai\94[\82·\82é\83\8f\81[\83N\r
-*              int *RDSort : \83\8a\83\82\81[\83g\82Ì\83t\83H\83\8b\83_\82Ì\83\\81[\83g\95û\96@\82ð\8ai\94[\82·\82é\83\8f\81[\83N\r
+*              ulong Sort : ソート方法 \r
+*              int *LFSort : ローカルのファイルのソート方法を格納するワーク\r
+*              int *LDSort : ローカルのフォルダのソート方法を格納するワーク\r
+*              int *RFSort : リモートのファイルのソート方法を格納するワーク\r
+*              int *RDSort : リモートのフォルダのソート方法を格納するワーク\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DecomposeSortType(ulong Sort, int *LFSort, int *LDSort, int *RFSort, int *RDSort)\r
@@ -1223,13 +1223,13 @@ void DecomposeSortType(ulong Sort, int *LFSort, int *LDSort, int *RFSort, int *R
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\90Ú\91±\92\86\82Ì\90Ý\92è\94Ô\8d\86\82ð\95Ô\82· --------------------------------------------\r
+/*----- 現在接続中の設定番号を返す --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \90Ý\92è\94Ô\8d\86\r
+*              int 設定番号\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskCurrentHost(void)\r
@@ -1238,13 +1238,13 @@ int AskCurrentHost(void)
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\90Ú\91±\92\86\82Ì\90Ý\92è\94Ô\8d\86\82ð\83Z\83b\83g\82·\82é --------------------------------------\r
+/*----- 現在接続中の設定番号をセットする --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\94Ô\8d\86\r
+*              int Num : 設定番号\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetCurrentHost(int Num)\r
@@ -1254,13 +1254,13 @@ void SetCurrentHost(int Num)
 }\r
 \r
 \r
-/*----- \83f\83t\83H\83\8b\83g\90Ý\92è\92l\82ð\8eæ\82è\8fo\82· --------------------------------------------\r
+/*----- デフォルト設定値を取り出す --------------------------------------------\r
 *\r
 *      Parameter\r
-*              HOSTDATA *Set : \90Ý\92è\92l\82ð\83R\83s\81[\82·\82é\83\8f\81[\83N\r
+*              HOSTDATA *Set : 設定値をコピーするワーク\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void CopyDefaultHost(HOSTDATA *Set)\r
@@ -1298,7 +1298,7 @@ void CopyDefaultHost(HOSTDATA *Set)
        Set->DialupAlways = NO;\r
        Set->DialupNotify = YES;\r
        strcpy(Set->DialEntry, "");\r
-       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+       // 暗号化通信対応\r
        Set->CryptMode = CRYPT_NONE;\r
        Set->UseFTPES = YES;\r
        Set->UseFTPIS = YES;\r
@@ -1307,14 +1307,14 @@ void CopyDefaultHost(HOSTDATA *Set)
 }\r
 \r
 \r
-/*----- \90Ý\92è\96¼\88ê\97\97\82ð\83E\83B\83\93\83h\83E\82É\91\97\82é ------------------------------------------\r
+/*----- 設定名一覧をウィンドウに送る ------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND hWnd : ウインドウハンドル\r
 *              int Cur : \r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SendAllHostNames(HWND hWnd, int Cur)\r
@@ -1329,10 +1329,10 @@ static void SendAllHostNames(HWND hWnd, int Cur)
 \r
        hItemCur = NULL;\r
 \r
-       /* \82¿\82ç\82Â\82­\82Ì\82Å\8dÄ\95`\89æ\8bÖ\8e~ */\r
+       /* ちらつくので再描画禁止 */\r
        SendMessage(hWnd, WM_SETREDRAW, (WPARAM)FALSE, 0);\r
 \r
-       SendMessage(hWnd, TVM_DELETEITEM, 0, (LPARAM)TVI_ROOT);         /* \91S\82Ä\82ð\8dí\8f\9c */\r
+       SendMessage(hWnd, TVM_DELETEITEM, 0, (LPARAM)TVI_ROOT);         /* 全てを削除 */\r
 \r
        if((Level = malloc(sizeof(HTREEITEM*) * Hosts + 1)) != NULL)\r
        {\r
@@ -1380,7 +1380,7 @@ static void SendAllHostNames(HWND hWnd, int Cur)
                free(Level);\r
        }\r
 \r
-       /* \8dÄ\95`\89æ */\r
+       /* 再描画 */\r
        SendMessage(hWnd, WM_SETREDRAW, (WPARAM)TRUE, 0);\r
 \r
        if(hItemCur != NULL)\r
@@ -1394,14 +1394,14 @@ static void SendAllHostNames(HWND hWnd, int Cur)
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\82ª\83O\83\8b\81[\83v\82©\82Ç\82¤\82©\82ð\95Ô\82· ----------------------------------------\r
+/*----- 設定値がグループかどうかを返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Num : \90Ý\92è\92l\8d\86\94Ô\8d\86\r
+*              int Num : 設定値号番号\r
 *\r
 *      Return Value\r
-*              int \83O\83\8b\81[\83v\82©\82Ç\82¤\82©\r
-*                      YES/NO/-1=\90Ý\92è\92l\82ª\82È\82¢\r
+*              int グループかどうか\r
+*                      YES/NO/-1=設定値がない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int IsNodeGroup(int Num)\r
@@ -1419,13 +1419,13 @@ static int IsNodeGroup(int Num)
 }\r
 \r
 \r
-/*----- WS_FTP.INI\82©\82ç\82Ì\83C\83\93\83|\81[\83g --------------------------------------------\r
+/*----- WS_FTP.INIからのインポート --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ImportFromWSFTP(void)\r
@@ -1503,18 +1503,18 @@ void ImportFromWSFTP(void)
 \r
 \r
 \r
-/*----- \83z\83X\83g\90Ý\92è\82Ì\83v\83\8d\83p\83e\83B\83V\81[\83g ------------------------------------------\r
+/*----- ホスト設定のプロパティシート ------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \90e\83E\83C\83\93\83h\83E\82Ì\83n\83\93\83h\83\8b\r
+*              HWND hDlg : 親ウインドウのハンドル\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DispHostSetDlg(HWND hDlg)\r
 {\r
-// SFTP\81AFTPES\81AFTPIS\91Î\89\9e\r
+// SFTP、FTPES、FTPIS対応\r
 //     PROPSHEETPAGE psp[5];\r
        PROPSHEETPAGE psp[6];\r
        PROPSHEETHEADER psh;\r
@@ -1569,7 +1569,7 @@ static int DispHostSetDlg(HWND hDlg)
        psp[4].lParam = 0;\r
        psp[4].pfnCallback = NULL;\r
 \r
-// SFTP\81AFTPES\81AFTPIS\91Î\89\9e\r
+// SFTP、FTPES、FTPIS対応\r
        psp[5].dwSize = sizeof(PROPSHEETPAGE);\r
        psp[5].dwFlags = PSP_USETITLE | PSP_HASHELP;\r
        psp[5].hInstance = GetFtpInst();\r
@@ -1598,13 +1598,13 @@ static int DispHostSetDlg(HWND hDlg)
 }\r
 \r
 \r
-/*----- \8aî\96{\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------------------\r
+/*----- 基本設定ウインドウのコールバック --------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1711,13 +1711,13 @@ static BOOL CALLBACK MainSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LP
 }\r
 \r
 \r
-/*----- \8ag\92£\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------------------\r
+/*----- 拡張設定ウインドウのコールバック --------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1802,13 +1802,13 @@ static BOOL CALLBACK AdvSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \95\8e\9a\83R\81[\83h\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------------\r
+/*----- 文字コード設定ウインドウのコールバック --------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1818,7 +1818,7 @@ static BOOL CALLBACK CodeSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LP
 {\r
        NMHDR *pnmhdr;\r
 \r
-       // UTF-8\91Î\89\9e\r
+       // UTF-8対応\r
        static const RADIOBUTTON KanjiButton[] = {\r
                { HSET_NO_CNV, KANJI_NOCNV },\r
                { HSET_SJIS_CNV, KANJI_SJIS },\r
@@ -1835,7 +1835,7 @@ static BOOL CALLBACK CodeSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LP
                { HSET_FN_EUC_CNV, KANJI_EUC },\r
                { HSET_FN_SMH_CNV, KANJI_SMB_HEX },\r
                { HSET_FN_SMC_CNV, KANJI_SMB_CAP },\r
-               { HSET_FN_UTF8N_CNV, KANJI_UTF8N }              // UTF-8\91Î\89\9e\r
+               { HSET_FN_UTF8N_CNV, KANJI_UTF8N }              // UTF-8対応\r
        };\r
        #define NAMEKANJIBUTTONS        (sizeof(NameKanjiButton)/sizeof(RADIOBUTTON))\r
 \r
@@ -1877,7 +1877,7 @@ static BOOL CALLBACK CodeSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LP
                                        EnableWindow(GetDlgItem(hDlg, HSET_HANCNV), TRUE);\r
                                        break;\r
 \r
-                               // UTF-8\91Î\89\9e\r
+                               // UTF-8対応\r
                                case HSET_NO_CNV :\r
                                case HSET_UTF8N_CNV :\r
                                        EnableWindow(GetDlgItem(hDlg, HSET_HANCNV), FALSE);\r
@@ -1893,7 +1893,7 @@ static BOOL CALLBACK CodeSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LP
                                case HSET_FN_SJIS_CNV :\r
                                case HSET_FN_SMH_CNV :\r
                                case HSET_FN_SMC_CNV :\r
-                               case HSET_FN_UTF8N_CNV :        // UTF-8\91Î\89\9e\r
+                               case HSET_FN_UTF8N_CNV :        // UTF-8対応\r
                                        EnableWindow(GetDlgItem(hDlg, HSET_FN_HANCNV), FALSE);\r
                                        break;\r
                        }\r
@@ -1903,13 +1903,13 @@ static BOOL CALLBACK CodeSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LP
 }\r
 \r
 \r
-/*----- \83_\83C\83A\83\8b\83A\83b\83v\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------------\r
+/*----- ダイアルアップ設定ウインドウのコールバック ----------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1975,7 +1975,7 @@ static BOOL CALLBACK DialupSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam,
                                                EnableWindow(GetDlgItem(hDlg, HSET_DIALENTRY), TRUE);\r
                                                EnableWindow(GetDlgItem(hDlg, HSET_DIALUSETHIS), TRUE);\r
                                        }\r
-                                       /* \82±\82±\82Ébreak\82Í\82È\82¢ */\r
+                                       /* ここにbreakはない */\r
 \r
                                case HSET_DIALUSETHIS :\r
                                        if(SendDlgItemMessage(hDlg, HSET_DIALUSETHIS, BM_GETCHECK, 0, 0) == 0)\r
@@ -1990,13 +1990,13 @@ static BOOL CALLBACK DialupSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam,
 }\r
 \r
 \r
-/*----- \8d\82\93x\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------------------\r
+/*----- 高度設定ウインドウのコールバック --------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -2099,7 +2099,7 @@ static BOOL CALLBACK Adv2SettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LP
 }\r
 \r
 \r
-// \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+// 暗号化通信対応\r
 static BOOL CALLBACK CryptSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam)\r
 {\r
        NMHDR *pnmhdr;\r
@@ -2123,10 +2123,10 @@ static BOOL CALLBACK CryptSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, L
                                SendDlgItemMessage(hDlg, HSET_SFTP, BM_SETCHECK, BST_UNCHECKED, 0);\r
                                EnableWindow(GetDlgItem(hDlg, HSET_SFTP), FALSE);\r
                        }\r
-                       // TODO: FTPIS\91Î\89\9e\r
+                       // TODO: FTPIS対応\r
                        SendDlgItemMessage(hDlg, HSET_FTPIS, BM_SETCHECK, BST_UNCHECKED, 0);\r
                        EnableWindow(GetDlgItem(hDlg, HSET_FTPIS), FALSE);\r
-                       // TODO: SFTP\91Î\89\9e\r
+                       // TODO: SFTP対応\r
                        SendDlgItemMessage(hDlg, HSET_SFTP, BM_SETCHECK, BST_UNCHECKED, 0);\r
                        EnableWindow(GetDlgItem(hDlg, HSET_SFTP), FALSE);\r
                        return(TRUE);\r
@@ -2139,9 +2139,9 @@ static BOOL CALLBACK CryptSettingProc(HWND hDlg, UINT iMessage, WPARAM wParam, L
                                        if(IsOpenSSLLoaded())\r
                                        {\r
                                                TmpHost.UseFTPES = SendDlgItemMessage(hDlg, HSET_FTPES, BM_GETCHECK, 0, 0);\r
-                                               // TODO: FTPIS\91Î\89\9e\r
+                                               // TODO: FTPIS対応\r
 //                                             TmpHost.UseFTPIS = SendDlgItemMessage(hDlg, HSET_FTPIS, BM_GETCHECK, 0, 0);\r
-                                               // TODO: SFTP\91Î\89\9e\r
+                                               // TODO: SFTP対応\r
 //                                             TmpHost.UseSFTP = SendDlgItemMessage(hDlg, HSET_SFTP, BM_GETCHECK, 0, 0);\r
                                        }\r
                                        Apply = YES;\r
index 5e63193..efab57d 100644 (file)
@@ -1,53 +1,53 @@
-<html>
+<html>
 <head>
-<title>SourceForge.JP\94ÅFFFTP\82Ì\83r\83\8b\83h\82¨\82æ\82Ñ\8aJ\94­\82Ì\8eè\8f\87\82É\82Â\82¢\82Ä</title>
+<title>SourceForge.JP版FFFTPのビルドおよび開発の手順について</title>
 <style type="text/css">
 .filename {font-weight:bold}
 </style>
 </head>
 <body>
-SourceForge.JP\94Å<span style="font-weight:bold"><span style="color:yellow;vertical-align:super">F</span><span style="color:green">F</span><span style="color:red;vertical-align:sub">F</span><span style="color:green">TP</span></span>\82Ì\83r\83\8b\83h\82¨\82æ\82Ñ\8aJ\94­\82Ì\8eè\8f\87\82É\82Â\82¢\82Ä<br>
+SourceForge.JP版<span style="font-weight:bold"><span style="color:yellow;vertical-align:super">F</span><span style="color:green">F</span><span style="color:red;vertical-align:sub">F</span><span style="color:green">TP</span></span>のビルドおよび開発の手順について<br>
 <ol>
-       <li>\83r\83\8b\83h\82Ì\8eè\8f\87<br>
-       FFFTP\82ð\83r\83\8b\83h\82·\82é\82É\82Í\88È\89º\82Ì\8eè\8f\87\82É\8f]\82Á\82Ä\82­\82¾\82³\82¢\81B
+       <li>ビルドの手順<br>
+       FFFTPをビルドするには以下の手順に従ってください。
        <ol>
-               <li>Visual C++ 2005\82ð\8eg\97p\82·\82é\8fê\8d\87
+               <li>Visual C++ 2005を使用する場合
                <ol>
-                       <li><span class="filename">"FFFTP.sln"</span>\82ð\8aJ\82­\81B
-                       <li>\95K\97v\82É\89\9e\82\82Ä\83\\81[\83X\83R\81[\83h\82ð\95Ò\8fW\82·\82é\81B
+                       <li><span class="filename">"FFFTP.sln"</span>を開く。
+                       <li>必要に応じてソースコードを編集する。
                        <ol>
-                               <li>\83v\83\8d\83W\83F\83N\83g\82Í\83}\83\8b\83`\83o\83C\83g\95\8e\9a\81iShift_JIS\81j\97p\82É\90Ý\92è\82³\82ê\82Ä\82¢\82é\82ª\81A\83t\83@\83C\83\8b\96¼\82ÌUTF-8\91Î\89\9e\82É\94º\82¢\81A\8eÀ\8dÛ\82Ì\93à\95\94\8c`\8e®\82ÍUTF-8\82Æ\82µ\82Ä\88µ\82Á\82Ä\82¢\82é\81i\8d\\91¢\82É\82Â\82¢\82Ä\82Í<span class="filename">"mbswrapper.c"</span>\82¨\82æ\82Ñ\82»\82Ì\91¼\82Ì\83\\81[\83X\83R\81[\83h\93à\82Ì\83R\83\81\83\93\83g\82ð\8eQ\8fÆ\81j\81B
-                               <li>\83\81\83b\83Z\81[\83W\95\8e\9a\97ñ\82É\82Â\82¢\82Ä\82Í<span class="filename">"mesg-jpn.h"</span>\82¨\82æ\82Ñ<span class="filename">"mesg-eng.h"</span>\82É\8bL\8fq\82³\82ê\82Ä\82¢\82é\82ª\81A\95Ò\8fW\82·\82é\8dÛ\82Í<span class="filename">"mesg-jpn.old.h"</span>\82¨\82æ\82Ñ<span class="filename">"mesg-eng.old.h"</span>\82ðShift_JIS\82Å\95Û\91\82µ\81A<span class="filename">"mbtoutf8.bat"</span>\82ð\8eÀ\8ds\82µ\82Ä\95\8e\9a\97ñ\83\8a\83e\83\89\83\8b\82ðUTF-8\82É\95Ï\8a·\82·\82é\81B
+                               <li>プロジェクトはマルチバイト文字(Shift_JIS)用に設定されているが、ファイル名のUTF-8対応に伴い、実際の内部形式はUTF-8として扱っている(構造については<span class="filename">"mbswrapper.c"</span>およびその他のソースコード内のコメントを参照)。
+                               <li>メッセージ文字列については<span class="filename">"mesg-jpn.h"</span>および<span class="filename">"mesg-eng.h"</span>に記述されているが、編集する際は<span class="filename">"mesg-jpn.old.h"</span>および<span class="filename">"mesg-eng.old.h"</span>をShift_JISで保存し、<span class="filename">"mbtoutf8.bat"</span>を実行して文字列リテラルをUTF-8に変換する。
                        </ol>
-                       <li>\95K\97v\82É\89\9e\82\82Ä\83\8a\83\\81[\83X\82ð\95Ò\8fW\82·\82é\81B
+                       <li>必要に応じてリソースを編集する。
                        <ol>
-                               <li>\92Ç\89Á\82Ì\88Ë\91\83\89\83C\83u\83\89\83\8a\82Ì\92\98\8dì\8c \8fî\95ñ\82Í\81A\83_\83C\83A\83\8d\83Oabout_dlg\82Ì\81uFFFTP\82Ífreeware\82Å\82·\81v\82Ì\8fã\82Ì\83e\83L\83X\83g\82É\92Ç\8bL\82µ\82Ä\82­\82¾\82³\82¢\81B<br>
-                               \8d¡\8cã\82Ì\8b@\94\\92Ç\89Á\82É\94º\82¢\92\98\8dì\8c \8fî\95ñ\82ª\91\9d\82¦\82é\8c©\8d\9e\82Ý\82Ì\82½\82ß\81A\83e\83L\83X\83g\82Ì\94Í\88Í\82ð\91å\82«\82ß\82É\90Ý\92è\82µ\82Ä\82 \82è\82Ü\82·\81B
+                               <li>追加の依存ライブラリの著作権情報は、ダイアログabout_dlgの「FFFTPはfreewareです」の上のテキストに追記してください。<br>
+                               今後の機能追加に伴い著作権情報が増える見込みのため、テキストの範囲を大きめに設定してあります。
                        </ol>
-                       <li>\83\\83\8a\83\85\81[\83V\83\87\83\93\8d\\90¬\82©\82ç\81uDebug\81v\82Ü\82½\82Í\81uRelease\81v\82ð\91I\91ð\82·\82é\81B
-                       <li>\83\81\83j\83\85\81[\82©\82ç\81u\83\\83\8a\83\85\81[\83V\83\87\83\93\82Ì\83r\83\8b\83h\81v\82ð\91I\91ð\82·\82é\81B
-                       <li>\96â\91è\82ª\96³\82¯\82ê\82Î<span class="filename">"Debug\FFFTP.exe"</span>\82Ü\82½\82Í<span class="filename">"Release\FFFTP.exe"</span>\82ª\90\90¬\82³\82ê\82é\81B
+                       <li>ソリューション構成から「Debug」または「Release」を選択する。
+                       <li>メニューから「ソリューションのビルド」を選択する。
+                       <li>問題が無ければ<span class="filename">"Debug\FFFTP.exe"</span>または<span class="filename">"Release\FFFTP.exe"</span>が生成される。
                </ol>
-               <li>Visual C++ 2008\82ð\8eg\97p\82·\82é\8fê\8d\87
+               <li>Visual C++ 2008を使用する場合
                <ol>
-                       <li><span class="filename">"FFFTP.vc90.sln"</span>\82ð\8aJ\82­\81B
-                       <li>\95K\97v\82É\89\9e\82\82Ä\83\\81[\83X\83R\81[\83h\82ð\95Ò\8fW\82·\82é\81B
+                       <li><span class="filename">"FFFTP.vc90.sln"</span>を開く。
+                       <li>必要に応じてソースコードを編集する。
                        <ol>
-                               <li>\83v\83\8d\83W\83F\83N\83g\82Í\83}\83\8b\83`\83o\83C\83g\95\8e\9a\81iShift_JIS\81j\97p\82É\90Ý\92è\82³\82ê\82Ä\82¢\82é\82ª\81A\83t\83@\83C\83\8b\96¼\82ÌUTF-8\91Î\89\9e\82É\94º\82¢\81A\8eÀ\8dÛ\82Ì\93à\95\94\8c`\8e®\82ÍUTF-8\82Æ\82µ\82Ä\88µ\82Á\82Ä\82¢\82é\81i\8d\\91¢\82É\82Â\82¢\82Ä\82Í<span class="filename">"mbswrapper.c"</span>\82¨\82æ\82Ñ\82»\82Ì\91¼\82Ì\83\\81[\83X\83R\81[\83h\93à\82Ì\83R\83\81\83\93\83g\82ð\8eQ\8fÆ\81j\81B
-                               <li>\83\81\83b\83Z\81[\83W\95\8e\9a\97ñ\82É\82Â\82¢\82Ä\82Í<span class="filename">"mesg-jpn.h"</span>\82¨\82æ\82Ñ<span class="filename">"mesg-eng.h"</span>\82É\8bL\8fq\82³\82ê\82Ä\82¢\82é\82ª\81A\95Ò\8fW\82·\82é\8dÛ\82Í<span class="filename">"mesg-jpn.old.h"</span>\82¨\82æ\82Ñ<span class="filename">"mesg-eng.old.h"</span>\82ðShift_JIS\82Å\95Û\91\82µ\81A<span class="filename">"mbtoutf8.bat"</span>\82ð\8eÀ\8ds\82µ\82Ä\95\8e\9a\97ñ\83\8a\83e\83\89\83\8b\82ðUTF-8\82É\95Ï\8a·\82·\82é\81B
+                               <li>プロジェクトはマルチバイト文字(Shift_JIS)用に設定されているが、ファイル名のUTF-8対応に伴い、実際の内部形式はUTF-8として扱っている(構造については<span class="filename">"mbswrapper.c"</span>およびその他のソースコード内のコメントを参照)。
+                               <li>メッセージ文字列については<span class="filename">"mesg-jpn.h"</span>および<span class="filename">"mesg-eng.h"</span>に記述されているが、編集する際は<span class="filename">"mesg-jpn.old.h"</span>および<span class="filename">"mesg-eng.old.h"</span>をShift_JISで保存し、<span class="filename">"mbtoutf8.bat"</span>を実行して文字列リテラルをUTF-8に変換する。
                        </ol>
-                       <li>\95K\97v\82É\89\9e\82\82Ä\83\8a\83\\81[\83X\82ð\95Ò\8fW\82·\82é\81B
+                       <li>必要に応じてリソースを編集する。
                        <ol>
-                               <li>\92Ç\89Á\82Ì\88Ë\91\83\89\83C\83u\83\89\83\8a\82Ì\92\98\8dì\8c \8fî\95ñ\82Í\81A\83_\83C\83A\83\8d\83Oabout_dlg\82Ì\81uFFFTP\82Ífreeware\82Å\82·\81v\82Ì\8fã\82Ì\83e\83L\83X\83g\82É\92Ç\8bL\82µ\82Ä\82­\82¾\82³\82¢\81B<br>
-                               \8d¡\8cã\82Ì\8b@\94\\92Ç\89Á\82É\94º\82¢\92\98\8dì\8c \8fî\95ñ\82ª\91\9d\82¦\82é\8c©\8d\9e\82Ý\82Ì\82½\82ß\81A\83e\83L\83X\83g\82Ì\94Í\88Í\82ð\91å\82«\82ß\82É\90Ý\92è\82µ\82Ä\82 \82è\82Ü\82·\81B
+                               <li>追加の依存ライブラリの著作権情報は、ダイアログabout_dlgの「FFFTPはfreewareです」の上のテキストに追記してください。<br>
+                               今後の機能追加に伴い著作権情報が増える見込みのため、テキストの範囲を大きめに設定してあります。
                        </ol>
-                       <li>\83\\83\8a\83\85\81[\83V\83\87\83\93\8d\\90¬\82©\82ç\81uDebug\81v\82Ü\82½\82Í\81uRelease\81v\82ð\91I\91ð\82·\82é\81B
-                       <li>\83\81\83j\83\85\81[\82©\82ç\81u\83\\83\8a\83\85\81[\83V\83\87\83\93\82Ì\83r\83\8b\83h\81v\82ð\91I\91ð\82·\82é\81B
-                       <li>\96â\91è\82ª\96³\82¯\82ê\82Î<span class="filename">"Debug\FFFTP.exe"</span>\82Ü\82½\82Í<span class="filename">"Release\FFFTP.exe"</span>\82ª\90\90¬\82³\82ê\82é\81B
+                       <li>ソリューション構成から「Debug」または「Release」を選択する。
+                       <li>メニューから「ソリューションのビルド」を選択する。
+                       <li>問題が無ければ<span class="filename">"Debug\FFFTP.exe"</span>または<span class="filename">"Release\FFFTP.exe"</span>が生成される。
                </ol>
        </ol>
 </ol>
-\8e¿\96â\82â\83T\83|\81[\83g\82Í\82±\82¿\82ç\82Ü\82Å\81B<br>
+質問やサポートはこちらまで。<br>
 <a href="http://sourceforge.jp/projects/ffftp/">http://sourceforge.jp/projects/ffftp/</a>
 
 </body>
index 64edd27..7f66156 100644 (file)
--- a/jreusr.h
+++ b/jreusr.h
@@ -1,5 +1,5 @@
-// begin of jreusr.h\r
-// \83\89\83C\83u\83\89\83\8a\82Ì\8eg\97p\8eÒ\97p\83w\83b\83_\83t\83@\83C\83\8b\r
+// begin of jreusr.h\r
+// ライブラリの使用者用ヘッダファイル\r
 \r
 #ifndef                JREUSR\r
 #define                JREUSR\r
@@ -7,14 +7,14 @@
 // ---------------------------------------------------\r
 // Prevent multiple includes.\r
 \r
-// _os_os2\82Í\82±\82ê(jreusr.h)\82ð\83C\83\93\83N\83\8b\81[\83h\82·\82é\83\86\81[\83U\81[\82ª\92è\8b`\82·\82é\r
+// _os_os2はこれ(jreusr.h)をインクルードするユーザーが定義する\r
 #if defined(_OS_OS2)\r
 // in case of os/2\r
        // __OS2_H__ is for bc 2.0 e\r
        // __OS2_H__ is for bc 1.5 e\r
        #if !defined(__IBMC__) || !defined(__OS2_H__)\r
-               // \91¼\82Ì\83N\83\89\83X\82Åtype.h\82ð\83C\83\93\83N\83\8b\81[\83h\82³\82¹\82È\82¢\82æ\82¤\82É\90æ\82Éinclude\82·\82é.\r
-               // INCL_???\82È\82Ç\95K\97v\82È\92è\90\94\82Í\90æ\82É\92è\8b`\82µ\82Ä\82¨\82­.\r
+               // 他のクラスでtype.hをインクルードさせないように先にincludeする.\r
+               // INCL_???など必要な定数は先に定義しておく.\r
                #include <os2.h>\r
        #endif  // defined(__IBMC__) || defined(__OS2_H__)\r
 \r
@@ -37,7 +37,7 @@
                #ifndef STRICT\r
                        #define STRICT\r
                #endif  // STRICT\r
-               // \91¼\82Ì\83N\83\89\83X\82Åtype.h\82ð\83C\83\93\83N\83\8b\81[\83h\82³\82¹\82È\82¢\82æ\82¤\82É\90æ\82Éinclude\82·\82é.\r
+               // 他のクラスでtype.hをインクルードさせないように先にincludeする.\r
                #include <windows.h>\r
        #endif  // !defined(__WINDOWS_H) && !defined(_INC_WINDOWS)\r
 \r
@@ -56,7 +56,7 @@
 // ---------------------------------------------------\r
 #if defined(JRE_BUILDTYPE_OS2PM)\r
        // in case of JRE_BUILDTYPE_OS2PM\r
-       // \88È\89º\81Cjre/os2\83\8d\81[\83J\83\8b\82Ì\92è\8b`\r
+       // 以下,jre/os2ローカルの定義\r
        #if !defined(EXTAPI)\r
                #define EXTAPI _export EXPENTRY\r
        #endif  // !defined(EXTAPI)\r
                typedef void* MEMID;\r
        #endif  // !defined(MEMID)\r
 \r
-       // os2\82É\82ÍPSZ\82ª\82 \82é.\r
+       // os2にはPSZがある.\r
        typedef PSZ PSTR, LPSTR;\r
        typedef int (*FARPROC)(void);   // farproc\r
-       //os2\82É\82ÍUSHORT\81CULONG\82ª\82 \82é.\r
+       //os2にはUSHORT,ULONGがある.\r
        typedef USHORT WORD;\r
        typedef ULONG DWORD;\r
-       // OS/2\82É\82ÍSHANDLE\82ÆLHANDLE\82ª\82 \82é.\r
-       typedef LHANDLE HANDLE; // \94Ä\97p\83n\83\93\83h\83\8b\82ð\8dì\82Á\82Ä\82¨\82¢\82Ä\81c\81c\r
+       // OS/2にはSHANDLEとLHANDLEがある.\r
+       typedef LHANDLE HANDLE; // 汎用ハンドルを作っておいて……\r
        typedef HANDLE GLOBALHANDLE;\r
        typedef HANDLE*PHANDLE, *LPHANDLE;\r
 \r
 #else\r
        // in case of JRE_BUILDTYPE_WIN32 or JRE_BUILDTYPE_WIN16 (= JRE_BUILDTYPE_WINDOWS)\r
-       // \88È\89º\81Cjre/win\83\8d\81[\83J\83\8b\82Ì\92è\8b`\r
+       // 以下,jre/winローカルの定義\r
        #if !defined(EXTAPI)\r
                #if defined(_MSC_VER)\r
-                       #define EXTAPI WINAPI   // VC2\82Å\82Í_export\82ª\92Ê\82ç\82È\82¢\82Ì\82Å\92\8d\88Ó.\r
+                       #define EXTAPI WINAPI   // VC2では_exportが通らないので注意.\r
                #endif\r
                #if defined(__BORLANDC__)\r
                        #if defined(_TEST_EXE)\r
@@ -93,7 +93,7 @@
 \r
        #if !defined(MEMID)\r
                #if defined(JRE_BUILDTYPE_WIN32)\r
-                       typedef void*MEMID;     // \96¾\8e¦\93I\82É\83|\83C\83\93\83^\82É\82µ\82Ü\82µ\82½.\r
+                       typedef void*MEMID;     // 明示的にポインタにしました.\r
                #else\r
                        typedef HGLOBAL MEMID;\r
                #endif  // __WIN32__\r
 \r
 #endif\r
 \r
-// --------------------------------------------------- \83O\83\8d\81[\83o\83\8b\95Ï\90\94\r
+// --------------------------------------------------- グローバル変数\r
 \r
 \r
 \r
-// ------------------------------------------------------------- \92è\90\94\r
-// _JRE_ERR_CODE\82Æ_JRE_WARN_CODE\82Ì\83V\83\93\83{\83\8b\82Í\8eR\93c\82ª\83f\83o\83b\83O\8e\9e\82É\8eg\97p\82µ\82Ä\82¢\82Ü\82·.\r
+// ------------------------------------------------------------- 定数\r
+// _JRE_ERR_CODEと_JRE_WARN_CODEのシンボルは山田がデバッグ時に使用しています.\r
 \r
 #define _JRE_ERR_CODE\r
-// \83G\83\89\81[\83R\81[\83h.nError\82ª1\81`63\82Ü\82Å. int\8c^\r
-#define                CantAllocate    ( 1)    //      \83\81\83\82\83\8a\82Ì\8am\95Û\82ª\82Å\82«\82È\82¢.\90â\91Î\93I\82È\83\81\83\82\83\8a\95s\91«.\r
-#define                MemoryTooFew1   ( 2)    //      \83\81\83\82\83\8a\82ª\91«\82è\82È\82¢1.(\8eÀ\8ds\8e\9e\82É\8c\88\82Ü\82é\82à\82Ì.\83\81\83\82\83\8a\83T\83C\83Y\82Ì\97\\91ª\82É\8e¸\94s\82µ\82½)\r
-#define                MemoryTooFew2   ( 3)    //  \83\81\83\82\83\8a\82ª\91«\82è\82È\82¢2.(DLL\8dì\90¬\8e\9e\82É\8c\88\82Ü\82é\82à\82Ì)\r
-#define                ReTooLong               (10)    //      \90³\8bK\95\\8c»\82ª\92·\82·\82¬\82é.\r
-#define                TooComplex              (13)    //      \82à\82Á\82Æ\8aÈ\92P\82È\95\\8c»\82É\82µ\82Ä\89º\82³\82¢.\82±\82ÌDLL\82Ì\8eã\82¢\83p\83^\81[\83\93\82Å,\8c©\82Â\82¯\82ç\82ê\82È\82¢.\82½\82¾\82µ\96Å\91½\82È\8e\96\82Å\82Í\94­\90\82µ\82È\82¢.\r
-#define                MismatchBracket (20)    //      \8a\87\8cÊ\82Ì\91Î\89\9e\82ª\90³\82µ\82­\82È\82¢.\r
-#define                InvalidChClass  (21)    //      \83L\83\83\83\89\83N\83^\83N\83\89\83X\82Ì\93à\97e\82ª\89ð\8eß\82Å\82«\82È\82¢.\96w\82Ç\82Ì\8fê\8d\87\94Í\88Í\8ew\92è\82ª\90³\82µ\82­\82È\82¢.\r
-#define                EscErr                  (24)    //      \83G\83X\83P\81[\83v\83V\81[\83N\83F\83\93\83X\82ª\89ð\8eß\82Å\82«\82È\82¢.\r
-#define                Unknown                 (31)    //  \82È\82ñ\82¾\82©\97Ç\82­\82í\82©\82ç\82È\82¢\83G\83\89\81[.\95¡\8d\87\93I\82È\97v\88ö\82Å\94­\90\82·\82é\83G\83\89\81[.\96w\82Ç\82ª\83\81\83\82\83\8a\83T\83C\83Y\82Ì\97\\91ª\82É\8e¸\94s.\r
-#define                NoReString              (32)    //  \8c\9f\8dõ\83p\83^\81[\83\93\82ð\8ew\92è\82µ\82Ä\89º\82³\82¢.\90³\8bK\95\\8c»\92·\82ª0\83o\83C\83g.\r
-#define                IncorrectUsing  (33)    //  \83p\83\89\83\81\81[\83^\82ª\82¨\82©\82µ\82¢.DLL\82Ì\95s\90³\82È\8eg\97p\96@.\r
-#define                ReNotExist              (34)    //      \8c\9f\8dõ\82·\82é\91O\82É\83R\83\93\83p\83C\83\8b\82µ\82Ä\89º\82³\82¢.\r
-#define                InternalErr             (35)    //  DLL\82Ì\83o\83O\82ð\8c\9f\8fo\82µ\82½.\82±\82ê\82ª\94­\90\82µ\82½\82ç\8dì\8eÒ\82É\98A\97\8d\82µ\82Ä\97~\82µ\82¢.\r
-#define                UsrAbort                (36)    //  \83\86\81[\83U\81[(\83A\83v\83\8a\83P\81[\83V\83\87\83\93)\82É\82æ\82é\92\86\92f.\r
-#define                OldVersion              (37)    //      \8cÃ\82¢(\89ð\8eß\82Å\82«\82È\82¢)\83o\81[\83W\83\87\83\93\82Ì\8cÄ\82Ñ\8fo\82µ\8eè\8f\87\82ð\8eg\97p\82µ\82½.\r
-// CantAllocate, TooComplex, MemoryTooFew2, ReNotExist, IncorrectUsing, UsrAbort\82Í\8c\9f\8dõ\8e\9e\82É\82à\94­\90\82·\82é\82à\82Ì\r
+// エラーコード.nErrorが1~63まで. int型\r
+#define                CantAllocate    ( 1)    //      メモリの確保ができない.絶対的なメモリ不足.\r
+#define                MemoryTooFew1   ( 2)    //      メモリが足りない1.(実行時に決まるもの.メモリサイズの予測に失敗した)\r
+#define                MemoryTooFew2   ( 3)    //  メモリが足りない2.(DLL作成時に決まるもの)\r
+#define                ReTooLong               (10)    //      正規表現が長すぎる.\r
+#define                TooComplex              (13)    //      もっと簡単な表現にして下さい.このDLLの弱いパターンで,見つけられない.ただし滅多な事では発生しない.\r
+#define                MismatchBracket (20)    //      括弧の対応が正しくない.\r
+#define                InvalidChClass  (21)    //      キャラクタクラスの内容が解釈できない.殆どの場合範囲指定が正しくない.\r
+#define                EscErr                  (24)    //      エスケープシークェンスが解釈できない.\r
+#define                Unknown                 (31)    //  なんだか良くわからないエラー.複合的な要因で発生するエラー.殆どがメモリサイズの予測に失敗.\r
+#define                NoReString              (32)    //  検索パターンを指定して下さい.正規表現長が0バイト.\r
+#define                IncorrectUsing  (33)    //  パラメータがおかしい.DLLの不正な使用法.\r
+#define                ReNotExist              (34)    //      検索する前にコンパイルして下さい.\r
+#define                InternalErr             (35)    //  DLLのバグを検出した.これが発生したら作者に連絡して欲しい.\r
+#define                UsrAbort                (36)    //  ユーザー(アプリケーション)による中断.\r
+#define                OldVersion              (37)    //      古い(解釈できない)バージョンの呼び出し手順を使用した.\r
+// CantAllocate, TooComplex, MemoryTooFew2, ReNotExist, IncorrectUsing, UsrAbortは検索時にも発生するもの\r
 \r
 #define _JRE_WARN_CODE\r
-// \8cx\8d\90\83R\81[\83h. \83\8c\83|\81[\83g\83R\81[\83h. jre2\8d\\91¢\91Ì\82ÌnWarning\83\81\83\93\83o.\r
-// \82±\82ê\82Í\82»\82ê\82¼\82ê\82Ì\83r\83b\83g\82É\83}\83b\83s\83\93\83O\82·\82é\89Â\94\\90«\82ª\8d\82\82¢\82Ì\82Å\81C\r
+// 警告コード. レポートコード. jre2構造体のnWarningメンバ.\r
+// これはそれぞれのビットにマッピングする可能性が高いので,\r
 // if (CwInlinePattern | jre2.nWarning){\r
 // }\r
-// \82Å\95]\89¿\82µ\82Ä\82­\82¾\82³\82¢.\r
-#define                CwInlinePattern (2)     // \8ds\93à\82Ì\8f\88\97\9d\82É\82Â\82«\81C\8dÄ\8cÄ\82Ñ\8fo\82µ\82Ì\95K\97v\82Í\82È\82¢.\r
+// で評価してください.\r
+#define                CwInlinePattern (2)     // 行内の処理につき,再呼び出しの必要はない.\r
 \r
 #define JGC_SHORT (1)\r
 #define JGC_LONG (2)\r
 \r
-// jre.dll\82Å\8eg\97p\82·\82é\83\81\83b\83Z\81[\83W\82Ì\8dÅ\91å\92·(\95Û\8fØ).\82±\82Ì\83T\83C\83Y\82Ì\83o\83b\83t\83@\82É\8eû\82Ü\82ç\82È\82¢\95\8e\9a\97ñ\82Í\93n\82µ\82Ü\82¹\82ñ(null\82Ü\82Å\8aÜ\82ß\82Ä\82±\82Ì\83T\83C\83Y).\r
+// jre.dllで使用するメッセージの最大長(保証).このサイズのバッファに収まらない文字列は渡しません(nullまで含めてこのサイズ).\r
 #define JRE_MAXLEN (128)\r
 \r
-// GetJreMessage\82Ì\8c¾\8cê\94Ô\8d\86.\r
+// GetJreMessageの言語番号.\r
 #define GJM_JPN (0)\r
 #define GJM_ENG (1)\r
 \r
-// ----------------------------------------------------------- \8d\\91¢\91Ì\r
-// JRE\8d\\91¢\91Ì. \83o\81[\83W\83\87\83\93\82É\82©\82©\82í\82ç\82¸jre\8d\\91¢\91Ì\82Ì\83A\83\89\83C\83\93\83\81\83\93\83g\82Í8bit(1byte)\82Å\82·\81B\r
+// ----------------------------------------------------------- 構造体\r
+// JRE構造体. バージョンにかかわらずjre構造体のアラインメントは8bit(1byte)です。\r
 #pragma pack(1)\r
-// JRE\8d\\91¢\91Ì\82Í\8bÉ\97Í\8eg\97p\82µ\82È\82¢\82Å\82­\82¾\82³\82¢.\8d¡\8cã\82ÌÊÞ°¼Þ®Ý\82Å\94p\8e~\82µ\82Ü\82·(\83o\81[\83W\83\87\83\932.xx\82Ü\82Å\82Å»Îß°Ä\82ð\8e~\82ß\82Ü\82·).\r
-// \82±\82ê\82É\91ã\82í\82é\8d\\91¢\91Ì\82ÍJRE2\8d\\91¢\91Ì\82Å\82·.\r
+// JRE構造体は極力使用しないでください.今後のバージョンで廃止します(バージョン2.xxまででサポートを止めます).\r
+// これに代わる構造体はJRE2構造体です.\r
 typedef struct tagJRE{\r
-       BOOL bConv;                                             // \82±\82Ì\8d\\91¢\91Ì\82Ì\8eg\97p\92\86\82ð\8e¦\82·\83t\83\89\83O.\r
-       int nStart;                                             // \8c\9f\8dõ\8aJ\8en\88Ê\92u.\83o\83C\83g\90\94.\90æ\93ª\82Í0.\r
-       int nWarning;                                   // \83E\83H\81[\83j\83\93\83O\83R\81[\83h.\r
-       int nError;                                             // \83G\83\89\81[\83R\81[\83h.\r
-       int nLength;                                    // \83}\83b\83`\92·.\83o\83C\83g\90\94.\r
-       int nPosition;                                  // \83}\83b\83`\88Ê\92u.\90æ\93ª\82Í0.(\82¨\92p\82¸\82©\82µ\82¢)\r
-       WORD wTranslate;                                // \95Ï\8a·\83e\81[\83u\83\8b\94Ô\8d\86.\r
-       LPSTR lpszTable;                                // \95Ï\8a·\83e\81[\83u\83\8b.\r
-       FARPROC lpfnUsrFunc;                    // \83R\81[\83\8b\83o\83b\83N\8aÖ\90\94\82Ö\82ÌFAR\83|\83C\83\93\83^.\r
-       int nCompData1;                                 // \83R\83\93\83p\83C\83\8b\83f\81[\83^1.\r
-       MEMID hCompData2;               // \83R\83\93\83p\83C\83\8b\83f\81[\83^2.\83n\83\93\83h\83\8b.\r
-       MEMID hCompData3;               // \83R\83\93\83p\83C\83\8b\83f\81[\83^3.\83n\83\93\83h\83\8b.\r
-       MEMID hCompData4;               // \83R\83\93\83p\83C\83\8b\83f\81[\83^4.\83n\83\93\83h\83\8b.\r
+       BOOL bConv;                                             // この構造体の使用中を示すフラグ.\r
+       int nStart;                                             // 検索開始位置.バイト数.先頭は0.\r
+       int nWarning;                                   // ウォーニングコード.\r
+       int nError;                                             // エラーコード.\r
+       int nLength;                                    // マッチ長.バイト数.\r
+       int nPosition;                                  // マッチ位置.先頭は0.(お恥ずかしい)\r
+       WORD wTranslate;                                // 変換テーブル番号.\r
+       LPSTR lpszTable;                                // 変換テーブル.\r
+       FARPROC lpfnUsrFunc;                    // コールバック関数へのFARポインタ.\r
+       int nCompData1;                                 // コンパイルデータ1.\r
+       MEMID hCompData2;               // コンパイルデータ2.ハンドル.\r
+       MEMID hCompData3;               // コンパイルデータ3.ハンドル.\r
+       MEMID hCompData4;               // コンパイルデータ4.ハンドル.\r
 } JRE, *PJRE, NEAR*NPJRE, FAR*LPJRE;\r
 #pragma pack()\r
 \r
 \r
 #pragma pack(1)\r
-// \83o\81[\83W\83\87\83\931.06\88È\8d~\82Í\82±\82Ì\8d\\91¢\91Ì\82ð\8eg\97p\82µ\82Ä\82­\82¾\82³\82¢.\r
-// \82½\82¾\82µ,\83o\81[\83W\83\87\83\931.xx\82Å\82Í\8ed\97l\82ª\97¬\93®\93I\82Å\82·(\82Ç\82È\82¢\82¹\81[\82¿\82ã\82¤\82Ë\82ñ).\r
+// バージョン1.06以降はこの構造体を使用してください.\r
+// ただし,バージョン1.xxでは仕様が流動的です(どないせーちゅうねん).\r
 typedef struct tagJRE2{\r
-       DWORD dwSize;                                   // \82±\82Ì\8d\\91¢\91Ì\82Ì\83T\83C\83Y.\r
-       BOOL bConv;                                             // \82±\82Ì\8d\\91¢\91Ì\82Ì\8eg\97p\92\86\82ð\8e¦\82·\83t\83\89\83O.\r
-       UINT nStart;                                    // \8c\9f\8dõ\8aJ\8en\88Ê\92u.\83o\83C\83g\90\94.\90æ\93ª\82Í0.\r
-       UINT nWarning;                                  // \83E\83H\81[\83j\83\93\83O\83R\81[\83h. (v1.11\82©\82çUINT\82É\95Ï\8dX)\r
-       int nError;                                             // \83G\83\89\81[\83R\81[\83h.\r
-       UINT nLength;                                   // \83}\83b\83`\92·.\83o\83C\83g\90\94.\r
-       UINT nPosition;                                 // \83}\83b\83`\88Ê\92u.\90æ\93ª\82Í0.(\82¨\92p\82¸\82©\82µ\82¢)\r
-       WORD wTranslate;                                // \95Ï\8a·\83e\81[\83u\83\8b\94Ô\8d\86.\r
-       LPSTR lpszTable;                                // \95Ï\8a·\83e\81[\83u\83\8b.\r
-       FARPROC lpfnUsrFunc;                    // \83R\81[\83\8b\83o\83b\83N\8aÖ\90\94\82Ö\82ÌFAR\83|\83C\83\93\83^(\8eg\82í\82È\82¢\82æ\82¤\82É).\r
-       UINT nCompData1;                                        // \83R\83\93\83p\83C\83\8b\83f\81[\83^1.\r
-       MEMID hCompData2;               // \83R\83\93\83p\83C\83\8b\83f\81[\83^2.\83n\83\93\83h\83\8b.\r
-       MEMID hCompData3;               // \83R\83\93\83p\83C\83\8b\83f\81[\83^3.\83n\83\93\83h\83\8b.\r
-       MEMID hCompData4;               // \83R\83\93\83p\83C\83\8b\83f\81[\83^4.\83n\83\93\83h\83\8b.\r
+       DWORD dwSize;                                   // この構造体のサイズ.\r
+       BOOL bConv;                                             // この構造体の使用中を示すフラグ.\r
+       UINT nStart;                                    // 検索開始位置.バイト数.先頭は0.\r
+       UINT nWarning;                                  // ウォーニングコード. (v1.11からUINTに変更)\r
+       int nError;                                             // エラーコード.\r
+       UINT nLength;                                   // マッチ長.バイト数.\r
+       UINT nPosition;                                 // マッチ位置.先頭は0.(お恥ずかしい)\r
+       WORD wTranslate;                                // 変換テーブル番号.\r
+       LPSTR lpszTable;                                // 変換テーブル.\r
+       FARPROC lpfnUsrFunc;                    // コールバック関数へのFARポインタ(使わないように).\r
+       UINT nCompData1;                                        // コンパイルデータ1.\r
+       MEMID hCompData2;               // コンパイルデータ2.ハンドル.\r
+       MEMID hCompData3;               // コンパイルデータ3.ハンドル.\r
+       MEMID hCompData4;               // コンパイルデータ4.ハンドル.\r
 } JRE2, *PJRE2, NEAR*NPJRE2, FAR*LPJRE2;\r
 #pragma pack()\r
 \r
-// ------------------------------------------------ ÌßÛÄÀ²Ìß\82¨\82æ\82ÑϸÛ\r
+// ------------------------------------------------ プロトタイプおよびマクロ\r
 #ifdef __cplusplus     // caution! it's NOT cpulspuls!!!\r
        extern "C"{\r
 #endif // __cplusplus\r
 \r
-// \83o\81[\83W\83\87\83\93\82É\8aÖ\8cW\82È\82¢API\r
+// バージョンに関係ないAPI\r
 BOOL EXTAPI IsMatch(LPSTR lpszStr, LPSTR lpszRe);\r
 int EXTAPI GlobalReplace(LPSTR lpszRe, LPSTR lpszObj, LPSTR lpszStr, LPHANDLE lphGMemTo);\r
 WORD EXTAPI JreGetVersion(void);\r
 #if defined(JRE_BUILDTYPE_WIN16)\r
-       MEMID EXTAPI DecodeEscSeqAlloc2(LPSTR lpszRe);  // 16bit Windows\82Ì\88â\95¨.\r
+       MEMID EXTAPI DecodeEscSeqAlloc2(LPSTR lpszRe);  // 16bit Windowsの遺物.\r
 #endif // defined(JRE_BUILDTYPE_WIN16)\r
 UINT EXTAPI DecodeEscSeq(LPSTR lpszRe, LPSTR lpszBuff, UINT uiSize);   // new!\r
 int EXTAPI GetJreMessage(int nMessageType, int nLanguage, LPSTR lpszBuff, int cbBuff);\r
-// \83o\81[\83W\83\87\83\931API\r
+// バージョン1API\r
 BOOL EXTAPI JreOpen(LPJRE lpjreJre);\r
 BOOL EXTAPI JreCompile(LPJRE lpjreJre, LPSTR lpszRe);\r
 BOOL EXTAPI JreGetMatchInfo(LPJRE lpjreJre, LPSTR lpszStr);\r
 BOOL EXTAPI JreClose(LPJRE lpjreJre);\r
-// \83o\81[\83W\83\87\83\932API\r
+// バージョン2API\r
 BOOL EXTAPI Jre2Open(LPJRE2 lpjreJre);\r
 BOOL EXTAPI Jre2Compile(LPJRE2 lpjreJre, LPSTR lpszRe);\r
 BOOL EXTAPI Jre2GetMatchInfo(LPJRE2 lpjreJre, LPSTR lpszStr);\r
@@ -219,8 +219,8 @@ BOOL EXTAPI Jre2Close(LPJRE2 lpjreJre);
        }\r
 #endif // __cplusplus\r
 \r
-// ----------------------------------------------------------- \8c^\92è\8b`\r
-// GetProcAddress\82ð\8eg\97p\82·\82é\8dÛ\82Ì\83|\83C\83\93\83^\95Ï\90\94\82ð\90é\8c¾\82µ\82â\82·\82­\82µ\82Ä\82¨\82­.\r
+// ----------------------------------------------------------- 型定義\r
+// GetProcAddressを使用する際のポインタ変数を宣言しやすくしておく.\r
 typedef BOOL (EXTAPI*LPISMATCH) (LPSTR, LPSTR);\r
 typedef int (EXTAPI*LPGLOBALREPLACE) (LPSTR, LPSTR, LPSTR, LPHANDLE);\r
 typedef WORD (EXTAPI*LPJREGETVERSION) (VOID);\r
diff --git a/local.c b/local.c
index 29d4076..3988c6d 100644 (file)
--- a/local.c
+++ b/local.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                              \83\8d\81[\83J\83\8b\91¤\82Ì\83t\83@\83C\83\8b\83A\83N\83Z\83X\r
+*                                              ローカル側のファイルアクセス\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 \r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83f\83B\83\8c\83N\83g\83\8a\95Ï\8dX -------------------------------------------\r
+/*----- ローカル側のディレクトリ変更 -------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\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 DoLocalCWD(char *Path)\r
 {\r
        int Sts;\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        SetTaskMsg(">>CD %s", Path);\r
        if(SetCurrentDirectory(Path) != TRUE)\r
        {\r
                SetTaskMsg(MSGJPN145);\r
-               Sts = FAIL;\r
+               Sts = FFFTP_FAIL;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83f\83B\83\8c\83N\83g\83\8a\8dì\90¬ -------------------------------------------\r
+/*----- ローカル側のディレクトリ作成 -------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DoLocalMKD(char *Path)\r
@@ -83,13 +83,13 @@ void DoLocalMKD(char *Path)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\8eæ\93¾ -----------------------------------\r
+/*----- ローカル側のカレントディレクトリ取得 -----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Buf : \83p\83X\96¼\82ð\95Ô\82·\83o\83b\83t\83@\r
+*              char *Buf : パス名を返すバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DoLocalPWD(char *Buf)\r
@@ -100,13 +100,13 @@ void DoLocalPWD(char *Buf)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83f\83B\83\8c\83N\83g\83\8a\8dí\8f\9c ------------------------------------------\r
+/*----- ローカル側のディレクトリ削除 ------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DoLocalRMD(char *Path)\r
@@ -125,13 +125,13 @@ void DoLocalRMD(char *Path)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83t\83@\83C\83\8b\8dí\8f\9c -----------------------------------------------\r
+/*----- ローカル側のファイル削除 -----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DoLocalDELE(char *Path)\r
@@ -150,14 +150,14 @@ void DoLocalDELE(char *Path)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83t\83@\83C\83\8b\96¼\95Ï\8dX ---------------------------------------------\r
+/*----- ローカル側のファイル名変更 ---------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Src : \8c³\83t\83@\83C\83\8b\96¼\r
-*              char *Dst : \95Ï\8dX\8cã\82Ì\83t\83@\83C\83\8b\96¼\r
+*              char *Src : 元ファイル名\r
+*              char *Dst : 変更後のファイル名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DoLocalRENAME(char *Src, char *Dst)\r
@@ -169,13 +169,13 @@ void DoLocalRENAME(char *Src, char *Dst)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\82Ì\83v\83\8d\83p\83e\83B\82ð\95\\8e¦\82·\82é ----------------------------------------\r
+/*----- ファイルのプロパティを表示する ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              char *Fname : ファイル名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispFileProperty(char *Fname)\r
@@ -197,15 +197,15 @@ void DispFileProperty(char *Fname)
 }\r
 \r
 \r
-/*----- \91®\90«\82ð\83`\83F\83b\83N\82·\82é FindFirstFile --------------------------------------\r
+/*----- 属性をチェックする FindFirstFile --------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
-*              WIN32_FIND_DATA *FindData : \8c\9f\8dõ\83f\81[\83^\r
-*              int IgnHide : \89B\82µ\83t\83@\83C\83\8b\82ð\96³\8e\8b\82·\82é\82©\82Ç\82¤\82©(YES/NO)\r
+*              char *Fname : ファイル名\r
+*              WIN32_FIND_DATA *FindData : 検索データ\r
+*              int IgnHide : 隠しファイルを無視するかどうか(YES/NO)\r
 *\r
 *      Return Value\r
-*              HANDLE \83n\83\93\83h\83\8b\r
+*              HANDLE ハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HANDLE FindFirstFileAttr(char *Fname, WIN32_FIND_DATA *FindData, int IgnHide)\r
@@ -231,15 +231,15 @@ HANDLE FindFirstFileAttr(char *Fname, WIN32_FIND_DATA *FindData, int IgnHide)
 }\r
 \r
 \r
-/*----- \91®\90«\82ð\83`\83F\83b\83N\82·\82é FindNextFile ---------------------------------------\r
+/*----- 属性をチェックする FindNextFile ---------------------------------------\r
 *\r
 *      Parameter\r
-*              HANDLE hFind : \83n\83\93\83h\83\8b\r
-*              WIN32_FIND_DATA *FindData : \8c\9f\8dõ\83f\81[\83^\r
-*              int IgnHide : \89B\82µ\83t\83@\83C\83\8b\82ð\96³\8e\8b\82·\82é\82©\82Ç\82¤\82©(YES/NO)\r
+*              HANDLE hFind : ハンドル\r
+*              WIN32_FIND_DATA *FindData : 検索データ\r
+*              int IgnHide : 隠しファイルを無視するかどうか(YES/NO)\r
 *\r
 *      Return Value\r
-*              HANDLE \83n\83\93\83h\83\8b\r
+*              HANDLE ハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 BOOL FindNextFileAttr(HANDLE hFind, WIN32_FIND_DATA *FindData, int IgnHide)\r
index 5644f55..a833a99 100644 (file)
--- a/lvtips.c
+++ b/lvtips.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                      \83\8a\83X\83g\83r\83\85\81[\83e\83B\83b\83v\83X\r
+*                                                      リストビューティップス\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
@@ -27,7 +27,7 @@
 / THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
 /============================================================================*/\r
 \r
-/* \82±\82Ì\83\\81[\83X\82Í MFC Programmer's SourceBook (http://www.codeguru.com/)\82ð\8eQ\8dl\82É\82µ\82Ü\82µ\82½ */\r
+/* このソースは MFC Programmer's SourceBook (http://www.codeguru.com/)を参考にしました */\r
 \r
 #define  STRICT\r
 #include <windows.h>\r
 #include "resource.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static void TipsShow(HWND hWnd, RECT rectTitle, LPCTSTR lpszTitleText, int xoffset, int xoffset2, int InRect);\r
 static int CellRectFromPoint(HWND hWnd, POINT  point, RECT *cellrect, int *col);\r
 static LRESULT CALLBACK TitleTipWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
-static HWND hWndTips;  /* tips\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b */\r
+static HWND hWndTips;  /* tipsのウインドウハンドル */\r
 \r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\83e\83B\83b\83v\83X\82Ì\83E\83C\83\93\83h\83E\82ð\8dì\90¬ ------------------------------\r
+/*----- リストビューティップスのウインドウを作成 ------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \90e\83E\83C\83\93\83h\83E\82Ì\83n\83\93\83h\83\8b\r
-*              HINSTANCE hInst : \83C\83\93\83X\83^\83\93\83X\83n\83\93\83h\83\8b\r
+*              HWND hWnd : 親ウインドウのハンドル\r
+*              HINSTANCE hInst : インスタンスハンドル\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 InitListViewTips(HWND hWnd, HINSTANCE hInst)\r
@@ -69,7 +69,7 @@ int InitListViewTips(HWND hWnd, HINSTANCE hInst)
        WNDCLASSEX wClass;\r
        int Ret;\r
 \r
-       Ret = FAIL;\r
+       Ret = FFFTP_FAIL;\r
 \r
        wClass.cbSize = sizeof(WNDCLASSEX);\r
        wClass.style         = 0;\r
@@ -92,19 +92,19 @@ int InitListViewTips(HWND hWnd, HINSTANCE hInst)
                                hWnd, NULL, hInst, NULL);\r
 \r
        if(hWndTips != NULL)\r
-               Ret = SUCCESS;\r
+               Ret = FFFTP_SUCCESS;\r
 \r
        return(Ret);\r
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\83e\83B\83b\83v\83X\82Ì\83E\83C\83\93\83h\83E\82ð\8dí\8f\9c ------------------------------\r
+/*----- リストビューティップスのウインドウを削除 ------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DeleteListViewTips(void)\r
@@ -115,13 +115,13 @@ void DeleteListViewTips(void)
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\83e\83B\83b\83v\83X\82Ì\83E\83C\83\93\83h\83E\82ð\8fÁ\8b\8e ------------------------------\r
+/*----- リストビューティップスのウインドウを消去 ------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void EraseListViewTips(void)\r
@@ -132,13 +132,13 @@ void EraseListViewTips(void)
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\83e\83B\83b\83v\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· ----------------------\r
+/*----- リストビューティップスのウインドウハンドルを返す ----------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetListViewTipsHwnd(void)\r
@@ -147,14 +147,14 @@ HWND GetListViewTipsHwnd(void)
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\83e\83B\83b\83v\83X\82Ì\95\\8e¦\83`\83F\83b\83N ----------------------------------\r
+/*----- リストビューティップスの表示チェック ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : ListView\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              LPARAM lParam : WM_MOUSEMOVE\82ÌLPARAM\92l\r
+*              HWND hWnd : ListViewのウインドウハンドル\r
+*              LPARAM lParam : WM_MOUSEMOVEのLPARAM値\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void CheckTipsDisplay(HWND hWnd, LPARAM lParam)\r
@@ -205,18 +205,18 @@ void CheckTipsDisplay(HWND hWnd, LPARAM lParam)
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\83e\83B\83b\83v\83X\82ð\95\\8e¦ ------------------------------------------\r
+/*----- リストビューティップスを表示 ------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : ListView\82Ì\83E\83C\83\93\83h\83E\82Ì\83n\83\93\83h\83\8b\r
-*              RECT rectTitle : ListView\83R\83\93\83g\83\8b\81[\83\8b\82Ì\83A\83C\83e\83\80\82Ì\8bé\8c`\r
-*              LPCTSTR lpszTitleText : \95\8e\9a\97ñ\r
-*              int xoffset : \83I\83t\83Z\83b\83g\r
-*              int xoffset2 : \83I\83t\83Z\83b\83g\82Q\r
-*              int InRect : \95\\8e¦\82·\82é\82©\82Ç\82¤\82©\r
+*              HWND hWnd : ListViewのウインドウのハンドル\r
+*              RECT rectTitle : ListViewコントルールのアイテムの矩形\r
+*              LPCTSTR lpszTitleText : 文字列\r
+*              int xoffset : オフセット\r
+*              int xoffset2 : オフセット2\r
+*              int InRect : 表示するかどうか\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void TipsShow(HWND hWnd, RECT rectTitle, LPCTSTR lpszTitleText, int xoffset, int xoffset2, int InRect)\r
@@ -233,7 +233,7 @@ static void TipsShow(HWND hWnd, RECT rectTitle, LPCTSTR lpszTitleText, int xoffs
                {\r
                        RectClientToScreen(hWnd, &rectTitle);\r
 \r
-                       /* ListView\83E\83C\83\93\83h\83E\82Ì\83t\83H\83\93\83g\82ð\93¾\82é */\r
+                       /* ListViewウインドウのフォントを得る */\r
                        dc = GetDC(hWnd);\r
                        pFont = (HFONT)SendMessage(hWnd, WM_GETFONT, 0, 0);\r
                        ReleaseDC(hWnd, dc);\r
@@ -272,17 +272,17 @@ static void TipsShow(HWND hWnd, RECT rectTitle, LPCTSTR lpszTitleText, int xoffs
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\83e\83B\83b\83v\83X\82ð\95\\8e¦\82·\82é\88Ê\92u\82ð\95Ô\82· ----------------------------\r
+/*----- リストビューティップスを表示する位置を返す ----------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : ListView\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              POINT point : \83J\81[\83\\83\8b\82Ì\88Ê\92u\r
-*              RECT *cellrect : \83A\83C\83e\83\80\82Ì\8bé\8c`\82ð\95Ô\82·\83\8f\81[\83N\r
-*              int *col : \8c\85\94Ô\8d\86\82ð\95Ô\82·\83\8f\81[\83N\r
+*              HWND hWnd : ListViewのウインドウハンドル\r
+*              POINT point : カーソルの位置\r
+*              RECT *cellrect : アイテムの矩形を返すワーク\r
+*              int *col : 桁番号を返すワーク\r
 *\r
 *      Return Value\r
-*              int \8ds\94Ô\8d\86\r
-*                      -1=\8aY\93\96\82È\82µ\r
+*              int 行番号\r
+*                      -1=該当なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CellRectFromPoint(HWND hWnd, POINT point, RECT *cellrect, int *col)\r
@@ -339,16 +339,16 @@ static int CellRectFromPoint(HWND hWnd, POINT point, RECT *cellrect, int *col)
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\83e\83B\83b\83v\83X\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------\r
+/*----- リストビューティップスウインドウのコールバック ------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message  : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hWnd : ウインドウハンドル\r
+*              UINT message  : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
-*              \83\81\83b\83Z\81[\83W\82É\91Î\89\9e\82·\82é\96ß\82è\92l\r
+*              メッセージに対応する戻り値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static LRESULT CALLBACK TitleTipWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)\r
diff --git a/main.c b/main.c
index 3794252..4cae7c0 100644 (file)
--- a/main.c
+++ b/main.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                                      \82e\82e\82e\82s\82o\r
+*                                                                      FFFTP\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include <htmlhelp.h>\r
 #include "helpid.h"\r
 \r
-// UTF-8\91Î\89\9e\r
+// UTF-8対応\r
 #undef __MBSWRAPPER_H__\r
 #include "mbswrapper.h"\r
 \r
 \r
-#define RESIZE_OFF             0               /* \83E\83C\83\93\83h\83E\82Ì\8bæ\90Ø\82è\88Ê\92u\95Ï\8dX\82µ\82Ä\82¢\82È\82¢ */\r
-#define RESIZE_ON              1               /* \83E\83C\83\93\83h\83E\82Ì\8bæ\90Ø\82è\88Ê\92u\95Ï\8dX\92\86 */\r
-#define RESIZE_PREPARE 2               /* \83E\83C\83\93\83h\83E\82Ì\8bæ\90Ø\82è\88Ê\92u\95Ï\8dX\82Ì\8f\80\94õ */\r
+#define RESIZE_OFF             0               /* ウインドウの区切り位置変更していない */\r
+#define RESIZE_ON              1               /* ウインドウの区切り位置変更中 */\r
+#define RESIZE_PREPARE 2               /* ウインドウの区切り位置変更の準備 */\r
 \r
-#define RESIZE_HPOS            0               /* \83\8d\81[\83J\83\8b\81|\83z\83X\83g\8aÔ\82Ì\8bæ\90Ø\82è\88Ê\92u\95Ï\8dX */\r
-#define RESIZE_VPOS            1               /* \83\8a\83X\83g\81|\83^\83X\83N\8aÔ\82Ì\8bæ\90Ø\82è\88Ê\92u\82Ì\95Ï\8dX */\r
+#define RESIZE_HPOS            0               /* ローカル-ホスト間の区切り位置変更 */\r
+#define RESIZE_VPOS            1               /* リスト-タスク間の区切り位置の変更 */\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static int InitApp(LPSTR lpszCmdLine, int cmdShow);\r
 static int MakeAllWindows(int cmdShow);\r
@@ -82,7 +82,7 @@ static void DeleteAlltempFile(void);
 static BOOL CALLBACK AboutDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
 static int EnterMasterPasswordAndSet( int Res, HWND hWnd );\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static const char FtpClassStr[] = "FFFTPWin";\r
 \r
@@ -112,9 +112,9 @@ static char HelpPath[FMAX_PATH+1];
 static char IniPath[FMAX_PATH+1];\r
 static int ForceIni = NO;\r
 \r
-TRANSPACKET MainTransPkt;              /* \83t\83@\83C\83\8b\93]\91\97\97p\83p\83P\83b\83g */\r
-                                                               /* \82±\82ê\82ð\8eg\82Á\82Ä\93]\91\97\82ð\8ds\82¤\82Æ\81A\83c\81[\83\8b\83o\81[\82Ì\93]\91\97 */\r
-                                                               /* \92\86\8e~\83{\83^\83\93\82Å\92\86\8e~\82Å\82«\82é */\r
+TRANSPACKET MainTransPkt;              /* ファイル転送用パケット */\r
+                                                               /* これを使って転送を行うと、ツールバーの転送 */\r
+                                                               /* 中止ボタンで中止できる */\r
 \r
 char TitleHostName[HOST_ADRS_LEN+1];\r
 char FilterStr[FILTER_EXT_LEN+1] = { "*" };\r
@@ -126,11 +126,11 @@ static int SuppressRefresh = 0;
 static DWORD dwCookie;\r
 \r
 \r
-/*===== \83O\83\8d\81[\83o\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== グローバルなワーク =====*/\r
 \r
 HWND hHelpWin = NULL;\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 int WinPosX = CW_USEDEFAULT;\r
 int WinPosY = 0;\r
 int WinWidth = 630;\r
@@ -156,7 +156,7 @@ int RecvMode = TRANS_DLG;
 int SendMode = TRANS_DLG;\r
 int MoveMode = MOVE_DLG;\r
 int ListType = LVS_REPORT;\r
-// LIST\82Ì\83L\83\83\83b\83V\83\85\82ð\96³\8cø\82É\82·\82é\81i\83\8a\83\82\81[\83g\82Ì\83f\83B\83\8c\83N\83g\83\8a\82Ì\95\\8e¦\82ª\8dX\90V\82³\82ê\82È\82¢\83o\83O\91Î\8dô\81j\r
+// LISTのキャッシュを無効にする(リモートのディレクトリの表示が更新されないバグ対策)\r
 //int CacheEntry = 10;\r
 int CacheEntry = -10;\r
 int CacheSave = NO;\r
@@ -212,16 +212,16 @@ int FolderAttrNum = 777;
 \r
 \r
 \r
-/*----- \83\81\83C\83\93\83\8b\81[\83`\83\93 --------------------------------------------------------\r
+/*----- メインルーチン --------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HINSTANCE hInstance : \82±\82Ì\83A\83v\83\8a\83P\81[\83V\83\87\83\93\82Ì\82±\82Ì\83C\83\93\83X\83^\83\93\83X\82Ì\83n\83\93\83h\83\8b\r
-*              HINSTANCE hPrevInstance : \82±\82Ì\83A\83v\83\8a\83P\81[\83V\83\87\83\93\82Ì\92¼\91O\82Ì\83C\83\93\83X\83^\83\93\83X\82Ì\83n\83\93\83h\83\8b\r
-*              LPSTR lpszCmdLine : \83A\83v\83\8a\83P\81[\83V\83\87\83\93\82ª\8bN\93®\82µ\82½\82Æ\82«\82Ì\83R\83}\83\93\83h\83\89\83C\83\93\82ð\82³\82·\83\8d\83\93\83O\83|\83C\83\93\83^\r
-*              int cmdShow : \8dÅ\8f\89\82É\95\\8e¦\82·\82é\83E\83C\83\93\83h\83E\82Ì\8c`\8e®\81B\r
+*              HINSTANCE hInstance : このアプリケーションのこのインスタンスのハンドル\r
+*              HINSTANCE hPrevInstance : このアプリケーションの直前のインスタンスのハンドル\r
+*              LPSTR lpszCmdLine : アプリケーションが起動したときのコマンドラインをさすロングポインタ\r
+*              int cmdShow : 最初に表示するウインドウの形式。\r
 *\r
 *      Return Value\r
-*              int \8dÅ\8cã\82Ì\83\81\83b\83Z\81[\83W\82ÌwParam\r
+*              int 最後のメッセージのwParam\r
 *----------------------------------------------------------------------------*/\r
 \r
 int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int cmdShow)\r
@@ -249,7 +249,7 @@ int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLi
        Ret = FALSE;\r
        hWndFtp = NULL;\r
        hInstFtp = hInstance;\r
-       if(InitApp(lpszCmdLine, cmdShow) == SUCCESS)\r
+       if(InitApp(lpszCmdLine, cmdShow) == FFFTP_SUCCESS)\r
        {\r
                for(;;)\r
                {\r
@@ -259,8 +259,8 @@ int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLi
 \r
                        if(!HtmlHelp(NULL, NULL, HH_PRETRANSLATEMESSAGE, (DWORD)&Msg))\r
                        { \r
-                               /* \83f\83B\83\8c\83N\83g\83\8a\96¼\82Ì\95\\8e¦\83R\83\93\83{\83{\83b\83N\83X\82ÅBS\82âRET\82ª\8cø\82­\82æ\82¤\82É */\r
-                               /* \83R\83\93\83{\83{\83b\83N\83X\93à\82Å\82Í\83A\83N\83Z\83\89\83\8c\81[\83^\82ð\96³\8cø\82É\82·\82é */\r
+                               /* ディレクトリ名の表示コンボボックスでBSやRETが効くように */\r
+                               /* コンボボックス内ではアクセラレータを無効にする */\r
                                if((Msg.hwnd == GetLocalHistEditHwnd()) ||\r
                                   (Msg.hwnd == GetRemoteHistEditHwnd()) ||\r
                                   ((hHelpWin != NULL) && (GetAncestor(Msg.hwnd, GA_ROOT) == hHelpWin)) ||\r
@@ -283,17 +283,17 @@ int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLi
 }\r
 \r
 \r
-/*----- \83A\83v\83\8a\83P\81[\83V\83\87\83\93\82Ì\8f\89\8aú\90Ý\92è --------------------------------------------\r
+/*----- アプリケーションの初期設定 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              HINSTANCE hInstance : \82±\82Ì\83A\83v\83\8a\83P\81[\83V\83\87\83\93\82Ì\82±\82Ì\83C\83\93\83X\83^\83\93\83X\82Ì\83n\83\93\83h\83\8b\r
-*              HINSTANCE hPrevInstance : \82±\82Ì\83A\83v\83\8a\83P\81[\83V\83\87\83\93\82Ì\92¼\91O\82Ì\83C\83\93\83X\83^\83\93\83X\82Ì\83n\83\93\83h\83\8b\r
-*              LPSTR lpszCmdLine : \83A\83v\83\8a\83P\81[\83V\83\87\83\93\82ª\8bN\93®\82µ\82½\82Æ\82«\82Ì\83R\83}\83\93\83h\83\89\83C\83\93\82ð\82³\82·\83\8d\83\93\83O\83|\83C\83\93\83^\r
-*              int cmdShow : \8dÅ\8f\89\82É\95\\8e¦\82·\82é\83E\83C\83\93\83h\83E\82Ì\8c`\8e®\81B\r
+*              HINSTANCE hInstance : このアプリケーションのこのインスタンスのハンドル\r
+*              HINSTANCE hPrevInstance : このアプリケーションの直前のインスタンスのハンドル\r
+*              LPSTR lpszCmdLine : アプリケーションが起動したときのコマンドラインをさすロングポインタ\r
+*              int cmdShow : 最初に表示するウインドウの形式。\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int InitApp(LPSTR lpszCmdLine, int cmdShow)\r
@@ -302,10 +302,10 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
        int Err;\r
        WSADATA WSAData;\r
        char PwdBuf[FMAX_PATH+1];\r
-       int useDefautPassword = 0; /* \8cx\8d\90\95\95\\8e¦\97p */\r
+       int useDefautPassword = 0; /* 警告文表示用 */\r
        int masterpass;\r
 \r
-       sts = FAIL;\r
+       sts = FFFTP_FAIL;\r
 \r
        aes_init();\r
        srand(GetTickCount());\r
@@ -338,12 +338,12 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
 \r
 //             AllocConsole();\r
 \r
-               /* 2010.02.01 genta \83}\83X\83^\81[\83p\83X\83\8f\81[\83h\82ð\93ü\97Í\82³\82¹\82é\r
-                 -z \83I\83v\83V\83\87\83\93\82ª\82 \82é\82Æ\82«\82Í\8dÅ\8f\89\82¾\82¯\83X\83L\83b\83v\r
-                 -z \83I\83v\83V\83\87\83\93\82ª\82È\82¢\82Æ\82«\82Í\81C\83f\83t\83H\83\8b\83g\83p\83X\83\8f\81[\83h\82ð\82Ü\82¸\8e\8e\82·\r
-                 LoadRegistory()\82·\82é\r
-                 \83p\83X\83\8f\81[\83h\82ª\95s\88ê\92v\82È\82ç\8dÄ\93ü\97Í\82·\82é\82©\90q\82Ë\82é\81D\r
-                 (\94j\91¹\82µ\82Ä\82¢\82½\8fê\8d\87\82Í\82³\82¹\82È\82¢)\r
+               /* 2010.02.01 genta マスターパスワードを入力させる\r
+                 -z オプションがあるときは最初だけスキップ\r
+                 -z オプションがないときは,デフォルトパスワードをまず試す\r
+                 LoadRegistory()する\r
+                 パスワードが不一致なら再入力するか尋ねる.\r
+                 (破損していた場合はさせない)\r
                */\r
                if( CheckMasterPassword(lpszCmdLine, PwdBuf))\r
                {\r
@@ -351,26 +351,26 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
                        useDefautPassword = 0;\r
                }\r
                else {\r
-                       /* \83p\83X\83\8f\81[\83h\8ew\92è\96³\82µ */\r
+                       /* パスワード指定無し */\r
                        SetMasterPassword( NULL );\r
-                       /* \82±\82Ì\8fê\82Å\82Í\95\\8e¦\82Å\82«\82È\82¢\82Ì\82Å\83t\83\89\83O\82¾\82¯\97§\82Ä\82Ä\82¨\82­*/\r
+                       /* この場では表示できないのでフラグだけ立てておく*/\r
                        useDefautPassword = 2;\r
                }\r
 \r
-               /* \83p\83X\83\8f\81[\83h\83`\83F\83b\83N\82Ì\82Ý\8eÀ\8e{ */\r
+               /* パスワードチェックのみ実施 */\r
                masterpass = 1;\r
                while( ValidateMasterPassword() == YES &&\r
                                GetMasterPasswordStatus() == PASSWORD_UNMATCH ){\r
                        \r
                        if( useDefautPassword != 2 ){\r
-                               /* \8dÄ\83g\83\89\83C\82·\82é\82©\8am\94F */\r
+                               /* 再トライするか確認 */\r
                                if( MessageBox(NULL, MSGJPN304, "FFFTP", MB_YESNO | MB_ICONEXCLAMATION) == IDNO ){\r
-                                       useDefautPassword = 0; /* \95s\88ê\92v\82È\82Ì\82Å\81C\82à\82Í\82â\83f\83t\83H\83\8b\83g\82©\82Ç\82¤\82©\82Í\95ª\82©\82ç\82È\82¢ */\r
+                                       useDefautPassword = 0; /* 不一致なので,もはやデフォルトかどうかは分からない */\r
                                        break;\r
                                }\r
                        }\r
                        \r
-                       /* \8dÄ\93ü\97Í\82³\82¹\82é*/\r
+                       /* 再入力させる*/\r
                        masterpass = EnterMasterPasswordAndSet(masterpasswd_dlg, NULL);\r
                        if( masterpass == 2 ){\r
                                useDefautPassword = 1;\r
@@ -388,7 +388,7 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
                {\r
                        LoadRegistory();\r
 \r
-                       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+                       // 暗号化通信対応\r
                        SetSSLTimeoutCallback(TimeOut * 1000, SSLTimeoutCallback);\r
 \r
                        LoadJre();\r
@@ -396,12 +396,12 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
                                LoadRasLib();\r
                        LoadKernelLib();\r
 \r
-                       //\83^\83C\83}\82Ì\90¸\93x\82ð\89ü\91P\r
+                       //タイマの精度を改善\r
                        timeBeginPeriod(1);\r
 \r
                        CountPrevFfftpWindows();\r
 \r
-                       if(MakeAllWindows(cmdShow) == SUCCESS)\r
+                       if(MakeAllWindows(cmdShow) == FFFTP_SUCCESS)\r
                        {\r
                                hWndCurFocus = GetLocalHwnd();\r
 \r
@@ -413,7 +413,7 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
                                DispTransferType();\r
                                SetHostKanaCnvImm(YES);\r
                                SetHostKanjiCodeImm(KANJI_NOCNV);\r
-                               // \96{\93\96\82Í\83\8d\81[\83J\83\8b\82Ì\83f\83t\83H\83\8b\83g\82ðUTF-8\82É\82µ\82½\82¢\82ª\8b\8c\83o\81[\83W\83\87\83\93\82Æ\82Ì\8cÝ\8a·\90«\82Ì\82½\82ßShift_JIS\82É\90Ý\92è\r
+                               // 本当はローカルのデフォルトをUTF-8にしたいが旧バージョンとの互換性のためShift_JISに設定\r
 //                             SetLocalKanjiCodeImm(KANJI_UTF8N);\r
                                SetLocalKanjiCodeImm(KANJI_SJIS);\r
                                DispListType();\r
@@ -424,12 +424,12 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
                                if(CacheSave == YES)\r
                                        LoadCache();\r
 \r
-                               if(MakeTransferThread() == SUCCESS)\r
+                               if(MakeTransferThread() == FFFTP_SUCCESS)\r
                                {\r
                                        DoPrintf("DEBUG MESSAGE ON ! ##");\r
 \r
                                        DispWindowTitle();\r
-                                       // SourceForge.JP\82É\82æ\82é\83t\83H\81[\83N\r
+                                       // SourceForge.JPによるフォーク\r
 //                                     SetTaskMsg("FFFTP Ver." VER_STR " Copyright(C) 1997-2010 Sota & cooperators.");\r
                                        SetTaskMsg("FFFTP Ver." VER_STR " Copyright(C) 1997-2010 Sota & cooperators.\r\nCopyright (C) 2011 Hiromichi Matsushima, Suguru Kawamoto.");\r
 \r
@@ -455,14 +455,14 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
                                        DispTransferFiles();\r
 \r
                                        StartupProc(lpszCmdLine);\r
-                                       sts = SUCCESS;\r
+                                       sts = FFFTP_SUCCESS;\r
 \r
-                                       /* \83Z\83L\83\85\83\8a\83e\83B\8cx\8d\90\95\82Ì\95\\8e¦ */\r
+                                       /* セキュリティ警告文の表示 */\r
                                        if( useDefautPassword ){\r
                                                SetTaskMsg(MSGJPN300);\r
                                        }\r
                                        \r
-                                       /* \83p\83X\83\8f\81[\83h\95s\88ê\92v\8cx\8d\90\95\82Ì\95\\8e¦ */\r
+                                       /* パスワード不一致警告文の表示 */\r
                                        switch( GetMasterPasswordStatus() ){\r
                                        case PASSWORD_UNMATCH:\r
                                                SetTaskMsg(MSGJPN301);\r
@@ -478,7 +478,7 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
                }\r
        }\r
 \r
-       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+       // 暗号化通信対応\r
 #ifdef USE_OPENSSL\r
        if(IsOpenSSLLoaded())\r
                SetTaskMsg(MSGJPN318);\r
@@ -486,21 +486,21 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
                SetTaskMsg(MSGJPN319);\r
 #endif\r
 \r
-       if(sts == FAIL)\r
+       if(sts == FFFTP_FAIL)\r
                DeleteAllObject();\r
 \r
        return(sts);\r
 }\r
 \r
 \r
-/*----- \83E\83C\83\93\83h\83E\82ð\8dì\90¬\82·\82é --------------------------------------------------\r
+/*----- ウインドウを作成する --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int cmdShow : \8dÅ\8f\89\82É\95\\8e¦\82·\82é\83E\83C\83\93\83h\83E\82Ì\8c`\8e®\81B\r
+*              int cmdShow : 最初に表示するウインドウの形式。\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int MakeAllWindows(int cmdShow)\r
@@ -516,7 +516,7 @@ static int MakeAllWindows(int cmdShow)
        int StsLvtips;\r
        int StsSocket;\r
 \r
-       /*===== \83\81\83C\83\93\83E\83C\83\93\83h\83E =====*/\r
+       /*===== メインウインドウ =====*/\r
 \r
        RootColorBrush = CreateSolidBrush(GetSysColor(COLOR_3DFACE));\r
 \r
@@ -539,8 +539,8 @@ static int MakeAllWindows(int cmdShow)
                WinPosX = CW_USEDEFAULT;\r
                WinPosY = 0;\r
        }\r
-       // UTF-8\91Î\89\9e\r
-       // \83\86\81[\83U\81[\92è\8b`\82Ì\83N\83\89\83X\82Í\83f\83t\83H\83\8b\83g\82ÌWNDPROC\82ªShift_JIS\90ê\97p\82Ì\82½\82ß\r
+       // UTF-8対応\r
+       // ユーザー定義のクラスはデフォルトのWNDPROCがShift_JIS専用のため\r
 //     hWndFtp = CreateWindow(FtpClassStr, "FFFTP",\r
 //                             WS_OVERLAPPEDWINDOW | WS_CLIPCHILDREN | WS_CLIPSIBLINGS,\r
 //                             WinPosX, WinPosY, WinWidth, WinHeight,\r
@@ -560,21 +560,21 @@ static int MakeAllWindows(int cmdShow)
                        MoveWindow(hWndFtp, Rect2.left, Rect2.top, WinWidth, WinHeight, FALSE);\r
                }\r
 \r
-               /*===== \83X\83e\83C\83^\83X\83o\81[ =====*/\r
+               /*===== ステイタスバー =====*/\r
 \r
                StsSbar = MakeStatusBarWindow(hWndFtp, hInstFtp);\r
 \r
                CalcWinSize();\r
 \r
-               /*===== \83c\81[\83\8b\83o\81[ =====*/\r
+               /*===== ツールバー =====*/\r
 \r
                StsTbar = MakeToolBarWindow(hWndFtp, hInstFtp);\r
 \r
-               /*===== \83t\83@\83C\83\8b\83\8a\83X\83g\83E\83C\83\93\83h\83E =====*/\r
+               /*===== ファイルリストウインドウ =====*/\r
 \r
                StsList = MakeListWin(hWndFtp, hInstFtp);\r
 \r
-               /*==== \83^\83X\83N\83E\83C\83\93\83h\83E ====*/\r
+               /*==== タスクウインドウ ====*/\r
 \r
                StsTask = MakeTaskWindow(hWndFtp, hInstFtp);\r
 \r
@@ -584,39 +584,39 @@ static int MakeAllWindows(int cmdShow)
 \r
                ShowWindow(hWndFtp, cmdShow);\r
 \r
-               /*==== \83\\83P\83b\83g\83E\83C\83\93\83h\83E ====*/\r
+               /*==== ソケットウインドウ ====*/\r
 \r
                StsSocket = MakeSocketWin(hWndFtp, hInstFtp);\r
 \r
                StsLvtips = InitListViewTips(hWndFtp, hInstFtp);\r
        }\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        if((hWndFtp == NULL) ||\r
-          (StsTbar == FAIL) ||\r
-          (StsList == FAIL) ||\r
-          (StsSbar == FAIL) ||\r
-          (StsTask == FAIL) ||\r
-          (StsLvtips == FAIL) ||\r
-          (StsSocket == FAIL))\r
+          (StsTbar == FFFTP_FAIL) ||\r
+          (StsList == FFFTP_FAIL) ||\r
+          (StsSbar == FFFTP_FAIL) ||\r
+          (StsTask == FFFTP_FAIL) ||\r
+          (StsLvtips == FFFTP_FAIL) ||\r
+          (StsSocket == FFFTP_FAIL))\r
        {\r
-               Sts = FAIL;\r
+               Sts = FFFTP_FAIL;\r
        }\r
 \r
-       if(Sts == SUCCESS)\r
+       if(Sts == FFFTP_SUCCESS)\r
                SetListViewType();\r
 \r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83E\83C\83\93\83h\83E\82Ì\83^\83C\83g\83\8b\82ð\95\\8e¦\82·\82é ----------------------------------------\r
+/*----- ウインドウのタイトルを表示する ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispWindowTitle(void)\r
@@ -633,13 +633,13 @@ void DispWindowTitle(void)
 }\r
 \r
 \r
-/*----- \91S\82Ä\82Ì\83I\83u\83W\83F\83N\83g\82ð\8dí\8f\9c ----------------------------------------------\r
+/*----- 全てのオブジェクトを削除 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DeleteAllObject(void)\r
@@ -649,13 +649,13 @@ static void DeleteAllObject(void)
 //move to WM_DESTROY\r
        WSACleanup();\r
 \r
-//test \83V\83X\83e\83\80\94C\82¹\r
+//test システム任せ\r
 //     if(ListFont != NULL)\r
 //             DeleteObject(ListFont);\r
 //     if(RootColorBrush != NULL)\r
 //             DeleteObject(RootColorBrush);\r
 \r
-//test \83V\83X\83e\83\80\94C\82¹\r
+//test システム任せ\r
 //     DeleteListViewTips();\r
 //     DeleteListWin();\r
 //     DeleteStatusBarWindow();\r
@@ -675,13 +675,13 @@ static void DeleteAllObject(void)
 }\r
 \r
 \r
-/*----- \83\81\83C\83\93\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· ----------------------------\r
+/*----- メインウインドウのウインドウハンドルを返す ----------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetMainHwnd(void)\r
@@ -690,13 +690,13 @@ HWND GetMainHwnd(void)
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\83t\83H\81[\83J\83X\82ª\82 \82é\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· --------------\r
+/*----- 現在フォーカスがあるウインドウのウインドウハンドルを返す --------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetFocusHwnd(void)\r
@@ -705,13 +705,13 @@ HWND GetFocusHwnd(void)
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\83t\83H\81[\83J\83X\82ª\82 \82é\83E\83C\83\93\83h\83E\82Ì\82ð\83Z\83b\83g\82·\82é --------------------------\r
+/*----- 現在フォーカスがあるウインドウのをセットする --------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND hWnd : ウインドウハンドル\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetFocusHwnd(HWND hWnd)\r
@@ -721,13 +721,13 @@ void SetFocusHwnd(HWND hWnd)
 }\r
 \r
 \r
-/*----- \83v\83\8d\83O\83\89\83\80\82Ì\83C\83\93\83X\83^\83\93\83X\82ð\95Ô\82· ----------------------------------------\r
+/*----- プログラムのインスタンスを返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HINSTANCE \83C\83\93\83X\83^\83\93\83X\r
+*              HINSTANCE インスタンス\r
 *----------------------------------------------------------------------------*/\r
 \r
 HINSTANCE GetFtpInst(void)\r
@@ -736,16 +736,16 @@ HINSTANCE GetFtpInst(void)
 }\r
 \r
 \r
-/*----- \83\81\83C\83\93\83E\83C\83\93\83h\83E\82Ì\83\81\83b\83Z\81[\83W\8f\88\97\9d --------------------------------------\r
+/*----- メインウインドウのメッセージ処理 --------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message  : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hWnd : ウインドウハンドル\r
+*              UINT message  : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
-*              \83\81\83b\83Z\81[\83W\82É\91Î\89\9e\82·\82é\96ß\82è\92l\r
+*              メッセージに対応する戻り値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)\r
@@ -1003,7 +1003,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
                                        DispTransferType();\r
                                        CheckHistoryNum(0);\r
                                        SetAllHistoryToMenu();\r
-                                       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+                                       // 暗号化通信対応\r
                                        SetSSLTimeoutCallback(TimeOut * 1000, SSLTimeoutCallback);\r
                                        break;\r
 \r
@@ -1062,7 +1062,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
                                        DispTransferType();\r
                                        break;\r
 \r
-                               // UTF-8\91Î\89\9e\r
+                               // UTF-8対応\r
                                case MENU_KNJ_SJIS :\r
                                case MENU_KNJ_EUC :\r
                                case MENU_KNJ_JIS :\r
@@ -1085,7 +1085,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
                                case MENU_REFRESH :\r
                                        SuppressRefresh = 1;\r
                                        GetLocalDirForWnd();\r
-                                       if(CheckClosedAndReconnect() == SUCCESS)\r
+                                       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                                                GetRemoteDirForWnd(CACHE_REFRESH, &CancelFlg);\r
                                        SuppressRefresh = 0;\r
                                        break;\r
@@ -1108,7 +1108,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
 \r
                                case REFRESH_REMOTE :\r
                                        SuppressRefresh = 1;\r
-                                       if(CheckClosedAndReconnect() == SUCCESS)\r
+                                       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                                                GetRemoteDirForWnd(CACHE_REFRESH, &CancelFlg);\r
                                        SuppressRefresh = 0;\r
                                        break;\r
@@ -1211,7 +1211,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
                                case MENU_CHANGEPASSWD: /* 2010.01.31 genta */\r
                                        if( GetMasterPasswordStatus() != PASSWORD_OK )\r
                                        {\r
-                                               /* \8b­\90§\93I\82É\90Ý\92è\82·\82é\82©\8am\94F */\r
+                                               /* 強制的に設定するか確認 */\r
                                                if( DialogBox(hInstFtp, MAKEINTRESOURCE(forcepasschange_dlg), hWnd, ExeEscDialogProc) != YES){\r
                                                        break;\r
                                                }\r
@@ -1259,7 +1259,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
                                        }\r
                                        break;\r
                        }\r
-// \8fí\82É\83z\83X\83g\82©\83\8d\81[\83J\83\8b\82Ö\83t\83H\81[\83J\83X\82ð\88Ú\93®\r
+// 常にホストかローカルへフォーカスを移動\r
 //                     SetFocus(hWndCurFocus);\r
                        MakeButtonsFocus();\r
                        break;\r
@@ -1267,7 +1267,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
                case WM_NOTIFY :\r
                        switch(((LPNMHDR)lParam)->code)\r
                        {\r
-                               /* \83c\81[\83\8b\83`\83b\83v\83R\83\93\83g\83\8d\81[\83\8b\83\81\83b\83Z\81[\83W\82Ì\8f\88\97\9d */\r
+                               /* ツールチップコントロールメッセージの処理 */\r
                                case TTN_NEEDTEXT:\r
                                        lpttt = (LPTOOLTIPTEXT)lParam;\r
                                        lpttt->hinst = hInstFtp;\r
@@ -1391,7 +1391,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
                                                        lpttt->lpszText = MSGJPN176;\r
                                                        break;\r
                                        }\r
-                                       // UTF-8\82©\82çShift_JIS\82Ö\95Ï\8a·\r
+                                       // UTF-8からShift_JISへ変換\r
                                        {\r
                                                static wchar_t StringBufferUTF16[1024];\r
                                                static char StringBufferSJIS[1024];\r
@@ -1505,13 +1505,13 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
 }\r
 \r
 \r
-/*----- \83v\83\8d\83O\83\89\83\80\8aJ\8en\8e\9e\82Ì\8f\88\97\9d ------------------------------------------------\r
+/*----- プログラム開始時の処理 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Cmd : \83R\83}\83\93\83h\83\89\83C\83\93\95\8e\9a\97ñ\r
+*              char *Cmd : コマンドライン文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void StartupProc(char *Cmd)\r
@@ -1571,18 +1571,18 @@ static void StartupProc(char *Cmd)
 }\r
 \r
 \r
-/*----- \83R\83}\83\93\83h\83\89\83C\83\93\82ð\89ð\90Í --------------------------------------------------\r
+/*----- コマンドラインを解析 --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83R\83}\83\93\83h\83\89\83C\83\93\95\8e\9a\97ñ\r
-*              int *AutoConnect : \90Ú\91±\83z\83X\83g\94Ô\8d\86\82ð\95Ô\82·\83\8f\81[\83N\r
-*              int *CmdOption : \83I\83v\83V\83\87\83\93\82ð\95Ô\82·\83\8f\81[\83N\r
-*              char *unc : unc\82ð\95Ô\82·\83\8f\81[\83N\r
-*              int Max : unc\82Ì\8dÅ\91å\92·\r
+*              char *Str : コマンドライン文字列\r
+*              int *AutoConnect : 接続ホスト番号を返すワーク\r
+*              int *CmdOption : オプションを返すワーク\r
+*              char *unc : uncを返すワーク\r
+*              int Max : uncã\81®æ\9c\80大é\95·\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      0=\8ew\92è\82È\82µ\81A1=URL\8ew\92è\81A2=\90Ý\92è\96¼\8ew\92è\81A-1=\83G\83\89\81[\r
+*              int ステータス\r
+*                      0=指定なし、1=URL指定、2=設定名指定、-1=エラー\r
 *\r
 *      Note\r
 *              -m      --mirror\r
@@ -1599,10 +1599,10 @@ static void StartupProc(char *Cmd)
 *              -k      --kana\r
 *              -u      --eucname\r
 *              -i      --jisname\r
-*              -n  --ini               (CheckIniFileName\82Å\8c\9f\8dõ)\r
+*              -n  --ini               (CheckIniFileNameで検索)\r
 *                      --saveoff\r
 *                      --saveon\r
-*              -z      --mpasswd       (CheckMasterPassword\82Å\8c\9f\8dõ)     2010.01.30 genta \92Ç\89Á\r
+*              -z      --mpasswd       (CheckMasterPasswordで検索)  2010.01.30 genta 追加\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int AnalyzeComLine(char *Str, int *AutoConnect, int *CmdOption, char *unc, int Max)\r
@@ -1719,15 +1719,15 @@ static int AnalyzeComLine(char *Str, int *AutoConnect, int *CmdOption, char *unc
 }\r
 \r
 \r
-/*----- INI\83t\83@\83C\83\8b\82Ì\83p\83X\96¼\82Ì\8ew\92è\82ð\83`\83F\83b\83N ------------------------------------\r
+/*----- INIファイルのパス名の指定をチェック ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83R\83}\83\93\83h\83\89\83C\83\93\95\8e\9a\97ñ\r
-*              char *Ini : ini\83t\83@\83C\83\8b\96¼\82ð\95Ô\82·\83\8f\81[\83N\r
+*              char *Str : コマンドライン文字列\r
+*              char *Ini : iniファイル名を返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      0=\8ew\92è\82È\82µ\81A1=\82 \82è\r
+*              int ステータス\r
+*                      0=指定なし、1=あり\r
 *\r
 *      Note\r
 *              -n  --ini\r
@@ -1738,25 +1738,25 @@ static int CheckIniFileName(char *Str, char *Ini)
        return GetTokenAfterOption( Str, Ini, "n", "-ini" );\r
 }\r
 \r
-/* \83}\83X\83^\81[\83p\83X\83\8f\81[\83h\82Ì\8ew\92è\82ð\83`\83F\83b\83N */\r
+/* マスターパスワードの指定をチェック */\r
 static int CheckMasterPassword(char *Str, char *Ini)\r
 {\r
        return GetTokenAfterOption( Str, Ini, "z", "-mpasswd" );\r
 }\r
 \r
-/*----- \83I\83v\83V\83\87\83\93\82Ì\8cã\82ë\82Ì\83g\81[\83N\83\93\82ð\8eæ\82è\8fo\82· ------------------------------------\r
+/*----- オプションの後ろのトークンを取り出す ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83R\83}\83\93\83h\83\89\83C\83\93\95\8e\9a\97ñ\r
-*              char *Result : \8eæ\82è\8fo\82µ\82½\95\8e\9a\97ñ\82ð\8ai\94[\82·\82é\83\8f\81[\83N\r
-*              const char* Opt1, *Opt2: \83I\83v\83V\83\87\83\93\95\8e\9a\97ñ(2\82Â)\r
+*              char *Str : コマンドライン文字列\r
+*              char *Result : 取り出した文字列を格納するワーク\r
+*              const char* Opt1, *Opt2: オプション文字列(2つ)\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      0=\8ew\92è\82È\82µ\81A1=\82 \82è\r
+*              int ステータス\r
+*                      0=指定なし、1=あり\r
 *\r
 *      Note\r
-*              2010.01.30 genta \83}\83X\83^\81[\83p\83X\83\8f\81[\83h\8eæ\82è\8fo\82µ\82Ì\82½\82ß\8b¤\92Ê\89»\r
+*              2010.01.30 genta マスターパスワード取り出しのため共通化\r
 *----------------------------------------------------------------------------*/\r
 static int GetTokenAfterOption(char *Str, char *Result, const char* Opt1, const char* Opt2 )\r
 {\r
@@ -1780,15 +1780,15 @@ static int GetTokenAfterOption(char *Str, char *Result, const char* Opt1, const
        return(Ret);\r
 }\r
 \r
-/*----- \83g\81[\83N\83\93\82ð\95Ô\82· --------------------------------------------------------\r
+/*----- トークンを返す --------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              char *Buf : \95\8e\9a\97ñ\82ð\95Ô\82·\83o\83b\83t\83@\r
+*              char *Str : 文字列\r
+*              char *Buf : 文字列を返すバッファ\r
 *\r
 *      Return Value\r
-*              char *\95Ô\82µ\82½\83g\81[\83N\83\93\82Ì\96\96\94ö\r
-*                      NULL=\8fI\82í\82è\r
+*              char *返したトークンの末尾\r
+*                      NULL=終わり\r
 *----------------------------------------------------------------------------*/\r
 \r
 static char *GetToken(char *Str, char *Buf)\r
@@ -1830,13 +1830,13 @@ static char *GetToken(char *Str, char *Buf)
 }\r
 \r
 \r
-/*----- \83v\83\8d\83O\83\89\83\80\8fI\97¹\8e\9e\82Ì\8f\88\97\9d ------------------------------------------------\r
+/*----- プログラム終了時の処理 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND hWnd : ウインドウハンドル\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void ExitProc(HWND hWnd)\r
@@ -1879,15 +1879,15 @@ static void ExitProc(HWND hWnd)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\96¼\82ð\83_\83u\83\8b\83N\83\8a\83b\83N\82µ\82½\82Æ\82«\82Ì\8f\88\97\9d ------------------------------\r
+/*----- ファイル名をダブルクリックしたときの処理 ------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              int Mode : \8fí\82É\81u\8aJ\82­\81v\93®\8dì\82ð\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
-*              int App : \83A\83v\83\8a\83P\81[\83V\83\87\83\93\94Ô\8d\86\81i-1=\8aÖ\98A\82Ã\82¯\97D\90æ\81j\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              int Mode : 常に「開く」動作をするかどうか (YES/NO)\r
+*              int App : アプリケーション番号(-1=関連づけ優先)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DoubleClickProc(int Win, int Mode, int App)\r
@@ -1928,13 +1928,13 @@ void DoubleClickProc(int Win, int Mode, int App)
                                        else\r
                                                ChangeDir(WIN_LOCAL, Tmp);\r
                                }\r
-                               else if(CheckClosedAndReconnect() == SUCCESS)\r
+                               else if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                                {\r
                                        if((App != -1) || (Type == NODE_FILE))\r
                                        {\r
                                                if((DclickOpen == YES) || (Mode == YES))\r
                                                {\r
-                                                       // \83r\83\85\81[\83\8f\82Q\81A\82R\82Ì\83p\83X\82ª "d " \82Å\8en\82Ü\82Á\82Ä\82¢\82½\82ç\8d·\95ª\83r\83\85\81[\83A\8eg\97p\r
+                                                       // ビューワ2、3のパスが "d " で始まっていたら差分ビューア使用\r
                                                        if ((App == 1 || App == 2) && strncmp(ViewerName[App], "d ", 2) == 0)\r
                                                                UseDiffViewer = YES;\r
                                                        else\r
@@ -1982,7 +1982,7 @@ void DoubleClickProc(int Win, int Mode, int App)
 \r
                                                        DisableUserOpe();\r
 \r
-                                                       /* \95s\90³\82È\83p\83X\82ð\8c\9f\8fo */\r
+                                                       /* 不正なパスを検出 */\r
                                                        if(CheckPathViolation(&MainTransPkt) == NO)\r
                                                        {\r
 //                                                             if((Sts = DoDownLoad(AskCmdCtrlSkt(), &MainTransPkt, NO)) == 429)\r
@@ -2021,17 +2021,17 @@ void DoubleClickProc(int Win, int Mode, int App)
 }\r
 \r
 \r
-/*----- \83t\83H\83\8b\83_\82Ì\88Ú\93® --------------------------------------------------------\r
+/*----- フォルダの移動 --------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx)\r
-*              char *Path : \88Ú\93®\90æ\82Ì\83p\83X\96¼\r
+*              int Win : ウインドウ番号 (WIN_xxx)\r
+*              char *Path : 移動先のパス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83t\83H\83\8b\83_\93¯\8e\9e\88Ú\93®\82Ì\8f\88\97\9d\82à\8ds\82¤\r
+*              フォルダ同時移動の処理も行う\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void ChangeDir(int Win, char *Path)\r
@@ -2054,16 +2054,16 @@ static void ChangeDir(int Win, char *Path)
 \r
        if((Win == WIN_LOCAL) || (Sync == YES))\r
        {\r
-               if(DoLocalCWD(Path) == SUCCESS)\r
+               if(DoLocalCWD(Path) == FFFTP_SUCCESS)\r
                        GetLocalDirForWnd();\r
        }\r
 \r
        if((Win == WIN_REMOTE) || (Sync == YES))\r
        {\r
-               if(CheckClosedAndReconnect() == SUCCESS)\r
+               if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                {\r
 #if defined(HAVE_OPENVMS)\r
-                       /* OpenVMS\82Ì\8fê\8d\87\81A".DIR;?"\82ð\8eæ\82é */\r
+                       /* OpenVMSの場合、".DIR;?"を取る */\r
                        if (AskHostType() == HTYPE_VMS)\r
                                ReformVMSDirName(Path, TRUE);\r
 #endif\r
@@ -2075,13 +2075,13 @@ static void ChangeDir(int Win, char *Path)
 }\r
 \r
 \r
-/*----- \83E\83C\83\93\83h\83E\82Ì\83T\83C\83Y\95Ï\8dX\82Ì\8f\88\97\9d ------------------------------------------\r
+/*----- ウインドウのサイズ変更の処理 ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void ResizeWindowProc(void)\r
@@ -2134,13 +2134,13 @@ static void ResizeWindowProc(void)
 }\r
 \r
 \r
-/*----- \83E\83C\83\93\83h\83E\82Ì\8ae\95\94\95ª\82Ì\83T\83C\83Y\82ð\8cv\8eZ\82·\82é ----------------------------------\r
+/*----- ウインドウの各部分のサイズを計算する ----------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void CalcWinSize(void)\r
@@ -2174,13 +2174,13 @@ static void CalcWinSize(void)
 \r
 \r
 #if 0\r
-/*----- \83E\83C\83\93\83h\83E\82Ì\95\\8e¦\88Ê\92u\82ð\8eæ\93¾\82·\82é ----------------------------------------\r
+/*----- ウインドウの表示位置を取得する ----------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND hWnd : ウインドウハンドル\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void AskWindowPos(HWND hWnd)\r
@@ -2197,15 +2197,15 @@ static void AskWindowPos(HWND hWnd)
 #endif\r
 \r
 \r
-/*----- \83f\83B\83\8c\83N\83g\83\8a\83\8a\83X\83g\82Æ\83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\8b«\8aE\95Ï\8dX\8f\88\97\9d ----------------------\r
+/*----- ディレクトリリストとファイルリストの境界変更処理 ----------------------\r
 *\r
 *      Parameter\r
-*              WPARAM Keys : WM_MOUSEMOVE\82È\82Ç\82ÌWPARAM\82Ì\92l\r
-*              int x : \83}\83E\83X\83J\81[\83\\83\8b\82Ì\82w\8dÀ\95W\r
-*              int y : \83}\83E\83X\83J\81[\83\\83\8b\82Ì\82x\8dÀ\95W\r
+*              WPARAM Keys : WM_MOUSEMOVEなどのWPARAMの値\r
+*              int x : マウスカーソルのX座標\r
+*              int y : マウスカーソルのY座標\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void CheckResizeFrame(WPARAM Keys, int x, int y)\r
@@ -2218,7 +2218,7 @@ static void CheckResizeFrame(WPARAM Keys, int x, int y)
                if((x >= LocalWidth) && (x <= LocalWidth + SepaWidth) &&\r
                   (y > TOOLWIN_HEIGHT) && (y < (TOOLWIN_HEIGHT * 2 + ListHeight)))\r
                {\r
-                       /* \8b«\8aE\88Ê\92u\95Ï\8dX\97p\83J\81[\83\\83\8b\82É\95Ï\8dX */\r
+                       /* 境界位置変更用カーソルに変更 */\r
                        SetCapture(hWndFtp);\r
                        hCursor = LoadCursor(hInstFtp, MAKEINTRESOURCE(resize_lr_csr));\r
                        SetCursor(hCursor);\r
@@ -2227,7 +2227,7 @@ static void CheckResizeFrame(WPARAM Keys, int x, int y)
                }\r
                else if((y >= TOOLWIN_HEIGHT*2+ListHeight) && (y <= TOOLWIN_HEIGHT*2+ListHeight+SepaWidth))\r
                {\r
-                       /* \8b«\8aE\88Ê\92u\95Ï\8dX\97p\83J\81[\83\\83\8b\82É\95Ï\8dX */\r
+                       /* 境界位置変更用カーソルに変更 */\r
                        SetCapture(hWndFtp);\r
                        hCursor = LoadCursor(hInstFtp, MAKEINTRESOURCE(resize_ud_csr));\r
                        SetCursor(hCursor);\r
@@ -2239,7 +2239,7 @@ static void CheckResizeFrame(WPARAM Keys, int x, int y)
        {\r
                if(Keys & MK_LBUTTON)\r
                {\r
-                       /* \8b«\8aE\88Ê\92u\95Ï\8dX\8aJ\8en */\r
+                       /* 境界位置変更開始 */\r
                        Resizing = RESIZE_ON;\r
                        GetWindowRect(hWndFtp, &Rect);\r
                        GetClientRect(GetSbarWnd(), &Rect1);\r
@@ -2257,7 +2257,7 @@ static void CheckResizeFrame(WPARAM Keys, int x, int y)
                           ((ResizePos == RESIZE_VPOS) &&\r
                                ((y < TOOLWIN_HEIGHT*2+ListHeight) || (y > TOOLWIN_HEIGHT*2+ListHeight+SepaWidth))))\r
                        {\r
-                               /* \8c³\82Ì\83J\81[\83\\83\8b\82É\96ß\82· */\r
+                               /* 元のカーソルに戻す */\r
                                ReleaseCapture();\r
                                hCursor = LoadCursor(NULL, IDC_ARROW);\r
                                SetCursor(hCursor);\r
@@ -2279,7 +2279,7 @@ static void CheckResizeFrame(WPARAM Keys, int x, int y)
 \r
                if((Keys & MK_LBUTTON) == 0)\r
                {\r
-                       /* \8b«\8aE\88Ê\92u\95Ï\8dX\8fI\97¹ */\r
+                       /* 境界位置変更終了 */\r
                        ReleaseCapture();\r
                        ClipCursor(NULL);\r
                        hCursor = LoadCursor(NULL, IDC_ARROW);\r
@@ -2291,13 +2291,13 @@ static void CheckResizeFrame(WPARAM Keys, int x, int y)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\88ê\97\97\8fî\95ñ\82ð\83r\83\85\81[\83\8f\82Å\95\\8e¦ --------------------------------------\r
+/*----- ファイル一覧情報をビューワで表示 --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DispDirInfo(void)\r
@@ -2311,14 +2311,14 @@ static void DispDirInfo(void)
 \r
 \r
 \r
-/*----- \83r\83\85\81[\83\8f\82ð\8bN\93® --------------------------------------------------------\r
+/*----- ビューワを起動 --------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char Fname : \83t\83@\83C\83\8b\96¼\r
-*              int App : \83A\83v\83\8a\83P\81[\83V\83\87\83\93\94Ô\8d\86\81i-1=\8aÖ\98A\82Ã\82¯\97D\90æ\81j\r
+*              char Fname : ファイル名\r
+*              int App : アプリケーション番号(-1=関連づけ優先)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ExecViewer(char *Fname, int App)\r
@@ -2329,9 +2329,9 @@ void ExecViewer(char *Fname, int App)
        char ComLine[FMAX_PATH*2+3+1];\r
        char CurDir[FMAX_PATH+1];\r
 \r
-       /* FindExecutable()\82Í\8aÖ\98A\95t\82¯\82ç\82ê\82½\83v\83\8d\83O\83\89\83\80\82Ì\83p\83X\96¼\82É\83X\83y\81[\83X\82ª       */\r
-       /* \8aÜ\82Ü\82ê\82Ä\82¢\82é\8e\9e\81A\8aÔ\88á\82Á\82½\83p\83X\96¼\82ð\95Ô\82·\8e\96\82ª\82 \82é\81B                                       */\r
-       /* \82»\82±\82Å\81A\8aÖ\98A\95t\82¯\82ç\82ê\82½\83v\83\8d\83O\83\89\83\80\82Ì\8bN\93®\82ÍShellExecute()\82ð\8eg\82¤\81B       */\r
+       /* FindExecutable()は関連付けられたプログラムのパス名にスペースが        */\r
+       /* 含まれている時、間違ったパス名を返す事がある。                                        */\r
+       /* そこで、関連付けられたプログラムの起動はShellExecute()を使う。       */\r
 \r
        AskLocalCurDir(CurDir, FMAX_PATH);\r
 \r
@@ -2365,15 +2365,15 @@ void ExecViewer(char *Fname, int App)
 }\r
 \r
 \r
-/*----- \8d·\95ª\95\\8e¦\83r\83\85\81[\83\8f\82ð\8bN\93® ------------------------------------------------\r
+/*----- 差分表示ビューワを起動 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char Fname1 : \83t\83@\83C\83\8b\96¼\r
-*              char Fname2 : \83t\83@\83C\83\8b\96¼2\r
-*              int App : \83A\83v\83\8a\83P\81[\83V\83\87\83\93\94Ô\8d\86\81i2 or 3\81j\r
+*              char Fname1 : ファイル名\r
+*              char Fname2 : ファイル名2\r
+*              int App : アプリケーション番号(2 or 3)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ExecViewer2(char *Fname1, char *Fname2, int App)\r
@@ -2384,13 +2384,13 @@ void ExecViewer2(char *Fname1, char *Fname2, int App)
        char ComLine[FMAX_PATH*2+3+1];\r
        char CurDir[FMAX_PATH+1];\r
 \r
-       /* FindExecutable()\82Í\8aÖ\98A\95t\82¯\82ç\82ê\82½\83v\83\8d\83O\83\89\83\80\82Ì\83p\83X\96¼\82É\83X\83y\81[\83X\82ª       */\r
-       /* \8aÜ\82Ü\82ê\82Ä\82¢\82é\8e\9e\81A\8aÔ\88á\82Á\82½\83p\83X\96¼\82ð\95Ô\82·\8e\96\82ª\82 \82é\81B                                       */\r
-       /* \82»\82±\82Å\81A\8aÖ\98A\95t\82¯\82ç\82ê\82½\83v\83\8d\83O\83\89\83\80\82Ì\8bN\93®\82ÍShellExecute()\82ð\8eg\82¤\81B       */\r
+       /* FindExecutable()は関連付けられたプログラムのパス名にスペースが        */\r
+       /* 含まれている時、間違ったパス名を返す事がある。                                        */\r
+       /* そこで、関連付けられたプログラムの起動はShellExecute()を使う。       */\r
 \r
        AskLocalCurDir(CurDir, FMAX_PATH);\r
 \r
-       strcpy(AssocProg, ViewerName[App] + 2); /* \90æ\93ª\82Ì "d " \82Í\93Ç\82Ý\94ò\82Î\82· */\r
+       strcpy(AssocProg, ViewerName[App] + 2); /* 先頭の "d " は読み飛ばす */\r
 \r
        if(strchr(Fname1, ' ') == NULL && strchr(Fname2, ' ') == NULL)\r
                sprintf(ComLine, "%s %s %s", AssocProg, Fname1, Fname2);\r
@@ -2412,13 +2412,13 @@ void ExecViewer2(char *Fname1, char *Fname2, int App)
 }\r
 \r
 \r
-/*----- \83e\83\93\83|\83\89\83\8a\83t\83@\83C\83\8b\96¼\82ð\83e\83\93\83|\83\89\83\8a\83t\83@\83C\83\8b\83\8a\83X\83g\82É\92Ç\89Á ------------------\r
+/*----- テンポラリファイル名をテンポラリファイルリストに追加 ------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83e\83\93\83|\83\89\83\8a\83t\83@\83C\83\8b\96¼\r
+*              char *Fname : テンポラリファイル名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AddTempFileList(char *Fname)\r
@@ -2443,13 +2443,13 @@ void AddTempFileList(char *Fname)
 }\r
 \r
 \r
-/*----- \83e\83\93\83|\83\89\83\8a\83t\83@\83C\83\8b\83\8a\83X\83g\82É\93o\98^\82³\82ê\82Ä\82¢\82é\83t\83@\83C\83\8b\82ð\91S\82Ä\8dí\8f\9c ------------\r
+/*----- テンポラリファイルリストに登録されているファイルを全て削除 ------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DeleteAlltempFile(void)\r
@@ -2468,20 +2468,20 @@ static void DeleteAlltempFile(void)
                Pos = Next;\r
        }\r
 \r
-       // OLE D&D\82Ì\83e\83\93\83|\83\89\83\8a\82ð\8dí\8f\9c\82·\82é (2007.9.11 yutaka)\r
+       // OLE D&Dのテンポラリを削除する (2007.9.11 yutaka)\r
        doDeleteRemoteFile();\r
 \r
        return;\r
 }\r
 \r
 \r
-/*----- \82`\82\82\82\8f\82\95\82\94\83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83R\81[\83\8b\83o\83b\83N\8aÖ\90\94 ------------------------\r
+/*----- Aboutダイアログボックスのコールバック関数 ------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -2519,13 +2519,13 @@ static BOOL CALLBACK AboutDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \83T\83E\83\93\83h\82ð\96Â\82ç\82· ------------------------------------------------------\r
+/*----- サウンドを鳴らす ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              Int num : \83T\83E\83\93\83h\82Ì\8eí\97Þ (SND_xxx)\r
+*              Int num : サウンドの種類 (SND_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SoundPlay(int Num)\r
@@ -2537,13 +2537,13 @@ void SoundPlay(int Num)
 }\r
 \r
 \r
-/*----- \83w\83\8b\83v\83t\83@\83C\83\8b\82Ì\83p\83X\96¼\82ð\95Ô\82· ------------------------------------------\r
+/*----- ヘルプファイルのパス名を返す ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              char *\83p\83X\96¼\r
+*              char *パス名\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *AskHelpFilePath(void)\r
@@ -2552,13 +2552,13 @@ char *AskHelpFilePath(void)
 }\r
 \r
 \r
-/*----- \83e\83\93\83|\83\89\83\8a\83t\83@\83C\83\8b\82Ì\83p\83X\96¼\82ð\95Ô\82· --------------------------------------\r
+/*----- テンポラリファイルのパス名を返す --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              char *\83p\83X\96¼\r
+*              char *パス名\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *AskTmpFilePath(void)\r
@@ -2567,13 +2567,13 @@ char *AskTmpFilePath(void)
 }\r
 \r
 \r
-/*----- INI\83t\83@\83C\83\8b\82Ì\83p\83X\96¼\82ð\95Ô\82· ---------------------------------------------\r
+/*----- INIファイルのパス名を返す ---------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              char *\83p\83X\96¼\r
+*              char *パス名\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *AskIniFilePath(void)\r
@@ -2581,13 +2581,13 @@ char *AskIniFilePath(void)
        return(IniPath);\r
 }\r
 \r
-/*----- INI\83t\83@\83C\83\8b\82Ì\82Ý\82ð\8eg\82¤\82©\82Ç\82¤\82©\82ð\95Ô\82· -----------------------------------\r
+/*----- INIファイルのみを使うかどうかを返す -----------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X : YES/NO\r
+*              int ステータス : YES/NO\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskForceIni(void)\r
@@ -2598,13 +2598,13 @@ int AskForceIni(void)
 \r
 \r
 \r
-/*----- \83\81\83b\83Z\81[\83W\8f\88\97\9d --------------------------------------------------------\r
+/*----- メッセージ処理 --------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \8fI\97¹\83t\83\89\83O (YES=WM_CLOSE\82ª\97\88\82½/NO)\r
+*              int 終了フラグ (YES=WM_CLOSEが来た/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int BackgrndMessageProc(void)\r
@@ -2618,8 +2618,8 @@ int BackgrndMessageProc(void)
        {\r
                if(!HtmlHelp(NULL, NULL, HH_PRETRANSLATEMESSAGE, (DWORD)&Msg))\r
                {\r
-                       /* \83f\83B\83\8c\83N\83g\83\8a\96¼\82Ì\95\\8e¦\83R\83\93\83{\83{\83b\83N\83X\82ÅBS\82âRET\82ª\8cø\82­\82æ\82¤\82É */\r
-                       /* \83R\83\93\83{\83{\83b\83N\83X\93à\82Å\82Í\83A\83N\83Z\83\89\83\8c\81[\83^\82ð\96³\8cø\82É\82·\82é */\r
+                       /* ディレクトリ名の表示コンボボックスでBSやRETが効くように */\r
+                       /* コンボボックス内ではアクセラレータを無効にする */\r
                        if((Msg.hwnd == GetLocalHistEditHwnd()) ||\r
                           (Msg.hwnd == GetRemoteHistEditHwnd()) ||\r
                           ((hHelpWin != NULL) && (Msg.hwnd == hHelpWin)) ||\r
@@ -2641,13 +2641,13 @@ int BackgrndMessageProc(void)
 }\r
 \r
 \r
-/*----- \8e©\93®\8fI\97¹\83t\83\89\83O\82ð\83N\83\8a\83A\82·\82é --------------------------------------------\r
+/*----- 自動終了フラグをクリアする --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ResetAutoExitFlg(void)\r
@@ -2657,13 +2657,13 @@ void ResetAutoExitFlg(void)
 }\r
 \r
 \r
-/*----- \8e©\93®\8fI\97¹\83t\83\89\83O\82ð\95Ô\82· --------------------------------------------------\r
+/*----- 自動終了フラグを返す --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83t\83\89\83O (YES/NO)\r
+*              int フラグ (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskAutoExit(void)\r
@@ -2671,13 +2671,13 @@ int AskAutoExit(void)
        return(AutoExit);\r
 }\r
 \r
-/*----- \83\86\81[\83U\82É\83p\83X\83\8f\81[\83h\82ð\93ü\97Í\82³\82¹\81C\82»\82ê\82ð\90Ý\92è\82·\82é -----------------------\r
+/*----- ユーザにパスワードを入力させ,それを設定する -----------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int : 0/\83\86\81[\83U\83L\83\83\83\93\83Z\83\8b, 1/\90Ý\92è\82µ\82½, 2/\83f\83t\83H\83\8b\83g\90Ý\92è\r
+*              int : 0/ユーザキャンセル, 1/設定した, 2/デフォルト設定\r
 *----------------------------------------------------------------------------*/\r
 int EnterMasterPasswordAndSet( int Res, HWND hWnd )\r
 {\r
@@ -2688,9 +2688,9 @@ int EnterMasterPasswordAndSet( int Res, HWND hWnd )
        buf[0] = NUL;\r
        if( InputDialogBox(Res, hWnd, NULL, buf, MAX_PASSWORD_LEN + 1,\r
                &Flag, IDH_HELP_TOPIC_0000064) == YES){\r
-               /* \96\96\94ö\82Ì\8bó\94\92\82ð\8dí\8f\9c */\r
+               /* 末尾の空白を削除 */\r
                RemoveTailingSpaces(buf);\r
-               /* \90æ\93ª\82Ì\8bó\94\92\82ð\8dí\8f\9c */\r
+               /* 先頭の空白を削除 */\r
                for( p = buf; *p == ' '; p++ )\r
                        ;\r
                \r
@@ -2699,7 +2699,7 @@ int EnterMasterPasswordAndSet( int Res, HWND hWnd )
                        return 1;\r
                }\r
                else {\r
-                       /* \8bó\82Ì\8fê\8d\87\82Í\83f\83t\83H\83\8b\83g\92l\82ð\90Ý\92è */\r
+                       /* 空の場合はデフォルト値を設定 */\r
                        SetMasterPassword( NULL );\r
                        return 2;\r
                }\r
@@ -2707,13 +2707,13 @@ int EnterMasterPasswordAndSet( int Res, HWND hWnd )
        return 0;\r
 }\r
 \r
-// \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+// 暗号化通信対応\r
 BOOL __stdcall SSLTimeoutCallback()\r
 {\r
        Sleep(1);\r
        if(BackgrndMessageProc() == YES)\r
                return TRUE;\r
-       // \94O\82Ì\82½\82ß\83c\81[\83\8b\83o\81[\82ÌMENU_ABORT\82à\8am\94F\r
+       // 念のためツールバーのMENU_ABORTも確認\r
 //     if(MainTransPkt.Abort != ABORT_NONE)\r
 //     {\r
 //             MainTransPkt.Abort = ABORT_NONE;\r
index e332123..ef019e4 100644 (file)
@@ -1,8 +1,8 @@
-// mbswrapper.cpp
+// mbswrapper.cpp
 // Copyright (C) 2011 Suguru Kawamoto
-// \83}\83\8b\83`\83o\83C\83g\95\8e\9a\83\8f\83C\83h\95\8e\9aAPI\83\89\83b\83p\81[
-// \83}\83\8b\83`\83o\83C\83g\95\8e\9a\82ÍUTF-8\81A\83\8f\83C\83h\95\8e\9a\82ÍUTF-16\82Å\82 \82é\82à\82Ì\82Æ\82·\82é
-// \91S\82Ä\82Ì\90§\8cä\97p\82Ì\95\8e\9a\82ÍASCII\82Ì\94Í\88Í\82Å\82 \82é\82½\82ß\81AShift_JIS\82ÆUTF-8\8aÔ\82Ì\95Ï\8a·\82Í\95s\97v
+// マルチバイト文字ワイド文字APIラッパー
+// マルチバイト文字はUTF-8、ワイド文字はUTF-16であるものとする
+// 全ての制御用の文字はASCIIの範囲であるため、Shift_JISとUTF-8間の変換は不要
 
 #define UNICODE
 #define _UNICODE
@@ -20,7 +20,7 @@
 #define DO_NOT_REPLACE
 #include "mbswrapper.h"
 
-// \83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82©\82ç\83\8f\83C\83h\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// マルチバイト文字列からワイド文字列へ変換
 int MtoW(LPWSTR pDst, int size, LPCSTR pSrc, int count)
 {
        if(pSrc < (LPCSTR)0x00010000 || pSrc == (LPCSTR)~0)
@@ -30,7 +30,7 @@ int MtoW(LPWSTR pDst, int size, LPCSTR pSrc, int count)
        return MultiByteToWideChar(CP_UTF8, 0, pSrc, count, NULL, 0);
 }
 
-// \83\8f\83C\83h\95\8e\9a\97ñ\82©\82ç\83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// ワイド文字列からマルチバイト文字列へ変換
 int WtoM(LPSTR pDst, int size, LPCWSTR pSrc, int count)
 {
        if(pSrc < (LPCWSTR)0x00010000 || pSrc == (LPCWSTR)~0)
@@ -40,7 +40,7 @@ int WtoM(LPSTR pDst, int size, LPCWSTR pSrc, int count)
        return WideCharToMultiByte(CP_UTF8, 0, pSrc, count, NULL, 0, NULL, NULL);
 }
 
-// \83\8f\83C\83h\95\8e\9a\97ñ\82©\82çShift_JIS\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// ワイド文字列からShift_JIS文字列へ変換
 int WtoA(LPSTR pDst, int size, LPCWSTR pSrc, int count)
 {
        if(pSrc < (LPCWSTR)0x00010000 || pSrc == (LPCWSTR)~0)
@@ -50,7 +50,7 @@ int WtoA(LPSTR pDst, int size, LPCWSTR pSrc, int count)
        return WideCharToMultiByte(CP_ACP, 0, pSrc, count, NULL, 0, NULL, NULL);
 }
 
-// \83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\83o\83b\83t\83@\8fI\92[\82ð\8b­\90§\93I\82ÉNULL\82Å\92u\8a·
+// マルチバイト文字列バッファ終端を強制的にNULLで置換
 int TerminateStringM(LPSTR lpString, int size)
 {
        int i;
@@ -66,7 +66,7 @@ int TerminateStringM(LPSTR lpString, int size)
        return i;
 }
 
-// \83\8f\83C\83h\95\8e\9a\97ñ\83o\83b\83t\83@\8fI\92[\82ð\8b­\90§\93I\82ÉNULL\82Å\92u\8a·
+// ワイド文字列バッファ終端を強制的にNULLで置換
 int TerminateStringW(LPWSTR lpString, int size)
 {
        int i;
@@ -82,7 +82,7 @@ int TerminateStringW(LPWSTR lpString, int size)
        return i;
 }
 
-// Shift_JIS\95\8e\9a\97ñ\83o\83b\83t\83@\8fI\92[\82ð\8b­\90§\93I\82ÉNULL\82Å\92u\8a·
+// Shift_JIS文字列バッファ終端を強制的にNULLで置換
 int TerminateStringA(LPSTR lpString, int size)
 {
        int i;
@@ -98,7 +98,7 @@ int TerminateStringA(LPSTR lpString, int size)
        return i;
 }
 
-// NULL\8bæ\90Ø\82è\95¡\90\94\83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82Ì\92·\82³\82ð\8eæ\93¾
+// NULL区切り複数マルチバイト文字列の長さを取得
 size_t GetMultiStringLengthM(LPCSTR lpString)
 {
        size_t i;
@@ -113,7 +113,7 @@ size_t GetMultiStringLengthM(LPCSTR lpString)
        return i;
 }
 
-// NULL\8bæ\90Ø\82è\95¡\90\94\83\8f\83C\83h\95\8e\9a\97ñ\82Ì\92·\82³\82ð\8eæ\93¾
+// NULL区切り複数ワイド文字列の長さを取得
 size_t GetMultiStringLengthW(LPCWSTR lpString)
 {
        size_t i;
@@ -128,7 +128,7 @@ size_t GetMultiStringLengthW(LPCWSTR lpString)
        return i;
 }
 
-// NULL\8bæ\90Ø\82è\95¡\90\94Shift_JIS\95\8e\9a\97ñ\82Ì\92·\82³\82ð\8eæ\93¾
+// NULL区切り複数Shift_JIS文字列の長さを取得
 size_t GetMultiStringLengthA(LPCSTR lpString)
 {
        size_t i;
@@ -143,7 +143,7 @@ size_t GetMultiStringLengthA(LPCSTR lpString)
        return i;
 }
 
-// NULL\8bæ\90Ø\82è\83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82©\82ç\83\8f\83C\83h\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// NULL区切りマルチバイト文字列からワイド文字列へ変換
 int MtoWMultiString(LPWSTR pDst, int size, LPCSTR pSrc)
 {
        int i;
@@ -161,7 +161,7 @@ int MtoWMultiString(LPWSTR pDst, int size, LPCSTR pSrc)
        return i;
 }
 
-// NULL\8bæ\90Ø\82è\83\8f\83C\83h\95\8e\9a\97ñ\82©\82ç\83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// NULL区切りワイド文字列からマルチバイト文字列へ変換
 int WtoMMultiString(LPSTR pDst, int size, LPCWSTR pSrc)
 {
        int i;
@@ -179,7 +179,7 @@ int WtoMMultiString(LPSTR pDst, int size, LPCWSTR pSrc)
        return i;
 }
 
-// NULL\8bæ\90Ø\82è\83\8f\83C\83h\95\8e\9a\97ñ\82©\82çShift_JIS\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// NULL区切りワイド文字列からShift_JIS文字列へ変換
 int WtoAMultiString(LPSTR pDst, int size, LPCWSTR pSrc)
 {
        int i;
@@ -197,43 +197,43 @@ int WtoAMultiString(LPSTR pDst, int size, LPCWSTR pSrc)
        return i;
 }
 
-// \83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\97p\82Ì\83\81\83\82\83\8a\82ð\8am\95Û
+// マルチバイト文字列用のメモリを確保
 char* AllocateStringM(int size)
 {
        char* p;
-       // 0\82ª\8ew\92è\82³\82ê\82é\8fê\8d\87\82ª\82 \82é\82½\82ß1\95\8e\9a\95ª\92Ç\89Á
+       // 0が指定される場合があるため1文字分追加
        p = (char*)malloc(sizeof(char) * (size + 1));
-       // \94O\82Ì\82½\82ß\90æ\93ª\82ÉNULL\95\8e\9a\82ð\91ã\93ü
+       // 念のため先頭にNULL文字を代入
        if(p)
                *p = '\0';
        return p;
 }
 
-// \83\8f\83C\83h\95\8e\9a\97ñ\97p\82Ì\83\81\83\82\83\8a\82ð\8am\95Û
+// ワイド文字列用のメモリを確保
 wchar_t* AllocateStringW(int size)
 {
        wchar_t* p;
-       // 0\82ª\8ew\92è\82³\82ê\82é\8fê\8d\87\82ª\82 \82é\82½\82ß1\95\8e\9a\95ª\92Ç\89Á
+       // 0が指定される場合があるため1文字分追加
        p = (wchar_t*)malloc(sizeof(wchar_t) * (size + 1));
-       // \94O\82Ì\82½\82ß\90æ\93ª\82ÉNULL\95\8e\9a\82ð\91ã\93ü
+       // 念のため先頭にNULL文字を代入
        if(p)
                *p = L'\0';
        return p;
 }
 
-// Shift_JIS\95\8e\9a\97ñ\97p\82Ì\83\81\83\82\83\8a\82ð\8am\95Û
+// Shift_JIS文字列用のメモリを確保
 char* AllocateStringA(int size)
 {
        char* p;
-       // 0\82ª\8ew\92è\82³\82ê\82é\8fê\8d\87\82ª\82 \82é\82½\82ß1\95\8e\9a\95ª\92Ç\89Á
+       // 0が指定される場合があるため1文字分追加
        p = (char*)malloc(sizeof(char) * (size + 1));
-       // \94O\82Ì\82½\82ß\90æ\93ª\82ÉNULL\95\8e\9a\82ð\91ã\93ü
+       // 念のため先頭にNULL文字を代入
        if(p)
                *p = '\0';
        return p;
 }
 
-// \83\81\83\82\83\8a\82ð\8am\95Û\82µ\82Ä\83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82©\82ç\83\8f\83C\83h\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// メモリを確保してマルチバイト文字列からワイド文字列へ変換
 wchar_t* DuplicateMtoW(LPCSTR lpString, int c)
 {
        wchar_t* p;
@@ -251,7 +251,7 @@ wchar_t* DuplicateMtoW(LPCSTR lpString, int c)
        return p;
 }
 
-// \8ew\92è\82µ\82½\83T\83C\83Y\82Ì\83\81\83\82\83\8a\82ð\8am\95Û\82µ\82Ä\83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82©\82ç\83\8f\83C\83h\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// 指定したサイズのメモリを確保してマルチバイト文字列からワイド文字列へ変換
 wchar_t* DuplicateMtoWBuffer(LPCSTR lpString, int c, int size)
 {
        wchar_t* p;
@@ -269,7 +269,7 @@ wchar_t* DuplicateMtoWBuffer(LPCSTR lpString, int c, int size)
        return p;
 }
 
-// \83\81\83\82\83\8a\82ð\8am\95Û\82µ\82ÄNULL\8bæ\90Ø\82è\83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82©\82ç\83\8f\83C\83h\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// メモリを確保してNULL区切りマルチバイト文字列からワイド文字列へ変換
 wchar_t* DuplicateMtoWMultiString(LPCSTR lpString)
 {
        int count;
@@ -283,7 +283,7 @@ wchar_t* DuplicateMtoWMultiString(LPCSTR lpString)
        return p;
 }
 
-// \8ew\92è\82µ\82½\83T\83C\83Y\82Ì\83\81\83\82\83\8a\82ð\8am\95Û\82µ\82ÄNULL\8bæ\90Ø\82è\83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82©\82ç\83\8f\83C\83h\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// 指定したサイズのメモリを確保してNULL区切りマルチバイト文字列からワイド文字列へ変換
 wchar_t* DuplicateMtoWMultiStringBuffer(LPCSTR lpString, int size)
 {
        int count;
@@ -301,7 +301,7 @@ wchar_t* DuplicateMtoWMultiStringBuffer(LPCSTR lpString, int size)
        return p;
 }
 
-// \83\81\83\82\83\8a\82ð\8am\95Û\82µ\82Ä\83\8f\83C\83h\95\8e\9a\97ñ\82©\82ç\83}\83\8b\83`\83o\83C\83g\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// メモリを確保してワイド文字列からマルチバイト文字列へ変換
 char* DuplicateWtoM(LPCWSTR lpString, int c)
 {
        char* p;
@@ -319,7 +319,7 @@ char* DuplicateWtoM(LPCWSTR lpString, int c)
        return p;
 }
 
-// \83\81\83\82\83\8a\82ð\8am\95Û\82µ\82Ä\83\8f\83C\83h\95\8e\9a\97ñ\82©\82çShift_JIS\95\8e\9a\97ñ\82Ö\95Ï\8a·
+// メモリを確保してワイド文字列からShift_JIS文字列へ変換
 char* DuplicateWtoA(LPCWSTR lpString, int c)
 {
        char* p;
@@ -337,7 +337,7 @@ char* DuplicateWtoA(LPCWSTR lpString, int c)
        return p;
 }
 
-// \95\8e\9a\97ñ\97p\82É\8am\95Û\82µ\82½\83\81\83\82\83\8a\82ð\8aJ\95ú
+// 文字列用に確保したメモリを開放
 void FreeDuplicatedString(void* p)
 {
        if(p < (void*)0x00010000 || p == (void*)~0)
@@ -345,11 +345,11 @@ void FreeDuplicatedString(void* p)
        free(p);
 }
 
-// \88È\89º\83\89\83b\83p\81[
-// \96ß\82è\92l\83o\83b\83t\83@ r
-// \83\8f\83C\83h\95\8e\9a\83o\83b\83t\83@ pw%d
-// \83}\83\8b\83`\83o\83C\83g\95\8e\9a\83o\83b\83t\83@ pm%d
-// \88ø\90\94\83o\83b\83t\83@ a%d
+// 以下ラッパー
+// 戻り値バッファ r
+// ワイド文字バッファ pw%d
+// マルチバイト文字バッファ pm%d
+// 引数バッファ a%d
 
 #define START_ROUTINE                                  do{
 #define END_ROUTINE                                            }while(0);end_of_routine:
@@ -449,7 +449,7 @@ ATOM RegisterClassExM(CONST WNDCLASSEXA * v0)
 {
        ATOM r = 0;
 START_ROUTINE
-       // WNDPROC\82ªShift_JIS\97p\82Å\82 \82é\82½\82ß
+       // WNDPROCがShift_JIS用であるため
        r = RegisterClassExA(v0);
 END_ROUTINE
        return r;
@@ -474,7 +474,7 @@ LONG GetWindowLongM(HWND hWnd, int nIndex)
 {
        LRESULT r = 0;
 START_ROUTINE
-       // WNDPROC\82ªShift_JIS\97p\82Å\82 \82é\82½\82ß
+       // WNDPROCがShift_JIS用であるため
        if(IsWindowUnicode(hWnd))
                r = GetWindowLongW(hWnd, nIndex);
        else
@@ -487,7 +487,7 @@ LONG SetWindowLongM(HWND hWnd, int nIndex, LONG dwNewLong)
 {
        LRESULT r = 0;
 START_ROUTINE
-       // WNDPROC\82ªShift_JIS\97p\82Å\82 \82é\82½\82ß
+       // WNDPROCがShift_JIS用であるため
        if(IsWindowUnicode(hWnd))
                r = SetWindowLongW(hWnd, nIndex, dwNewLong);
        else
@@ -500,7 +500,7 @@ LRESULT DefWindowProcM(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
 {
        LRESULT r = 0;
 START_ROUTINE
-       // WNDPROC\82ªShift_JIS\97p\82Å\82 \82é\82½\82ß
+       // WNDPROCがShift_JIS用であるため
        if(IsWindowUnicode(hWnd))
                r = DefWindowProcW(hWnd, Msg, wParam, lParam);
        else
@@ -513,7 +513,7 @@ LRESULT CallWindowProcM(WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wPara
 {
        LRESULT r = 0;
 START_ROUTINE
-       // WNDPROC\82ªShift_JIS\97p\82Å\82 \82é\82½\82ß
+       // WNDPROCがShift_JIS用であるため
        if(IsWindowUnicode(hWnd))
                r = CallWindowProcW(lpPrevWndFunc, hWnd, Msg, wParam, lParam);
        else
@@ -581,7 +581,7 @@ START_ROUTINE
                                Size = SendMessageW(hWnd, CB_GETLBTEXTLEN, wParam, 0) + 1;
                                pw0 = AllocateStringW(Size);
                                SendMessageW(hWnd, CB_GETLBTEXT, wParam, (LPARAM)pw0);
-                               // \83o\83b\83t\83@\92·\95s\96¾\82Ì\82½\82ß\83I\81[\83o\81[\83\89\83\93\82Ì\89Â\94\\90«\82 \82è
+                               // バッファ長不明のためオーバーランの可能性あり
                                WtoM((LPSTR)lParam, Size * 4, pw0, -1);
                                r = TerminateStringM((LPSTR)lParam, Size * 4);
                                break;
@@ -620,7 +620,7 @@ START_ROUTINE
                                Size = SendMessageW(hWnd, LB_GETTEXTLEN, wParam, 0) + 1;
                                pw0 = AllocateStringW(Size);
                                SendMessageW(hWnd, LB_GETTEXT, wParam, (LPARAM)pw0);
-                               // \83o\83b\83t\83@\92·\95s\96¾\82Ì\82½\82ß\83I\81[\83o\81[\83\89\83\93\82Ì\89Â\94\\90«\82 \82è
+                               // バッファ長不明のためオーバーランの可能性あり
                                WtoM((LPSTR)lParam, Size * 4, pw0, -1);
                                r = TerminateStringM((LPSTR)lParam, Size * 4);
                                break;
@@ -682,7 +682,7 @@ START_ROUTINE
                                {
                                        pw0 = DuplicateMtoW(pmLVItem->pszText, -1);
                                        wLVItem.pszText = pw0;
-                                       // TODO: cchTextMax\82Ì\8am\94F
+                                       // TODO: cchTextMaxの確認
                                        wLVItem.cchTextMax = pmLVItem->cchTextMax;
                                }
                                wLVItem.iImage = pmLVItem->iImage;
@@ -701,7 +701,7 @@ START_ROUTINE
                                {
                                        pw0 = DuplicateMtoW(pmLVItem->pszText, -1);
                                        wLVItem.pszText = pw0;
-                                       // TODO: cchTextMax\82Ì\8am\94F
+                                       // TODO: cchTextMaxの確認
                                        wLVItem.cchTextMax = pmLVItem->cchTextMax;
                                }
                                wLVItem.iImage = pmLVItem->iImage;
@@ -759,7 +759,7 @@ START_ROUTINE
                                {
                                        pw0 = DuplicateMtoW(pmLVColumn->pszText, -1);
                                        wLVColumn.pszText = pw0;
-                                       // TODO: cchTextMax\82Ì\8am\94F
+                                       // TODO: cchTextMaxの確認
                                        wLVColumn.cchTextMax = pmLVColumn->cchTextMax;
                                }
                                wLVColumn.iSubItem = pmLVColumn->iSubItem;
@@ -825,7 +825,7 @@ LRESULT DefDlgProcM(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
 {
        LRESULT r = 0;
 START_ROUTINE
-       // WNDPROC\82ªShift_JIS\97p\82Å\82 \82é\82½\82ß
+       // WNDPROCがShift_JIS用であるため
        if(IsWindowUnicode(hWnd))
                r = DefDlgProcW(hWnd, Msg, wParam, lParam);
        else
@@ -1342,7 +1342,7 @@ START_ROUTINE
        pw1 = DuplicateMtoW(lpDirectory, -1);
        pw2 = AllocateStringW(MAX_PATH * 4);
        r = FindExecutableW(pw0, pw1, pw2);
-       // \83o\83b\83t\83@\92·\95s\96¾\82Ì\82½\82ß\83I\81[\83o\81[\83\89\83\93\82Ì\89Â\94\\90«\82 \82è
+       // バッファ長不明のためオーバーランの可能性あり
        WtoM(lpResult, MAX_PATH, pw2, -1);
        TerminateStringM(lpResult, MAX_PATH);
 END_ROUTINE
@@ -1393,7 +1393,7 @@ START_ROUTINE
        wbi.lParam = lpbi->lParam;
        wbi.iImage = lpbi->iImage;
        r = SHBrowseForFolderW(&wbi);
-       // \83o\83b\83t\83@\92·\95s\96¾\82Ì\82½\82ß\83I\81[\83o\81[\83\89\83\93\82Ì\89Â\94\\90«\82 \82è
+       // バッファ長不明のためオーバーランの可能性あり
        WtoM(lpbi->pszDisplayName, MAX_PATH, wbi.pszDisplayName, -1);
        lpbi->iImage = wbi.iImage;
 END_ROUTINE
@@ -1409,7 +1409,7 @@ BOOL SHGetPathFromIDListM(PCIDLIST_ABSOLUTE pidl, LPSTR pszPath)
 START_ROUTINE
        pw0 = AllocateStringW(MAX_PATH * 4);
        r = SHGetPathFromIDListW(pidl, pw0);
-       // \83o\83b\83t\83@\92·\95s\96¾\82Ì\82½\82ß\83I\81[\83o\81[\83\89\83\93\82Ì\89Â\94\\90«\82 \82è
+       // バッファ長不明のためオーバーランの可能性あり
        WtoM(pszPath, MAX_PATH, pw0, -1);
        TerminateStringM(pszPath, MAX_PATH);
 END_ROUTINE
@@ -1684,7 +1684,7 @@ unsigned char * _mbschrM(const unsigned char * _Str, unsigned int _Ch)
        wchar_t* wr;
 START_ROUTINE
        pw0 = DuplicateMtoW(_Str, -1);
-       // TODO: \94ñASCII\95\8e\9a\82Ì\91Î\89\9e
+       // TODO: 非ASCII文字の対応
        wr = wcschr(pw0, _Ch);
        if(wr)
        {
@@ -1703,7 +1703,7 @@ unsigned char * _mbsrchrM(const unsigned char * _Str, unsigned int _Ch)
        wchar_t* wr;
 START_ROUTINE
        pw0 = DuplicateMtoW(_Str, -1);
-       // TODO: \94ñASCII\95\8e\9a\82Ì\91Î\89\9e
+       // TODO: 非ASCII文字の対応
        wr = wcsrchr(pw0, _Ch);
        if(wr)
        {
index aaf6e1b..545fc84 100644 (file)
@@ -1,6 +1,6 @@
-// mbswrapper.h
+// mbswrapper.h
 // Copyright (C) 2011 Suguru Kawamoto
-// \83}\83\8b\83`\83o\83C\83g\95\8e\9a\83\8f\83C\83h\95\8e\9aAPI\83\89\83b\83p\81[
+// マルチバイト文字ワイド文字APIラッパー
 
 #ifndef __MBSWRAPPER_H__
 #define __MBSWRAPPER_H__
index ffea407..1bbfda2 100644 (file)
@@ -1,2 +1,4 @@
 mbtoutf8 mesg-jpn.old.h mesg-jpn.h
 mbtoutf8 mesg-eng.old.h mesg-eng.h
+encutf8 mesg-jpn.h mesg-jpn.h
+encutf8 mesg-eng.h mesg-eng.h
diff --git a/md4.c b/md4.c
index 48b05fa..87b65c6 100644 (file)
--- a/md4.c
+++ b/md4.c
@@ -1,4 +1,4 @@
-/* MD4C.C - RSA Data Security, Inc., MD4 message-digest algorithm\r
+/* MD4C.C - RSA Data Security, Inc., MD4 message-digest algorithm\r
  */\r
 \r
 /* Copyright (C) 1990-2, RSA Data Security, Inc. All rights reserved.\r
diff --git a/md4.h b/md4.h
index b7998b4..ab061dc 100644 (file)
--- a/md4.h
+++ b/md4.h
@@ -1,4 +1,4 @@
-/* MD4.H - header file for MD4C.C\r
+/* MD4.H - header file for MD4C.C\r
  */\r
 \r
 /* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All\r
diff --git a/md5.c b/md5.c
index cdba935..a0424db 100644 (file)
--- a/md5.c
+++ b/md5.c
@@ -1,4 +1,4 @@
-/* MD5C.C - RSA Data Security, Inc., MD5 message-digest algorithm\r
+/* MD5C.C - RSA Data Security, Inc., MD5 message-digest algorithm\r
  */\r
 \r
 /* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All\r
diff --git a/md5.h b/md5.h
index 508c507..50ea670 100644 (file)
--- a/md5.h
+++ b/md5.h
@@ -1,4 +1,4 @@
-/* MD5.H - header file for MD5C.C\r
+/* MD5.H - header file for MD5C.C\r
  */\r
 \r
 /* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All\r
index ee9acde..bfa1106 100644 (file)
@@ -1,4 +1,4 @@
-#define MSGJPN001              "Connection cancelled."\r
+#define MSGJPN001           "Connection cancelled."\r
 #define MSGJPN002              "Connection cancelled."\r
 #define MSGJPN003              "\r\nReconnect.\r\n"\r
 #define MSGJPN004              "Disconnect."\r
index 6e23e2e..5ca9fb1 100644 (file)
@@ -1,4 +1,4 @@
-#define MSGJPN001              "\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x82\x92\xE4\xB8\xAD\xE6\xAD\xA2\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x97\xE3\x81\x9F."\r
+#define MSGJPN001           "\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x82\x92\xE4\xB8\xAD\xE6\xAD\xA2\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x97\xE3\x81\x9F."\r
 #define MSGJPN002              "\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x82\x92\xE4\xB8\xAD\xE6\xAD\xA2\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x97\xE3\x81\x9F."\r
 #define MSGJPN003              "\r\n\xE5\x86\x8D\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x99.\r\n"\r
 #define MSGJPN004              "\xE5\x88\x87\xE6\x96\xAD\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x97\xE3\x81\x9F"\r
 #define MSGJPN215              "OTP MD5"\r
 #define MSGJPN216              "OTP SHA-1"\r
 #define MSGJPN217              "\xE3\x83\x93\xE3\x83\xA5\xE3\x83\xBC\xE3\x83\xAF\xE3\x81\xAE\xE9\x81\xB8\xE6\x8A\x9E"\r
-#define MSGJPN218              "\xE5\xAE\x9F\xE8\xA1\x8C\xE3\x83\x95\xE3\x82\xA1\xE3\x82\xA4\xE3\x83\xAB\0*.exe;*.com;*.bat\0\xE5\x85\xA8\xE3\x81\xA6\xE3\x81\xAȨ²Ù\0*\0"\r
+#define MSGJPN218              "\xE5\xAE\x9F\xE8\xA1\x8C\xE3\x83\x95\xE3\x82\xA1\xE3\x82\xA4\xE3\x83\xAB\0*.exe;*.com;*.bat\0\xE5\x85\xA8\xE3\x81\xA6\xE3\x81\xAEファイル\0*\0"\r
 #define MSGJPN219              "Wave\xE3\x83\x95\xE3\x82\xA1\xE3\x82\xA4\xE3\x83\xAB"\r
 #define MSGJPN220              "\xE3\x83\x80\xE3\x82\xA4\xE3\x82\xA2\xE3\x83\xAB\xE3\x82\xA2\xE3\x83\x83\xE3\x83\x97\xE3\x82\x92\xE5\x88\x87\xE6\x96\xAD\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99."\r
 #define MSGJPN221              "\xE3\x83\x80\xE3\x82\xA4\xE3\x82\xA2\xE3\x83\xAB\xE3\x82\xA2\xE3\x83\x83\xE3\x83\x97\xE3\x81\xA7\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99."\r
 #define MSGJPN273              "\xE6\x9C\x80\xE6\x96\xB0\xE3\x81\xAE\xE6\x83\x85\xE5\xA0\xB1\xE3\x81\xAB\xE6\x9B\xB4\xE6\x96\xB0(&F)"\r
 #define MSGJPN274              "\xE9\x96\x8B\xE3\x81\x8F(&O)"\r
 #define MSGJPN275              "%s\xE3\x81\xA7\xE9\x96\x8B\xE3\x81\x8F(&%d)"\r
-#define MSGJPN276              "WS_FTP.INI\0ws_ftp.ini\0\xE5\x85\xA8\xE3\x81\xA6\xE3\x81\xAȨ²Ù\0*\0"\r
+#define MSGJPN276              "WS_FTP.INI\0ws_ftp.ini\0\xE5\x85\xA8\xE3\x81\xA6\xE3\x81\xAEファイル\0*\0"\r
 #define MSGJPN277              "Wave\xE3\x83\x95\xE3\x82\xA1\xE3\x82\xA4\xE3\x83\xAB\0*.wav\0\xE5\x85\xA8\xE3\x81\xA6\xE3\x81\xAE\xE3\x83\x95\xE3\x82\xA1\xE3\x82\xA4\xE3\x83\xAB\0*\0"\r
 #define MSGJPN278              "\xE7\x90\x86\xE7\x94\xB1\xEF\xBC\x9A%s"\r
 #define MSGJPN279              "Listen\xE3\x82\xBD\xE3\x82\xB1\xE3\x83\x83\xE3\x83\x88\xE3\x81\x8C\xE5\x8F\x96\xE5\xBE\x97\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93"\r
diff --git a/misc.c b/misc.c
index 7704463..58700a7 100644 (file)
--- a/misc.c
+++ b/misc.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                      \82»\82Ì\91¼\82Ì\94Ä\97p\83T\83u\83\8b\81[\83`\83\93\r
+*                                                      その他の汎用サブルーチン\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include <htmlhelp.h>\r
 #include "helpid.h"\r
 \r
-// UTF-8\91Î\89\9e\r
+// UTF-8対応\r
 #undef __MBSWRAPPER_H__\r
 #include "mbswrapper.h"\r
 \r
 \r
 \r
-/*===== \93ü\97Í\83_\83C\83A\83\8d\83O\83f\81[\83^\82Ì\83X\83g\83\89\83N\83`\83\83 =====*/\r
+/*===== 入力ダイアログデータのストラクチャ =====*/\r
 \r
 typedef struct {\r
-       char Title[80];                 /* \83_\83C\83A\83\8d\83O\82Ì\83^\83C\83g\83\8b */\r
-       char Str[FMAX_PATH+1];  /* \83f\83t\83H\83\8b\83g\95\8e\9a\97ñ\81^\93ü\97Í\82³\82ê\82½\95\8e\9a\97ñ(Output) */\r
-       int MaxLen;                             /* \95\8e\9a\97ñ\82Ì\8dÅ\92· */\r
-       int Anonymous;                  /* Anonymous\83t\83\89\83O(Output) */\r
+       char Title[80];                 /* ダイアログのタイトル */\r
+       char Str[FMAX_PATH+1];  /* デフォルト文字列/入力された文字列(Output) */\r
+       int MaxLen;                             /* æ\96\87å­\97å\88\97ã\81®æ\9c\80é\95· */\r
+       int Anonymous;                  /* Anonymousフラグ(Output) */\r
 } DIALOGDATA;\r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static BOOL CALLBACK InputDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern HWND hHelpWin;\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
-static DIALOGDATA *DialogData;         /* \93ü\97Í\83_\83C\83A\83\8d\83O\83f\81[\83^ */\r
+static DIALOGDATA *DialogData;         /* 入力ダイアログデータ */\r
 static int HelpPage;\r
 \r
 \r
 \r
-/*----- \93ü\97Í\83_\83C\83A\83\8d\83O\82ð\95\\8e¦ --------------------------------------------------\r
+/*----- 入力ダイアログを表示 --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Res : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82ÌID\r
-*              HWND hWnd : \90e\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              char *Title : \83E\83C\83\93\83h\83E\83^\83C\83g\83\8b (NULL=\90Ý\92è\82µ\82È\82¢)\r
-*              char *Buf : \83G\83f\83B\83b\83g\83{\83b\83N\83X\82Ì\8f\89\8aú\95\8e\9a\97ñ\81^\93ü\97Í\95\8e\9a\97ñ\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              int Max : \83o\83b\83t\83@\82Ì\83T\83C\83Y (FMAX_PATH+1\88È\89º\82Å\82 \82é\82±\82Æ)\r
-*              int *Flg : \83t\83\89\83O\82Ì\8f\89\8aú\92l\81^\83t\83\89\83O\82ð\95Ô\82·\83\8f\81[\83N\r
-*              int Help : \83w\83\8b\83v\82Ì\83R\83\93\83e\83L\83X\83g\94Ô\8d\86\r
+*              int Res : ダイアログボックスのID\r
+*              HWND hWnd : 親ウインドウのウインドウハンドル\r
+*              char *Title : ウインドウタイトル (NULL=設定しない)\r
+*              char *Buf : エディットボックスの初期文字列/入力文字列を返すバッファ\r
+*              int Max : バッファのサイズ (FMAX_PATH+1以下であること)\r
+*              int *Flg : フラグの初期値/フラグを返すワーク\r
+*              int Help : ヘルプのコンテキスト番号\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES/NO=\8eæ\82è\8fÁ\82µ)\r
+*              int ステータス (YES/NO=取り消し)\r
 *\r
 *      Note\r
-*              \83_\83C\83A\83\8d\83O\82Í\82P\8cÂ\82ÌEditBox\82Æ\82P\8cÂ\82ÌButton\82ð\8e\9d\82Â\82à\82Ì\82ð\8eg\82¤\r
+*              ダイアログは1個のEditBoxと1個のButtonを持つものを使う\r
 *----------------------------------------------------------------------------*/\r
 \r
 int InputDialogBox(int Res, HWND hWnd, char *Title, char *Buf, int Max, int *Flg, int Help)\r
@@ -120,13 +120,13 @@ int InputDialogBox(int Res, HWND hWnd, char *Title, char *Buf, int Max, int *Flg
 }\r
 \r
 \r
-/*----- \93ü\97Í\83_\83C\83A\83\8d\83O\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------------------\r
+/*----- 入力ダイアログのコールバック ------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -174,13 +174,13 @@ static BOOL CALLBACK InputDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam
 }\r
 \r
 \r
-/*----- \81m\8eÀ\8ds\81n\82Æ\81m\8eæ\8fÁ\81n\82¾\82¯\82Ì\83_\83C\83A\83\8d\83O\82Ì\8b¤\92Ê\83R\81[\83\8b\83o\83b\83N\8aÖ\90\94 --------------\r
+/*----- [実行]と[取消]だけのダイアログの共通コールバック関数 --------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -210,13 +210,13 @@ BOOL CALLBACK ExeEscDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lP
 }\r
 \r
 \r
-/*----- \81m\8eÀ\8ds\81n\82Æ\81m\8eæ\8fÁ\81n\82¾\82¯\82Ì\83_\83C\83A\83\8d\83O\82Ì\8b¤\92Ê\83R\81[\83\8b\83o\83b\83N\8aÖ\90\94(\83e\83L\83X\83g\95\\8e¦\82Â\82«)\r
+/*----- [実行]と[取消]だけのダイアログの共通コールバック関数(テキスト表示つき)\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -247,16 +247,16 @@ BOOL CALLBACK ExeEscTextDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARA
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82Ì\8dÅ\8cã\82É "\" \82ð\95t\82¯\82é -------------------------------------------\r
+/*----- 文字列の最後に "\" を付ける -------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83I\83\8a\83W\83i\83\8b\82Ì\95\8e\9a\97ñ char *Str \82ª\95Ï\8dX\82³\82ê\82Ü\82·\81B\r
+*              オリジナルの文字列 char *Str が変更されます。\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetYenTail(char *Str)\r
@@ -268,16 +268,16 @@ void SetYenTail(char *Str)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82Ì\8dÅ\8cã\82Ì "\" \82ð\8eæ\82è\8f\9c\82­ -----------------------------------------\r
+/*----- 文字列の最後の "\" を取り除く -----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83I\83\8a\83W\83i\83\8b\82Ì\95\8e\9a\97ñ char *Str \82ª\95Ï\8dX\82³\82ê\82Ü\82·\81B\r
+*              オリジナルの文字列 char *Str が変更されます。\r
 *----------------------------------------------------------------------------*/\r
 \r
 void RemoveYenTail(char *Str)\r
@@ -294,16 +294,16 @@ void RemoveYenTail(char *Str)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82Ì\8dÅ\8cã\82É "/" \82ð\95t\82¯\82é -------------------------------------------\r
+/*----- 文字列の最後に "/" を付ける -------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83I\83\8a\83W\83i\83\8b\82Ì\95\8e\9a\97ñ char *Str \82ª\95Ï\8dX\82³\82ê\82Ü\82·\81B\r
+*              オリジナルの文字列 char *Str が変更されます。\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetSlashTail(char *Str)\r
@@ -315,16 +315,16 @@ void SetSlashTail(char *Str)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82©\82ç\89ü\8ds\83R\81[\83h\82ð\8eæ\82è\8f\9c\82­ ----------------------------------------\r
+/*----- 文字列から改行コードを取り除く ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83I\83\8a\83W\83i\83\8b\82Ì\95\8e\9a\97ñ char *Str \82ª\95Ï\8dX\82³\82ê\82Ü\82·\81B\r
+*              オリジナルの文字列 char *Str が変更されます。\r
 *----------------------------------------------------------------------------*/\r
 \r
 void RemoveReturnCode(char *Str)\r
@@ -339,15 +339,15 @@ void RemoveReturnCode(char *Str)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\93à\82Ì\93Á\92è\82Ì\95\8e\9a\82ð\91S\82Ä\92u\82«\8a·\82¦\82é ----------------------------------\r
+/*----- 文字列内の特定の文字を全て置き換える ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              char Src : \8c\9f\8dõ\95\8e\9a\r
-*              char Dst : \92u\8a·\95\8e\9a\r
+*              char *Str : 文字列\r
+*              char Src : 検索文字\r
+*              char Dst : 置換文字\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ReplaceAll(char *Str, char Src, char Dst)\r
@@ -360,15 +360,15 @@ void ReplaceAll(char *Str, char Src, char Dst)
 }\r
 \r
 \r
-/*----- \90\94\8e\9a\82à\82µ\82­\82Í\93Á\92è\82Ì\82P\95\8e\9a\82©\83`\83F\83b\83N ------------------------------------\r
+/*----- 数字もしくは特定の1文字かチェック ------------------------------------\r
 *\r
 *      Parameter\r
-*              int Ch : \83`\83F\83b\83N\82·\82é\95\8e\9a\r
-*              int Sym : \8bL\8d\86\r
+*              int Ch : チェックする文字\r
+*              int Sym : 記号\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      0=\90\94\8e\9a\82Å\82à\93Á\92è\82Ì\8bL\8d\86\82Å\82à\82È\82¢\r
+*              int ステータス\r
+*                      0=数字でも特定の記号でもない\r
 *----------------------------------------------------------------------------*/\r
 \r
 int IsDigitSym(int Ch, int Sym)\r
@@ -384,14 +384,14 @@ int IsDigitSym(int Ch, int Sym)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ª\91S\82Ä\93¯\82\95\8e\9a\82©\83`\83F\83b\83N ----------------------------------------\r
+/*----- 文字列が全て同じ文字かチェック ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              int Ch : \95\8e\9a\r
+*              char *Str : 文字列\r
+*              int Ch : 文字\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      YES/NO\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -413,13 +413,13 @@ int StrAllSameChar(char *Str, char Ch)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82Ì\96\96\94ö\82Ì\83X\83y\81[\83X\82ð\8dí\8f\9c ------------------------------------------\r
+/*----- 文字列の末尾のスペースを削除 ------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void RemoveTailingSpaces(char *Str)\r
@@ -437,15 +437,15 @@ void RemoveTailingSpaces(char *Str)
 }\r
 \r
 \r
-/*----- \91å\95\8e\9a\81^\8f¬\95\8e\9a\82ð\8bæ\95Ê\82µ\82È\82¢strstr --------------------------------------\r
+/*----- 大文字/小文字を区別しないstrstr --------------------------------------\r
 *\r
 *      Parameter\r
-*              char *s1 : \95\8e\9a\97ñ\82P\r
-*              char *s2 : \95\8e\9a\97ñ\82Q\r
+*              char *s1 : 文字列1\r
+*              char *s2 : 文字列2\r
 *\r
 *      Return Value\r
-*              char *\95\8e\9a\97ñ\82P\92\86\82Å\95\8e\9a\97ñ\82Q\82ª\8c©\82Â\82©\82Á\82½\88Ê\92u\r
-*                      NULL=\8c©\82Â\82©\82ç\82È\82©\82Á\82½\r
+*              char *文字列1中で文字列2が見つかった位置\r
+*                      NULL=見つからなかった\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *stristr(char *s1, char *s2)\r
@@ -467,14 +467,14 @@ char *stristr(char *s1, char *s2)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\92\86\82Ì\83X\83y\81[\83X\82Å\8bæ\90Ø\82ç\82ê\82½\8e\9f\82Ì\83t\83B\81[\83\8b\83h\82ð\95Ô\82· --------------------\r
+/*----- 文字列中のスペースで区切られた次のフィールドを返す --------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              char *\8e\9f\82Ì\83t\83B\81[\83\8b\83h\r
-*                      NULL=\8c©\82Â\82©\82ç\82È\82©\82Á\82½\r
+*              char *次のフィールド\r
+*                      NULL=見つからなかった\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *GetNextField(char *Str)\r
@@ -495,16 +495,16 @@ char *GetNextField(char *Str)
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\82Ì\83t\83B\81[\83\8b\83h\82Ì\95\8e\9a\97ñ\82ð\83R\83s\81[\82·\82é ----------------------------------\r
+/*----- 現在のフィールドの文字列をコピーする ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              char *Buf : \83R\83s\81[\90æ\r
-*              int Max : \8dÅ\91å\95\8e\9a\90\94\r
+*              char *Str : 文字列\r
+*              char *Buf : コピー先\r
+*              int Max : 最大文字数\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL=\92·\82³\82ª\92·\82·\82¬\82é\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL=長さが長すぎる\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetOneField(char *Str, char *Buf, int Max)\r
@@ -512,13 +512,13 @@ int GetOneField(char *Str, char *Buf, int Max)
        int Sts;\r
        char *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Pos = strchr(Str, ' ')) == NULL)\r
        {\r
                if((int)strlen(Str) <= Max)\r
                {\r
                        strcpy(Buf, Str);\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        else\r
@@ -527,20 +527,20 @@ int GetOneField(char *Str, char *Buf, int Max)
                {\r
                        strncpy(Buf, Str, Pos - Str);\r
                        *(Buf + (Pos - Str)) = NUL;\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83J\83\93\83}\82ð\8eæ\82è\8f\9c\82­ ------------------------------------------------------\r
+/*----- カンマを取り除く ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void RemoveComma(char *Str)\r
@@ -562,16 +562,16 @@ void RemoveComma(char *Str)
 }\r
 \r
 \r
-/*----- \83p\83X\96¼\82Ì\92\86\82Ì\83t\83@\83C\83\8b\96¼\82Ì\90æ\93ª\82ð\95Ô\82· ------------------------------------\r
+/*----- パス名の中のファイル名の先頭を返す ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              char *\83t\83@\83C\83\8b\96¼\82Ì\90æ\93ª\r
+*              char *ファイル名の先頭\r
 *\r
 *      Note\r
-*              \83f\83B\83\8c\83N\83g\83\8a\82Ì\8bæ\90Ø\82è\8bL\8d\86\82Í "\" \82Æ "/" \82Ì\97¼\95û\82ª\97L\8cø\r
+*              ディレクトリの区切り記号は "\" と "/" の両方が有効\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *GetFileName(char *Path)\r
@@ -591,13 +591,13 @@ char *GetFileName(char *Path)
 }\r
 \r
 \r
-/*----- \83c\81[\83\8b\82Ì\95\\8e¦\96¼\82ð\95Ô\82· --------------------------------------------------\r
+/*----- ツールの表示名を返す --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              char * : \95\\8e¦\96¼\r
+*              char * : 表示名\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *GetToolName(char *Path)\r
@@ -614,13 +614,13 @@ char *GetToolName(char *Path)
 }\r
 \r
 \r
-/*----- \83p\83X\96¼\82Ì\92\86\82Ì\8ag\92£\8eq\82Ì\90æ\93ª\82ð\95Ô\82· ----------------------------------------\r
+/*----- パス名の中の拡張子の先頭を返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              char *\8ag\92£\8eq\82Ì\90æ\93ª\r
+*              char *拡張子の先頭\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *GetFileExt(char *Path)\r
@@ -641,17 +641,17 @@ char *GetFileExt(char *Path)
 }\r
 \r
 \r
-/*----- \83p\83X\96¼\82©\82ç\83t\83@\83C\83\8b\96¼\82ð\8eæ\82è\8f\9c\82­ ----------------------------------------\r
+/*----- パス名からファイル名を取り除く ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              char *Buf : \83t\83@\83C\83\8b\96¼\82ð\8f\9c\82¢\82½\83p\83X\96¼\82Ì\83R\83s\81[\90æ\r
+*              char *Path : パス名\r
+*              char *Buf : ファイル名を除いたパス名のコピー先\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83f\83B\83\8c\83N\83g\83\8a\82Ì\8bæ\90Ø\82è\8bL\8d\86\82Í "\" \82Æ "/" \82Ì\97¼\95û\82ª\97L\8cø\r
+*              ディレクトリの区切り記号は "\" と "/" の両方が有効\r
 *----------------------------------------------------------------------------*/\r
 \r
 void RemoveFileName(char *Path, char *Buf)\r
@@ -672,19 +672,19 @@ void RemoveFileName(char *Path, char *Buf)
 }\r
 \r
 \r
-/*----- \8fã\88Ê\83f\83B\83\8c\83N\83g\83\8a\82Ì\83p\83X\96¼\82ð\8eæ\93¾ ----------------------------------------\r
+/*----- 上位ディレクトリのパス名を取得 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83f\83B\83\8c\83N\83g\83\8a\82Ì\8bæ\90Ø\82è\8bL\8d\86\82Í "\" \82Æ "/" \82Ì\97¼\95û\82ª\97L\8cø\r
-*              \8dÅ\8f\89\82Ì "\"\82â"/"\82Í\8ec\82·\r
-*                      \97á\81j "/pub"   --> "/"\r
-*                      \97á\81j "C:\DOS" --> "C:\"\r
+*              ディレクトリの区切り記号は "\" と "/" の両方が有効\r
+*              最初の "\"や"/"は残す\r
+*                      例) "/pub"   --> "/"\r
+*                      例) "C:\DOS" --> "C:\"\r
 *----------------------------------------------------------------------------*/\r
 \r
 void GetUpperDir(char *Path)\r
@@ -706,19 +706,19 @@ void GetUpperDir(char *Path)
 }\r
 \r
 \r
-/*----- \8fã\88Ê\83f\83B\83\8c\83N\83g\83\8a\82Ì\83p\83X\96¼\82ð\8eæ\93¾ ----------------------------------------\r
+/*----- 上位ディレクトリのパス名を取得 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \83f\83B\83\8c\83N\83g\83\8a\82Ì\8bæ\90Ø\82è\8bL\8d\86\82Í "\" \82Æ "/" \82Ì\97¼\95û\82ª\97L\8cø\r
-*              \8dÅ\8f\89\82Ì "\"\82â"/"\82à\8fÁ\82·\r
-*                      \97á\81j "/pub"   --> ""\r
-*                      \97á\81j "C:\DOS" --> "C:"\r
+*              ディレクトリの区切り記号は "\" と "/" の両方が有効\r
+*              最初の "\"や"/"も消す\r
+*                      例) "/pub"   --> ""\r
+*                      例) "C:\DOS" --> "C:"\r
 *----------------------------------------------------------------------------*/\r
 \r
 void GetUpperDirEraseTopSlash(char *Path)\r
@@ -735,16 +735,16 @@ void GetUpperDirEraseTopSlash(char *Path)
 }\r
 \r
 \r
-/*----- \83f\83B\83\8c\83N\83g\83\8a\82Ì\8aK\91w\90\94\82ð\95Ô\82· --------------------------------------------\r
+/*----- ディレクトリの階層数を返す --------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \92P\82É '\' \82Æ '/'\82Ì\90\94\82ð\95Ô\82·\82¾\82¯\r
+*              単に '\' と '/'の数を返すだけ\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskDirLevel(char *Path)\r
@@ -763,14 +763,14 @@ int AskDirLevel(char *Path)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\83T\83C\83Y\82ð\95\8e\9a\97ñ\82É\95Ï\8a·\82·\82é --------------------------------------\r
+/*----- ファイルサイズを文字列に変換する --------------------------------------\r
 *\r
 *      Parameter\r
-*              double Size : \83t\83@\83C\83\8b\83T\83C\83Y\r
-*              char *Buf : \95\8e\9a\97ñ\82ð\95Ô\82·\83o\83b\83t\83@\r
+*              double Size : ファイルサイズ\r
+*              char *Buf : 文字列を返すバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void MakeSizeString(double Size, char *Buf)\r
@@ -792,14 +792,14 @@ void MakeSizeString(double Size, char *Buf)
 }\r
 \r
 \r
-/*----- StaticText\82Ì\97Ì\88æ\82É\8eû\82Ü\82é\82æ\82¤\82É\83p\83X\96¼\82ð\90®\8c`\82µ\82Ä\95\\8e¦ --------------------\r
+/*----- StaticTextの領域に収まるようにパス名を整形して表示 --------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              char *Str : \95\8e\9a\97ñ (\92·\82³\82ÍFMAX_PATH\88È\89º)\r
+*              HWND hWnd : ウインドウハンドル\r
+*              char *Str : 文字列 (長さはFMAX_PATH以下)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispStaticText(HWND hWnd, char *Str)\r
@@ -848,19 +848,19 @@ void DispStaticText(HWND hWnd, char *Str)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\83A\83\8c\83C\82Ì\92·\82³\82ð\8b\81\82ß\82é --------------------------------------------\r
+/*----- 文字列アレイの長さを求める --------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\83A\83\8c\83C (\96\96\94ö\82ÍNUL\82Q\82Â)\r
+*              char *Str : 文字列アレイ (末尾はNUL2つ)\r
 *\r
 *      Return Value\r
-*              int \92·\82³\r
+*              int 長さ\r
 *\r
 *      Note\r
-*              \8fI\92[\82Ì2\82Â\82ÌNUL\82Ì\82¤\82¿\82Ì\8dÅ\8cã\82Ì\95¨\82Í\90\94\82¦\82È\82¢\r
+*              終端の2つのNULのうちの最後の物は数えない\r
 *                      StrMultiLen("") = 0\r
 *                      StrMultiLen("abc\0xyz\0") = 8\r
-*                      StrMultiLen("abc") = \8fI\92[\82ª\82Q\82Â\82ÌNUL\82Å\82È\82¢\82Ì\82Å\8b\81\82ß\82ç\82ê\82È\82¢\r
+*                      StrMultiLen("abc") = 終端が2つのNULでないので求められない\r
 *----------------------------------------------------------------------------*/\r
 \r
 int StrMultiLen(char *Str)\r
@@ -879,14 +879,14 @@ int StrMultiLen(char *Str)
 }\r
 \r
 \r
-/*----- RECT\82ð\83N\83\89\83C\83A\83\93\83g\8dÀ\95W\82©\82ç\83X\83N\83\8a\81[\83\93\8dÀ\95W\82É\95Ï\8a· ------------------------\r
+/*----- RECTをクライアント座標からスクリーン座標に変換 ------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND hWnd : ウインドウハンドル\r
 *              RECT *Rect : RECT\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void RectClientToScreen(HWND hWnd, RECT *Rect)\r
@@ -909,13 +909,13 @@ void RectClientToScreen(HWND hWnd, RECT *Rect)
 }\r
 \r
 \r
-/*----- 16\90i\95\8e\9a\82ð\83o\83C\83i\83\8a\82É\95Ï\8a· ----------------------------------------------\r
+/*----- 16進文字をバイナリに変換 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char Ch : 16\90i\95\8e\9a\r
+*              char Ch : 16進文字\r
 *\r
 *      Return Value\r
-*              int \83o\83C\83i\83\8a\92l\r
+*              int バイナリ値\r
 *----------------------------------------------------------------------------*/\r
 \r
 int hex2bin(char Ch)\r
@@ -933,22 +933,22 @@ int hex2bin(char Ch)
 }\r
 \r
 \r
-/*----- \82t\82m\82b\95\8e\9a\97ñ\82ð\95ª\89ð\82·\82é ------------------------------------------------\r
+/*----- UNC文字列を分解する ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *unc : UNC\95\8e\9a\97ñ\r
-*              char *Host : \83z\83X\83g\96¼\82ð\83R\83s\81[\82·\82é\83o\83b\83t\83@ (\83T\83C\83Y\82Í HOST_ADRS_LEN+1)\r
-*              char *Path : \83p\83X\96¼\82ð\83R\83s\81[\82·\82é\83o\83b\83t\83@ (\83T\83C\83Y\82Í FMAX_PATH+1)\r
-*              char *File : \83t\83@\83C\83\8b\96¼\82ð\83R\83s\81[\82·\82é\83o\83b\83t\83@ (\83T\83C\83Y\82Í FMAX_PATH+1)\r
-*              char *User : \83\86\81[\83U\96¼\82ð\83R\83s\81[\82·\82é\83o\83b\83t\83@ (\83T\83C\83Y\82Í USER_NAME_LEN+1)\r
-*              char *Pass : \83p\83X\83\8f\81[\83h\82ð\83R\83s\81[\82·\82é\83o\83b\83t\83@ (\83T\83C\83Y\82Í PASSWORD_LEN+1)\r
-*              int *Port : \83|\81[\83g\94Ô\8d\86\82ð\83R\83s\81[\82·\82é\83o\83b\83t\83@\r
+*              char *unc : UNC文字列\r
+*              char *Host : ホスト名をコピーするバッファ (サイズは HOST_ADRS_LEN+1)\r
+*              char *Path : パス名をコピーするバッファ (サイズは FMAX_PATH+1)\r
+*              char *File : ファイル名をコピーするバッファ (サイズは FMAX_PATH+1)\r
+*              char *User : ユーザ名をコピーするバッファ (サイズは USER_NAME_LEN+1)\r
+*              char *Pass : パスワードをコピーするバッファ (サイズは PASSWORD_LEN+1)\r
+*              int *Port : ポート番号をコピーするバッファ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *\r
-*      "\"\82Í\91S\82Ä"/"\82É\92u\82«\8a·\82¦\82é\r
+*      "\"は全て"/"に置き換える\r
 *----------------------------------------------------------------------------*/\r
 \r
 int SplitUNCpath(char *unc, char *Host, char *Path, char *File, char *User, char *Pass, int *Port)\r
@@ -1015,23 +1015,23 @@ int SplitUNCpath(char *unc, char *Host, char *Path, char *File, char *User, char
                strncpy(Host, Pos1, HOST_ADRS_LEN);\r
        }\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(strlen(Host) > 0)\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
 \r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \93ú\95t\95\8e\9a\97ñ(JST)\82ðFILETIME(UTC)\82É\95Ï\8a· ----------------------------------\r
+/*----- 日付文字列(JST)をFILETIME(UTC)に変換 ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Time : \93ú\95t\95\8e\9a\97ñ ("yyyy/mm/dd hh:mm")\r
-*              FILETIME *Buf : \83t\83@\83C\83\8b\83^\83C\83\80\82ð\95Ô\82·\83\8f\81[\83N\r
+*              char *Time : 日付文字列 ("yyyy/mm/dd hh:mm")\r
+*              FILETIME *Buf : ファイルタイムを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      YES/NO=\93ú\95t\8fî\95ñ\82ª\82È\82©\82Á\82½\r
+*              int ステータス\r
+*                      YES/NO=日付情報がなかった\r
 *----------------------------------------------------------------------------*/\r
 \r
 int TimeString2FileTime(char *Time, FILETIME *Buf)\r
@@ -1070,16 +1070,16 @@ int TimeString2FileTime(char *Time, FILETIME *Buf)
 }\r
 \r
 \r
-/*----- FILETIME(UTC)\82ð\93ú\95t\95\8e\9a\97ñ(JST)\82É\95Ï\8a· ----------------------------------\r
+/*----- FILETIME(UTC)を日付文字列(JST)に変換 ----------------------------------\r
 *\r
 *      Parameter\r
-*              FILETIME *Time : \83t\83@\83C\83\8b\83^\83C\83\80\r
-*              char *Buf : \93ú\95t\95\8e\9a\97ñ\82ð\95Ô\82·\83\8f\81[\83N\r
-*              int Mode : \83\82\81[\83h (DISPFORM_xxx)\r
-*              int InfoExist : \8fî\95ñ\82ª\82 \82é\82©\82Ç\82¤\82© (FINFO_xxx)\r
+*              FILETIME *Time : ファイルタイム\r
+*              char *Buf : 日付文字列を返すワーク\r
+*              int Mode : モード (DISPFORM_xxx)\r
+*              int InfoExist : 情報があるかどうか (FINFO_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void FileTime2TimeString(FILETIME *Time, char *Buf, int Mode, int InfoExist)\r
@@ -1109,20 +1109,20 @@ void FileTime2TimeString(FILETIME *Time, char *Buf, int Mode, int InfoExist)
        else\r
        {\r
 //             if (!strftime((char *)str, 100, "%c",  (const struct tm *)thetime))\r
-//                     SetTaskMsg("strftime \82ª\8e¸\94s\82µ\82Ü\82µ\82½!\n");\r
+//                     SetTaskMsg("strftime が失敗しました!\n");\r
        }\r
        return;\r
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\83^\83C\83\80\82ð\8ew\92è\83^\83C\83\80\83]\81[\83\93\82Ì\83\8d\81[\83J\83\8b\83^\83C\83\80\82©\82çGMT\82É\95Ï\8a· ---------\r
+/*----- ファイルタイムを指定タイムゾーンのローカルタイムからGMTに変換 ---------\r
 *\r
 *      Parameter\r
-*              FILETIME *Time : \83t\83@\83C\83\8b\83^\83C\83\80\r
-*              int TimeZone : \83^\83C\83\80\83]\81[\83\93\r
+*              FILETIME *Time : ファイルタイム\r
+*              int TimeZone : タイムゾーン\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SpecificLocalFileTime2FileTime(FILETIME *Time, int TimeZone)\r
@@ -1141,13 +1141,13 @@ void SpecificLocalFileTime2FileTime(FILETIME *Time, int TimeZone)
 }\r
 \r
 \r
-/*----- \91®\90«\95\8e\9a\97ñ\82ð\92l\82É\95Ï\8a· --------------------------------------------------\r
+/*----- 属性文字列を値に変換 --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \91®\90«\95\8e\9a\97ñ ("rwxrwxrwx")\r
+*              char *Str : 属性文字列 ("rwxrwxrwx")\r
 *\r
 *      Return Value\r
-*              int \92l\r
+*              int \r
 *----------------------------------------------------------------------------*/\r
 \r
 int AttrString2Value(char *Str)\r
@@ -1184,14 +1184,14 @@ int AttrString2Value(char *Str)
 }\r
 \r
 \r
-/*----- \91®\90«\82Ì\92l\82ð\95\8e\9a\97ñ\82É\95Ï\8a· ------------------------------------------------\r
+/*----- 属性の値を文字列に変換 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Attr : \91®\90«\82Ì\92l\r
-*              char *Buf : \91®\90«\95\8e\9a\97ñ\82ð\83Z\83b\83g\82·\82é\83o\83b\83t\83@ ("rwxrwxrwx")\r
+*              int Attr : 属性の値\r
+*              char *Buf : 属性文字列をセットするバッファ ("rwxrwxrwx")\r
 *\r
 *      Return Value\r
-*              int \92l\r
+*              int \r
 *----------------------------------------------------------------------------*/\r
 \r
 void AttrValue2String(int Attr, char *Buf)\r
@@ -1223,13 +1223,13 @@ void AttrValue2String(int Attr, char *Buf)
 }\r
 \r
 \r
-/*----- INI\83t\83@\83C\83\8b\95\8e\9a\97ñ\82ð\90®\8c` -----------------------------------------------\r
+/*----- INIファイル文字列を整形 -----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void FormatIniString(char *Str)\r
@@ -1257,20 +1257,20 @@ void FormatIniString(char *Str)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\91I\91ð ----------------------------------------------------------\r
+/*----- ファイル選択 ----------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              char *Title : \83^\83C\83g\83\8b\r
-*              char *Filters : \83t\83B\83\8b\83^\81[\95\8e\9a\97ñ\r
-*              char *Ext : \83f\83t\83H\83\8b\83g\8ag\92£\8eq\r
-*              int Flags : \92Ç\89Á\82·\82é\83t\83\89\83O\r
-*              int Save : \81u\8aJ\82­\81v\82©\81u\95Û\91\81v\82© (0=\8aJ\82­, 1=\95Û\91)\r
+*              HWND hWnd : ウインドウハンドル\r
+*              char *Fname : ファイル名を返すバッファ\r
+*              char *Title : タイトル\r
+*              char *Filters : フィルター文字列\r
+*              char *Ext : デフォルト拡張子\r
+*              int Flags : 追加するフラグ\r
+*              int Save : 「開く」か「保存」か (0=開く, 1=保存)\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      TRUE/FALSE=\8eæ\8fÁ\r
+*              int ステータス\r
+*                      TRUE/FALSE=取消\r
 *----------------------------------------------------------------------------*/\r
 \r
 int SelectFile(HWND hWnd, char *Fname, char *Title, char *Filters, char *Ext, int Flags, int Save)\r
@@ -1318,16 +1318,16 @@ int SelectFile(HWND hWnd, char *Fname, char *Title, char *Filters, char *Ext, in
 }\r
 \r
 \r
-/*----- \83f\83B\83\8c\83N\83g\83\8a\82ð\91I\91ð ----------------------------------------------------\r
+/*----- ディレクトリを選択 ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              char *Buf : \83f\83B\83\8c\83N\83g\83\8a\96¼\82ð\95Ô\82·\83o\83b\83t\83@\81i\8f\89\8aú\83f\83B\83\8c\83N\83g\83\8a\96¼\81j\r
-*              int MaxLen : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              HWND hWnd : ウインドウハンドル\r
+*              char *Buf : ディレクトリ名を返すバッファ(初期ディレクトリ名)\r
+*              int MaxLen : バッファのサイズ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      TRUE/FALSE=\8eæ\8fÁ\r
+*              int ステータス\r
+*                      TRUE/FALSE=取消\r
 *----------------------------------------------------------------------------*/\r
 \r
 int SelectDir(HWND hWnd, char *Buf, int MaxLen)\r
@@ -1367,20 +1367,20 @@ int SelectDir(HWND hWnd, char *Buf, int MaxLen)
 }\r
 \r
 \r
-/*----- \92l\82É\8aÖ\98A\95t\82¯\82ç\82ê\82½\83\89\83W\83I\83{\83^\83\93\82ð\83`\83F\83b\83N\82·\82é --------------------------\r
+/*----- 値に関連付けられたラジオボタンをチェックする --------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int Value : \92l\r
-*              const RADIOBUTTON *Buttons : \83\89\83W\83I\83{\83^\83\93\82Æ\92l\82Ì\8aÖ\98A\95t\82¯\83e\81[\83u\83\8b\r
-*              int Num : \83{\83^\83\93\82Ì\90\94\r
+*              HWND hDlg : ダイアログボックスのウインドウハンドル\r
+*              int Value : \r
+*              const RADIOBUTTON *Buttons : ラジオボタンと値の関連付けテーブル\r
+*              int Num : ボタンの数\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \92l\82É\8aÖ\98A\95t\82¯\82ç\82ê\82½\83{\83^\83\93\82ª\96³\82¢\8e\9e\82Í\81A\83e\81[\83u\83\8b\82Ì\8dÅ\8f\89\82É\93o\98^\82³\82ê\82Ä\82¢\82é\83{\83^\r
-*              \83\93\82ð\83`\83F\83b\83N\82·\82é\r
+*              値に関連付けられたボタンが無い時は、テーブルの最初に登録されているボタ\r
+*              ンをチェックする\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetRadioButtonByValue(HWND hDlg, int Value, const RADIOBUTTON *Buttons, int Num)\r
@@ -1394,8 +1394,8 @@ void SetRadioButtonByValue(HWND hDlg, int Value, const RADIOBUTTON *Buttons, int
                if(Value == Buttons->Value)\r
                {\r
                        SendDlgItemMessage(hDlg, Buttons->ButID, BM_SETCHECK, 1, 0);\r
-                       /* \83\89\83W\83I\83{\83^\83\93\82ð\95Ï\8dX\82µ\82½\8e\9e\82É\91¼\82Ì\8d\80\96Ú\82Ì\83n\83C\83h\82È\82Ç\82ð\8ds\82È\82¤\8e\96\82ª   */\r
-                       /* \82 \82é\82Ì\82Å\81A\82»\82Ì\82½\82ß\82É WM_COMMAND \82ð\91\97\82é                                               */\r
+                       /* ラジオボタンを変更した時に他の項目のハイドなどを行なう事が      */\r
+                       /* あるので、そのために WM_COMMAND を送る                                          */\r
                        SendMessage(hDlg, WM_COMMAND, MAKEWPARAM(Buttons->ButID, 0), 0);\r
                        break;\r
                }\r
@@ -1410,19 +1410,19 @@ void SetRadioButtonByValue(HWND hDlg, int Value, const RADIOBUTTON *Buttons, int
 }\r
 \r
 \r
-/*----- \83`\83F\83b\83N\82³\82ê\82Ä\82¢\82é\83{\83^\83\93\82É\8aÖ\98A\95t\82¯\82ç\82ê\82½\92l\82ð\95Ô\82· ----------------------\r
+/*----- チェックされているボタンに関連付けられた値を返す ----------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              const RADIOBUTTON *Buttons : \83\89\83W\83I\83{\83^\83\93\82Æ\92l\82Ì\8aÖ\98A\95t\82¯\83e\81[\83u\83\8b\r
-*              int Num : \83{\83^\83\93\82Ì\90\94\r
+*              HWND hDlg : ダイアログボックスのウインドウハンドル\r
+*              const RADIOBUTTON *Buttons : ラジオボタンと値の関連付けテーブル\r
+*              int Num : ボタンの数\r
 *\r
 *      Return Value\r
-*              int \92l\r
+*              int \r
 *\r
 *      Note\r
-*              \82Ç\82Ì\83{\83^\83\93\82à\83`\83F\83b\83N\82³\82ê\82Ä\82¢\82È\82¢\8e\9e\82Í\81A\83e\81[\83u\83\8b\82Ì\8dÅ\8f\89\82É\93o\98^\82³\82ê\82Ä\82¢\82é\83{\r
-*              \83^\83\93\82Ì\92l\82ð\95Ô\82·\r
+*              どのボタンもチェックされていない時は、テーブルの最初に登録されているボ\r
+*              タンの値を返す\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskRadioButtonValue(HWND hDlg, const RADIOBUTTON *Buttons, int Num)\r
@@ -1444,13 +1444,13 @@ int AskRadioButtonValue(HWND hDlg, const RADIOBUTTON *Buttons, int Num)
 }\r
 \r
 \r
-/*----- \82P\82U\90i\95\8e\9a\97ñ\82ð\90\94\92l\82É\95Ï\8a· ----------------------------------------------\r
+/*----- 16進文字列を数値に変換 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              int \92l\r
+*              int \r
 *----------------------------------------------------------------------------*/\r
 \r
 int xtoi(char *Str)\r
@@ -1476,14 +1476,14 @@ int xtoi(char *Str)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\82ª\93Ç\82Ý\8eæ\82è\89Â\94\\82©\82Ç\82¤\82©\82ð\95Ô\82· ----------------------------------\r
+/*----- ファイルが読み取り可能かどうかを返す ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              char *Fname : ファイル名\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 CheckFileReadable(char *Fname)\r
@@ -1492,7 +1492,7 @@ int CheckFileReadable(char *Fname)
        HANDLE iFileHandle;\r
        SECURITY_ATTRIBUTES Sec;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
 \r
        Sec.nLength = sizeof(SECURITY_ATTRIBUTES);\r
        Sec.lpSecurityDescriptor = NULL;\r
@@ -1501,7 +1501,7 @@ int CheckFileReadable(char *Fname)
        if((iFileHandle = CreateFile(Fname, GENERIC_READ,\r
                FILE_SHARE_READ|FILE_SHARE_WRITE, &Sec, OPEN_EXISTING, 0, NULL)) != INVALID_HANDLE_VALUE)\r
        {\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
                CloseHandle(iFileHandle);\r
        }\r
        return(Sts);\r
@@ -1548,14 +1548,14 @@ void ExcEndianDWORD(DWORD *x)
 \r
 \r
 \r
-/*----- int\92l\82Ì\93ü\82ê\91Ö\82¦ -------------------------------------------------------\r
+/*----- int値の入れ替え -------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int *Num1 : \90\94\92l\82P\r
-*              int *Num2 : \90\94\92l\82Q\r
+*              int *Num1 : 数値1\r
+*              int *Num2 : 数値2\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SwapInt(int *Num1, int *Num2)\r
@@ -1569,13 +1569,13 @@ void SwapInt(int *Num1, int *Num2)
 }\r
 \r
 \r
-/*----- \8ew\92è\82³\82ê\82½\83t\83H\83\8b\83_\82ª\82 \82é\82©\82Ç\82¤\82©\83`\83F\83b\83N -------------------------------\r
+/*----- 指定されたフォルダがあるかどうかチェック -------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\r
+*              char *Path : パス\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES/NO)\r
+*              int ステータス (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int IsFolderExist(char *Path)\r
@@ -1599,16 +1599,16 @@ int IsFolderExist(char *Path)
 }\r
 \r
 \r
-/*----- \83e\81[\83u\83\8b\82É\82µ\82½\82ª\82Á\82Ä\90\94\92l\82ð\93o\98^ -----------------------------------------\r
+/*----- テーブルにしたがって数値を登録 -----------------------------------------\r
 *\r
 *      Parameter\r
-*              int x : \90\94\92l\r
-*              int Dir : \95Ï\8a·\95û\8cü\r
-*              INTCONVTBL *Tbl : \83e\81[\83u\83\8b\r
-*              int Num : \83e\81[\83u\83\8b\82Ì\90\94\92l\82Ì\90\94\r
+*              int x : 数値\r
+*              int Dir : 変換方向\r
+*              INTCONVTBL *Tbl : テーブル\r
+*              int Num : テーブルの数値の数\r
 *\r
 *      Return Value\r
-*              int \90\94\92l\r
+*              int 数値\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConvertNum(int x, int Dir, const INTCONVTBL *Tbl, int Num)\r
@@ -1639,13 +1639,13 @@ int ConvertNum(int x, int Dir, const INTCONVTBL *Tbl, int Num)
 \r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\82ð\83S\83~\94 \82É\8dí\8f\9c ------------------------------------------------\r
+/*----- ファイルをゴミ箱に削除 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83t\83@\83C\83\8b\96¼\r
+*              char *Path : ファイル名\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (0=\90³\8fí\8fI\97¹)\r
+*              int ステータス (0=正常終了)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int MoveFileToTrashCan(char *Path)\r
index 4775da8..b43af07 100644 (file)
--- a/option.c
+++ b/option.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \83I\83v\83V\83\87\83\93\90Ý\92è\r
+*                                                              オプション設定\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include <htmlhelp.h>\r
 #include "helpid.h"\r
 \r
-// UTF-8\91Î\89\9e\r
+// UTF-8対応\r
 #undef __MBSWRAPPER_H__\r
 #include "mbswrapper.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static BOOL CALLBACK UserSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
 static BOOL CALLBACK Trmode1SettingProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
@@ -83,11 +83,11 @@ typedef struct {
 \r
 \r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern HWND hHelpWin;\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern char UserMailAdrs[USER_MAIL_LEN+1];\r
 extern char ViewerName[VIEWERS][FMAX_PATH+1];\r
 extern int ConnectOnStart;\r
@@ -142,13 +142,13 @@ extern int FolderAttr;
 extern int FolderAttrNum;\r
 \r
 \r
-/*----- \83I\83v\83V\83\87\83\93\82Ì\83v\83\8d\83p\83e\83B\83V\81[\83g ------------------------------------------\r
+/*----- オプションのプロパティシート ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetOption(int Start)\r
@@ -292,13 +292,13 @@ void SetOption(int Start)
 }\r
 \r
 \r
-/*----- \83\86\81[\83U\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------------\r
+/*----- ユーザ設定ウインドウのコールバック ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -336,13 +336,13 @@ static BOOL CALLBACK UserSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \93]\91\97\90Ý\92è\82P\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------------\r
+/*----- 転送設定1ウインドウのコールバック ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -430,13 +430,13 @@ static BOOL CALLBACK Trmode1SettingProc(HWND hDlg, UINT message, WPARAM wParam,
 }\r
 \r
 \r
-/*----- \93]\91\97\90Ý\92è\82Q\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------------\r
+/*----- 転送設定2ウインドウのコールバック ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -505,13 +505,13 @@ static BOOL CALLBACK Trmode2SettingProc(HWND hDlg, UINT message, WPARAM wParam,
 }\r
 \r
 \r
-/*----- \93]\91\97\90Ý\92è\82R\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------------\r
+/*----- 転送設定3ウインドウのコールバック ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -616,13 +616,13 @@ static BOOL CALLBACK Trmode3SettingProc(HWND hDlg, UINT message, WPARAM wParam,
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\91®\90«\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------\r
+/*----- ファイル属性設定ウインドウのコールバック ------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -666,15 +666,15 @@ static BOOL CALLBACK DefAttrDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\96¼\82Æ\91®\90«\82ð\83\8a\83X\83g\83r\83\85\81[\82É\92Ç\89Á ----------------------------------\r
+/*----- ファイル名と属性をリストビューに追加 ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
-*              char *Attr : \91®\90«\r
+*              HWND hDlg : ウインドウハンドル\r
+*              char *Fname : ファイル名\r
+*              char *Attr : 属性\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void AddFnameAttrToListView(HWND hDlg, char *Fname, char *Attr)\r
@@ -707,16 +707,16 @@ static void AddFnameAttrToListView(HWND hDlg, char *Fname, char *Attr)
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\82Ì\93à\97e\82ð\83}\83\8b\83`\95\8e\9a\97ñ\82É\82·\82é --------------------------------\r
+/*----- リストビューの内容をマルチ文字列にする --------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int CtrlList : \83\8a\83X\83g\83{\83b\83N\83X\82ÌID\r
-*              char *Buf : \95\8e\9a\97ñ\82ð\83Z\83b\83g\82·\82é\83o\83b\83t\83@\r
-*              int BufSize : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              HWND hDlg : ダイアログボックスのウインドウハンドル\r
+*              int CtrlList : リストボックスのID\r
+*              char *Buf : 文字列をセットするバッファ\r
+*              int BufSize : バッファのサイズ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void GetFnameAttrFromListView(HWND hDlg, char *Buf)\r
@@ -750,13 +750,13 @@ static void GetFnameAttrFromListView(HWND hDlg, char *Buf)
 }\r
 \r
 \r
-/*----- \83~\83\89\81[\83\8a\83\93\83O\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------------------\r
+/*----- ミラーリングウインドウのコールバック ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -831,13 +831,13 @@ static BOOL CALLBACK MirrorSettingProc(HWND hDlg, UINT message, WPARAM wParam, L
 }\r
 \r
 \r
-/*----- \91\80\8dì\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------------------\r
+/*----- 操作設定ウインドウのコールバック --------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -905,13 +905,13 @@ static BOOL CALLBACK NotifySettingProc(HWND hDlg, UINT message, WPARAM wParam, L
 }\r
 \r
 \r
-/*----- \95\\8e¦\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------------------\r
+/*----- 表示設定ウインドウのコールバック --------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -969,18 +969,18 @@ static BOOL CALLBACK DispSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \83t\83H\83\93\83g\82ð\91I\82Ô --------------------------------------------------------\r
+/*----- フォントを選ぶ --------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              LOGFONT *lFont : \83t\83H\83\93\83g\8fî\95ñ\r
+*              HWND hWnd : ウインドウハンドル\r
+*              LOGFONT *lFont : フォント情報\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Parameter change\r
-*              HFONT *hFont : \83t\83H\83\93\83g\82Ì\83n\83\93\83h\83\8b\r
-*              LOGFONT *lFont : \83t\83H\83\93\83g\8fî\95ñ\r
+*              HFONT *hFont : フォントのハンドル\r
+*              LOGFONT *lFont : フォント情報\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int SelectListFont(HWND hWnd, LOGFONT *lFont)\r
@@ -1003,13 +1003,13 @@ static int SelectListFont(HWND hWnd, LOGFONT *lFont)
 }\r
 \r
 \r
-/*----- \90Ú\91±\81^\90Ø\92f\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N --------------------------------\r
+/*----- 接続/切断設定ウインドウのコールバック --------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1081,13 +1081,13 @@ static BOOL CALLBACK ConnectSettingProc(HWND hDlg, UINT message, WPARAM wParam,
 }\r
 \r
 \r
-/*----- FireWall\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------------------\r
+/*----- FireWall設定ウインドウのコールバック ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1208,13 +1208,13 @@ static BOOL CALLBACK FireSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \83c\81[\83\8b\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------------\r
+/*----- ツール設定ウインドウのコールバック ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1287,13 +1287,13 @@ static BOOL CALLBACK ToolSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \83T\83E\83\93\83h\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------------------\r
+/*----- サウンド設定ウインドウのコールバック ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1388,13 +1388,13 @@ static BOOL CALLBACK SoundSettingProc(HWND hDlg, UINT message, WPARAM wParam, LP
 }\r
 \r
 \r
-/*----- \82»\82Ì\91¼\82Ì\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------------------\r
+/*----- その他の設定ウインドウのコールバック ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1491,13 +1491,13 @@ static BOOL CALLBACK MiscSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \83\\81[\83g\90Ý\92è\83E\83C\83\93\83h\83E --------------------------------------------------\r
+/*----- ソート設定ウインドウ --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (YES=\8eÀ\8ds/NO=\8eæ\8fÁ)\r
+*              int ステータス (YES=実行/NO=取消)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int SortSetting(void)\r
@@ -1509,13 +1509,13 @@ int SortSetting(void)
 }\r
 \r
 \r
-/*----- \83\\81[\83g\90Ý\92è\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ------------------------------------\r
+/*----- ソート設定ウインドウのコールバック ------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -1637,14 +1637,14 @@ static BOOL CALLBACK SortSettingProc(HWND hDlg, UINT message, WPARAM wParam, LPA
 }\r
 \r
 \r
-/*----- \83_\83C\83A\83\8d\83O\82Ì\83R\83\93\83g\83\8d\81[\83\8b\82©\82ç\82P\82O\90i\90\94\82ð\8eæ\93¾ ----------------------------\r
+/*----- ダイアログのコントロールから10進数を取得 ----------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int Ctrl : \83R\83\93\83g\83\8d\81[\83\8b\82ÌID\r
+*              HWND hDlg : ウインドウハンドル\r
+*              int Ctrl : コントロールのID\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetDecimalText(HWND hDlg, int Ctrl)\r
@@ -1656,15 +1656,15 @@ static int GetDecimalText(HWND hDlg, int Ctrl)
 }\r
 \r
 \r
-/*----- \83_\83C\83A\83\8d\83O\82Ì\83R\83\93\83g\83\8d\81[\83\8b\82É\82P\82O\90i\90\94\82ð\83Z\83b\83g ----------------------------\r
+/*----- ダイアログのコントロールに10進数をセット ----------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int Ctrl : \83R\83\93\83g\83\8d\81[\83\8b\82ÌID\r
-*              int Num : \90\94\92l\r
+*              HWND hDlg : ウインドウハンドル\r
+*              int Ctrl : コントロールのID\r
+*              int Num : 数値\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SetDecimalText(HWND hDlg, int Ctrl, int Num)\r
@@ -1677,18 +1677,18 @@ static void SetDecimalText(HWND hDlg, int Ctrl, int Num)
 }\r
 \r
 \r
-/*----- \90Ý\92è\92l\82Ì\94Í\88Í\83`\83F\83b\83N --------------------------------------------------\r
+/*----- 設定値の範囲チェック --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int *Cur : \90Ý\92è\92l\r
-*              int Max : \8dÅ\91å\92l\r
-*              int Min : \8dÅ\8f¬\92l\r
+*              int *Cur : 設定値\r
+*              int Max : 最大値\r
+*              int Min : 最小値\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Parameter change\r
-*              int *Cur : \90Ý\92è\92l\r
+*              int *Cur : 設定値\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void CheckRange2(int *Cur, int Max, int Min)\r
@@ -1701,16 +1701,16 @@ static void CheckRange2(int *Cur, int Max, int Min)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\83\8a\83X\83g\83{\83b\83N\83X\82É\92Ç\89Á ------------------------------------------\r
+/*----- 文字列をリストボックスに追加 ------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              int CtrlList : \83\8a\83X\83g\83{\83b\83N\83X\82ÌID\r
-*              int BufSize : \83o\83b\83t\83@\83T\83C\83Y\r
+*              HWND hDlg : ダイアログボックスのウインドウハンドル\r
+*              char *Str : 文字列\r
+*              int CtrlList : リストボックスのID\r
+*              int BufSize : バッファサイズ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void AddTextToListBox(HWND hDlg, char *Str, int CtrlList, int BufSize)\r
@@ -1740,15 +1740,15 @@ static void AddTextToListBox(HWND hDlg, char *Str, int CtrlList, int BufSize)
 }\r
 \r
 \r
-/*----- \83}\83\8b\83`\95\8e\9a\97ñ\82ð\83\8a\83X\83g\83{\83b\83N\83X\82É\83Z\83b\83g ----------------------------------\r
+/*----- マルチ文字列をリストボックスにセット ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int CtrlList : \83\8a\83X\83g\83{\83b\83N\83X\82ÌID\r
-*              char *Text : \95\8e\9a\97ñ\r
+*              HWND hDlg : ダイアログボックスのウインドウハンドル\r
+*              int CtrlList : リストボックスのID\r
+*              char *Text : 文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SetMultiTextToList(HWND hDlg, int CtrlList, char *Text)\r
@@ -1765,16 +1765,16 @@ static void SetMultiTextToList(HWND hDlg, int CtrlList, char *Text)
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83{\83b\83N\83X\82Ì\93à\97e\82ð\83}\83\8b\83`\95\8e\9a\97ñ\82É\82·\82é ------------------------------\r
+/*----- リストボックスの内容をマルチ文字列にする ------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              int CtrlList : \83\8a\83X\83g\83{\83b\83N\83X\82ÌID\r
-*              char *Buf : \95\8e\9a\97ñ\82ð\83Z\83b\83g\82·\82é\83o\83b\83t\83@\r
-*              int BufSize : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              HWND hDlg : ダイアログボックスのウインドウハンドル\r
+*              int CtrlList : リストボックスのID\r
+*              char *Buf : 文字列をセットするバッファ\r
+*              int BufSize : バッファのサイズ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void GetMultiTextFromList(HWND hDlg, int CtrlList, char *Buf, int BufSize)\r
diff --git a/ras.c b/ras.c
index 22aa804..4ad591c 100644 (file)
--- a/ras.c
+++ b/ras.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                                      \82q\82`\82r\8aÖ\8cW\r
+*                                                                      RAS関係\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
@@ -67,7 +67,7 @@ static void MakeRasConnMsg(char *Phone, RASCONNSTATE rasconn, char *Buf);
 static BOOL CALLBACK DialPassCallBackProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
 \r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static HINSTANCE m_hDll = NULL;\r
 static HINSTANCE m_hDll2 = NULL;\r
@@ -86,17 +86,17 @@ static HWND hWndDial;
 \r
 \r
 \r
-/*----- RAS\83\89\83C\83u\83\89\83\8a\82ð\83\8d\81[\83h\82·\82é ---------------------------------------------\r
+/*----- RASライブラリをロードする ---------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              RAS\83\89\83C\83u\83\89\83\8a\82Í\95K\82¸\83C\83\93\83X\83g\81[\83\8b\82³\82ê\82é\82à\82Ì\82Å\82Í\82È\82¢\82Ì\82Å\81A\83X\83^\83e\83B\83b\83N\82É\r
-*              \83\8a\83\93\83N\82µ\82È\82¢\81B\r
+*              RASライブラリは必ずインストールされるものではないので、スタティックに\r
+*              リンクしない。\r
 *----------------------------------------------------------------------------*/\r
 \r
 void LoadRasLib(void)\r
@@ -141,13 +141,13 @@ void LoadRasLib(void)
 }\r
 \r
 \r
-/*----- RAS\83\89\83C\83u\83\89\83\8a\82ð\83\8a\83\8a\81[\83X\82·\82é -------------------------------------------\r
+/*----- RASライブラリをリリースする -------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ReleaseRasLib(void)\r
@@ -164,13 +164,13 @@ void ReleaseRasLib(void)
 }\r
 \r
 \r
-/*----- RAS\82ª\8eg\82¦\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ---------------------------------------------\r
+/*----- RASが使えるかどうかを返す ---------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int RAS\82ª\8eg\82¦\82é\82©\82Ç\82¤\82©\r
+*              int RASが使えるかどうか\r
 *                      YES/NO\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -186,16 +186,16 @@ int AskRasUsable(void)
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\82ÌRAS\83R\83l\83N\83V\83\87\83\93\88ê\97\97\82ð\95Ô\82· ---------------------------------------\r
+/*----- 現在のRASコネクション一覧を返す ---------------------------------------\r
 *\r
 *      Parameter\r
-*              RASCONN **Buf : \88ê\97\97\82Ö\82Ì\83|\83C\83\93\83^\82ð\95Ô\82·\83\8f\81[\83N\r
+*              RASCONN **Buf : 一覧へのポインタを返すワーク\r
 *\r
 *      Return Value\r
-*              int \8cÂ\90\94 (-1=\83G\83\89\81[)\r
+*              int 個数 (-1=エラー)\r
 *\r
 *      Note\r
-*              Buf\82Ì\97Ì\88æ\82Í\8cÄ\8fo\91¤\82Å\8aJ\95ú\82·\82é\82±\82Æ\r
+*              Bufの領域は呼出側で開放すること\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int GetCurConnections(RASCONN **Buf)\r
@@ -237,13 +237,13 @@ static int GetCurConnections(RASCONN **Buf)
 /*----- RasHangUp()------------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HRASCONN hRasConn : \83n\83\93\83h\83\8b\r
+*              HRASCONN hRasConn : ハンドル\r
 *\r
 *      Return Value\r
-*              DWORD \83X\83e\81[\83^\83X\r
+*              DWORD ステータス\r
 *\r
 *      Note\r
-*              \90Ø\92f\82ª\8a®\97¹\82·\82é\82Ü\82Å\91Ò\82Â\r
+*              切断が完了するまで待つ\r
 *----------------------------------------------------------------------------*/\r
 \r
 static DWORD RasHangUpWait(HRASCONN hRasConn)\r
@@ -261,14 +261,14 @@ static DWORD RasHangUpWait(HRASCONN hRasConn)
 }\r
 \r
 \r
-/*----- \8c»\8dÝ\82ÌRAS\83R\83l\83N\83V\83\87\83\93\82ð\90Ø\92f\82·\82é ---------------------------------------\r
+/*----- 現在のRASコネクションを切断する ---------------------------------------\r
 *\r
 *      Parameter\r
-*              RASCONN *RasConn : \90Ú\91±\88ê\97\97\r
-*              int Num : \8cÂ\90\94\r
+*              RASCONN *RasConn : 接続一覧\r
+*              int Num : 個数\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DoDisconnect(RASCONN *RasConn, int Num)\r
@@ -276,27 +276,27 @@ static int DoDisconnect(RASCONN *RasConn, int Num)
        int i;\r
        int Sts;\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        if(Num > 0)\r
        {\r
                SetTaskMsg(MSGJPN220);\r
                for(i = 0; i < Num; i++)\r
                {\r
                        if(RasHangUpWait(RasConn[i].hrasconn) != 0)\r
-                               Sts = FAIL;\r
+                               Sts = FFFTP_FAIL;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- RAS\82ð\90Ø\92f\82·\82é ---------------------------------------------------------\r
+/*----- RASを切断する ---------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Notify : \8am\94F\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
+*              int Notify : 確認するかどうか (YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DisconnectRas(int Notify)\r
@@ -323,15 +323,15 @@ void DisconnectRas(int Notify)
 }\r
 \r
 \r
-/*----- RAS\82Ì\83G\83\93\83g\83\8a\88ê\97\97\82ð\83R\83\93\83{\83{\83b\83N\83X\82É\83Z\83b\83g\82·\82é -------------------------\r
+/*----- RASのエントリ一覧をコンボボックスにセットする -------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83n\83\93\83h\83\8b\r
-*              int Item : \83R\83\93\83{\83{\83b\83N\83X\82Ì\83\8a\83\\81[\83X\94Ô\8d\86\r
-*              char *CurName : \8f\89\8aú\92l\r
+*              HWND hDlg : ダイアログボックスのハンドル\r
+*              int Item : コンボボックスのリソース番号\r
+*              char *CurName : 初期値\r
 *\r
 *      Return Value\r
-*              int \83G\83\93\83g\83\8a\90\94\r
+*              int エントリ数\r
 *----------------------------------------------------------------------------*/\r
 \r
 int SetRasEntryToComboBox(HWND hDlg, int Item, char *CurName)\r
@@ -374,16 +374,16 @@ int SetRasEntryToComboBox(HWND hDlg, int Item, char *CurName)
 }\r
 \r
 \r
-/*----- RAS\82Ì\90Ú\91±\82ð\8ds\82¤ -------------------------------------------------------\r
+/*----- RASの接続を行う -------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Dialup : \83_\83C\83A\83\8b\83A\83b\83v\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
-*              int UseThis : \95K\82¸\82±\82Ì\83G\83\93\83g\83\8a\82É\90Ú\91±\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
-*              int Notify : \8dÄ\90Ú\91±\91O\82É\8am\94F\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
-*              char *Name : \90Ú\91±\90æ\r
+*              int Dialup : ダイアルアップするかどうか (YES/NO)\r
+*              int UseThis : 必ずこのエントリに接続するかどうか (YES/NO)\r
+*              int Notify : 再接続前に確認するかどうか (YES/NO)\r
+*              char *Name : 接続先\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ConnectRas(int Dialup, int UseThis, int Notify, char *Name)\r
@@ -398,12 +398,12 @@ int ConnectRas(int Dialup, int UseThis, int Notify, char *Name)
        BOOL Flg;\r
        OSVERSIONINFO VerInfo;\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        if(Dialup == YES)\r
        {\r
                if(m_hDll != NULL)\r
                {\r
-                       /* \8c»\8dÝ\82Ì\90Ú\91±\82ð\8am\94F */\r
+                       /* 現在の接続を確認 */\r
                        DoDial = 1;\r
                        if((Num = GetCurConnections(&RasConn)) != -1)\r
                        {\r
@@ -436,9 +436,9 @@ int ConnectRas(int Dialup, int UseThis, int Notify, char *Name)
 \r
                        if(DoDial != 0)\r
                        {\r
-                               /* \90Ú\91±\82·\82é */\r
+                               /* 接続する */\r
                                SetTaskMsg(MSGJPN221);\r
-                               Sts = FAIL;\r
+                               Sts = FFFTP_FAIL;\r
 \r
                                Num = 0;\r
                                VerInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);\r
@@ -460,7 +460,7 @@ int ConnectRas(int Dialup, int UseThis, int Notify, char *Name)
                                                DlgParam.reserved = 0;\r
                                                DlgParam.reserved2 = 0;\r
                                                if((*m_RasDialDlg)(NULL, Name, NULL, &DlgParam) != 0)\r
-                                                       Sts = SUCCESS;\r
+                                                       Sts = FFFTP_SUCCESS;\r
                                        }\r
                                        else\r
                                                SetTaskMsg(MSGJPN222);\r
@@ -478,7 +478,7 @@ int ConnectRas(int Dialup, int UseThis, int Notify, char *Name)
                                           (DialogBoxParam(GetFtpInst(), MAKEINTRESOURCE(dial_password_dlg), GetMainHwnd(), (DLGPROC)DialPassCallBackProc, (LPARAM)&Param) == YES))\r
                                        {\r
                                                if(DialogBoxParam(GetFtpInst(), MAKEINTRESOURCE(dial_dlg), GetMainHwnd(), (DLGPROC)DialCallBackProc, (LPARAM)&Param) == YES)\r
-                                                       Sts = SUCCESS;\r
+                                                       Sts = FFFTP_SUCCESS;\r
                                        }\r
                                }\r
                        }\r
@@ -488,13 +488,13 @@ int ConnectRas(int Dialup, int UseThis, int Notify, char *Name)
 }\r
 \r
 \r
-/*----- RAS\83_\83C\83A\83\8b\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N -----------------------------------\r
+/*----- RASダイアルウインドウのコールバック -----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -533,7 +533,7 @@ static BOOL CALLBACK DialCallBackProc(HWND hDlg, UINT message, WPARAM wParam, LP
                case WM_DIAL_MSG :\r
                        if(lParam != 0)\r
                        {\r
-                               /* \83G\83\89\81[\94­\90 */\r
+                               /* エラー発生 */\r
                                if((*m_RasGetErrorString)((UINT)lParam, (LPTSTR)Tmp, RAS_NAME_LEN+25) != 0)\r
                                        sprintf(Tmp, MSGJPN224);\r
                                RasHangUpWait(hRasConn);\r
@@ -542,12 +542,12 @@ static BOOL CALLBACK DialCallBackProc(HWND hDlg, UINT message, WPARAM wParam, LP
                        }\r
                        else if(wParam & RASCS_DONE)\r
                        {\r
-                               /* \8fI\97¹ */\r
+                               /* 終了 */\r
                                EndDialog(hDlg, YES);\r
                        }\r
                        else\r
                        {\r
-                               /* \83X\83e\81[\83^\83X\95Ï\8dX */\r
+                               /* ステータス変更 */\r
                                MakeRasConnMsg(Param->szPhoneNumber, wParam, Tmp);\r
                                SendDlgItemMessage(hDlg, DIAL_STATUS, WM_SETTEXT, 0, (LPARAM)Tmp);\r
                        }\r
@@ -557,15 +557,15 @@ static BOOL CALLBACK DialCallBackProc(HWND hDlg, UINT message, WPARAM wParam, LP
 }\r
 \r
 \r
-/*----- RasDial()\82Ì\83R\81[\83\8b\83o\83b\83N -----------------------------------------------\r
+/*----- RasDial()のコールバック -----------------------------------------------\r
 *\r
 *      Parameter\r
-*              UINT unMsg : \83\81\83b\83Z\81[\83W\r
-*              RASCONNSTATE rasconnstate : \83X\83e\81[\83^\83X\r
-*              DWORD dwError : \83G\83\89\81[\r
+*              UINT unMsg : メッセージ\r
+*              RASCONNSTATE rasconnstate : ステータス\r
+*              DWORD dwError : エラー\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static VOID WINAPI RasDialFunc(UINT unMsg, RASCONNSTATE rasconnstate, DWORD dwError)\r
@@ -574,15 +574,15 @@ static VOID WINAPI RasDialFunc(UINT unMsg, RASCONNSTATE rasconnstate, DWORD dwEr
 }\r
 \r
 \r
-/*----- RasDial()\82Ì\83X\83e\81[\83^\83X\83\81\83b\83Z\81[\83W\82ð\8dì\90¬\82·\82é -----------------------------\r
+/*----- RasDial()のステータスメッセージを作成する -----------------------------\r
 *\r
 *      Parameter\r
-*              char *Phone : \93d\98b\94Ô\8d\86\r
-*              RASCONNSTATE rasconn : \83X\83e\81[\83^\83X\r
-*              char *Buf : \95\8e\9a\97ñ\82ð\83Z\83b\83g\82·\82é\83o\83b\83t\83@\r
+*              char *Phone : 電話番号\r
+*              RASCONNSTATE rasconn : ステータス\r
+*              char *Buf : 文字列をセットするバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void MakeRasConnMsg(char *Phone, RASCONNSTATE rasconn, char *Buf)\r
@@ -643,13 +643,13 @@ static void MakeRasConnMsg(char *Phone, RASCONNSTATE rasconn, char *Buf)
 }\r
 \r
 \r
-/*----- \83\86\81[\83U\96¼\81A\83p\83X\83\8f\81[\83h\93ü\97Í\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------\r
+/*----- ユーザ名、パスワード入力ウインドウのコールバック ----------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
index 736f234..70e3579 100644 (file)
--- a/regexp.c
+++ b/regexp.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \90³\8bK\95\\8c»\8c\9f\8dõ\r
+*                                                              正規表現検索\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
@@ -37,7 +37,7 @@
 #include "jreusr.h"\r
 \r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static JRE2 m_jreData;\r
 static HINSTANCE m_hDll = NULL;\r
@@ -50,13 +50,13 @@ static LPGETJREMESSAGE m_lpGetJreMessage = NULL;
 \r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82ð\83\8d\81[\83h\82·\82é ----------------------------------------\r
+/*----- 正規表現ライブラリをロードする ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      TRUE/FALSE\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -64,8 +64,8 @@ int LoadJre(void)
 {\r
        int Sts;\r
 \r
-       // UTF-8\91Î\89\9e\r
-       // JRE32.DLL\82ÍUTF-8\82É\94ñ\91Î\89\9e\r
+       // UTF-8対応\r
+       // JRE32.DLLはUTF-8に非対応\r
 #ifdef DISABLE_JRE32DLL\r
        return FALSE;\r
 #endif\r
@@ -101,13 +101,13 @@ int LoadJre(void)
 }\r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82ð\83\8a\83\8a\81[\83X\82·\82é --------------------------------------\r
+/*----- 正規表現ライブラリをリリースする --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ReleaseJre(void)\r
@@ -120,13 +120,13 @@ void ReleaseJre(void)
 }\r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82ª\8eg\82¦\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ------------------------------\r
+/*----- 正規表現ライブラリが使えるかどうかを返す ------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82ª\8eg\82¦\82é\82©\82Ç\82¤\82©\r
+*              int 正規表現ライブラリが使えるかどうか\r
 *                      TRUE/FALSE\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -142,13 +142,13 @@ int AskJreUsable(void)
 }\r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82Ì\83o\81[\83W\83\87\83\93\82ð\95Ô\82· a---------------------------------\r
+/*----- 正規表現ライブラリのバージョンを返す a---------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83o\81[\83W\83\87\83\93\r
+*              int バージョン\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetJreVersion(void)\r
@@ -163,13 +163,13 @@ int GetJreVersion(void)
 }\r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\8c\9f\8dõ\8e®\82ð\83R\83\93\83p\83C\83\8b\82·\82é ----------------------------------------\r
+/*----- 正規表現検索式をコンパイルする ----------------------------------------\r
 *\r
 *      Parameter\r
-*              kchar *Str : \8c\9f\8dõ\8e®\r
+*              kchar *Str : 検索式\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      TRUE/FALSE\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -185,15 +185,15 @@ int JreCompileStr(char *Str)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ª\88ê\92v\82·\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ----------------------------------------\r
+/*----- 文字列が一致するかどうかを返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              UINT nStart : \8c\9f\8dõ\8aJ\8en\88Ê\92u\r
+*              char *Str : 文字列\r
+*              UINT nStart : 検索開始位置\r
 *\r
 *      Return Value\r
-*              char *\8c©\82Â\82©\82Á\82½\88Ê\92u\r
-*                      NULL=\8c©\82Â\82©\82ç\82È\82©\82Á\82½\r
+*              char *見つかった位置\r
+*                      NULL=見つからなかった\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *JreGetStrMatchInfo(char *Str, UINT nStart)\r
index 8ab2b80..fa6461d 100644 (file)
@@ -1,5 +1,5 @@
-/*=============================================================================\r
-*                                                              \83\8c\83W\83X\83g\83\8a\8aÖ\8cW\r
+/*=============================================================================\r
+*                                                              レジストリ関係\r
 *\r
 *\r
 ===============================================================================\r
@@ -27,7 +27,7 @@
 / THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
 /============================================================================*/\r
 \r
-// VC 8.0(2005)\88È\8fã\82Å\82Ì\82Ý rand_s \82ð\97\98\97p\89Â\94\\r
+// VC 8.0(2005)以上でのみ rand_s を利用可能\r
 #if 1400 <= _MSC_VER\r
 //#define _CRT_RAND_S\r
 #endif\r
@@ -49,7 +49,7 @@
 #include "aes.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static void SaveStr(HKEY hKey, char *Key, char *Str, char *DefaultStr);\r
 static void SaveIntNum(HKEY hKey, char *Key, int Num, int DefaultNum);\r
@@ -91,7 +91,7 @@ void SetHashSalt( DWORD salt );
 \r
 DWORD GetRandamDWRODValue(void);\r
 \r
-/* 2010.01.30 genta \92Ç\89Á */\r
+/* 2010.01.30 genta 追加 */\r
 static char SecretKey[FMAX_PATH+1];\r
 static int SecretKeyLength;\r
 static int IsMasterPasswordError = PASSWORD_OK;\r
@@ -99,9 +99,9 @@ static int IsMasterPasswordError = PASSWORD_OK;
 static int IsRndSourceInit = 0;\r
 static ulong RndSource[9];\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern int WinPosX;\r
 extern int WinPosY;\r
 extern int WinWidth;\r
@@ -182,13 +182,13 @@ extern int MirDownDelNotify;
 extern int FolderAttr;\r
 extern int FolderAttrNum;\r
 \r
-/*----- \83}\83X\83^\83p\83X\83\8f\81[\83h\82Ì\90Ý\92è ----------------------------------------------\r
+/*----- マスタパスワードの設定 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              const char* Password : \83}\83X\83^\81[\83p\83X\83\8f\81[\83h\r
+*              const char* Password : マスターパスワード\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 void SetMasterPassword( const char* Password )\r
 {\r
@@ -201,29 +201,29 @@ void SetMasterPassword( const char* Password )
        }\r
        SecretKeyLength = strlen( SecretKey );\r
        \r
-       /* \96¢\8c\9f\8fØ\82È\82Ì\82Å\81C\8f\89\8aú\8fó\91Ô\82ÍOK\82É\82·\82é (\8b­\90§\8dÄ\90Ý\92è\81¨\95Û\91\82É\82ð\89Â\94\\82É\82·\82é)*/\r
+       /* 未検証なので,初期状態はOKにする (強制再設定→保存にを可能にする)*/\r
        IsMasterPasswordError = PASSWORD_OK;\r
 }\r
 \r
-/*----- \83}\83X\83^\83p\83X\83\8f\81[\83h\82Ì\8fó\91Ô\8eæ\93¾ ----------------------------------------------\r
+/*----- マスタパスワードの状態取得 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
 *              PASSWORD_OK : OK\r
-*              PASSWORD_UNMATCH : \83p\83X\83\8f\81[\83h\95s\88ê\92v\r
-*              BAD_PASSWORD_HASH : \83p\83X\83\8f\81[\83h\8am\94F\8e¸\94s\r
+*              PASSWORD_UNMATCH : パスワード不一致\r
+*              BAD_PASSWORD_HASH : パスワード確認失敗\r
 *----------------------------------------------------------------------------*/\r
 int GetMasterPasswordStatus(void)\r
 {\r
        return IsMasterPasswordError;\r
 }\r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\81^INI\83t\83@\83C\83\8b\82Ì\83}\83X\83^\81[\83p\83X\83\8f\81[\83h\82Ì\8c\9f\8fØ\82ð\8ds\82¤ ------------\r
+/*----- レジストリ/INIファイルのマスターパスワードの検証を行う ------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
 *              \r
@@ -235,7 +235,7 @@ int ValidateMasterPassword(void)
        int i;\r
 \r
        SetRegType(REGTYPE_INI);\r
-       if((i = OpenReg("FFFTP", &hKey3)) != SUCCESS)\r
+       if((i = OpenReg("FFFTP", &hKey3)) != FFFTP_SUCCESS)\r
        {\r
                if(AskForceIni() == NO)\r
                {\r
@@ -243,14 +243,14 @@ int ValidateMasterPassword(void)
                        i = OpenReg("FFFTP", &hKey3);\r
                }\r
        }\r
-       if(i == SUCCESS){\r
+       if(i == FFFTP_SUCCESS){\r
                char checkbuf[48];\r
                int salt = 0;\r
 \r
                if( ReadIntValueFromReg(hKey3, "CredentialSalt", &salt)){\r
                        SetHashSalt( salt );\r
                }\r
-               if( ReadStringFromReg(hKey3, "CredentialCheck", checkbuf, sizeof( checkbuf )) == SUCCESS ){\r
+               if( ReadStringFromReg(hKey3, "CredentialCheck", checkbuf, sizeof( checkbuf )) == FFFTP_SUCCESS ){\r
                        switch( CheckPasswordValidity( SecretKey, SecretKeyLength, checkbuf ) ){\r
                        case 0: /* not match */\r
                                IsMasterPasswordError = PASSWORD_UNMATCH;\r
@@ -270,13 +270,13 @@ int ValidateMasterPassword(void)
        return NO;\r
 }\r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\81^INI\83t\83@\83C\83\8b\82É\90Ý\92è\92l\82ð\95Û\91 ---------------------------------\r
+/*----- レジストリ/INIファイルに設定値を保存 ---------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SaveRegistory(void)\r
@@ -293,12 +293,12 @@ void SaveRegistory(void)
        HISTORYDATA DefaultHist;\r
        \r
        if( GetMasterPasswordStatus() == PASSWORD_UNMATCH ){\r
-               /* 2010.01.30 genta: \83}\83X\83^\81[\83p\83X\83\8f\81[\83h\82ª\95s\88ê\92v\82Ì\8fê\8d\87\82Í\95s\97p\88Ó\82É\8fã\8f\91\82«\82µ\82È\82¢ */\r
+               /* 2010.01.30 genta: マスターパスワードが不一致の場合は不用意に上書きしない */\r
                return;\r
        }\r
 \r
        SetRegType(RegType);\r
-       if(CreateReg("FFFTP", &hKey3) == SUCCESS)\r
+       if(CreateReg("FFFTP", &hKey3) == FFFTP_SUCCESS)\r
        {\r
                char buf[48];\r
                int salt = GetTickCount();\r
@@ -311,7 +311,7 @@ void SaveRegistory(void)
                CreatePasswordHash( SecretKey, SecretKeyLength, buf );\r
                WriteStringToReg(hKey3, "CredentialCheck", buf);\r
 \r
-               if(CreateSubKey(hKey3, "Options", &hKey4) == SUCCESS)\r
+               if(CreateSubKey(hKey3, "Options", &hKey4) == FFFTP_SUCCESS)\r
                {\r
                        WriteIntValueToReg(hKey4, "NoSave", SuppressSave);\r
 \r
@@ -419,18 +419,18 @@ void SaveRegistory(void)
 \r
                                WriteIntValueToReg(hKey4, "HistNum", FileHist);\r
 \r
-                               /* Ver1.54a\88È\91O\82Ì\8c`\8e®\82Ì\83q\83X\83g\83\8a\83f\81[\83^\82Í\8dí\8f\9c */\r
+                               /* Ver1.54a以前の形式のヒストリデータは削除 */\r
                                DeleteValue(hKey4, "Hist");\r
 \r
-                               /* \83q\83X\83g\83\8a\82Ì\90Ý\92è\82ð\95Û\91 */\r
+                               /* ヒストリの設定を保存 */\r
                                CopyDefaultHistory(&DefaultHist);\r
                                n = 0;\r
                                for(i = AskHistoryNum(); i > 0; i--)\r
                                {\r
-                                       if(GetHistoryByNum(i-1, &Hist) == SUCCESS)\r
+                                       if(GetHistoryByNum(i-1, &Hist) == FFFTP_SUCCESS)\r
                                        {\r
                                                sprintf(Str, "History%d", n);\r
-                                               if(CreateSubKey(hKey4, Str, &hKey5) == SUCCESS)\r
+                                               if(CreateSubKey(hKey4, Str, &hKey5) == FFFTP_SUCCESS)\r
                                                {\r
                                                        SaveStr(hKey5, "HostAdrs", Hist.HostAdrs, DefaultHist.HostAdrs);\r
                                                        SaveStr(hKey5, "UserName", Hist.UserName, DefaultHist.UserName);\r
@@ -462,7 +462,7 @@ void SaveRegistory(void)
                                                        SaveIntNum(hKey5, "UseIt", Hist.DialupAlways, DefaultHist.DialupAlways);\r
                                                        SaveIntNum(hKey5, "Notify", Hist.DialupNotify, DefaultHist.DialupNotify);\r
                                                        SaveStr(hKey5, "DialTo", Hist.DialEntry, DefaultHist.DialEntry);\r
-                                                       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+                                                       // 暗号化通信対応\r
                                                        SaveIntNum(hKey5, "FTPES", Hist.UseFTPES, DefaultHist.UseFTPES);\r
                                                        SaveIntNum(hKey5, "FTPIS", Hist.UseFTPIS, DefaultHist.UseFTPIS);\r
                                                        SaveIntNum(hKey5, "SFTP", Hist.UseSFTP, DefaultHist.UseSFTP);\r
@@ -474,21 +474,21 @@ void SaveRegistory(void)
                                }\r
                                WriteIntValueToReg(hKey4, "SavedHist", n);\r
 \r
-                               /* \97]\95ª\82È\83q\83X\83g\83\8a\82ª\82 \82Á\82½\82ç\8dí\8f\9c */\r
+                               /* 余分なヒストリがあったら削除 */\r
                                for(; n < 999; n++)\r
                                {\r
                                        sprintf(Str, "History%d", n);\r
-                                       if(DeleteSubKey(hKey4, Str) != SUCCESS)\r
+                                       if(DeleteSubKey(hKey4, Str) != FFFTP_SUCCESS)\r
                                                break;\r
                                }\r
 \r
-                               /* \83z\83X\83g\82Ì\90Ý\92è\82ð\95Û\91 */\r
+                               /* ホストの設定を保存 */\r
                                CopyDefaultHost(&DefaultHost);\r
                                i = 0;\r
-                               while(CopyHostFromList(i, &Host) == SUCCESS)\r
+                               while(CopyHostFromList(i, &Host) == FFFTP_SUCCESS)\r
                                {\r
                                        sprintf(Str, "Host%d", i);\r
-                                       if(CreateSubKey(hKey4, Str, &hKey5) == SUCCESS)\r
+                                       if(CreateSubKey(hKey4, Str, &hKey5) == FFFTP_SUCCESS)\r
                                        {\r
 //                                             SaveIntNum(hKey5, "Set", Host.Level, DefaultHost.Level);\r
                                                WriteIntValueToReg(hKey5, "Set", Host.Level);\r
@@ -534,7 +534,7 @@ void SaveRegistory(void)
                                                        SaveIntNum(hKey5, "UseIt", Host.DialupAlways, DefaultHost.DialupAlways);\r
                                                        SaveIntNum(hKey5, "Notify", Host.DialupNotify, DefaultHost.DialupNotify);\r
                                                        SaveStr(hKey5, "DialTo", Host.DialEntry, DefaultHost.DialEntry);\r
-                                                       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+                                                       // 暗号化通信対応\r
                                                        SaveIntNum(hKey5, "FTPES", Host.UseFTPES, DefaultHost.UseFTPES);\r
                                                        SaveIntNum(hKey5, "FTPIS", Host.UseFTPIS, DefaultHost.UseFTPIS);\r
                                                        SaveIntNum(hKey5, "SFTP", Host.UseSFTP, DefaultHost.UseSFTP);\r
@@ -545,11 +545,11 @@ void SaveRegistory(void)
                                }\r
                                WriteIntValueToReg(hKey4, "SetNum", i);\r
 \r
-                               /* \97]\95ª\82È\83z\83X\83g\82Ì\90Ý\92è\82ª\82 \82Á\82½\82ç\8dí\8f\9c */\r
+                               /* 余分なホストの設定があったら削除 */\r
                                for(; i < 998; i++)\r
                                {\r
                                        sprintf(Str, "Host%d", i);\r
-                                       if(DeleteSubKey(hKey4, Str) != SUCCESS)\r
+                                       if(DeleteSubKey(hKey4, Str) != FFFTP_SUCCESS)\r
                                                break;\r
                                }\r
 \r
@@ -564,16 +564,16 @@ void SaveRegistory(void)
        return;\r
 }\r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\81^INI\83t\83@\83C\83\8b\82©\82ç\90Ý\92è\92l\82ð\8cÄ\82Ñ\8fo\82· ---------------------------\r
+/*----- レジストリ/INIファイルから設定値を呼び出す ---------------------------\r
 *\r
-*      \82±\82Ì\8aÖ\90\94\82ð\95¡\90\94\89ñ\8cÄ\82Ñ\8fo\82·\82Æ\81C\83z\83X\83g\90Ý\92è\82ª\92Ç\89Á\82³\82ê\82é\81D\r
+*      この関数を複数回呼び出すと,ホスト設定が追加される.\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              YES: \93Ç\82Ý\8fo\82µ\90¬\8c÷\r
-*              NO:  \93Ç\82Ý\8fo\82µ\8e¸\94s(\90Ý\92è\96³\82µ)\r
+*              YES: 読み出し成功\r
+*              NO:  読み出し失敗(設定無し)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int LoadRegistory(void)\r
@@ -583,7 +583,7 @@ int LoadRegistory(void)
        void *hKey5;\r
        int i;\r
        int Sets;\r
-       char Str[256];  /* ASCII_EXT_LEN\82æ\82è\91å\82«\82¢\8e\96 */\r
+       char Str[256];  /* ASCII_EXT_LENより大きい事 */\r
        char *Pos;\r
        char *Pos2;\r
        HOSTDATA Host;\r
@@ -594,7 +594,7 @@ int LoadRegistory(void)
        Sts = NO;\r
 \r
        SetRegType(REGTYPE_INI);\r
-       if((i = OpenReg("FFFTP", &hKey3)) != SUCCESS)\r
+       if((i = OpenReg("FFFTP", &hKey3)) != FFFTP_SUCCESS)\r
        {\r
                if(AskForceIni() == NO)\r
                {\r
@@ -603,7 +603,7 @@ int LoadRegistory(void)
                }\r
        }\r
 \r
-       if(i == SUCCESS)\r
+       if(i == FFFTP_SUCCESS)\r
        {\r
                char checkbuf[48];\r
                int salt = 0;\r
@@ -611,17 +611,17 @@ int LoadRegistory(void)
 \r
                ReadIntValueFromReg(hKey3, "Version", &Version);\r
 \r
-               if(OpenSubKey(hKey3, "Options", &hKey4) == SUCCESS)\r
+               if(OpenSubKey(hKey3, "Options", &hKey4) == FFFTP_SUCCESS)\r
                {\r
                        ReadIntValueFromReg(hKey4, "WinPosX", &WinPosX);\r
                        ReadIntValueFromReg(hKey4, "WinPosY", &WinPosY);\r
                        ReadIntValueFromReg(hKey4, "WinWidth", &WinWidth);\r
                        ReadIntValueFromReg(hKey4, "WinHeight", &WinHeight);\r
                        ReadIntValueFromReg(hKey4, "LocalWidth", &LocalWidth);\r
-                       /* \81«\8b\8c\83o\81[\83W\83\87\83\93\82Ì\83o\83O\91Î\8dô */\r
+                       /* ↓旧バージョンのバグ対策 */\r
                        LocalWidth = max1(0, LocalWidth);\r
                        ReadIntValueFromReg(hKey4, "TaskHeight", &TaskHeight);\r
-                       /* \81«\8b\8c\83o\81[\83W\83\87\83\93\82Ì\83o\83O\91Î\8dô */\r
+                       /* ↓旧バージョンのバグ対策 */\r
                        TaskHeight = max1(0, TaskHeight);\r
                        ReadBinaryFromReg(hKey4, "LocalColm", &LocalTabWidth, sizeof(LocalTabWidth));\r
                        ReadBinaryFromReg(hKey4, "RemoteColm", &RemoteTabWidth, sizeof(RemoteTabWidth));\r
@@ -670,9 +670,9 @@ int LoadRegistory(void)
                        ReadIntValueFromReg(hKey4, "RegExp", &FindMode);\r
                        ReadIntValueFromReg(hKey4, "Reg", &RegType);\r
 \r
-                       if(ReadMultiStringFromReg(hKey4, "AsciiFile", AsciiExt, ASCII_EXT_LEN+1) == FAIL)\r
+                       if(ReadMultiStringFromReg(hKey4, "AsciiFile", AsciiExt, ASCII_EXT_LEN+1) == FFFTP_FAIL)\r
                        {\r
-                               /* \8b\8cASCII\83\82\81[\83h\82Ì\8ag\92£\8eq\82Ì\90Ý\92è\82ð\90V\82µ\82¢\82à\82Ì\82É\95Ï\8a· */\r
+                               /* 旧ASCIIモードの拡張子の設定を新しいものに変換 */\r
                                ReadStringFromReg(hKey4, "Ascii", Str, ASCII_EXT_LEN+1);\r
                                memset(AsciiExt, NUL, ASCII_EXT_LEN+1);\r
                                Pos = Str;\r
@@ -702,9 +702,9 @@ int LoadRegistory(void)
                        ReadIntValueFromReg(hKey4, "MirUNot", &MirUpDelNotify);\r
                        ReadIntValueFromReg(hKey4, "MirDNot", &MirDownDelNotify);\r
 \r
-                       if(ReadStringFromReg(hKey4, "ListFont", Str, 256) == SUCCESS)\r
+                       if(ReadStringFromReg(hKey4, "ListFont", Str, 256) == FFFTP_SUCCESS)\r
                        {\r
-                               if(RestoreFontData(Str, &ListLogFont) == SUCCESS)\r
+                               if(RestoreFontData(Str, &ListLogFont) == FFFTP_SUCCESS)\r
                                        ListFont = CreateFontIndirect(&ListLogFont);\r
                        }\r
                        ReadIntValueFromReg(hKey4, "ListHide", &DispIgnoreHide);\r
@@ -746,14 +746,14 @@ int LoadRegistory(void)
                        ReadIntValueFromReg(hKey4, "HistNum", &FileHist);\r
 //                     ReadMultiStringFromReg(hKey4, "Hist", Hist, (FMAX_PATH+1)*HISTORY_MAX+1);\r
 \r
-                       /* \83q\83X\83g\83\8a\82Ì\90Ý\92è\82ð\93Ç\82Ý\8d\9e\82Þ */\r
+                       /* ヒストリの設定を読み込む */\r
                        Sets = 0;\r
                        ReadIntValueFromReg(hKey4, "SavedHist", &Sets);\r
 \r
                        for(i = 0; i < Sets; i++)\r
                        {\r
                                sprintf(Str, "History%d", i);\r
-                               if(OpenSubKey(hKey4, Str, &hKey5) == SUCCESS)\r
+                               if(OpenSubKey(hKey4, Str, &hKey5) == FFFTP_SUCCESS)\r
                                {\r
                                        CopyDefaultHistory(&Hist);\r
 \r
@@ -788,7 +788,7 @@ int LoadRegistory(void)
                                        ReadIntValueFromReg(hKey5, "UseIt", &Hist.DialupAlways);\r
                                        ReadIntValueFromReg(hKey5, "Notify", &Hist.DialupNotify);\r
                                        ReadStringFromReg(hKey5, "DialTo", Hist.DialEntry, RAS_NAME_LEN+1);\r
-                                       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+                                       // 暗号化通信対応\r
                                        ReadIntValueFromReg(hKey5, "FTPES", &Hist.UseFTPES);\r
                                        ReadIntValueFromReg(hKey5, "FTPIS", &Hist.UseFTPIS);\r
                                        ReadIntValueFromReg(hKey5, "SFTP", &Hist.UseSFTP);\r
@@ -798,18 +798,18 @@ int LoadRegistory(void)
                                }\r
                        }\r
 \r
-                       /* \83z\83X\83g\82Ì\90Ý\92è\82ð\93Ç\82Ý\8d\9e\82Þ */\r
+                       /* ホストの設定を読み込む */\r
                        Sets = 0;\r
                        ReadIntValueFromReg(hKey4, "SetNum", &Sets);\r
 \r
                        for(i = 0; i < Sets; i++)\r
                        {\r
                                sprintf(Str, "Host%d", i);\r
-                               if(OpenSubKey(hKey4, Str, &hKey5) == SUCCESS)\r
+                               if(OpenSubKey(hKey4, Str, &hKey5) == FFFTP_SUCCESS)\r
                                {\r
                                        CopyDefaultHost(&Host);\r
-                                       /* \89º\88Ê\8cÝ\8a·\90«\82Ì\82½\82ß */\r
-                                       // SourceForge.JP\82É\82æ\82é\83t\83H\81[\83N\r
+                                       /* 下位互換性のため */\r
+                                       // SourceForge.JPによるフォーク\r
 //                                     if(Version < VER_NUM)\r
                                        if(Version < 1921)\r
                                        {\r
@@ -859,7 +859,7 @@ int LoadRegistory(void)
                                        ReadIntValueFromReg(hKey5, "UseIt", &Host.DialupAlways);\r
                                        ReadIntValueFromReg(hKey5, "Notify", &Host.DialupNotify);\r
                                        ReadStringFromReg(hKey5, "DialTo", Host.DialEntry, RAS_NAME_LEN+1);\r
-                                       // \88Ã\8d\86\89»\92Ê\90M\91Î\89\9e\r
+                                       // 暗号化通信対応\r
                                        ReadIntValueFromReg(hKey5, "FTPES", &Host.UseFTPES);\r
                                        ReadIntValueFromReg(hKey5, "FTPIS", &Host.UseFTPIS);\r
                                        ReadIntValueFromReg(hKey5, "SFTP", &Host.UseSFTP);\r
@@ -879,7 +879,7 @@ int LoadRegistory(void)
        }\r
        else\r
        {\r
-               /*===== \8dÅ\8f\89\82Ì\8bN\93®\8e\9e\81i\90Ý\92è\82ª\96³\82¢) =====*/\r
+               /*===== 最初の起動時(設定が無い) =====*/\r
 \r
 #if 0\r
                strcpy(UserMailAdrs, "");\r
@@ -903,14 +903,14 @@ int LoadRegistory(void)
 }\r
 \r
 \r
-/*----- \89B\82µ\83h\83\89\83C\83u\8fî\95ñ\82ð\8eæ\93¾ ------------------------------------------------\r
+/*----- 隠しドライブ情報を取得 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
 *              DWORD \r
-*                      YES/NO=\90Ý\92è\96³\82µ\r
+*                      YES/NO=設定無し\r
 *----------------------------------------------------------------------------*/\r
 \r
 DWORD LoadHideDriveListRegistory(void)\r
@@ -956,13 +956,13 @@ DWORD LoadHideDriveListRegistory(void)
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\82Ì\90Ý\92è\92l\82ð\83N\83\8a\83A --------------------------------------------\r
+/*----- レジストリの設定値をクリア --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ClearRegistory(void)\r
@@ -1004,13 +1004,13 @@ void ClearRegistory(void)
 }\r
 \r
 \r
-/*----- \90Ý\92è\82ð\83t\83@\83C\83\8b\82É\95Û\91 --------------------------------------------------\r
+/*----- 設定をファイルに保存 --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SaveSettingsToFile(void)\r
@@ -1042,13 +1042,13 @@ void SaveSettingsToFile(void)
 }\r
 \r
 \r
-/*----- \90Ý\92è\82ð\83t\83@\83C\83\8b\82©\82ç\95\9c\8c³ ------------------------------------------------\r
+/*----- 設定をファイルから復元 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int     \83\8d\81[\83h\82µ\82½\82©\82Ç\82¤\82© (YES/NO)\r
+*              int     ロードしたかどうか (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int LoadSettingsFromFile(void)\r
@@ -1071,7 +1071,7 @@ int LoadSettingsFromFile(void)
                        else\r
                        {\r
                                Ret = YES;\r
-                               /* \83\8c\83W\83X\83g\83\8a\83G\83f\83B\83^\82ª\8fI\97¹\82·\82é\82Ì\82ð\91Ò\82 */\r
+                               /* レジストリエディタが終了するのを待つ */\r
 //                             WaitForSingleObject(Info.hProcess, INFINITE);\r
                        }\r
                }\r
@@ -1089,19 +1089,19 @@ int LoadSettingsFromFile(void)
 \r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82É\95\8e\9a\97ñ\82ð\83Z\81[\83u --------------------------------\r
+/*----- レジストリ/INIファイルに文字列をセーブ --------------------------------\r
 *\r
 *      Parameter\r
-*              HKEY hKey : \83\8c\83W\83X\83g\83\8a\83L\81[\r
-*              char *Key : \83L\81[\96¼\r
-*              char *Str : \83Z\81[\83u\82·\82é\95\8e\9a\97ñ\r
-*              char *DefaultStr : \83f\83t\83H\83\8b\83g\82Ì\95\8e\9a\97ñ\r
+*              HKEY hKey : レジストリキー\r
+*              char *Key : キー名\r
+*              char *Str : セーブする文字列\r
+*              char *DefaultStr : デフォルトの文字列\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \95\8e\9a\97ñ\82ª\83f\83t\83H\83\8b\83g\82Ì\95\8e\9a\97ñ\82Æ\93¯\82\82È\82ç\83Z\81[\83u\82µ\82È\82¢\r
+*              文字列がデフォルトの文字列と同じならセーブしない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SaveStr(HKEY hKey, char *Key, char *Str, char *DefaultStr)\r
@@ -1115,19 +1115,19 @@ static void SaveStr(HKEY hKey, char *Key, char *Str, char *DefaultStr)
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82É\90\94\92l(INT)\82ð\83Z\81[\83u -----------------------------\r
+/*----- レジストリ/INIファイルに数値(INT)をセーブ -----------------------------\r
 *\r
 *      Parameter\r
-*              HKEY hKey : \83\8c\83W\83X\83g\83\8a\83L\81[\r
-*              char *Key : \83L\81[\96¼\r
-*              int Num : \83Z\81[\83u\82·\82é\92l\r
-*              int DefaultNum : \83f\83t\83H\83\8b\83g\82Ì\92l\r
+*              HKEY hKey : レジストリキー\r
+*              char *Key : キー名\r
+*              int Num : セーブする値\r
+*              int DefaultNum : デフォルトの値\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Note\r
-*              \90\94\92l\82ª\83f\83t\83H\83\8b\83g\82Ì\92l\82Æ\93¯\82\82È\82ç\83Z\81[\83u\82µ\82È\82¢\r
+*              数値がデフォルトの値と同じならセーブしない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SaveIntNum(HKEY hKey, char *Key, int Num, int DefaultNum)\r
@@ -1141,16 +1141,16 @@ static void SaveIntNum(HKEY hKey, char *Key, int Num, int DefaultNum)
 }\r
 \r
 \r
-/*----- LOGFONT\83f\81[\83^\82ð\95\8e\9a\97ñ\82É\95Ï\8a·\82·\82é ---------------------------------------\r
+/*----- LOGFONTデータを文字列に変換する ---------------------------------------\r
 *\r
 *      Parameter\r
-*              LOGFONT Font : \83t\83H\83\93\83g\83f\81[\83^\r
-*              HFONT hFont : \83t\83H\83\93\83g\82Ì\83n\83\93\83h\83\8b\r
-*                      NULL = \83f\83t\83H\83\8b\83g\82Ì\83t\83H\83\93\83g\r
-*              char *Buf : \83o\83b\83t\83@\r
+*              LOGFONT Font : フォントデータ\r
+*              HFONT hFont : フォントのハンドル\r
+*                      NULL = デフォルトのフォント\r
+*              char *Buf : バッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void MakeFontData(LOGFONT Font, HFONT hFont, char *Buf)\r
@@ -1166,15 +1166,15 @@ static void MakeFontData(LOGFONT Font, HFONT hFont, char *Buf)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ðLOGFONT\83f\81[\83^\82É\95Ï\8a·\82·\82é ---------------------------------------\r
+/*----- 文字列をLOGFONTデータに変換する ---------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              LOGFONT *Font : \83t\83H\83\93\83g\83f\81[\83^\r
+*              char *Str : 文字列\r
+*              LOGFONT *Font : フォントデータ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL=\95Ï\8a·\82Å\82«\82È\82¢\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL=変換できない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int RestoreFontData(char *Str, LOGFONT *Font)\r
@@ -1182,7 +1182,7 @@ static int RestoreFontData(char *Str, LOGFONT *Font)
        int i;\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(sscanf(Str, "%d %d %d %d %d %d %d %d %d %d %d %d %d",\r
                        &(Font->lfHeight), &(Font->lfWidth), &(Font->lfEscapement), &(Font->lfOrientation),\r
                        &(Font->lfWeight), &(Font->lfItalic), &(Font->lfUnderline), &(Font->lfStrikeOut),\r
@@ -1198,38 +1198,38 @@ static int RestoreFontData(char *Str, LOGFONT *Font)
                if(i == 0)\r
                {\r
                        strcpy(Font->lfFaceName, Str);\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
 \r
-       if(Sts == FAIL)\r
+       if(Sts == FFFTP_FAIL)\r
                memset(Font, NUL, sizeof(LOGFONT));\r
 \r
        return(Sts);\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82ð\88Ã\8d\86\89»\82·\82é ------------------------------------------------\r
+/*----- パスワードを暗号化する ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83p\83X\83\8f\81[\83h\r
-*              char *Buf : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
+*              char *Str : パスワード\r
+*              char *Buf : 暗号化したパスワードを格納するバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 static void EncodePassword(char *Str, char *Buf)\r
 {\r
        EncodePassword3( Str, Buf, SecretKey );\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82ð\88Ã\8d\86\89»\82·\82é(\83I\83\8a\83W\83i\83\8b\83A\83\8b\83S\83\8a\83Y\83\80)  ------------------\r
+/*----- パスワードを暗号化する(オリジナルアルゴリズム)  ------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83p\83X\83\8f\81[\83h\r
-*              char *Buf : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
+*              char *Str : パスワード\r
+*              char *Buf : 暗号化したパスワードを格納するバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void EncodePasswordOriginal(char *Str, char *Buf)\r
@@ -1249,7 +1249,7 @@ static void EncodePasswordOriginal(char *Str, char *Buf)
                return;\r
        }\r
 \r
-       /* \8e¯\95Ê\8eq\82ð\90æ\93ª\82É\92u\82­ */\r
+       /* 識別子を先頭に置く */\r
        Put[0] = '0';\r
        Put[1] = 'A';\r
        Put += 2;\r
@@ -1268,15 +1268,15 @@ static void EncodePasswordOriginal(char *Str, char *Buf)
        return;\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82ð\88Ã\8d\86\89»\82·\82é(\83I\83\8a\83W\83i\83\8b\83A\83\8b\83S\83\8a\83Y\83\80\81OKey)  ----------------\r
+/*----- パスワードを暗号化する(オリジナルアルゴリズム^Key)  ----------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83p\83X\83\8f\81[\83h\r
-*              char *Buf : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
-*              const char *Key : \88Ã\8d\86\89»\83L\81[\r
+*              char *Str : パスワード\r
+*              char *Buf : 暗号化したパスワードを格納するバッファ\r
+*              const char *Key : 暗号化キー\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void EncodePassword2(char *Str, char *Buf, const char* Key)\r
@@ -1301,7 +1301,7 @@ static void EncodePassword2(char *Str, char *Buf, const char* Key)
                return;\r
        }\r
 \r
-       /* \8e¯\95Ê\8eq\82ð\90æ\93ª\82É\92u\82­ */\r
+       /* 識別子を先頭に置く */\r
        Put[0] = '0';\r
        Put[1] = 'B';\r
        Put += 2;\r
@@ -1325,15 +1325,15 @@ static void EncodePassword2(char *Str, char *Buf, const char* Key)
        return;\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82ð\88Ã\8d\86\89»\82·\82é(AES) ------------------------------------------\r
+/*----- パスワードを暗号化する(AES) ------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \83p\83X\83\8f\81[\83h\r
-*              char *Buf : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
-*              const char *Key : \88Ã\8d\86\89»\83L\81[\r
+*              char *Str : パスワード\r
+*              char *Buf : 暗号化したパスワードを格納するバッファ\r
+*              const char *Key : 暗号化キー\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void EncodePassword3(char *Str, char *Buf, const char *Key)\r
@@ -1358,7 +1358,7 @@ static void EncodePassword3(char *Str, char *Buf, const char *Key)
        StrLen = strlen(Str);\r
        StrPadLen = ((StrLen + AES_BLOCK_SIZE - 1) / AES_BLOCK_SIZE) * AES_BLOCK_SIZE;\r
 \r
-       /* \8dÅ\92á\92·\82ð32\95\8e\9a\82Æ\82·\82é */\r
+       /* 最低長を32文字とする */\r
 //     StrPadLen = min1(StrPadLen, AES_BLOCK_SIZE * 2);\r
        StrPadLen = max1(StrPadLen, AES_BLOCK_SIZE * 2);\r
 \r
@@ -1371,7 +1371,7 @@ static void EncodePassword3(char *Str, char *Buf, const char *Key)
                        PutState = FALSE;\r
                        strncpy(StrPadBuf, Str, StrPadLen);\r
                        \r
-                       /* PAD\95\94\95ª\82ð\97\90\90\94\82Å\96\84\82ß\82é StrPad[StrLen](\82ª\97L\8cø\82È\8fê\8d\87\82Í NUL */\r
+                       /* PAD部分を乱数で埋める StrPad[StrLen](が有効な場合) は NUL */\r
                        for(StrPadIndex = StrLen + 1; StrPadIndex < StrPadLen;)\r
                        {\r
                                RandValue = GetRandamDWRODValue();\r
@@ -1385,7 +1385,7 @@ static void EncodePassword3(char *Str, char *Buf, const char *Key)
                                }\r
                        }\r
                        \r
-                       // IV\82Ì\8f\89\8aú\89»\r
+                       // IVの初期化\r
                        for(IvIndex = 0; IvIndex < AES_BLOCK_SIZE;)\r
                        {\r
                                RandValue = GetRandamDWRODValue();\r
@@ -1408,7 +1408,7 @@ static void EncodePassword3(char *Str, char *Buf, const char *Key)
                        }\r
                        *Put++ = ':';\r
 \r
-                       if(CreateAesKey(AesKey, Key) == SUCCESS)\r
+                       if(CreateAesKey(AesKey, Key) == FFFTP_SUCCESS)\r
                        {\r
                                aes_encrypt_key(AesKey, 32, &Ctx);\r
 \r
@@ -1435,14 +1435,14 @@ static void EncodePassword3(char *Str, char *Buf, const char *Key)
 }\r
 \r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82Ì\88Ã\8d\86\89»\82ð\89ð\82­ ----------------------------------------------\r
+/*----- パスワードの暗号化を解く ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\r
-*              char *Buf : \83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
+*              char *Str : 暗号化したパスワード\r
+*              char *Buf : パスワードを格納するバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DecodePassword(char *Str, char *Buf)\r
@@ -1476,14 +1476,14 @@ static void DecodePassword(char *Str, char *Buf)
        }\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82Ì\88Ã\8d\86\89»\82ð\89ð\82­(\83I\83\8a\83W\83i\83\8b\83A\83\8b\83S\83\8a\83Y\83\80) -------------------\r
+/*----- パスワードの暗号化を解く(オリジナルアルゴリズム) -------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\r
-*              char *Buf : \83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
+*              char *Str : 暗号化したパスワード\r
+*              char *Buf : パスワードを格納するバッファ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 static void DecodePasswordOriginal(char *Str, char *Buf)\r
 {\r
@@ -1511,15 +1511,15 @@ static void DecodePasswordOriginal(char *Str, char *Buf)
        return;\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82Ì\88Ã\8d\86\89»\82ð\89ð\82­(\83I\83\8a\83W\83i\83\8b\83A\83\8b\83S\83\8a\83Y\83\80\81OKey) -------------------\r
+/*----- パスワードの暗号化を解く(オリジナルアルゴリズム^Key) -------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\r
-*              char *Buf : \83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
-*              const char *Key : \88Ã\8d\86\89»\83L\81[\r
+*              char *Str : 暗号化したパスワード\r
+*              char *Buf : パスワードを格納するバッファ\r
+*              const char *Key : 暗号化キー\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 static void DecodePassword2(char *Str, char *Buf, const char* Key)\r
 {\r
@@ -1554,15 +1554,15 @@ static void DecodePassword2(char *Str, char *Buf, const char* Key)
        return;\r
 }\r
 \r
-/*----- \83p\83X\83\8f\81[\83h\82Ì\88Ã\8d\86\89»\82ð\89ð\82­(AES) ---------------------------------------\r
+/*----- パスワードの暗号化を解く(AES) ---------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \88Ã\8d\86\89»\82µ\82½\83p\83X\83\8f\81[\83h\r
-*              char *Buf : \83p\83X\83\8f\81[\83h\82ð\8ai\94[\82·\82é\83o\83b\83t\83@\r
-*              const char *Key : \88Ã\8d\86\89»\83L\81[\r
+*              char *Str : 暗号化したパスワード\r
+*              char *Buf : パスワードを格納するバッファ\r
+*              const char *Key : 暗号化キー\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void DecodePassword3(char *Str, char *Buf, const char *Key)\r
@@ -1596,7 +1596,7 @@ static void DecodePassword3(char *Str, char *Buf, const char *Key)
 \r
                        if(*Get++ == ':')\r
                        {\r
-                               if(CreateAesKey(AesKey, Key) == SUCCESS)\r
+                               if(CreateAesKey(AesKey, Key) == FFFTP_SUCCESS)\r
                                {\r
                                        aes_decrypt_key(AesKey, 32, &Ctx);\r
 \r
@@ -1617,16 +1617,16 @@ static void DecodePassword3(char *Str, char *Buf, const char *Key)
        return;\r
 }\r
 \r
-/*----- AES\97p\8cÅ\92è\92·\83L\81[\82ð\8dì\90¬ ----------------------------------------------\r
+/*----- AES用固定長キーを作成 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              unsigned char *AesKey : AES\88Ã\8d\86\8c®\r
-*              const char *Key : \88Ã\8d\86\89»\83L\81[\r
+*              unsigned char *AesKey : AES暗号鍵\r
+*              const char *Key : 暗号化キー\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+*              int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
 *      Note\r
-*              SHA-1\82ð\82à\82¿\82¢\82Ä32Byte\8c®\82ð\90\90¬\82·\82é\r
+*              SHA-1をもちいて32Byte鍵を生成する\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CreateAesKey(unsigned char *AesKey, const char* Key)\r
@@ -1640,7 +1640,7 @@ static int CreateAesKey(unsigned char *AesKey, const char* Key)
 \r
        HashKeyLen = strlen(Key) + 16;\r
        if((HashKey = malloc(HashKeyLen + 1)) == NULL){\r
-               return (FAIL);\r
+               return (FFFTP_FAIL);\r
        }\r
 \r
        strcpy(HashKey, Key);\r
@@ -1661,24 +1661,24 @@ static int CreateAesKey(unsigned char *AesKey, const char* Key)
        }\r
        free(HashKey);\r
 \r
-       return (SUCCESS);\r
+       return (FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*===== \83\8c\83W\83X\83g\83\8a\82ÆINI\83t\83@\83C\83\8b\82Ì\83A\83N\83Z\83X\8f\88\97\9d ============*/\r
+/*===== レジストリとINIファイルのアクセス処理 ============*/\r
 \r
 \r
-/*===== INI\83t\83@\83C\83\8b\97p\82Ì\83\8c\83W\83X\83g\83\8a\83f\81[\83^ =====*/\r
+/*===== INIファイル用のレジストリデータ =====*/\r
 \r
 typedef struct regdatatbl {\r
-       char KeyName[80+1];                     /* \83L\81[\96¼ */\r
-       char ValTbl[REG_SECT_MAX];      /* \92l\82Ì\83e\81[\83u\83\8b */\r
-       int ValLen;                                     /* \92l\83f\81[\83^\82Ì\83o\83C\83g\90\94 */\r
-       int Mode;                                       /* \83L\81[\82Ì\83\82\81[\83h */\r
+       char KeyName[80+1];                     /* キー名 */\r
+       char ValTbl[REG_SECT_MAX];      /* 値のテーブル */\r
+       int ValLen;                                     /* 値データのバイト数 */\r
+       int Mode;                                       /* キーのモード */\r
        struct regdatatbl *Next;\r
 } REGDATATBL;\r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static BOOL WriteOutRegToFile(REGDATATBL *Pos);\r
 static int ReadInReg(char *Name, REGDATATBL **Handle);\r
@@ -1687,20 +1687,20 @@ static int StrReadIn(char *Src, int Max, char *Dst);
 static char *ScanValue(void *Handle, char *Name);\r
 \r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static int TmpRegType;\r
 \r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\82Ì\83^\83C\83v\82ð\90Ý\92è\82·\82é ------------------------------------------\r
+/*----- レジストリのタイプを設定する ------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Type : \83^\83C\83v (REGTYPE_xxx)\r
+*              int Type : タイプ (REGTYPE_xxx)\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void SetRegType(int Type)\r
@@ -1710,15 +1710,15 @@ static void SetRegType(int Type)
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82ð\83I\81[\83v\83\93\82·\82é\81i\93Ç\82Ý\8d\9e\82Ý\81j-----------------------\r
+/*----- レジストリ/INIファイルをオープンする(読み込み)-----------------------\r
 *\r
 *      Parameter\r
-*              char *Name : \83\8c\83W\83X\83g\83\8a\96¼\r
-*              void **Handle : \83n\83\93\83h\83\8b\82ð\95Ô\82·\83\8f\81[\83N\r
+*              char *Name : レジストリ名\r
+*              void **Handle : ハンドルを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int OpenReg(char *Name, void **Handle)\r
@@ -1726,32 +1726,32 @@ static int OpenReg(char *Name, void **Handle)
        int Sts;\r
        char Tmp[FMAX_PATH+1];\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                strcpy(Tmp, "Software\\Sota\\");\r
                strcat(Tmp, Name);\r
                if(RegOpenKeyEx(HKEY_CURRENT_USER, Tmp, 0, KEY_READ, (HKEY *)Handle) == ERROR_SUCCESS)\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
        {\r
-               if((Sts = ReadInReg(Name, (REGDATATBL **)Handle)) == SUCCESS)\r
+               if((Sts = ReadInReg(Name, (REGDATATBL **)Handle)) == FFFTP_SUCCESS)\r
                        ((REGDATATBL *)(*Handle))->Mode = 0;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82ð\8dì\90¬\82·\82é\81i\8f\91\82«\8d\9e\82Ý\81j---------------------------\r
+/*----- レジストリ/INIファイルを作成する(書き込み)---------------------------\r
 *\r
 *      Parameter\r
-*              char *Name : \83\8c\83W\83X\83g\83\8a\96¼\r
-*              void **Handle : \83n\83\93\83h\83\8b\82ð\95Ô\82·\83\8f\81[\83N\r
+*              char *Name : レジストリ名\r
+*              void **Handle : ハンドルを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CreateReg(char *Name, void **Handle)\r
@@ -1760,13 +1760,13 @@ static int CreateReg(char *Name, void **Handle)
        char Tmp[FMAX_PATH+1];\r
        DWORD Dispos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                strcpy(Tmp, "Software\\Sota\\");\r
                strcat(Tmp, Name);\r
                if(RegCreateKeyEx(HKEY_CURRENT_USER, Tmp, 0, "", REG_OPTION_NON_VOLATILE, KEY_CREATE_SUB_KEY | KEY_SET_VALUE, NULL, (HKEY *)Handle, &Dispos) == ERROR_SUCCESS)\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
        {\r
@@ -1776,21 +1776,21 @@ static int CreateReg(char *Name, void **Handle)
                        ((REGDATATBL *)(*Handle))->ValLen = 0;\r
                        ((REGDATATBL *)(*Handle))->Next = NULL;\r
                        ((REGDATATBL *)(*Handle))->Mode = 1;\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a/INI\83t\83@\83C\83\8b\82ð\83N\83\8d\81[\83Y\82·\82é ----------------------------------\r
+/*----- レジストリ/INIファイルをクローズする ----------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
+*              void *Handle : ハンドル\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CloseReg(void *Handle)\r
@@ -1803,7 +1803,7 @@ static int CloseReg(void *Handle)
        {\r
                RegCloseKey(Handle);\r
 \r
-               /* INI\83t\83@\83C\83\8b\82ð\8dí\8f\9c */\r
+               /* INIファイルを削除 */\r
                if((Strm = fopen(AskIniFilePath(), "rt")) != NULL)\r
                {\r
                        fclose(Strm);\r
@@ -1816,11 +1816,11 @@ static int CloseReg(void *Handle)
                {\r
                        if(WriteOutRegToFile(Handle) == TRUE)\r
                        {\r
-//                             /* \83\8c\83W\83X\83g\83\8a\82ð\83N\83\8a\83A */\r
+//                             /* レジストリをクリア */\r
 //                             ClearRegistory();\r
                        }\r
                }\r
-               /* \83e\81[\83u\83\8b\82ð\8dí\8f\9c */\r
+               /* テーブルを削除 */\r
                Pos = Handle;\r
                while(Pos != NULL)\r
                {\r
@@ -1829,17 +1829,17 @@ static int CloseReg(void *Handle)
                        Pos = Next;\r
                }\r
        }\r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*----- \83\8c\83W\83X\83g\83\8a\8fî\95ñ\82ðINI\83t\83@\83C\83\8b\82É\8f\91\82«\8d\9e\82Þ ---------------------------------\r
+/*----- レジストリ情報をINIファイルに書き込む ---------------------------------\r
 *\r
 *      Parameter\r
-*              REGDATATBL *Pos : \83\8c\83W\83X\83g\83\8a\83f\81[\83^\r
+*              REGDATATBL *Pos : レジストリデータ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static BOOL WriteOutRegToFile(REGDATATBL *Pos)\r
@@ -1874,15 +1874,15 @@ static BOOL WriteOutRegToFile(REGDATATBL *Pos)
 }\r
 \r
 \r
-/*----- INI\83t\83@\83C\83\8b\82©\82ç\83\8c\83W\83X\83g\83\8a\8fî\95ñ\82ð\93Ç\82Ý\8d\9e\82Þ -------------------------------\r
+/*----- INIファイルからレジストリ情報を読み込む -------------------------------\r
 *\r
 *      Parameter\r
-*              char *Name : \96¼\91O\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
+*              char *Name : 名前\r
+*              void *Handle : ハンドル\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int ReadInReg(char *Name, REGDATATBL **Handle)\r
@@ -1895,7 +1895,7 @@ static int ReadInReg(char *Name, REGDATATBL **Handle)
        REGDATATBL *Pos;\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        *Handle = NULL;\r
 \r
        if((Strm = fopen(AskIniFilePath(), "rt")) != NULL)\r
@@ -1938,7 +1938,7 @@ static int ReadInReg(char *Name, REGDATATBL **Handle)
                                        }\r
                                }\r
                        }\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                        free(Buf);\r
                }\r
                fclose(Strm);\r
@@ -1947,16 +1947,16 @@ static int ReadInReg(char *Name, REGDATATBL **Handle)
 }\r
 \r
 \r
-/*----- \83T\83u\83L\81[\82ð\83I\81[\83v\83\93\82·\82é ------------------------------------------------\r
+/*----- サブキーをオープンする ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Parent : \90e\82Ì\83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              void **Handle : \83n\83\93\83h\83\8b\82ð\95Ô\82·\83\8f\81[\83N\r
+*              void *Parent : 親のハンドル\r
+*              char *Name : 名前\r
+*              void **Handle : ハンドルを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int OpenSubKey(void *Parent, char *Name, void **Handle)\r
@@ -1965,11 +1965,11 @@ static int OpenSubKey(void *Parent, char *Name, void **Handle)
        char Key[80];\r
        REGDATATBL *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                if(RegOpenKeyEx(Parent, Name, 0, KEY_READ, (HKEY *)Handle) == ERROR_SUCCESS)\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
        {\r
@@ -1982,7 +1982,7 @@ static int OpenSubKey(void *Parent, char *Name, void **Handle)
                        if(strcmp(Pos->KeyName, Key) == 0)\r
                        {\r
                                *Handle = Pos;\r
-                               Sts = SUCCESS;\r
+                               Sts = FFFTP_SUCCESS;\r
                                break;\r
                        }\r
                        Pos = Pos->Next;\r
@@ -1992,16 +1992,16 @@ static int OpenSubKey(void *Parent, char *Name, void **Handle)
 }\r
 \r
 \r
-/*----- \83T\83u\83L\81[\82ð\8dì\90¬\82·\82é ----------------------------------------------------\r
+/*----- サブキーを作成する ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Parent : \90e\82Ì\83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              void **Handle : \83n\83\93\83h\83\8b\82ð\95Ô\82·\83\8f\81[\83N\r
+*              void *Parent : 親のハンドル\r
+*              char *Name : 名前\r
+*              void **Handle : ハンドルを返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CreateSubKey(void *Parent, char *Name, void **Handle)\r
@@ -2010,11 +2010,11 @@ static int CreateSubKey(void *Parent, char *Name, void **Handle)
        DWORD Dispos;\r
        REGDATATBL *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                if(RegCreateKeyEx(Parent, Name, 0, "", REG_OPTION_NON_VOLATILE, KEY_SET_VALUE, NULL, (HKEY *)Handle, &Dispos) == ERROR_SUCCESS)\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
        {\r
@@ -2031,21 +2031,21 @@ static int CreateSubKey(void *Parent, char *Name, void **Handle)
                        while(Pos->Next != NULL)\r
                                Pos = Pos->Next;\r
                        Pos->Next = *Handle;\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83T\83u\83L\81[\82ð\83N\83\8d\81[\83Y\82·\82é ------------------------------------------------\r
+/*----- サブキーをクローズする ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
+*              void *Handle : ハンドル\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CloseSubKey(void *Handle)\r
@@ -2056,78 +2056,78 @@ static int CloseSubKey(void *Handle)
        {\r
                /* Nothing */\r
        }\r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*----- \83T\83u\83L\81[\82ð\8dí\8f\9c\82·\82é ----------------------------------------------------\r
+/*----- サブキーを削除する ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DeleteSubKey(void *Handle, char *Name)\r
 {\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                if(RegDeleteKey(Handle, Name) == ERROR_SUCCESS)\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
        {\r
-               Sts = FAIL;\r
+               Sts = FFFTP_FAIL;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \92l\82ð\8dí\8f\9c\82·\82é ----------------------------------------------------------\r
+/*----- 値を削除する ----------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DeleteValue(void *Handle, char *Name)\r
 {\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                if(RegDeleteValue(Handle, Name) == ERROR_SUCCESS)\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
        {\r
-               Sts = FAIL;\r
+               Sts = FFFTP_FAIL;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- INT\92l\82ð\93Ç\82Ý\8d\9e\82Þ -------------------------------------------------------\r
+/*----- INT値を読み込む -------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              int *Value : INT\92l\82ð\95Ô\82·\83\8f\81[\83N\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              int *Value : INT値を返すワーク\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int ReadIntValueFromReg(void *Handle, char *Name, int *Value)\r
@@ -2136,35 +2136,35 @@ static int ReadIntValueFromReg(void *Handle, char *Name, int *Value)
        DWORD Size;\r
        char *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                Size = sizeof(int);\r
                if(RegQueryValueEx(Handle, Name, NULL, NULL, (BYTE *)Value, &Size) == ERROR_SUCCESS)\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
        {\r
                if((Pos = ScanValue(Handle, Name)) != NULL)\r
                {\r
                        *Value = atoi(Pos);\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- INT\92l\82ð\8f\91\82«\8d\9e\82Þ -------------------------------------------------------\r
+/*----- INT値を書き込む -------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              int Value : INT\92l\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              int Value : INT\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int WriteIntValueToReg(void *Handle, char *Name, int Value)\r
@@ -2185,21 +2185,21 @@ static int WriteIntValueToReg(void *Handle, char *Name, int Value)
                strcat(Data, Tmp);\r
                Pos->ValLen += strlen(Data) + 1;\r
        }\r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\93Ç\82Ý\8d\9e\82Þ ------------------------------------------------------\r
+/*----- 文字列を読み込む ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              char *Str : \95\8e\9a\97ñ\82ð\95Ô\82·\83\8f\81[\83N\r
-*              DWORD Size : \8dÅ\91å\83T\83C\83Y\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              char *Str : 文字列を返すワーク\r
+*              DWORD Size : 最大サイズ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int ReadStringFromReg(void *Handle, char *Name, char *Str, DWORD Size)\r
@@ -2207,14 +2207,14 @@ static int ReadStringFromReg(void *Handle, char *Name, char *Str, DWORD Size)
        int Sts;\r
        char *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                if(RegQueryValueEx(Handle, Name, NULL, NULL, (BYTE *)Str, &Size) == ERROR_SUCCESS)\r
                {\r
                        if(*(Str + Size - 1) != NUL)\r
                                *(Str + Size) = NUL;\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        else\r
@@ -2224,23 +2224,23 @@ static int ReadStringFromReg(void *Handle, char *Name, char *Str, DWORD Size)
                        Size = min1(Size-1, strlen(Pos));\r
                        Size = StrReadIn(Pos, Size, Str);\r
                        *(Str + Size) = NUL;\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\8f\91\82«\8d\9e\82Þ ------------------------------------------------------\r
+/*----- 文字列を書き込む ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              char *Str :\95\8e\9a\97ñ\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              char *Str :文字列\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int WriteStringToReg(void *Handle, char *Name, char *Str)\r
@@ -2260,21 +2260,21 @@ static int WriteStringToReg(void *Handle, char *Name, char *Str)
                Data = Pos->ValTbl + Pos->ValLen;\r
                Pos->ValLen += StrCatOut(Str, strlen(Str), Data) + 1;\r
        }\r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*----- \83}\83\8b\83`\95\8e\9a\97ñ\82ð\93Ç\82Ý\8d\9e\82Þ ------------------------------------------------\r
+/*----- マルチ文字列を読み込む ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              char *Str : \95\8e\9a\97ñ\82ð\95Ô\82·\83\8f\81[\83N\r
-*              DWORD Size : \8dÅ\91å\83T\83C\83Y\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              char *Str : 文字列を返すワーク\r
+*              DWORD Size : 最大サイズ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int ReadMultiStringFromReg(void *Handle, char *Name, char *Str, DWORD Size)\r
@@ -2282,14 +2282,14 @@ static int ReadMultiStringFromReg(void *Handle, char *Name, char *Str, DWORD Siz
        int Sts;\r
        char *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                if(RegQueryValueEx(Handle, Name, NULL, NULL, (BYTE *)Str, &Size) == ERROR_SUCCESS)\r
                {\r
                        if(*(Str + Size - 1) != NUL)\r
                                *(Str + Size) = NUL;\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        else\r
@@ -2299,23 +2299,23 @@ static int ReadMultiStringFromReg(void *Handle, char *Name, char *Str, DWORD Siz
                        Size = min1(Size-1, strlen(Pos));\r
                        Size = StrReadIn(Pos, Size, Str);\r
                        *(Str + Size) = NUL;\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83}\83\8b\83`\95\8e\9a\97ñ\82ð\8f\91\82«\8d\9e\82Þ ------------------------------------------------\r
+/*----- マルチ文字列を書き込む ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              char *Str : \95\8e\9a\97ñ\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              char *Str : 文字列\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int WriteMultiStringToReg(void *Handle, char *Name, char *Str)\r
@@ -2335,21 +2335,21 @@ static int WriteMultiStringToReg(void *Handle, char *Name, char *Str)
                Data = Pos->ValTbl + Pos->ValLen;\r
                Pos->ValLen += StrCatOut(Str, StrMultiLen(Str), Data) + 1;\r
        }\r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*----- \83o\83C\83i\83\8a\82ð\93Ç\82Ý\8d\9e\82Þ-----------------------------------------------------\r
+/*----- バイナリを読み込む-----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              void *Bin : \83o\83C\83i\83\8a\82ð\95Ô\82·\83\8f\81[\83N\r
-*              DWORD Size : \8dÅ\91å\83T\83C\83Y\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              void *Bin : バイナリを返すワーク\r
+*              DWORD Size : 最大サイズ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int ReadBinaryFromReg(void *Handle, char *Name, void *Bin, DWORD Size)\r
@@ -2357,11 +2357,11 @@ static int ReadBinaryFromReg(void *Handle, char *Name, void *Bin, DWORD Size)
        int Sts;\r
        char *Pos;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(TmpRegType == REGTYPE_REG)\r
        {\r
                if(RegQueryValueEx(Handle, Name, NULL, NULL, (BYTE *)Bin, &Size) == ERROR_SUCCESS)\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
        {\r
@@ -2369,24 +2369,24 @@ static int ReadBinaryFromReg(void *Handle, char *Name, void *Bin, DWORD Size)
                {\r
                        Size = min1(Size, strlen(Pos));\r
                        Size = StrReadIn(Pos, Size, Bin);\r
-                       Sts = SUCCESS;\r
+                       Sts = FFFTP_SUCCESS;\r
                }\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83o\83C\83i\83\8a\82ð\8f\91\82«\8d\9e\82Þ ----------------------------------------------------\r
+/*----- バイナリを書き込む ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              void *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
-*              void *Bin : \83o\83C\83i\83\8a\r
-*              int Len : \92·\82³\r
+*              void *Handle : ハンドル\r
+*              char *Name : 名前\r
+*              void *Bin : バイナリ\r
+*              int Len : 長さ\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int WriteBinaryToReg(void *Handle, char *Name, void *Bin, int Len)\r
@@ -2406,19 +2406,19 @@ static int WriteBinaryToReg(void *Handle, char *Name, void *Bin, int Len)
                Data = Pos->ValTbl + Pos->ValLen;\r
                Pos->ValLen += StrCatOut(Bin, Len, Data) + 1;\r
        }\r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\83o\83b\83t\83@\82É\92Ç\89Á\8f\91\82«\8d\9e\82Ý\82·\82é ------------------------------------\r
+/*----- 文字列をバッファに追加書き込みする ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Src : \95\8e\9a\97ñ\r
-*              int len : \95\8e\9a\97ñ\82Ì\92·\82³\r
-*              char *Dst : \8f\91\82«\8d\9e\82Ý\82·\82é\83o\83b\83t\83@\r
+*              char *Src : 文字列\r
+*              int len : 文字列の長さ\r
+*              char *Dst : 書き込みするバッファ\r
 *\r
 *      Return Value\r
-*              int \92Ç\89Á\82µ\82½\83o\83C\83g\90\94\r
+*              int 追加したバイト数\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int StrCatOut(char *Src, int Len, char *Dst)\r
@@ -2453,15 +2453,15 @@ static int StrCatOut(char *Src, int Len, char *Dst)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ð\83o\83b\83t\83@\82É\93Ç\82Ý\8d\9e\82Þ --------------------------------------------\r
+/*----- 文字列をバッファに読み込む --------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Src : \95\8e\9a\97ñ\r
-*              int Max : \8dÅ\91å\83T\83C\83Y\r
-*              char *Dst : \8f\91\82«\8d\9e\82Ý\82·\82é\83o\83b\83t\83@\r
+*              char *Src : 文字列\r
+*              int Max : 最大サイズ\r
+*              char *Dst : 書き込みするバッファ\r
 *\r
 *      Return Value\r
-*              int \93Ç\82Ý\8d\9e\82ñ\82¾\83o\83C\83g\90\94\r
+*              int 読み込んだバイト数\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int StrReadIn(char *Src, int Max, char *Dst)\r
@@ -2498,15 +2498,15 @@ static int StrReadIn(char *Src, int Max, char *Dst)
 }\r
 \r
 \r
-/*----- \92l\82ð\8c\9f\8dõ\82·\82é ----------------------------------------------------------\r
+/*----- 値を検索する ----------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Handle : \83n\83\93\83h\83\8b\r
-*              char *Name : \96¼\91O\r
+*              char *Handle : ハンドル\r
+*              char *Name : 名前\r
 *\r
 *      Return Value\r
-*              char *\92l\83f\81[\83^\82Ì\90æ\93ª\r
-*                      NULL=\8ew\92è\82Ì\96¼\91O\82Ì\92l\82ª\8c©\82Â\82©\82ç\82È\82¢\r
+*              char *値データの先頭\r
+*                      NULL=指定の名前の値が見つからない\r
 *----------------------------------------------------------------------------*/\r
 \r
 static char *ScanValue(void *Handle, char *Name)\r
@@ -2532,16 +2532,16 @@ static char *ScanValue(void *Handle, char *Name)
 }\r
 \r
 \r
-/*----------- \83p\83X\83\8f\81[\83h\82Ì\91Ã\93\96\90«\82ð\8am\94F\82·\82é ------------------------------------\r
+/*----------- パスワードの妥当性を確認する ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Password: \83p\83X\83\8f\81[\83h\95\8e\9a\97ñ\r
-*              char *HashStr: SHA-1\83n\83b\83V\83\85\95\8e\9a\97ñ\r
+*              char *Password: パスワード文字列\r
+*              char *HashStr: SHA-1ハッシュ文字列\r
 *\r
 *      Return Value\r
-*              int 0 \95s\88ê\92v\r
-*                      1: \88ê\92v\r
-*                      2: \88Ù\8fí\r
+*              int 0 不一致\r
+*                      1: 一致\r
+*                      2: 異常\r
 *----------------------------------------------------------------------------*/\r
 int CheckPasswordValidity( char* Password, int length, const char* HashStr )\r
 {\r
@@ -2552,13 +2552,13 @@ int CheckPasswordValidity( char* Password, int length, const char* HashStr )
        \r
        const char* p = HashStr;\r
        \r
-       /* \8bó\95\8e\9a\97ñ\82Í\88ê\92v\82µ\82½\82±\82Æ\82É\82·\82é */\r
+       /* 空文字列は一致したことにする */\r
        if( HashStr[0] == NUL ) return 1;\r
 \r
-       /* Hash\82ð\83`\83F\83b\83N\82·\82é\82·\82é*/\r
+       /* Hashをチェックするする*/\r
        if( strlen(HashStr) != 40 )     return 2;\r
 \r
-       /* Hash\82ð\83f\83R\81[\83h\82·\82é*/\r
+       /* Hashをデコードする*/\r
        for( i = 0; i < 5; i++ ){\r
                ulong decode = 0;\r
                for( j = 0; j < 8; j++ ){\r
@@ -2571,7 +2571,7 @@ int CheckPasswordValidity( char* Password, int length, const char* HashStr )
                hash1[i] = decode;\r
        }\r
        \r
-       /* Password \82ð\83n\83b\83V\83\85\82·\82é */\r
+       /* Password をハッシュする */\r
        sha_memory( Password, length, hash2 );\r
        \r
        if( memcmp( (char*)hash1, (char*)hash2, sizeof( hash1 )) == 0 ){\r
@@ -2580,11 +2580,11 @@ int CheckPasswordValidity( char* Password, int length, const char* HashStr )
        return 0;\r
 }\r
 \r
-/*----------- \83p\83X\83\8f\81[\83h\82Ì\91Ã\93\96\90«\83`\83F\83b\83N\82Ì\82½\82ß\82Ì\95\8e\9a\97ñ\82ð\8dì\90¬\82·\82é ------------\r
+/*----------- パスワードの妥当性チェックのための文字列を作成する ------------\r
 *\r
 *      Parameter\r
-*              char *Password: \83p\83X\83\8f\81[\83h\95\8e\9a\97ñ\r
-*              char *Str: SHA-1\83n\83b\83V\83\85\95\8e\9a\97ñ\8ai\94[\8fê\8f\8a (41bytes\88È\8fã)\r
+*              char *Password: パスワード文字列\r
+*              char *Str: SHA-1ハッシュ文字列格納場所 (41bytes以上)\r
 *\r
 *      Return Value\r
 *              None\r
@@ -2618,12 +2618,12 @@ void SetHashSalt( DWORD salt )
        SecretKeyLength = strlen( SecretKey ) + 5;\r
 }\r
 \r
-/*----------- \97\90\90\94\90\90¬\82ð\82·\82é -------------------------------------------------\r
+/*----------- 乱数生成をする -------------------------------------------------\r
 *\r
 *      Parameter\r
 *\r
 *      Return Value\r
-*              \83\89\83\93\83_\83\80\82È\92l\81F\83R\83\93\83p\83C\83\89VS2005/\93®\8dì\8aÂ\8b«WinXP\88È\8fã\82Å\82Í rand_s \82©\82ç\8eæ\93¾\82·\82é\r
+*              ランダムな値:コンパイラVS2005/動作環境WinXP以上では rand_s から取得する\r
 *----------------------------------------------------------------------------*/\r
 DWORD GetRandamDWRODValue(void)\r
 {\r
@@ -2640,12 +2640,12 @@ DWORD GetRandamDWRODValue(void)
 #ifdef USE_RANDAM_C_RAND\r
                rndValue = rand() | (rand() << 16);\r
 #else\r
-               /* rand() \82Ì\82©\82í\82è\82É\81ASHA-1\82Æ\83p\83t\83H\81[\83}\83\93\83X\83J\83E\83\93\83^\82ð\97p\82¢\82é */\r
+               /* rand() のかわりに、SHA-1とパフォーマンスカウンタを用いる */\r
                ulong shaValue[5];\r
                LARGE_INTEGER Counter;\r
                \r
                if(0 == IsRndSourceInit){\r
-                       /* \8f\89\89ñ\8eæ\93¾\8e\9e */\r
+                       /* 初回取得時 */\r
                        HANDLE CurProcHandle;\r
                        HANDLE CurThreadHandle;\r
                        \r
@@ -2660,12 +2660,12 @@ DWORD GetRandamDWRODValue(void)
                                CloseHandle(CurThreadHandle);\r
                        }\r
                        \r
-                       /* _WIN64 \82Å\82Í64bit\82¾\82ª\81A\82»\82Ì\8fê\8d\87\82Írand_s\82ª\91å\92ï\97\98\97p\89Â\94\\82È\82Ì\82Å\82±\82±\82Å\82Í32bit\82Ì\82Ý\97p\82¢\82é */\r
+                       /* _WIN64 では64bitだが、その場合はrand_sが大抵利用可能なのでここでは32bitのみ用いる */\r
                        RndSource[0] = (ulong)CurProcHandle;\r
                        RndSource[1] = (ulong)CurThreadHandle;\r
                        RndSource[2] = (ulong)GetTickCount();\r
                        RndSource[3] = (ulong)timeGetTime();\r
-                       RndSource[4] = 0; /* \83J\83E\83\93\83g\83A\83b\83v */\r
+                       RndSource[4] = 0; /* カウントアップ */\r
                        RndSource[5] = RndSource[3] + 1;\r
                        IsRndSourceInit = 1;\r
                }\r
index 6097727..1b617be 100644 (file)
--- a/remote.c
+++ b/remote.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                      \83\8a\83\82\81[\83g\91¤\82Ì\83t\83@\83C\83\8b\91\80\8dì\r
+*                                                      リモート側のファイル操作\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
@@ -27,7 +27,7 @@
 / THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
 /============================================================================*/\r
 \r
-/* \82±\82Ì\83\\81[\83X\82Í\88ê\95\94\81AWS_FTP Version 93.12.05 \82Ì\83\\81[\83X\82ð\8eQ\8dl\82É\82µ\82Ü\82µ\82½\81B */\r
+/* このソースは一部、WS_FTP Version 93.12.05 のソースを参考にしました。 */\r
 \r
 #define        STRICT\r
 #include <stdio.h>\r
@@ -46,7 +46,7 @@
 #define PWD_XPWD               0\r
 #define PWD_PWD                        1\r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static int DoPWD(char *Buf);\r
 static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork);\r
@@ -54,15 +54,15 @@ static int DoDirList(HWND hWnd, SOCKET cSkt, char *AddOpt, char *Path, int Num,
 static void ChangeSepaLocal2Remote(char *Fname);\r
 static void ChangeSepaRemote2Local(char *Fname);\r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern TRANSPACKET MainTransPkt;\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern int TimeOut;\r
 extern int SendQuit;\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static int PwdCommandType;\r
 \r
@@ -70,16 +70,16 @@ static int CheckCancelFlg = NO;
 \r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\95Ï\8dX ----------------------------------\r
+/*----- リモート側のカレントディレクトリ変更 ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              int Disp : \83f\83B\83\8c\83N\83g\83\8a\83\8a\83X\83g\82É\83p\83X\96¼\82ð\95\\8e¦\82·\82é\82©\82Ç\82¤\82©(YES/NO)\r
-*              int ForceGet : \8e¸\94s\82µ\82Ä\82à\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82ð\8eæ\93¾\82·\82é\r
-*              int ErrorBell : \83G\83\89\81[\8e\96\82Ì\89¹\82ð\96Â\82ç\82·\82©\82Ç\82¤\82©(YES/NO)\r
+*              char *Path : パス名\r
+*              int Disp : ディレクトリリストにパス名を表示するかどうか(YES/NO)\r
+*              int ForceGet : 失敗してもカレントディレクトリを取得する\r
+*              int ErrorBell : エラー事の音を鳴らすかどうか(YES/NO)\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoCWD(char *Path, int Disp, int ForceGet, int ErrorBell)\r
@@ -96,7 +96,7 @@ int DoCWD(char *Path, int Disp, int ForceGet, int ErrorBell)
                if((AskHostType() != HTYPE_VMS) || (strchr(Path, '[') != NULL))\r
                        Sts = CommandProcCmd(NULL, "CWD %s", Path);\r
                else\r
-                       Sts = CommandProcCmd(NULL, "CWD [.%s]", Path);  /* VMS\97p */\r
+                       Sts = CommandProcCmd(NULL, "CWD [.%s]", Path);  /* VMS */\r
        }\r
 \r
        if((Sts/100 >= FTP_CONTINUE) && (ErrorBell == YES))\r
@@ -109,7 +109,7 @@ int DoCWD(char *Path, int Disp, int ForceGet, int ErrorBell)
                {\r
                        if(DoPWD(Buf) != FTP_COMPLETE)\r
                        {\r
-                               /*===== PWD\82ª\8eg\82¦\82È\82©\82Á\82½\8fê\8d\87 =====*/\r
+                               /*===== PWDが使えなかった場合 =====*/\r
 \r
                                if(*Path == '/')\r
                                        strcpy(Buf, Path);\r
@@ -153,18 +153,18 @@ int DoCWD(char *Path, int Disp, int ForceGet, int ErrorBell)
 \r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\95Ï\8dX\81i\82»\82Ì\82Q\81j-------------------------\r
+/*----- リモート側のカレントディレクトリ変更(その2)-------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              char *Cur : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\r
+*              char *Path : パス名\r
+*              char *Cur : カレントディレクトリ\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *\r
 *      Note\r
-*              \83p\83X\96¼\82Í "xxx/yyy/zzz" \82Ì\8c`\8e®\r
-*              \83f\83B\83\8c\83N\83g\83\8a\95Ï\8dX\82ª\8e¸\94s\82µ\82½\82ç\81A\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82É\96ß\82µ\82Ä\82¨\82­\r
+*              パス名は "xxx/yyy/zzz" の形式\r
+*              ディレクトリ変更が失敗したら、カレントディレクトリに戻しておく\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoCWDStepByStep(char *Path, char *Cur)\r
@@ -197,13 +197,13 @@ int DoCWDStepByStep(char *Path, char *Cur)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\8eæ\93¾ ----------------------------------\r
+/*----- リモート側のカレントディレクトリ取得 ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Buf : \83p\83X\96¼\82ð\95Ô\82·\83o\83b\83t\83@\r
+*              char *Buf : パス名を返すバッファ\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DoPWD(char *Buf)\r
@@ -246,13 +246,13 @@ static int DoPWD(char *Buf)
 }\r
 \r
 \r
-/*----- PWD\83R\83}\83\93\83h\82Ì\83^\83C\83v\82ð\8f\89\8aú\89»\82·\82é ---------------------------------------\r
+/*----- PWDコマンドのタイプを初期化する ---------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void InitPWDcommand()\r
@@ -261,13 +261,13 @@ void InitPWDcommand()
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83f\83B\83\8c\83N\83g\83\8a\8dì\90¬ ----------------------------------------\r
+/*----- リモート側のディレクトリ作成 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoMKD(char *Path)\r
@@ -283,13 +283,13 @@ int DoMKD(char *Path)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83f\83B\83\8c\83N\83g\83\8a\8dí\8f\9c ------------------------------------------\r
+/*----- リモート側のディレクトリ削除 ------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoRMD(char *Path)\r
@@ -305,13 +305,13 @@ int DoRMD(char *Path)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83t\83@\83C\83\8b\8dí\8f\9c ----------------------------------------------\r
+/*----- リモート側のファイル削除 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoDELE(char *Path)\r
@@ -327,14 +327,14 @@ int DoDELE(char *Path)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83t\83@\83C\83\8b\96¼\95Ï\8dX --------------------------------------------\r
+/*----- リモート側のファイル名変更 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Src : \8c³\83t\83@\83C\83\8b\96¼\r
-*              char *Dst : \95Ï\8dX\8cã\82Ì\83t\83@\83C\83\8b\96¼\r
+*              char *Src : 元ファイル名\r
+*              char *Dst : 変更後のファイル名\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoRENAME(char *Src, char *Dst)\r
@@ -352,14 +352,14 @@ int DoRENAME(char *Src, char *Dst)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83t\83@\83C\83\8b\82Ì\91®\90«\95Ï\8dX ----------------------------------------\r
+/*----- リモート側のファイルの属性変更 ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              char *Mode : \83\82\81[\83h\95\8e\9a\97ñ\r
+*              char *Path : パス名\r
+*              char *Mode : モード文字列\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoCHMOD(char *Path, char *Mode)\r
@@ -375,18 +375,18 @@ int DoCHMOD(char *Path, char *Mode)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83t\83@\83C\83\8b\82Ì\83T\83C\83Y\82ð\8eæ\93¾\81i\93]\91\97\83\\83P\83b\83g\8eg\97p\81j-----------------\r
+/*----- リモート側のファイルのサイズを取得(転送ソケット使用)-----------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              LONGLONG *Size : \83t\83@\83C\83\8b\82Ì\83T\83C\83Y\82ð\95Ô\82·\83\8f\81[\83N\r
+*              char *Path : パス名\r
+*              LONGLONG *Size : ファイルのサイズを返すワーク\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *\r
 *      Note\r
-*              \81\9a\81\9a\93]\91\97\83\\83P\83b\83g\82ð\8eg\97p\82·\82é\81\9a\81\9a\r
-*              \83T\83C\83Y\82ª\91I\82ç\82ê\82È\82¢\8e\9e\82Í Size = -1 \82ð\95Ô\82·\r
+*              ★★転送ソケットを使用する★★\r
+*              サイズが選られない時は Size = -1 を返す\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoSIZE(char *Path, LONGLONG *Size)\r
@@ -404,18 +404,18 @@ int DoSIZE(char *Path, LONGLONG *Size)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83t\83@\83C\83\8b\82Ì\93ú\95t\82ð\8eæ\93¾\81i\93]\91\97\83\\83P\83b\83g\8eg\97p\81j-------------------\r
+/*----- リモート側のファイルの日付を取得(転送ソケット使用)-------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
-*              FILETIME *Time : \93ú\95t\82ð\95Ô\82·\83\8f\81[\83N\r
+*              char *Path : パス名\r
+*              FILETIME *Time : 日付を返すワーク\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *\r
 *      Note\r
-*              \81\9a\81\9a\93]\91\97\83\\83P\83b\83g\82ð\8eg\97p\82·\82é\81\9a\81\9a\r
-*              \93ú\95t\82ª\91I\82ç\82ê\82È\82¢\8e\9e\82Í Time = 0 \82ð\95Ô\82·\r
+*              ★★転送ソケットを使用する★★\r
+*              日付が選られない時は Time = 0 を返す\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoMDTM(char *Path, FILETIME *Time)\r
@@ -444,13 +444,13 @@ int DoMDTM(char *Path, FILETIME *Time)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83R\83}\83\93\83h\82ð\8eÀ\8ds --------------------------------------------\r
+/*----- リモート側のコマンドを実行 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *CmdStr : \83R\83}\83\93\83h\95\8e\9a\97ñ\r
+*              char *CmdStr : コマンド文字列\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoQUOTE(char *CmdStr)\r
@@ -466,13 +466,13 @@ int DoQUOTE(char *CmdStr)
 }\r
 \r
 \r
-/*----- \83\\83P\83b\83g\82ð\95Â\82\82é ------------------------------------------------------\r
+/*----- ソケットを閉じる ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              SOCKET \95Â\82\82½\8cã\82Ì\83\\83P\83b\83g\r
+*              SOCKET 閉じた後のソケット\r
 *----------------------------------------------------------------------------*/\r
 \r
 SOCKET DoClose(SOCKET Sock)\r
@@ -495,13 +495,13 @@ SOCKET DoClose(SOCKET Sock)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82©\82ç\83\8d\83O\83A\83E\83g\82·\82é ----------------------------------------------\r
+/*----- ホストからログアウトする ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              kSOCKET ctrl_skt : \83\\83P\83b\83g\r
+*              kSOCKET ctrl_skt : ソケット\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoQUIT(SOCKET ctrl_skt)\r
@@ -516,15 +516,15 @@ int DoQUIT(SOCKET ctrl_skt)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83f\83B\83\8c\83N\83g\83\8a\83\8a\83X\83g\82ð\8eæ\93¾\81i\83R\83}\83\93\83h\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\82ð\8eg\97p)\r
+/*----- リモート側のディレクトリリストを取得(コマンドコントロールソケットを使用)\r
 *\r
 *      Parameter\r
-*              char *AddOpt : \92Ç\89Á\82Ì\83I\83v\83V\83\87\83\93\r
-*              char *Path : \83p\83X\96¼\r
-*              int Num : \83t\83@\83C\83\8b\96¼\94Ô\8d\86\r
+*              char *AddOpt : 追加のオプション\r
+*              char *Path : パス名\r
+*              int Num : ファイル名番号\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\82Ì\82P\8c\85\96Ú\r
+*              int 応答コードの1桁目\r
 *----------------------------------------------------------------------------*/\r
 \r
 int DoDirListCmdSkt(char *AddOpt, char *Path, int Num, int *CancelCheckWork)\r
@@ -546,17 +546,17 @@ int DoDirListCmdSkt(char *AddOpt, char *Path, int Num, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ì\83f\83B\83\8c\83N\83g\83\8a\83\8a\83X\83g\82ð\8eæ\93¾ ----------------------------------\r
+/*----- リモート側のディレクトリリストを取得 ----------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \93]\91\97\92\86\83_\83C\83A\83\8d\83O\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              SOCKET cSkt : \83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
-*              char *AddOpt : \92Ç\89Á\82Ì\83I\83v\83V\83\87\83\93\r
-*              char *Path : \83p\83X\96¼ (""=\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a)\r
-*              int Num : \83t\83@\83C\83\8b\96¼\94Ô\8d\86\r
+*              HWND hWnd : 転送中ダイアログのウインドウハンドル\r
+*              SOCKET cSkt : コントロールソケット\r
+*              char *AddOpt : 追加のオプション\r
+*              char *Path : パス名 (""=カレントディレクトリ)\r
+*              int Num : ファイル名番号\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int DoDirList(HWND hWnd, SOCKET cSkt, char *AddOpt, char *Path, int Num, int *CancelCheckWork)\r
@@ -602,8 +602,8 @@ static int DoDirList(HWND hWnd, SOCKET cSkt, char *AddOpt, char *Path, int Num,
        strcpy(MainTransPkt.LocalFile, Tmp);\r
        MainTransPkt.Type = TYPE_A;\r
        MainTransPkt.Size = -1;\r
-       /* \83t\83@\83C\83\8b\83\8a\83X\83g\82Ì\92\86\82Ì\8a¿\8e\9a\82Ì\83t\83@\83C\83\8b\96¼\82Í\81A\95Ê\93r */\r
-       /* ChangeFnameRemote2Local \82Å\95Ï\8a·\82·\82é                   */\r
+       /* ファイルリストの中の漢字のファイル名は、別途   */\r
+       /* ChangeFnameRemote2Local で変換する                      */\r
        MainTransPkt.KanjiCode = KANJI_NOCNV;\r
        MainTransPkt.KanaCnv = YES;\r
        MainTransPkt.Mode = EXIST_OVW;\r
@@ -620,18 +620,18 @@ static int DoDirList(HWND hWnd, SOCKET cSkt, char *AddOpt, char *Path, int Num,
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ö\83R\83}\83\93\83h\82ð\91\97\82è\83\8a\83v\83\89\83C\82ð\91Ò\82Â\81i\83R\83}\83\93\83h\83\\83P\83b\83g\81j-----------\r
+/*----- リモート側へコマンドを送りリプライを待つ(コマンドソケット)-----------\r
 *\r
 *      Parameter\r
-*              char *Reply : \83\8a\83v\83\89\83C\82Ì\83R\83s\81[\90æ (NULL=\83R\83s\81[\82µ\82È\82¢)\r
-*              char *fmt : \83t\83H\81[\83}\83b\83g\95\8e\9a\97ñ\r
-*              ... : \83p\83\89\83\81\81[\83^\r
+*              char *Reply : リプライのコピー先 (NULL=コピーしない)\r
+*              char *fmt : フォーマット文字列\r
+*              ... : パラメータ\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *\r
 *      Note\r
-*              \83R\83}\83\93\83h\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\82ð\8eg\82¤\r
+*              コマンドコントロールソケットを使う\r
 *----------------------------------------------------------------------------*/\r
 \r
 int CommandProcCmd(char *Reply, char *fmt, ...)\r
@@ -652,7 +652,7 @@ int CommandProcCmd(char *Reply, char *fmt, ...)
 \r
 //     if((Sts = command(AskCmdCtrlSkt(), Reply, "%s", Cmd)) == 429)\r
 //     {\r
-//             if(ReConnectCmdSkt() == SUCCESS)\r
+//             if(ReConnectCmdSkt() == FFFTP_SUCCESS)\r
 //             {\r
                        Sts = command(AskCmdCtrlSkt(), Reply, &CheckCancelFlg, "%s", Cmd);\r
 //             }\r
@@ -661,18 +661,18 @@ int CommandProcCmd(char *Reply, char *fmt, ...)
 }\r
 \r
 \r
-/*----- \83\8a\83\82\81[\83g\91¤\82Ö\83R\83}\83\93\83h\82ð\91\97\82è\83\8a\83v\83\89\83C\82ð\91Ò\82Â\81i\93]\91\97\83\\83P\83b\83g\81j---------------\r
+/*----- リモート側へコマンドを送りリプライを待つ(転送ソケット)---------------\r
 *\r
 *      Parameter\r
-*              char *Reply : \83\8a\83v\83\89\83C\82Ì\83R\83s\81[\90æ (NULL=\83R\83s\81[\82µ\82È\82¢)\r
-*              char *fmt : \83t\83H\81[\83}\83b\83g\95\8e\9a\97ñ\r
-*              ... : \83p\83\89\83\81\81[\83^\r
+*              char *Reply : リプライのコピー先 (NULL=コピーしない)\r
+*              char *fmt : フォーマット文字列\r
+*              ... : パラメータ\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *\r
 *      Note\r
-*              \93]\91\97\83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\82ð\8eg\82¤\r
+*              転送コントロールソケットを使う\r
 *----------------------------------------------------------------------------*/\r
 \r
 int CommandProcTrn(char *Reply, char *fmt, ...)\r
@@ -690,26 +690,26 @@ int CommandProcTrn(char *Reply, char *fmt, ...)
 \r
 //     if((Sts = command(AskTrnCtrlSkt(), Reply, "%s", Cmd)) == 429)\r
 //     {\r
-//             if(ReConnectTrnSkt() == SUCCESS)\r
+//             if(ReConnectTrnSkt() == FFFTP_SUCCESS)\r
                        Sts = command(AskTrnCtrlSkt(), Reply, &CheckCancelFlg, "%s", Cmd);\r
 //     }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83R\83}\83\93\83h\82ð\91\97\82è\83\8a\83v\83\89\83C\82ð\91Ò\82 ------------------------------------------\r
+/*----- コマンドを送りリプライを待つ ------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET cSkt : \83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
-*              char *Reply : \83\8a\83v\83\89\83C\82Ì\83R\83s\81[\90æ (NULL=\83R\83s\81[\82µ\82È\82¢)\r
-*              char *fmt : \83t\83H\81[\83}\83b\83g\95\8e\9a\97ñ\r
-*              ... : \83p\83\89\83\81\81[\83^\r
+*              SOCKET cSkt : コントロールソケット\r
+*              char *Reply : リプライのコピー先 (NULL=コピーしない)\r
+*              char *fmt : フォーマット文字列\r
+*              ... : パラメータ\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *\r
 *      Note\r
-*              \83z\83X\83g\82Ì\83t\83@\83C\83\8b\96¼\82Ì\8a¿\8e\9a\83R\81[\83h\82É\89\9e\82\82Ä\81A\82±\82±\82Å\8a¿\8e\9a\83R\81[\83h\82Ì\95Ï\8a·\82ð\8ds\82È\82¤\r
+*              ホストのファイル名の漢字コードに応じて、ここで漢字コードの変換を行なう\r
 *----------------------------------------------------------------------------*/\r
 \r
 //#pragma aaa\r
@@ -749,7 +749,7 @@ int command(SOCKET cSkt, char *Reply, int *CancelCheckWork, char *fmt, ...)
                        strcpy(Reply, "");\r
 \r
                Sts = 429;\r
-               if(SendData(cSkt, Cmd, strlen(Cmd), 0, CancelCheckWork) == SUCCESS)\r
+               if(SendData(cSkt, Cmd, strlen(Cmd), 0, CancelCheckWork) == FFFTP_SUCCESS)\r
                {\r
                        Sts = ReadReplyMessage(cSkt, Reply, 1024, CancelCheckWork, TmpBuf);\r
                }\r
@@ -769,17 +769,17 @@ int command(SOCKET cSkt, char *Reply, int *CancelCheckWork, char *fmt, ...)
 }\r
 \r
 \r
-/*----- \83f\81[\83^\82ð\91\97\82é ----------------------------------------------------------\r
+/*----- データを送る ----------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET Skt : \83\\83P\83b\83g\r
-*              char *Data : \83f\81[\83^\r
-*              int Size : \91\97\82é\83f\81[\83^\82Ì\83T\83C\83Y\r
-*              int Mode : \83R\81[\83\8b\83\82\81[\83h\r
+*              SOCKET Skt : ソケット\r
+*              char *Data : データ\r
+*              int Size : 送るデータのサイズ\r
+*              int Mode : コールモード\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 SendData(SOCKET Skt, char *Data, int Size, int Mode, int *CancelCheckWork)\r
@@ -791,10 +791,10 @@ int SendData(SOCKET Skt, char *Data, int Size, int Mode, int *CancelCheckWork)
 //     struct timeval *ToutPtr;\r
        int TimeOutErr;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(Skt != INVALID_SOCKET)\r
        {\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
                while(Size > 0)\r
                {\r
 //                     FD_ZERO(&SendFds);\r
@@ -809,13 +809,13 @@ int SendData(SOCKET Skt, char *Data, int Size, int Mode, int *CancelCheckWork)
 //                     Tmp = select(0, NULL, &SendFds, NULL, ToutPtr);\r
 //                     if(Tmp == SOCKET_ERROR)\r
 //                     {\r
-//                             Sts = FAIL;\r
+//                             Sts = FFFTP_FAIL;\r
 //                             ReportWSError("select", WSAGetLastError());\r
 //                             break;\r
 //                     }\r
 //                     else if(Tmp == 0)\r
 //                     {\r
-//                             Sts = FAIL;\r
+//                             Sts = FFFTP_FAIL;\r
 //                             SetTaskMsg(MSGJPN241);\r
 //                             break;\r
 //                     }\r
@@ -823,13 +823,13 @@ int SendData(SOCKET Skt, char *Data, int Size, int Mode, int *CancelCheckWork)
                        Tmp = do_send(Skt, Data, Size, Mode, &TimeOutErr, CancelCheckWork);\r
                        if(TimeOutErr == YES)\r
                        {\r
-                               Sts = FAIL;\r
+                               Sts = FFFTP_FAIL;\r
                                SetTaskMsg(MSGJPN241);\r
                                break;\r
                        }\r
                        else if(Tmp == SOCKET_ERROR)\r
                        {\r
-                               Sts = FAIL;\r
+                               Sts = FFFTP_FAIL;\r
                                ReportWSError("send", WSAGetLastError());\r
                                break;\r
                        }\r
@@ -842,17 +842,17 @@ int SendData(SOCKET Skt, char *Data, int Size, int Mode, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \89\9e\93\9a\83\81\83b\83Z\81[\83W\82ð\8eó\82¯\8eæ\82é ----------------------------------------------\r
+/*----- 応答メッセージを受け取る ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET cSkt : \83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
-*              char *Buf : \83\81\83b\83Z\81[\83W\82ð\8eó\82¯\8eæ\82é\83o\83b\83t\83@ (NULL=\83R\83s\81[\82µ\82È\82¢)\r
-*              int Max : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              SOCKET cSkt : コントロールソケット\r
+*              char *Buf : メッセージを受け取るバッファ (NULL=コピーしない)\r
+*              int Max : バッファのサイズ\r
 *              int *CancelCheckWork :\r
-*              char *Tmp : \83e\83\93\83|\83\89\83\8a\83\8f\81[\83N\r
+*              char *Tmp : テンポラリワーク\r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 int ReadReplyMessage(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork, char *Tmp)\r
@@ -880,7 +880,7 @@ int ReadReplyMessage(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork, char
 \r
                        if(Buf != NULL)\r
                        {\r
-                               // \82Q\8ds\96Ú\88È\8d~\82Ì\89\9e\93\9a\83R\81[\83h\82Í\8fÁ\82·\r
+                               // 2行目以降の応答コードは消す\r
                                if(Lines > 0)\r
                                {\r
                                        for(i = 0; ; i++)\r
@@ -922,16 +922,16 @@ int ReadReplyMessage(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork, char
 }\r
 \r
 \r
-/*----- \82P\8ds\95ª\82Ì\83f\81[\83^\82ð\8eó\82¯\8eæ\82é ----------------------------------------------\r
+/*----- 1行分のデータを受け取る ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET cSkt : \83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
-*              char *Buf : \83\81\83b\83Z\81[\83W\82ð\8eó\82¯\8eæ\82é\83o\83b\83t\83@\r
-*              int Max : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              SOCKET cSkt : コントロールソケット\r
+*              char *Buf : メッセージを受け取るバッファ\r
+*              int Max : バッファのサイズ\r
 *              int *CancelCheckWork : \r
 *\r
 *      Return Value\r
-*              int \89\9e\93\9a\83R\81[\83h\r
+*              int 応答コード\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork)\r
@@ -951,7 +951,7 @@ static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork)
        if(cSkt != INVALID_SOCKET)\r
        {\r
                memset(Buf, NUL, Max);\r
-               Max--;                                  /* \96\96\94ö\82ÌNULL\82Ì\82Ô\82ñ */\r
+               Max--;                                  /* 末尾のNULLのぶん */\r
                Pos = Buf;\r
 \r
                for(;;)\r
@@ -979,7 +979,7 @@ static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork)
 //                             break;\r
 //                     }\r
 \r
-                       /* LF\82Ü\82Å\82ð\8eó\90M\82·\82é\82½\82ß\82É\81A\8dÅ\8f\89\82ÍPEEK\82Å\8eó\90M */\r
+                       /* LFまでを受信するために、最初はPEEKで受信 */\r
                        if((SizeOnce = do_recv(cSkt, (LPSTR)Tmp, 1024, MSG_PEEK, &TimeOutErr, CancelCheckWork)) <= 0)\r
                        {\r
                                if(TimeOutErr == YES)\r
@@ -994,7 +994,7 @@ static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork)
                                break;\r
                        }\r
 \r
-                       /* LF\82ð\92T\82µ\82Ä\81A\82 \82Á\82½\82ç\82»\82±\82Ü\82Å\82Ì\92·\82³\82ð\83Z\83b\83g */\r
+                       /* LFを探して、あったらそこまでの長さをセット */\r
                        for(i = 0; i < SizeOnce ; i++)\r
                        {\r
                                if(*(Tmp + i) == NUL || *(Tmp + i) == 0x0A)\r
@@ -1004,7 +1004,7 @@ static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork)
                                }\r
                        }\r
 \r
-                       /* \96{\8eó\90M */\r
+                       /* 本受信 */\r
                        if((SizeOnce = do_recv(cSkt, Tmp, SizeOnce, 0, &TimeOutErr, CancelCheckWork)) <= 0)\r
                                break;\r
 \r
@@ -1013,7 +1013,7 @@ static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork)
                        Pos += CopySize;\r
                        Max -= CopySize;\r
 \r
-                       /* \83f\81[\83^\82ªLF\82Å\8fI\82í\82Á\82Ä\82¢\82½\82ç\82P\8ds\8fI\82í\82è */\r
+                       /* データがLFで終わっていたら1行終わり */\r
                        if(*(Tmp + SizeOnce - 1) == 0x0A)\r
                                break;\r
                }\r
@@ -1025,8 +1025,8 @@ static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork)
                        memset(Buf, 0, Max);\r
 \r
                        if((SizeOnce == -2) || (AskTransferNow() == YES))\r
-                       // \93]\91\97\92\86\82É\91S\82Ä\92\86\8e~\82ð\8ds\82¤\82Æ\95s\90³\82È\83f\81[\83^\82ª\93¾\82ç\82ê\82é\8fê\8d\87\82Ì\83o\83O\8fC\90³\r
-                       // \83G\83\89\81[\82Ì\8eí\97Þ\82É\82æ\82Á\82Ä\82Í\96³\8cÀ\83\8b\81[\83v\82Æ\83X\83^\83b\83N\83I\81[\83o\81[\83t\83\8d\81[\82Ì\89Â\94\\90«\82 \82è\r
+                       // 転送中に全て中止を行うと不正なデータが得られる場合のバグ修正\r
+                       // エラーの種類によっては無限ループとスタックオーバーフローの可能性あり\r
 //                             DisconnectSet();\r
                        {\r
                                if(SizeOnce == -1)\r
@@ -1044,7 +1044,7 @@ static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork)
                                ResCode = atoi(Tmp);\r
                        }\r
 \r
-                       /* \96\96\94ö\82Ì CR,LF,\83X\83y\81[\83X\82ð\8eæ\82è\8f\9c\82­ */\r
+                       /* 末尾の CR,LF,スペースを取り除く */\r
                        while((i=strlen(Buf))>2 &&\r
                                  (Buf[i-1]==0x0a || Buf[i-1]==0x0d || Buf[i-1]==' '))\r
                                Buf[i-1]=0;\r
@@ -1054,17 +1054,17 @@ static int ReadOneLine(SOCKET cSkt, char *Buf, int Max, int *CancelCheckWork)
 }\r
 \r
 \r
-/*----- \8cÅ\92è\92·\83f\81[\83^\82ð\8eó\82¯\8eæ\82é ------------------------------------------------\r
+/*----- 固定長データを受け取る ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET cSkt : \83R\83\93\83g\83\8d\81[\83\8b\83\\83P\83b\83g\r
-*              char *Buf : \83\81\83b\83Z\81[\83W\82ð\8eó\82¯\8eæ\82é\83o\83b\83t\83@\r
-*              int Size : \83o\83C\83g\90\94\r
+*              SOCKET cSkt : コントロールソケット\r
+*              char *Buf : メッセージを受け取るバッファ\r
+*              int Size : バイト数\r
 *              int *CancelCheckWork : \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 ReadNchar(SOCKET cSkt, char *Buf, int Size, int *CancelCheckWork)\r
@@ -1077,10 +1077,10 @@ int ReadNchar(SOCKET cSkt, char *Buf, int Size, int *CancelCheckWork)
        int Sts;\r
        int TimeOutErr;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if(cSkt != INVALID_SOCKET)\r
        {\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
                while(Size > 0)\r
                {\r
 //                     FD_ZERO(&ReadFds);\r
@@ -1096,13 +1096,13 @@ int ReadNchar(SOCKET cSkt, char *Buf, int Size, int *CancelCheckWork)
 //                     if(i == SOCKET_ERROR)\r
 //                     {\r
 //                             ReportWSError("select", WSAGetLastError());\r
-//                             Sts = FAIL;\r
+//                             Sts = FFFTP_FAIL;\r
 //                             break;\r
 //                     }\r
 //                     else if(i == 0)\r
 //                     {\r
 //                             SetTaskMsg(MSGJPN243);\r
-//                             Sts = FAIL;\r
+//                             Sts = FFFTP_FAIL;\r
 //                             break;\r
 //                     }\r
 \r
@@ -1110,7 +1110,7 @@ int ReadNchar(SOCKET cSkt, char *Buf, int Size, int *CancelCheckWork)
                        {\r
                                if(TimeOutErr == YES)\r
                                        SetTaskMsg(MSGJPN243);\r
-                               Sts = FAIL;\r
+                               Sts = FFFTP_FAIL;\r
                                break;\r
                        }\r
 \r
@@ -1119,20 +1119,20 @@ int ReadNchar(SOCKET cSkt, char *Buf, int Size, int *CancelCheckWork)
                }\r
        }\r
 \r
-       if(Sts == FAIL)\r
+       if(Sts == FFFTP_FAIL)\r
                SetTaskMsg(MSGJPN244);\r
 \r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83G\83\89\81[\95\8e\9a\97ñ\82ð\8eæ\93¾ ----------------------------------------------------\r
+/*----- エラー文字列を取得 ----------------------------------------------------\r
 *\r
 *      Parameter\r
-*              UINT Error : \83G\83\89\81[\94Ô\8d\86\r
+*              UINT Error : エラー番号\r
 *\r
 *      Return Value\r
-*              char *\83G\83\89\81[\95\8e\9a\97ñ\r
+*              char *エラー文字列\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *ReturnWSError(UINT Error)\r
@@ -1268,14 +1268,14 @@ char *ReturnWSError(UINT Error)
 }\r
 \r
 \r
-/*----- \83f\83o\83b\83O\83R\83\93\83\\81[\83\8b\82É\83G\83\89\81[\82ð\95\\8e¦ --------------------------------------\r
+/*----- デバッグコンソールにエラーを表示 --------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Msg : \83G\83\89\81[\82Ì\91O\82É\95\\8e¦\82·\82é\83\81\83b\83Z\81[\83W\r
-*              UINT Error : \83G\83\89\81[\94Ô\8d\86\r
+*              char *Msg : エラーの前に表示するメッセージ\r
+*              UINT Error : エラー番号\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ReportWSError(char *Msg, UINT Error)\r
@@ -1287,15 +1287,15 @@ void ReportWSError(char *Msg, UINT Error)
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\96¼\82ð\83\8d\81[\83J\83\8b\91¤\82Å\88µ\82¦\82é\82æ\82¤\82É\95Ï\8a·\82·\82é --------------------------\r
+/*----- ファイル名をローカル側で扱えるように変換する --------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
-*              int Max : \8dÅ\91å\92·\r
+*              char *Fname : ファイル名\r
+*              int Max : æ\9c\80大é\95·\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 ChangeFnameRemote2Local(char *Fname, int Max)\r
@@ -1305,7 +1305,7 @@ int ChangeFnameRemote2Local(char *Fname, int Max)
        char *Pos;\r
        CODECONVINFO cInfo;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Buf = malloc(Max)) != NULL)\r
        {\r
                InitCodeConvInfo(&cInfo);\r
@@ -1315,8 +1315,8 @@ int ChangeFnameRemote2Local(char *Fname, int Max)
                cInfo.Buf = Buf;\r
                cInfo.BufSize = Max - 1;\r
 \r
-               // \82±\82±\82Å\91S\82ÄUTF-8\82Ö\95Ï\8a·\82·\82é\r
-               // TODO: SJIS\88È\8aO\82à\92¼\90ÚUTF-8\82Ö\95Ï\8a·\r
+               // ここで全てUTF-8へ変換する\r
+               // TODO: SJIS以外も直接UTF-8へ変換\r
                switch(AskHostNameKanji())\r
                {\r
                        case KANJI_SJIS :\r
@@ -1413,21 +1413,21 @@ int ChangeFnameRemote2Local(char *Fname, int Max)
 //                             break;\r
                }\r
                free(Buf);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83t\83@\83C\83\8b\96¼\82ð\83\8a\83\82\81[\83g\91¤\82Å\88µ\82¦\82é\82æ\82¤\82É\95Ï\8a·\82·\82é --------------------------\r
+/*----- ファイル名をリモート側で扱えるように変換する --------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
-*              int Max : \8dÅ\91å\92·\r
+*              char *Fname : ファイル名\r
+*              int Max : æ\9c\80大é\95·\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 ChangeFnameLocal2Remote(char *Fname, int Max)\r
@@ -1437,7 +1437,7 @@ int ChangeFnameLocal2Remote(char *Fname, int Max)
        char *Pos;\r
        CODECONVINFO cInfo;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        if((Buf = malloc(Max)) != NULL)\r
        {\r
                InitCodeConvInfo(&cInfo);\r
@@ -1447,8 +1447,8 @@ int ChangeFnameLocal2Remote(char *Fname, int Max)
                cInfo.Buf = Buf;\r
                cInfo.BufSize = Max - 1;\r
 \r
-               // \82±\82±\82Å\91S\82ÄUTF-8\82©\82ç\95Ï\8a·\82·\82é\r
-               // TODO: SJIS\88È\8aO\82à\92¼\90ÚUTF-8\82©\82ç\95Ï\8a·\r
+               // ここで全てUTF-8から変換する\r
+               // TODO: SJIS以外も直接UTF-8から変換\r
                switch(AskHostNameKanji())\r
                {\r
                        case KANJI_SJIS :\r
@@ -1568,19 +1568,19 @@ int ChangeFnameLocal2Remote(char *Fname, int Max)
 //                             break;\r
                }\r
                free(Buf);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83p\83X\82Ì\8bæ\90Ø\82è\95\8e\9a\82ð\83z\83X\83g\82É\8d\87\82í\82¹\82Ä\95Ï\8dX\82·\82é ----------------------------\r
+/*----- パスの区切り文字をホストに合わせて変更する ----------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              char *Fname : ファイル名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 static void ChangeSepaLocal2Remote(char *Fname)\r
 {\r
@@ -1592,13 +1592,13 @@ static void ChangeSepaLocal2Remote(char *Fname)
 }\r
 \r
 \r
-/*----- \83p\83X\82Ì\8bæ\90Ø\82è\95\8e\9a\82ð\83\8d\81[\83J\83\8b\82É\8d\87\82í\82¹\82Ä\95Ï\8dX\82·\82é --------------------------\r
+/*----- パスの区切り文字をローカルに合わせて変更する --------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              char *Fname : ファイル名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 static void ChangeSepaRemote2Local(char *Fname)\r
 {\r
index 7ea3064..0880fcf 100644 (file)
--- a/sample.h
+++ b/sample.h
@@ -1,5 +1,5 @@
-/*=============================================================================\r
-*                                                      \82e\82e\82e\82s\82o\8b¤\92Ê\92è\8b`\83t\83@\83C\83\8b\r
+/*=============================================================================\r
+*                                                      FFFTP共通定義ファイル\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 / THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
 /============================================================================*/\r
 \r
-/* \83T\83\93\83v\83\8b\83z\83X\83g\92è\8b`\83t\83@\83C\83\8b */\r
+/* サンプルホスト定義ファイル */\r
 \r
 typedef struct {\r
-       int Level;                                                      /* \90Ý\92è\82Ì\83\8c\83x\83\8b */\r
-       char HostName[HOST_NAME_LEN+1];         /* \90Ý\92è\96¼ */\r
-       char HostAdrs[HOST_ADRS_LEN+1];         /* \83z\83X\83g\96¼ */\r
+       int Level;                                                      /* 設定のレベル */\r
+       char HostName[HOST_NAME_LEN+1];         /* 設定名 */\r
+       char HostAdrs[HOST_ADRS_LEN+1];         /* ホスト名 */\r
 } SAMPLEHOSTDATA;\r
 \r
 \r
@@ -41,7 +41,7 @@ typedef struct {
 static const SAMPLEHOSTDATA Sample[SAMPLE_HOSTS] = {\r
        { 32768,"anonymous FTP site",                           "" },\r
        { 1,    "Vector",                                       "ftp.vector.co.jp" },\r
-       { 1,    "\91\8b\82Ì\93m(Forest)",                       "ftp.forest.impress.co.jp" },\r
+       { 1,    "窓の杜(Forest)",                    "ftp.forest.impress.co.jp" },\r
        { 1,    "Ring server",                          "ftp.ring.gr.jp" },\r
        { 1,    "BIGLOBE",                                      "ftp.biglobe.ne.jp" },\r
        { 1,    "IIJ",                                          "ftp.iij.ad.jp" },\r
diff --git a/sha.c b/sha.c
index 53519d7..5418a7b 100644 (file)
--- a/sha.c
+++ b/sha.c
@@ -1,4 +1,4 @@
-/* Implementation of NIST's Secure Hash Algorithm (FIPS 180)\r
+/* Implementation of NIST's Secure Hash Algorithm (FIPS 180)\r
  * Lightly bummed for execution efficiency.\r
  *\r
  * Jim Gillogly 3 May 1993\r
@@ -69,7 +69,7 @@
 #define TRUE  1\r
 #define FALSE 0\r
 \r
-#define SUCCESS 0\r
+#define FFFTP_SUCCESS 0\r
 #define FAILURE -1\r
 \r
 int sha_file();                         /* External entries */\r
@@ -191,7 +191,7 @@ uint32 *buffer;
     }\r
     (void) sha_stream(infile, buffer);\r
     fclose(infile);\r
-    return SUCCESS;\r
+    return FFFTP_SUCCESS;\r
 }\r
 \r
 void sha_memory(mem, length, buffer)    /* Hash a memory block */\r
diff --git a/sha.h b/sha.h
index 241e6ae..08a6184 100644 (file)
--- a/sha.h
+++ b/sha.h
@@ -1,4 +1,4 @@
-#define MSDOS\r
+#define MSDOS\r
 #define LITTLE_ENDIAN\r
 \r
 typedef int                int32;\r
diff --git a/skey.c b/skey.c
index 8e6b9c8..9d39d88 100644 (file)
--- a/skey.c
+++ b/skey.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                      \82»\82Ì\91¼\82Ì\94Ä\97p\83T\83u\83\8b\81[\83`\83\93\r
+*                                                      その他の汎用サブルーチン\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
@@ -27,7 +27,7 @@
 / THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
 /============================================================================*/\r
 \r
-/* \82±\82Ì\83v\83\8d\83O\83\89\83\80\82Í skey \82Ì\83\\81[\83X\82ð\8eQ\8dl\82É\82µ\82Ü\82µ\82½\81B */\r
+/* このプログラムは skey のソースを参考にしました。 */\r
 \r
 #define        STRICT\r
 #include <stdlib.h>\r
@@ -41,7 +41,7 @@
 #include "sha.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static int keycrunch(char *result, char *seed, char *passwd, int Type);\r
 static void secure_hash(char *x, int Type);\r
@@ -49,7 +49,7 @@ static char *btoe(char *c, char *buf);
 static ulong extract(char *s, int start, int length);\r
 \r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 /* Dictionary for integer-word translations */\r
 static const char Wp[2048][4] = {\r
@@ -285,18 +285,18 @@ static const char Wp[2048][4] = {
 \r
 \r
 \r
-/*----- \82U\83\8f\81[\83h\83p\83X\83\8f\81[\83h\82ð\8dì\90¬\82·\82é ------------------------------------------\r
+/*----- 6ワードパスワードを作成する ------------------------------------------\r
 *\r
 *      Parameter\r
-*              int seq : \83V\81[\83P\83\93\83X\94Ô\8d\86\r
-*              char *seed : \83V\81[\83h\r
-*              char *pass : \83p\83X\83t\83\8c\81[\83Y\r
-*              int type : \83^\83C\83v (MDx)\r
-*              char *buf : \82U\83\8f\81[\83h\83p\83X\83\8f\81[\83h\82ð\95Ô\82·\83o\83b\83t\83@\r
+*              int seq : シーケンス番号\r
+*              char *seed : シード\r
+*              char *pass : パスフレーズ\r
+*              int type : タイプ (MDx)\r
+*              char *buf : 6ワードパスワードを返すバッファ\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 Make6WordPass(int seq, char *seed, char *pass, int type, char *buf)\r
@@ -305,13 +305,13 @@ int Make6WordPass(int seq, char *seed, char *pass, int type, char *buf)
        int i;\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
-       if(keycrunch(key, seed, pass, type) != FAIL)\r
+       Sts = FFFTP_FAIL;\r
+       if(keycrunch(key, seed, pass, type) != FFFTP_FAIL)\r
        {\r
                for(i = 0; i < seq; i++)\r
                        secure_hash(key, type);\r
                btoe(key, buf);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
@@ -328,7 +328,7 @@ static int keycrunch(char *result, char *seed, char *passwd, int Type)
 \r
        buflen = strlen(seed) + strlen(passwd);\r
        if((buf = malloc(buflen + 1)) == NULL)\r
-               return(FAIL);\r
+               return(FFFTP_FAIL);\r
        strcpy(buf, seed);\r
        strcat(buf, passwd);\r
 \r
@@ -361,7 +361,7 @@ static int keycrunch(char *result, char *seed, char *passwd, int Type)
        /* Only works on byte-addressed little-endian machines!! */\r
        memcpy(result, (char *)results, 8);\r
 \r
-       return(SUCCESS);\r
+       return(FFFTP_SUCCESS);\r
 }\r
 \r
 \r
index 605abaf..b930424 100644 (file)
--- a/socket.c
+++ b/socket.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                                      \83\\83P\83b\83g\r
+*                                                                      ソケット\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
@@ -73,8 +73,8 @@ typedef struct {
 } ASYNCSIGNALDATABASE;\r
 \r
 \r
-// \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
-// \94O\82Ì\82½\82ß\83e\81[\83u\83\8b\82ð\91\9d\97Ê\r
+// スレッド衝突のバグ修正\r
+// 念のためテーブルを増量\r
 //#define MAX_SIGNAL_ENTRY             10\r
 //#define MAX_SIGNAL_ENTRY_DBASE       5\r
 #define MAX_SIGNAL_ENTRY               100\r
@@ -83,7 +83,7 @@ typedef struct {
 \r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static LRESULT CALLBACK SocketWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);\r
 static int AskAsyncDone(SOCKET s, int *Error, int Mask);\r
@@ -94,12 +94,12 @@ static int UnRegistAsyncTable(SOCKET s);
 static int UnRegistAsyncTableDbase(HANDLE Async);\r
 \r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern int TimeOut;\r
 \r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static const char SocketWndClass[] = "FFFTPSocketWnd";\r
 static HWND hWndSocket;\r
@@ -108,7 +108,7 @@ static ASYNCSIGNAL Signal[MAX_SIGNAL_ENTRY];
 static ASYNCSIGNALDATABASE SignalDbase[MAX_SIGNAL_ENTRY_DBASE];\r
 \r
 //static HANDLE hAsyncTblAccMutex;\r
-// \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+// スレッド衝突のバグ修正\r
 static HANDLE hAsyncTblAccMutex;\r
 \r
 \r
@@ -120,8 +120,8 @@ static HANDLE hAsyncTblAccMutex;
 *      Parameter\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 MakeSocketWin(HWND hWnd, HINSTANCE hInst)\r
@@ -144,7 +144,7 @@ int MakeSocketWin(HWND hWnd, HINSTANCE hInst)
        wClass.hIconSm       = NULL;\r
        RegisterClassEx(&wClass);\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        hWndSocket = CreateWindowEx(0, SocketWndClass, NULL,\r
                        WS_BORDER | WS_POPUP,\r
                        0, 0, 0, 0,\r
@@ -154,7 +154,7 @@ int MakeSocketWin(HWND hWnd, HINSTANCE hInst)
        {\r
 //             hAsyncTblAccMutex = CreateMutex(NULL, FALSE, NULL);\r
 \r
-               // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+               // スレッド衝突のバグ修正\r
 //             for(i = 0; i < MAX_SIGNAL_ENTRY; i++)\r
 //                     Signal[i].Socket = INVALID_SOCKET;\r
 //             for(i = 0; i < MAX_SIGNAL_ENTRY_DBASE; i++)\r
@@ -166,7 +166,7 @@ int MakeSocketWin(HWND hWnd, HINSTANCE hInst)
                        for(i = 0; i < MAX_SIGNAL_ENTRY_DBASE; i++)\r
                                SignalDbase[i].Async = 0;\r
                }\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
@@ -175,16 +175,16 @@ int MakeSocketWin(HWND hWnd, HINSTANCE hInst)
 /*----- \r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DeleteSocketWin(void)\r
 {\r
 //     CloseHandle(hAsyncTblAccMutex);\r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        CloseHandle(hAsyncTblAccMutex);\r
        hAsyncTblAccMutex = NULL;\r
 \r
@@ -197,10 +197,10 @@ void DeleteSocketWin(void)
 /*----- \r
 *\r
 *      Parameter\r
-*              HWND hWnd : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hWnd : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -213,7 +213,7 @@ static LRESULT CALLBACK SocketWndProc(HWND hWnd, UINT message, WPARAM wParam, LP
        switch(message)\r
        {\r
                case WM_ASYNC_SOCKET :\r
-                       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+                       // スレッド衝突のバグ修正\r
                        WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
                        for(Pos = 0; Pos < MAX_SIGNAL_ENTRY; Pos++)\r
                        {\r
@@ -266,12 +266,12 @@ static LRESULT CALLBACK SocketWndProc(HWND hWnd, UINT message, WPARAM wParam, LP
                                        break;\r
                                }\r
                        }\r
-                       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+                       // スレッド衝突のバグ修正\r
                        ReleaseMutex(hAsyncTblAccMutex);\r
                        break;\r
 \r
                case WM_ASYNC_DBASE :\r
-                       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+                       // スレッド衝突のバグ修正\r
                        WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
                        for(Pos = 0; Pos < MAX_SIGNAL_ENTRY_DBASE; Pos++)\r
                        {\r
@@ -291,7 +291,7 @@ static LRESULT CALLBACK SocketWndProc(HWND hWnd, UINT message, WPARAM wParam, LP
                                        break;\r
                                }\r
                        }\r
-                       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+                       // スレッド衝突のバグ修正\r
                        ReleaseMutex(hAsyncTblAccMutex);\r
                        break;\r
 \r
@@ -318,7 +318,7 @@ static int AskAsyncDone(SOCKET s, int *Error, int Mask)
        int Sts;\r
        int Pos;\r
 \r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
        Sts = NO;\r
        *Error = 0;\r
@@ -371,7 +371,7 @@ static int AskAsyncDone(SOCKET s, int *Error, int Mask)
                        break;\r
                }\r
        }\r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        ReleaseMutex(hAsyncTblAccMutex);\r
 \r
        if(Pos == MAX_SIGNAL_ENTRY)\r
@@ -404,7 +404,7 @@ static int AskAsyncDoneDbase(HANDLE Async, int *Error)
        int Sts;\r
        int Pos;\r
 \r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
        Sts = NO;\r
        *Error = 0;\r
@@ -423,7 +423,7 @@ static int AskAsyncDoneDbase(HANDLE Async, int *Error)
                        break;\r
                }\r
        }\r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        ReleaseMutex(hAsyncTblAccMutex);\r
 \r
        if(Pos == MAX_SIGNAL_ENTRY_DBASE)\r
@@ -450,7 +450,7 @@ static int RegistAsyncTable(SOCKET s)
        int Sts;\r
        int Pos;\r
 \r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
        Sts = NO;\r
        for(Pos = 0; Pos < MAX_SIGNAL_ENTRY; Pos++)\r
@@ -461,12 +461,12 @@ static int RegistAsyncTable(SOCKET s)
                        break;\r
                }\r
        }\r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        ReleaseMutex(hAsyncTblAccMutex);\r
 \r
        if(Pos == MAX_SIGNAL_ENTRY)\r
        {\r
-               // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+               // スレッド衝突のバグ修正\r
                WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
                for(Pos = 0; Pos < MAX_SIGNAL_ENTRY; Pos++)\r
                {\r
@@ -486,7 +486,7 @@ static int RegistAsyncTable(SOCKET s)
                                break;\r
                        }\r
                }\r
-               // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+               // スレッド衝突のバグ修正\r
                ReleaseMutex(hAsyncTblAccMutex);\r
 \r
                if(Pos == MAX_SIGNAL_ENTRY)\r
@@ -514,7 +514,7 @@ static int RegistAsyncTableDbase(HANDLE Async)
        int Sts;\r
        int Pos;\r
 \r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
        Sts = NO;\r
        for(Pos = 0; Pos < MAX_SIGNAL_ENTRY_DBASE; Pos++)\r
@@ -525,12 +525,12 @@ static int RegistAsyncTableDbase(HANDLE Async)
                        break;\r
                }\r
        }\r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        ReleaseMutex(hAsyncTblAccMutex);\r
 \r
        if(Pos == MAX_SIGNAL_ENTRY_DBASE)\r
        {\r
-               // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+               // スレッド衝突のバグ修正\r
                WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
                for(Pos = 0; Pos < MAX_SIGNAL_ENTRY; Pos++)\r
                {\r
@@ -546,7 +546,7 @@ static int RegistAsyncTableDbase(HANDLE Async)
                                break;\r
                        }\r
                }\r
-               // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+               // スレッド衝突のバグ修正\r
                ReleaseMutex(hAsyncTblAccMutex);\r
 \r
                if(Pos == MAX_SIGNAL_ENTRY_DBASE)\r
@@ -574,7 +574,7 @@ static int UnRegistAsyncTable(SOCKET s)
        int Sts;\r
        int Pos;\r
 \r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
        Sts = NO;\r
        for(Pos = 0; Pos < MAX_SIGNAL_ENTRY; Pos++)\r
@@ -589,7 +589,7 @@ static int UnRegistAsyncTable(SOCKET s)
                        break;\r
                }\r
        }\r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        ReleaseMutex(hAsyncTblAccMutex);\r
        return(Sts);\r
 }\r
@@ -609,7 +609,7 @@ static int UnRegistAsyncTableDbase(HANDLE Async)
        int Sts;\r
        int Pos;\r
 \r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        WaitForSingleObject(hAsyncTblAccMutex, INFINITE);\r
        Sts = NO;\r
        for(Pos = 0; Pos < MAX_SIGNAL_ENTRY_DBASE; Pos++)\r
@@ -624,7 +624,7 @@ static int UnRegistAsyncTableDbase(HANDLE Async)
                        break;\r
                }\r
        }\r
-       // \83X\83\8c\83b\83h\8fÕ\93Ë\82Ì\83o\83O\8fC\90³\r
+       // スレッド衝突のバグ修正\r
        ReleaseMutex(hAsyncTblAccMutex);\r
        return(Sts);\r
 }\r
@@ -709,7 +709,7 @@ int do_closesocket(SOCKET s)
 #endif\r
        CancelCheckWork = NO;\r
 \r
-       // FTPS\91Î\89\9e\r
+       // FTPS対応\r
 //     Ret = closesocket(s);\r
        if(AskCryptMode() == CRYPT_FTPES || AskCryptMode() == CRYPT_FTPIS)\r
                Ret = closesocketS(s);\r
@@ -765,7 +765,7 @@ int do_connect(SOCKET s, const struct sockaddr *name, int namelen, int *CancelCh
        Ret = WSAAsyncSelect(s, hWndSocket, WM_ASYNC_SOCKET, FD_CONNECT | FD_CLOSE | FD_ACCEPT | FD_READ | FD_WRITE);\r
        if(Ret != SOCKET_ERROR)\r
        {\r
-               // FTPS\91Î\89\9e\r
+               // FTPS対応\r
 //             Ret = connect(s, name, namelen);\r
                if(AskCryptMode() == CRYPT_FTPIS)\r
                        Ret = connectS(s, name, namelen);\r
@@ -864,7 +864,7 @@ SOCKET do_accept(SOCKET s, struct sockaddr *addr, int *addrlen)
        {\r
                do\r
                {\r
-                       // FTPS\91Î\89\9e\r
+                       // FTPS対応\r
 //                     Ret2 = accept(s, addr, addrlen);\r
                        if(AskCryptMode() == CRYPT_FTPIS)\r
                                Ret2 = acceptS(s, addr, addrlen);\r
@@ -904,20 +904,20 @@ SOCKET do_accept(SOCKET s, struct sockaddr *addr, int *addrlen)
 \r
 \r
 \r
-/*----- recv\91\8a\93\96\82Ì\8aÖ\90\94 --------------------------------------------------------\r
+/*----- recv相当の関数 --------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              SOCKET s : \83\\83P\83b\83g\r
-*              char *buf : \83f\81[\83^\82ð\93Ç\82Ý\8d\9e\82Þ\83o\83b\83t\83@\r
-*              int len : \92·\82³\r
-*              int flags : recv\82É\97^\82¦\82é\83t\83\89\83O\r
-*              int *TimeOutErr : \83^\83C\83\80\83A\83E\83g\82µ\82½\82©\82Ç\82¤\82©\82ð\95Ô\82·\83\8f\81[\83N\r
+*              SOCKET s : ソケット\r
+*              char *buf : データを読み込むバッファ\r
+*              int len : 長さ\r
+*              int flags : recvに与えるフラグ\r
+*              int *TimeOutErr : タイムアウトしたかどうかを返すワーク\r
 *\r
 *      Return Value\r
-*              int : recv\82Ì\96ß\82è\92l\82Æ\93¯\82\r
+*              int : recvの戻り値と同じ\r
 *\r
 *      Note\r
-*              \83^\83C\83\80\83A\83E\83g\82Ì\8e\9e\82Í TimeOut=YES\81ARet=SOCKET_ERROR \82É\82È\82é\r
+*              タイムアウトの時は TimeOut=YES、Ret=SOCKET_ERROR になる\r
 *----------------------------------------------------------------------------*/\r
 int do_recv(SOCKET s, char *buf, int len, int flags, int *TimeOutErr, int *CancelCheckWork)\r
 {\r
@@ -938,8 +938,8 @@ int do_recv(SOCKET s, char *buf, int len, int flags, int *TimeOutErr, int *Cance
        if(TimeOut != 0)\r
                time(&StartTime);\r
 \r
-       // FTPS\91Î\89\9e\r
-       // OpenSSL\82Å\82Í\8eó\90M\8am\94F\82ÍFD_READ\82ª\95¡\90\94\89ñ\8eó\90M\82³\82ê\82é\89Â\94\\90«\82ª\82 \82é\r
+       // FTPS対応\r
+       // OpenSSLでは受信確認はFD_READが複数回受信される可能性がある\r
 //     while((*CancelCheckWork == NO) && (AskAsyncDone(s, &Error, FD_READ_BIT) != YES))\r
        while(AskCryptMode() == CRYPT_NONE && (*CancelCheckWork == NO) && (AskAsyncDone(s, &Error, FD_READ_BIT) != YES))\r
        {\r
@@ -972,7 +972,7 @@ int do_recv(SOCKET s, char *buf, int len, int flags, int *TimeOutErr, int *Cance
                        DoPrintf("## recv()");\r
 #endif\r
 \r
-                       // FTPS\91Î\89\9e\r
+                       // FTPS対応\r
 //                     Ret = recv(s, buf, len, flags);\r
                        if(AskCryptMode() == CRYPT_FTPES || AskCryptMode() == CRYPT_FTPIS)\r
                                Ret = recvS(s, buf, len, flags);\r
@@ -984,8 +984,8 @@ int do_recv(SOCKET s, char *buf, int len, int flags, int *TimeOutErr, int *Cance
                        Sleep(1);\r
                        if(BackgrndMessageProc() == YES)\r
                                break;\r
-                       // FTPS\91Î\89\9e\r
-                       // \8eó\90M\8am\94F\82ð\83o\83C\83p\83X\82µ\82½\82½\82ß\82±\82±\82Å\83^\83C\83\80\83A\83E\83g\82Ì\8am\94F\r
+                       // FTPS対応\r
+                       // 受信確認をバイパスしたためここでタイムアウトの確認\r
                        if(AskCryptMode() == CRYPT_FTPES || AskCryptMode() == CRYPT_FTPIS)\r
                        {\r
                                if(BackgrndMessageProc() == YES)\r
@@ -1048,8 +1048,8 @@ int do_send(SOCKET s, const char *buf, int len, int flags, int *TimeOutErr, int
        if(BackgrndMessageProc() == YES)\r
                *CancelCheckWork = YES;\r
 \r
-       // FTPS\91Î\89\9e\r
-       // \91\97\90M\83o\83b\83t\83@\82Ì\8bó\82«\8am\94F\82É\82Í\89e\8b¿\82µ\82È\82¢\82ª\94O\82Ì\82½\82ß\r
+       // FTPS対応\r
+       // 送信バッファの空き確認には影響しないが念のため\r
 //     while((*CancelCheckWork == NO) && (AskAsyncDone(s, &Error, FD_WRITE_BIT) != YES))\r
        while(AskCryptMode() == CRYPT_NONE && (*CancelCheckWork == NO) && (AskAsyncDone(s, &Error, FD_WRITE_BIT) != YES))\r
        {\r
@@ -1083,7 +1083,7 @@ int do_send(SOCKET s, const char *buf, int len, int flags, int *TimeOutErr, int
                        DoPrintf("## send()");\r
 #endif\r
 \r
-                       // FTPS\91Î\89\9e\r
+                       // FTPS対応\r
 //                     Ret = send(s, buf, len, flags);\r
                        if(AskCryptMode() == CRYPT_FTPES || AskCryptMode() == CRYPT_FTPIS)\r
                                Ret = sendS(s, buf, len, flags);\r
@@ -1100,8 +1100,8 @@ int do_send(SOCKET s, const char *buf, int len, int flags, int *TimeOutErr, int
                        Sleep(1);\r
                        if(BackgrndMessageProc() == YES)\r
                                break;\r
-                       // FTPS\91Î\89\9e\r
-                       // \91\97\90M\83o\83b\83t\83@\8am\94F\82ð\83o\83C\83p\83X\82µ\82½\82½\82ß\82±\82±\82Å\83^\83C\83\80\83A\83E\83g\82Ì\8am\94F\r
+                       // FTPS対応\r
+                       // 送信バッファ確認をバイパスしたためここでタイムアウトの確認\r
                        if(AskCryptMode() == CRYPT_FTPES || AskCryptMode() == CRYPT_FTPIS)\r
                        {\r
                                if(BackgrndMessageProc() == YES)\r
@@ -1142,8 +1142,8 @@ int do_send(SOCKET s, const char *buf, int len, int flags, int *TimeOutErr, int
 *      Parameter\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 CheckClosedAndReconnect(void)\r
@@ -1153,7 +1153,7 @@ int CheckClosedAndReconnect(void)
 \r
 //SetTaskMsg("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        if(AskAsyncDone(AskCmdCtrlSkt(), &Error, FD_CLOSE_BIT) == YES)\r
        {\r
                Sts = ReConnectCmdSkt();\r
index acbb8a0..e3d4623 100644 (file)
@@ -1,9 +1,9 @@
-// socketwrapper.cpp
+// socketwrapper.cpp
 // Copyright (C) 2011 Suguru Kawamoto
-// \83\\83P\83b\83g\83\89\83b\83p\81[
-// socket\8aÖ\98A\8aÖ\90\94\82ðOpenSSL\97p\82É\92u\8a·
-// \83R\83\93\83p\83C\83\8b\82É\82ÍOpenSSL\82Ì\83w\83b\83_\81[\83t\83@\83C\83\8b\82ª\95K\97v
-// \8eÀ\8ds\82É\82ÍOpenSSL\82ÌDLL\82ª\95K\97v
+// ソケットラッパー
+// socket関連関数をOpenSSL用に置換
+// コンパイルにはOpenSSLのヘッダーファイルが必要
+// 実行にはOpenSSLのDLLが必要
 
 #include <windows.h>
 #include <mmsystem.h>
@@ -185,7 +185,7 @@ BOOL AttachSSL(SOCKET s)
                                if(pSSL_set_fd(*ppSSL, s) != 0)
                                {
                                        r = TRUE;
-                                       // SSL\82Ì\83l\83S\83V\83G\81[\83V\83\87\83\93\82É\82Í\8e\9e\8aÔ\82ª\82©\82©\82é\8fê\8d\87\82ª\82 \82é
+                                       // SSLのネゴシエーションには時間がかかる場合がある
                                        while(pSSL_connect(*ppSSL) != 1)
                                        {
                                                LeaveCriticalSection(&g_OpenSSLLock);
index 884f63d..50a4161 100644 (file)
@@ -1,6 +1,6 @@
-// socketwrapper.h
+// socketwrapper.h
 // Copyright (C) 2011 Suguru Kawamoto
-// \83\\83P\83b\83g\83\89\83b\83p\81[
+// ソケットラッパー
 
 #ifndef __SOCKETWRAPPER_H__
 #define __SOCKETWRAPPER_H__
index 6467fc6..735dfbb 100644 (file)
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                      \83X\83e\81[\83^\83X\83E\83C\83\93\83h\83E\r
+*                                                      ステータスウインドウ\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include "resource.h"\r
 \r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static HWND hWndSbar = NULL;\r
 static int SbarColWidth[5] = { 70, 230, 410, 570, -1 };\r
 \r
 \r
 \r
-/*----- \83X\83e\81[\83^\83X\83E\83C\83\93\83h\83E\82ð\8dì\90¬\82·\82é ----------------------------------------\r
+/*----- ステータスウインドウを作成する ----------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \90e\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              HINSTANCE hInst : \83C\83\93\83X\83^\83\93\83X\83n\83\93\83h\83\8b\r
+*              HWND hWnd : 親ウインドウのウインドウハンドル\r
+*              HINSTANCE hInst : インスタンスハンドル\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 MakeStatusBarWindow(HWND hWnd, HINSTANCE hInst)\r
 {\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        hWndSbar = CreateWindowEx(0,\r
                        STATUSCLASSNAME, NULL,\r
                        WS_CHILD | SBS_SIZEGRIP | WS_CLIPSIBLINGS | SBT_NOBORDERS,\r
@@ -76,19 +76,19 @@ int MakeStatusBarWindow(HWND hWnd, HINSTANCE hInst)
        {\r
                SendMessage(hWndSbar, SB_SETPARTS, sizeof(SbarColWidth)/sizeof(int), (LPARAM)SbarColWidth);\r
                ShowWindow(hWndSbar, SW_SHOW);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
        }\r
        return(Sts);\r
 }\r
 \r
 \r
-/*----- \83X\83e\81[\83^\83X\83E\83C\83\93\83h\83E\82ð\8dí\8f\9c --------------------------------------------\r
+/*----- ステータスウインドウを削除 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DeleteStatusBarWindow(void)\r
@@ -99,13 +99,13 @@ void DeleteStatusBarWindow(void)
 }\r
 \r
 \r
-/*----- \83X\83e\81[\83^\83X\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· ------------------------\r
+/*----- ステータスウインドウのウインドウハンドルを返す ------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetSbarWnd(void)\r
@@ -114,13 +114,13 @@ HWND GetSbarWnd(void)
 }\r
 \r
 \r
-/*----- \83J\83\8c\83\93\83g\83E\83C\83\93\83h\83E\82ð\95\\8e¦ ----------------------------------------------\r
+/*----- カレントウインドウを表示 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86 (WIN_xxx : -1=\82È\82µ)\r
+*              int Win : ウインドウ番号 (WIN_xxx : -1=なし)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispCurrentWindow(int Win)\r
@@ -135,13 +135,13 @@ void DispCurrentWindow(int Win)
 }\r
 \r
 \r
-/*----- \91I\91ð\82³\82ê\82Ä\82¢\82é\83t\83@\83C\83\8b\90\94\82Æ\83T\83C\83Y\82ð\95\\8e¦ --------------------------------\r
+/*----- 選択されているファイル数とサイズを表示 --------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispSelectedSpace(void)\r
@@ -161,13 +161,13 @@ void DispSelectedSpace(void)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\8bó\82«\97e\97Ê\82ð\95\\8e¦ --------------------------------------------\r
+/*----- ローカル側の空き容量を表示 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\96¼\r
+*              char *Path : パス名\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispLocalFreeSpace(char *Path)\r
@@ -180,13 +180,13 @@ void DispLocalFreeSpace(char *Path)
 }\r
 \r
 \r
-/*----- \93]\91\97\82·\82é\83t\83@\83C\83\8b\82Ì\90\94\82ð\95\\8e¦ --------------------------------------------\r
+/*----- 転送するファイルの数を表示 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispTransferFiles(void)\r
@@ -199,13 +199,13 @@ void DispTransferFiles(void)
 }\r
 \r
 \r
-/*----- \8eó\90M\92\86\82Ì\83o\83C\83g\90\94\82ð\95\\8e¦ ------------------------------------------------\r
+/*----- 受信中のバイト数を表示 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              LONGLONG Size : \83o\83C\83g\90\94 (-1=\95\\8e¦\82ð\8fÁ\82·)\r
+*              LONGLONG Size : バイト数 (-1=表示を消す)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispDownloadSize(LONGLONG Size)\r
index 59a9af6..1465aa3 100644 (file)
--- a/taskwin.c
+++ b/taskwin.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \83^\83X\83N\83E\83C\83\93\83h\83E\r
+*                                                              タスクウインドウ\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 \r
 \r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern int ClientWidth;\r
 extern int SepaWidth;\r
 extern int ListHeight;\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern int TaskHeight;\r
 extern HFONT ListFont;\r
 extern int DebugConsole;\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static HWND hWndTask = NULL;\r
 static HANDLE DispLogSemaphore;\r
@@ -66,22 +66,22 @@ static HANDLE DispLogSemaphore2;
 \r
 \r
 \r
-/*----- \83^\83X\83N\83E\83C\83\93\83h\83E\82ð\8dì\90¬\82·\82é --------------------------------------------\r
+/*----- タスクウインドウを作成する --------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \90e\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              HINSTANCE hInst : \83C\83\93\83X\83^\83\93\83X\83n\83\93\83h\83\8b\r
+*              HWND hWnd : 親ウインドウのウインドウハンドル\r
+*              HINSTANCE hInst : インスタンスハンドル\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 MakeTaskWindow(HWND hWnd, HINSTANCE hInst)\r
 {\r
        int Sts;\r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        hWndTask = CreateWindowEx(/*WS_EX_STATICEDGE*/WS_EX_CLIENTEDGE,\r
                        "EDIT", NULL,\r
                        WS_CHILD | WS_BORDER | ES_AUTOVSCROLL | WS_VSCROLL | ES_MULTILINE | ES_READONLY | WS_CLIPSIBLINGS,\r
@@ -96,7 +96,7 @@ int MakeTaskWindow(HWND hWnd, HINSTANCE hInst)
                        SendMessage(hWndTask, WM_SETFONT, (WPARAM)ListFont, MAKELPARAM(TRUE, 0));\r
 \r
                ShowWindow(hWndTask, SW_SHOW);\r
-               Sts = SUCCESS;\r
+               Sts = FFFTP_SUCCESS;\r
 \r
                DispLogSemaphore = CreateSemaphore(NULL, 1, 1, NULL);\r
                DispLogSemaphore2 = CreateSemaphore(NULL, 1, 1, NULL);\r
@@ -106,13 +106,13 @@ int MakeTaskWindow(HWND hWnd, HINSTANCE hInst)
 }\r
 \r
 \r
-/*----- \83^\83X\83N\83E\83C\83\93\83h\83E\82ð\8dí\8f\9c ------------------------------------------------\r
+/*----- タスクウインドウを削除 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DeleteTaskWindow(void)\r
@@ -125,13 +125,13 @@ void DeleteTaskWindow(void)
 }\r
 \r
 \r
-/*----- \83^\83X\83N\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· ----------------------------\r
+/*----- タスクウインドウのウインドウハンドルを返す ----------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetTaskWnd(void)\r
@@ -140,14 +140,14 @@ HWND GetTaskWnd(void)
 }\r
 \r
 \r
-/*----- \83^\83X\83N\83\81\83b\83Z\81[\83W\82ð\95\\8e¦\82·\82é --------------------------------------------\r
+/*----- タスクメッセージを表示する --------------------------------------------\r
 *\r
 *      Parameter\r
-*              char *szFormat : \83t\83H\81[\83}\83b\83g\95\8e\9a\97ñ\r
-*              ... : \83p\83\89\83\81\81[\83^\r
+*              char *szFormat : フォーマット文字列\r
+*              ... : パラメータ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetTaskMsg(char *szFormat, ...)\r
@@ -176,10 +176,10 @@ void SetTaskMsg(char *szFormat, ...)
                                strcat(szBuf, "\r\n");\r
                                Pos = SendMessage(GetTaskWnd(), WM_GETTEXTLENGTH, 0, 0);\r
 \r
-                               /* \83e\83L\83X\83g\83T\83C\83Y\82Ì\83\8a\83~\83b\83g\92l\82ð\83`\83F\83b\83N */\r
+                               /* テキストサイズのリミット値をチェック */\r
                                if((Pos + strlen(szBuf)) >= TASK_BUFSIZE)\r
                                {\r
-                                       /* \83\8a\83~\83b\83g\82ð\89z\82¦\82»\82¤\82È\82ç\81A\90æ\93ª\95\94\95ª\82ð\90Ø\82è\8eÌ\82Ä\82é */\r
+                                       /* リミットを越えそうなら、先頭部分を切り捨てる */\r
                                        Pos = SendMessage(GetTaskWnd(), EM_LINEFROMCHAR, TASK_BUFSIZE/10, 0) + 1;\r
                                        Pos = SendMessage(GetTaskWnd(), EM_LINEINDEX, Pos, 0);\r
                                        SendMessage(GetTaskWnd(), EM_SETSEL, 0, Pos);\r
@@ -204,14 +204,14 @@ void SetTaskMsg(char *szFormat, ...)
 }\r
 \r
 \r
-/*----- \83^\83X\83N\83\81\83b\83Z\81[\83W\82ð\83t\83@\83C\83\8b\82É\95Û\91\82·\82é ----------------------------------\r
+/*----- タスクメッセージをファイルに保存する ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Fname : \83t\83@\83C\83\8b\96¼\r
+*              char *Fname : ファイル名\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 SaveTaskMsg(char *Fname)\r
@@ -222,7 +222,7 @@ int SaveTaskMsg(char *Fname)
        int Sts;\r
 \r
 \r
-       Sts = FAIL;\r
+       Sts = FFFTP_FAIL;\r
        Size = SendMessage(GetTaskWnd(), WM_GETTEXTLENGTH, 0, 0);\r
        if((Buf = malloc(Size)) != NULL)\r
        {\r
@@ -230,10 +230,10 @@ int SaveTaskMsg(char *Fname)
                {\r
                        SendMessage(GetTaskWnd(), WM_GETTEXT, Size, (LPARAM)Buf);\r
                        if(fwrite(Buf, strlen(Buf), 1, Strm) == 1)\r
-                               Sts = SUCCESS;\r
+                               Sts = FFFTP_SUCCESS;\r
                        fclose(Strm);\r
 \r
-                       if(Sts == FAIL)\r
+                       if(Sts == FFFTP_FAIL)\r
                                _unlink(Fname);\r
                }\r
                free(Buf);\r
@@ -242,13 +242,13 @@ int SaveTaskMsg(char *Fname)
 }\r
 \r
 \r
-/*----- \83^\83X\83N\93à\97e\82ð\83r\83\85\81[\83\8f\82Å\95\\8e¦ --------------------------------------------\r
+/*----- タスク内容をビューワで表示 --------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispTaskMsg(void)\r
@@ -259,7 +259,7 @@ void DispTaskMsg(void)
        SetYenTail(Buf);\r
        strcat(Buf, "_ffftp.tsk");\r
 \r
-       if(SaveTaskMsg(Buf) == SUCCESS)\r
+       if(SaveTaskMsg(Buf) == FFFTP_SUCCESS)\r
        {\r
                AddTempFileList(Buf);\r
                ExecViewer(Buf, 0);\r
@@ -268,14 +268,14 @@ void DispTaskMsg(void)
 }\r
 \r
 \r
-/*----- \83f\83o\83b\83O\83R\83\93\83\\81[\83\8b\82É\83\81\83b\83Z\81[\83W\82ð\95\\8e¦\82·\82é ------------------------------\r
+/*----- デバッグコンソールにメッセージを表示する ------------------------------\r
 *\r
 *      Parameter\r
-*              char *szFormat : \83t\83H\81[\83}\83b\83g\95\8e\9a\97ñ\r
-*              ... : \83p\83\89\83\81\81[\83^\r
+*              char *szFormat : フォーマット文字列\r
+*              ... : パラメータ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DoPrintf(char *szFormat, ...)\r
@@ -315,14 +315,14 @@ void DoPrintf(char *szFormat, ...)
 }\r
 \r
 \r
-/*----- \83f\83o\83b\83O\83R\83\93\83\\81[\83\8b\82É\83\81\83b\83Z\81[\83W\82ð\95\\8e¦\82·\82é ------------------------------\r
+/*----- デバッグコンソールにメッセージを表示する ------------------------------\r
 *\r
 *      Parameter\r
-*              char *szFormat : \83t\83H\81[\83}\83b\83g\95\8e\9a\97ñ\r
-*              ... : \83p\83\89\83\81\81[\83^\r
+*              char *szFormat : フォーマット文字列\r
+*              ... : パラメータ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DoPrintf2(char *szFormat, ...)\r
diff --git a/tool.c b/tool.c
index 3dbc676..3a5b4a8 100644 (file)
--- a/tool.c
+++ b/tool.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                                      \83c\81[\83\8b\r
+*                                                                      ツール\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include <htmlhelp.h>\r
 #include "helpid.h"\r
 \r
-// UTF-8\91Î\89\9e\r
+// UTF-8対応\r
 #undef __MBSWRAPPER_H__\r
 #include "mbswrapper.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static BOOL CALLBACK OtpCalcWinProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
 \r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern HWND hHelpWin;\r
 \r
 \r
-/*----- \83\8f\83\93\83^\83C\83\80\83p\83X\83\8f\81[\83h\8cv\8eZ ----------------------------------------------\r
+/*----- ワンタイムパスワード計算 ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void OtpCalcTool(void)\r
@@ -72,13 +72,13 @@ void OtpCalcTool(void)
 }\r
 \r
 \r
-/*----- \83\8f\83\93\83^\83C\83\80\83p\83X\83\8f\81[\83h\8cv\8eZ\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------\r
+/*----- ワンタイムパスワード計算ウインドウのコールバック ----------------------\r
 *\r
 *      Parameter\r
-*              HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-*              WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-*              LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+*              HWND hDlg : ウインドウハンドル\r
+*              UINT message : メッセージ番号\r
+*              WPARAM wParam : メッセージの WPARAM 引数\r
+*              LPARAM lParam : メッセージの LPARAM 引数\r
 *\r
 *      Return Value\r
 *              BOOL TRUE/FALSE\r
@@ -126,7 +126,7 @@ static BOOL CALLBACK OtpCalcWinProc(HWND hDlg, UINT message, WPARAM wParam, LPAR
                                                /* Seed */\r
                                                if((Pos = GetNextField(Pos)) != NULL)\r
                                                {\r
-                                                       if(GetOneField(Pos, Seed, MAX_SEED_LEN) == SUCCESS)\r
+                                                       if(GetOneField(Pos, Seed, MAX_SEED_LEN) == FFFTP_SUCCESS)\r
                                                        {\r
                                                                Make6WordPass(Seq, Seed, Pass, Type, Tmp);\r
                                                        }\r
index 5949215..2bcca27 100644 (file)
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \83c\81[\83\8b\83o\81[\82Æ\83\81\83j\83\85\81[\r
+*                                                              ツールバーとメニュー\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include "resource.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static void AddOpenMenu(HMENU hMenu, UINT Flg);\r
 static LRESULT CALLBACK HistEditBoxWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);\r
 \r
-/* 2007/09/21 sunasunamix  \82±\82±\82©\82ç *********************/\r
+/* 2007/09/21 sunasunamix  ここから *********************/\r
 static LRESULT CALLBACK CountermeasureTbarMainProc(HWND hWnd,UINT uMessage,WPARAM wParam,LPARAM lParam);\r
 static LRESULT CALLBACK CountermeasureTbarLocalProc(HWND hWnd,UINT uMessage,WPARAM wParam,LPARAM lParam);\r
 static LRESULT CALLBACK CountermeasureTbarRemoteProc(HWND hWnd,UINT uMessage,WPARAM wParam,LPARAM lParam);\r
-/********************************************* \82±\82±\82Ü\82Å */\r
+/********************************************* ここまで */\r
 \r
 \r
-/*===== \8aO\95\94\8eQ\8fÆ =====*/\r
+/*===== 外部参照 =====*/\r
 \r
 extern int SepaWidth;\r
 extern int RemoteWidth;\r
 \r
 extern int CancelFlg;\r
 \r
-/* \90Ý\92è\92l */\r
+/* 設定値 */\r
 extern int DotFile;\r
 extern char AsciiExt[ASCII_EXT_LEN+1];\r
 extern int TransMode;\r
@@ -72,7 +72,7 @@ extern char ViewerName[VIEWERS][FMAX_PATH+1];
 extern int TransMode;\r
 extern int SortSave;\r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static HWND hWndTbarMain = NULL;\r
 static HWND hWndTbarLocal = NULL;\r
@@ -90,7 +90,7 @@ static int TmpTransMode;
 static int TmpHostKanjiCode;\r
 static int TmpHostKanaCnv;\r
 \r
-// TODO: \83\8d\81[\83J\83\8b\82Ì\8a¿\8e\9a\83R\81[\83h\82ðShift_JIS\88È\8aO\82É\82à\91Î\89\9e\r
+// TODO: ローカルの漢字コードをShift_JIS以外にも対応\r
 static int TmpLocalKanjiCode;\r
 \r
 static int TmpLocalFileSort;\r
@@ -103,20 +103,20 @@ static int SyncMove = NO;
 static int HideUI = NO;\r
 \r
 \r
-/* 2007/09/21 sunasunamix  \82±\82±\82©\82ç *********************/\r
+/* 2007/09/21 sunasunamix  ここから *********************/\r
 static WNDPROC pOldTbarMainProc   = NULL;\r
 static WNDPROC pOldTbarLocalProc  = NULL;\r
 static WNDPROC pOldTbarRemoteProc = NULL;\r
-/********************************************* \82±\82±\82Ü\82Å */\r
+/********************************************* ここまで */\r
 \r
 \r
-/* \88È\91O\81A\83R\83\93\83{\83{\83b\83N\83X\82É\83J\83\8c\83\93\83g\83t\83H\83\8b\83_\82ð\89¯\82¦\82³\82¹\82Ä\82¢\82½\97¬\82ê\82Å */\r
-/* \82±\82Ì\83t\83@\83C\83\8b\82Å\83J\83\8c\83\93\83g\83t\83H\83\8b\83_\82ð\89¯\82¦\82³\82¹\82é */\r
+/* 以前、コンボボックスにカレントフォルダを憶えさせていた流れで */\r
+/* このファイルでカレントフォルダを憶えさせる */\r
 static char LocalCurDir[FMAX_PATH+1];\r
 static char RemoteCurDir[FMAX_PATH+1];\r
 \r
 \r
-/* \83\81\83C\83\93\82Ì\83c\81[\83\8b\83o\81[ */\r
+/* メインのツールバー */\r
 static TBBUTTON TbarDataMain[] = {\r
        { 0,  0, TBSTATE_ENABLED, TBSTYLE_SEP, 0, 0 },\r
        { 0,  MENU_CONNECT, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 },\r
@@ -159,7 +159,7 @@ static TBBUTTON TbarDataMain[] = {
        { 26, MENU_ABORT, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 }\r
 };\r
 \r
-/* \83\8d\81[\83J\83\8b\91¤\82Ì\83c\81[\83\8b\83o\81[ */\r
+/* ローカル側のツールバー */\r
 static TBBUTTON TbarDataLocal[] = {\r
        { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0, 0 },\r
        { 0, MENU_LOCAL_UPDIR, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 },\r
@@ -167,7 +167,7 @@ static TBBUTTON TbarDataLocal[] = {
        { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0, 0 }\r
 };\r
 \r
-/* \83z\83X\83g\91¤\82Ì\83c\81[\83\8b\83o\81[ */\r
+/* ホスト側のツールバー */\r
 static TBBUTTON TbarDataRemote[] = {\r
        { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0, 0 },\r
        { 0, MENU_REMOTE_UPDIR, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 },\r
@@ -175,7 +175,7 @@ static TBBUTTON TbarDataRemote[] = {
        { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0, 0 }\r
 };\r
 \r
-/* \91S\83{\83^\83\93\81^\83\81\83j\83\85\81[\8d\80\96Ú */\r
+/* 全ボタン/メニュー項目 */\r
 static const int HideMenus[] = {\r
        MENU_CONNECT,           MENU_QUICK,                     MENU_DISCONNECT,\r
        MENU_SET_CONNECT,       MENU_IMPORT_WS,         MENU_EXIT,\r
@@ -209,15 +209,15 @@ static const int HideMenus[] = {
 \r
 \r
 \r
-/*----- \83c\81[\83\8b\83o\81[\82ð\8dì\90¬\82·\82é --------------------------------------------------\r
+/*----- ツールバーを作成する --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              HWND hWnd : \90e\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-*              HINSTANCE hInst : \83C\83\93\83X\83^\83\93\83X\83n\83\93\83h\83\8b\r
+*              HWND hWnd : 親ウインドウのウインドウハンドル\r
+*              HINSTANCE hInst : インスタンスハンドル\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 MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)\r
@@ -229,7 +229,7 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)
        int Tmp2;\r
        DWORD NoDrives;\r
 \r
-       /*===== \83\81\83C\83\93\82Ì\83c\81[\83\8b\83o\81[ =====*/\r
+       /*===== メインのツールバー =====*/\r
 \r
        hWndTbarMain = CreateToolbarEx(\r
                                hWnd,\r
@@ -246,15 +246,15 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)
 \r
        if(hWndTbarMain != NULL)\r
        {\r
-               /* 2007/09/21 sunasunamix  \82±\82±\82©\82ç *********************/\r
+               /* 2007/09/21 sunasunamix  ここから *********************/\r
                pOldTbarMainProc = (WNDPROC)SetWindowLong(hWndTbarMain, GWL_WNDPROC, (DWORD)CountermeasureTbarMainProc);\r
-               /********************************************* \82±\82±\82Ü\82Å */\r
+               /********************************************* ここまで */\r
 \r
                GetClientRect(hWnd, &Rect1);\r
                MoveWindow(hWndTbarMain, 0, 0, Rect1.right, TOOLWIN_HEIGHT, FALSE);\r
        }\r
 \r
-       /*===== \83\8d\81[\83J\83\8b\82Ì\83c\81[\83\8b\83o\81[ =====*/\r
+       /*===== ローカルのツールバー =====*/\r
 \r
        hWndTbarLocal = CreateToolbarEx(\r
                                hWnd,\r
@@ -271,13 +271,13 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)
 \r
        if(hWndTbarLocal != NULL)\r
        {\r
-               /* 2007/09/21 sunasunamix  \82±\82±\82©\82ç *********************/\r
+               /* 2007/09/21 sunasunamix  ここから *********************/\r
                pOldTbarLocalProc = (WNDPROC)SetWindowLong(hWndTbarLocal, GWL_WNDPROC, (DWORD)CountermeasureTbarLocalProc);\r
-               /********************************************* \82±\82±\82Ü\82Å */\r
+               /********************************************* ここまで */\r
 \r
                MoveWindow(hWndTbarLocal, 0, TOOLWIN_HEIGHT, LocalWidth, TOOLWIN_HEIGHT, FALSE);\r
 \r
-               /*===== \83\8d\81[\83J\83\8b\82Ì\83f\83B\83\8c\83N\83g\83\8a\96¼\83E\83C\83\93\83h\83E =====*/\r
+               /*===== ローカルのディレクトリ名ウインドウ =====*/\r
 \r
                SendMessage(hWndTbarLocal, TB_GETITEMRECT, 3, (LPARAM)&Rect1);\r
 #ifndef ENGLISH\r
@@ -294,7 +294,7 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)
 \r
                if(hWndDirLocal != NULL)\r
                {\r
-                       /* \83G\83f\83B\83b\83g\83R\83\93\83g\83\8d\81[\83\8b\82ð\92T\82· */\r
+                       /* エディットコントロールを探す */\r
                        hWndDirLocalEdit = GetWindow(hWndDirLocal, GW_CHILD);\r
                        if(hWndDirLocalEdit != NULL)\r
                                HistEditBoxProcPtr = (WNDPROC)SetWindowLong(hWndDirLocalEdit, GWL_WNDPROC, (LONG)HistEditBoxWndProc);\r
@@ -302,7 +302,7 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)
                        SendMessage(hWndDirLocal, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE, 0));\r
                        SendMessage(hWndDirLocal, CB_LIMITTEXT, FMAX_PATH, 0);\r
 \r
-                       /* \83h\83\89\83C\83u\96¼\82ð\83Z\83b\83g\82µ\82Ä\82¨\82­ */\r
+                       /* ドライブ名をセットしておく */\r
                        GetLogicalDriveStrings(FMAX_PATH, Tmp);\r
                        NoDrives = LoadHideDriveListRegistory();\r
                        Pos = Tmp;\r
@@ -317,7 +317,7 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)
                }\r
        }\r
 \r
-       /*===== \83z\83X\83g\82Ì\83c\81[\83\8b\83o\81[ =====*/\r
+       /*===== ホストのツールバー =====*/\r
 \r
        hWndTbarRemote = CreateToolbarEx(\r
                                hWnd,\r
@@ -334,13 +334,13 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)
 \r
        if(hWndTbarRemote != NULL)\r
        {\r
-               /* 2007/09/21 sunasunamix  \82±\82±\82©\82ç *********************/\r
+               /* 2007/09/21 sunasunamix  ここから *********************/\r
                pOldTbarRemoteProc = (WNDPROC)SetWindowLong(hWndTbarRemote, GWL_WNDPROC, (DWORD)CountermeasureTbarRemoteProc);\r
-               /********************************************* \82±\82±\82Ü\82Å */\r
+               /********************************************* ここまで */\r
 \r
                MoveWindow(hWndTbarRemote, LocalWidth + SepaWidth, TOOLWIN_HEIGHT, RemoteWidth, TOOLWIN_HEIGHT, FALSE);\r
 \r
-               /*===== \83z\83X\83g\82Ì\83f\83B\83\8c\83N\83g\83\8a\96¼\83E\83C\83\93\83h\83E =====*/\r
+               /*===== ホストのディレクトリ名ウインドウ =====*/\r
 \r
                SendMessage(hWndTbarRemote, TB_GETITEMRECT, 3, (LPARAM)&Rect1);\r
                hWndDirRemote = CreateWindowEx(WS_EX_CLIENTEDGE,\r
@@ -351,7 +351,7 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)
 \r
                if(hWndDirRemote != NULL)\r
                {\r
-                       /* \83G\83f\83B\83b\83g\83R\83\93\83g\83\8d\81[\83\8b\82ð\92T\82· */\r
+                       /* エディットコントロールを探す */\r
                        hWndDirRemoteEdit = GetWindow(hWndDirRemote, GW_CHILD);\r
                        if(hWndDirRemoteEdit != NULL)\r
                                HistEditBoxProcPtr = (WNDPROC)SetWindowLong(hWndDirRemoteEdit, GWL_WNDPROC, (LONG)HistEditBoxWndProc);\r
@@ -362,14 +362,14 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst)
                }\r
        }\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        if((hWndTbarMain == NULL) ||\r
           (hWndTbarLocal == NULL) ||\r
           (hWndTbarRemote == NULL) ||\r
           (hWndDirLocal == NULL) ||\r
           (hWndDirRemote == NULL))\r
        {\r
-               Sts = FAIL;\r
+               Sts = FFFTP_FAIL;\r
        }\r
        return(Sts);\r
 }\r
@@ -385,7 +385,7 @@ static LRESULT CALLBACK HistEditBoxWndProc(HWND hWnd, UINT message, WPARAM wPara
        switch (message)\r
        {\r
                case WM_CHAR :\r
-                       if(wParam == 0x0D)              /* \83\8a\83^\81[\83\93\83L\81[\82ª\89\9f\82³\82ê\82½ */\r
+                       if(wParam == 0x0D)              /* リターンキーが押された */\r
                        {\r
                                if(hWnd == hWndDirLocalEdit)\r
                                {\r
@@ -396,14 +396,14 @@ static LRESULT CALLBACK HistEditBoxWndProc(HWND hWnd, UINT message, WPARAM wPara
                                else\r
                                {\r
                                        SendMessage(hWndDirRemoteEdit, WM_GETTEXT, FMAX_PATH+1, (LPARAM)Tmp);\r
-                                       if(CheckClosedAndReconnect() == SUCCESS)\r
+                                       if(CheckClosedAndReconnect() == FFFTP_SUCCESS)\r
                                        {\r
                                                if(DoCWD(Tmp, YES, NO, YES) < FTP_RETRY)\r
                                                        GetRemoteDirForWnd(CACHE_NORMAL, &CancelFlg);\r
                                        }\r
                                }\r
                        }\r
-                       else if(wParam == 0x09)         /* TAB\83L\81[\82ª\89\9f\82³\82ê\82½ */\r
+                       else if(wParam == 0x09)         /* TABキーが押された */\r
                        {\r
                                if(hWnd == hWndDirLocalEdit)\r
                                {\r
@@ -427,13 +427,13 @@ static LRESULT CALLBACK HistEditBoxWndProc(HWND hWnd, UINT message, WPARAM wPara
 \r
 \r
 \r
-/*----- \83c\81[\83\8b\83o\81[\82ð\8dí\8f\9c ------------------------------------------------------\r
+/*----- ツールバーを削除 ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DeleteToolBarWindow(void)\r
@@ -455,13 +455,13 @@ void DeleteToolBarWindow(void)
 }\r
 \r
 \r
-/*----- \83\81\83C\83\93\82Ì\83c\81[\83\8b\83o\81[\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· --------------------------\r
+/*----- メインのツールバーのウインドウハンドルを返す --------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetMainTbarWnd(void)\r
@@ -470,13 +470,13 @@ HWND GetMainTbarWnd(void)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83q\83X\83g\83\8a\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· --------------\r
+/*----- ローカル側のヒストリウインドウのウインドウハンドルを返す --------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetLocalHistHwnd(void)\r
@@ -485,13 +485,13 @@ HWND GetLocalHistHwnd(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83q\83X\83g\83\8a\83E\83C\83\93\83h\83E\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· ----------------\r
+/*----- ホスト側のヒストリウインドウのウインドウハンドルを返す ----------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetRemoteHistHwnd(void)\r
@@ -500,13 +500,13 @@ HWND GetRemoteHistHwnd(void)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83q\83X\83g\83\8a\83G\83f\83B\83b\83g\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· --------------\r
+/*----- ローカル側のヒストリエディットのウインドウハンドルを返す --------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetLocalHistEditHwnd(void)\r
@@ -515,13 +515,13 @@ HWND GetLocalHistEditHwnd(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83q\83X\83g\83\8a\83G\83f\83B\83b\83g\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· ----------------\r
+/*----- ホスト側のヒストリエディットのウインドウハンドルを返す ----------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetRemoteHistEditHwnd(void)\r
@@ -530,13 +530,13 @@ HWND GetRemoteHistEditHwnd(void)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83c\81[\83\8b\83o\81[\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· ----------------------\r
+/*----- ローカル側のツールバーのウインドウハンドルを返す ----------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetLocalTbarWnd(void)\r
@@ -545,13 +545,13 @@ HWND GetLocalTbarWnd(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83c\81[\83\8b\83o\81[\82Ì\83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\82ð\95Ô\82· ------------------------\r
+/*----- ホスト側のツールバーのウインドウハンドルを返す ------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              HWND \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
+*              HWND ウインドウハンドル\r
 *----------------------------------------------------------------------------*/\r
 \r
 HWND GetRemoteTbarWnd(void)\r
@@ -560,13 +560,13 @@ HWND GetRemoteTbarWnd(void)
 }\r
 \r
 \r
-/*----- HideUI \82Ì\8fó\91Ô\82ð\95Ô\82· ---------------------------------------------------\r
+/*----- HideUI の状態を返す ---------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int HideUI \82Ì\8fó\91Ô\r
+*              int HideUI の状態\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetHideUI(void)\r
@@ -575,13 +575,13 @@ int GetHideUI(void)
 }\r
 \r
 \r
-/*----- \83c\81[\83\8b\83{\83^\83\93\81^\83\81\83j\83\85\81[\82Ì\83n\83C\83h\8f\88\97\9d ------------------------------------\r
+/*----- ツールボタン/メニューのハイド処理 ------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void MakeButtonsFocus(void)\r
@@ -736,13 +736,13 @@ void MakeButtonsFocus(void)
 }\r
 \r
 \r
-/*----- \83\86\81[\83U\82Ì\91\80\8dì\82ð\8bÖ\8e~\82·\82é ------------------------------------------------\r
+/*----- ユーザの操作を禁止する ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DisableUserOpe(void)\r
@@ -766,13 +766,13 @@ void DisableUserOpe(void)
 }\r
 \r
 \r
-/*----- \83\86\81[\83U\82Ì\91\80\8dì\82ð\8b\96\89Â\82·\82é ------------------------------------------------\r
+/*----- ユーザの操作を許可する ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void EnableUserOpe(void)\r
@@ -791,7 +791,7 @@ void EnableUserOpe(void)
                EnableWindow(hWndDirLocal, TRUE);\r
                EnableWindow(hWndDirRemote, TRUE);\r
 \r
-               // \91I\91ð\95s\89Â\82È\8a¿\8e\9a\83R\81[\83h\82Ì\83{\83^\83\93\82ª\95\\8e¦\82³\82ê\82é\83o\83O\82ð\8fC\90³\r
+               // 選択不可な漢字コードのボタンが表示されるバグを修正\r
                HideHostKanjiButton();\r
                HideLocalKanjiButton();\r
 \r
@@ -803,14 +803,14 @@ void EnableUserOpe(void)
 }\r
 \r
 \r
-/*----- \83\86\81[\83U\82Ì\91\80\8dì\82ª\8bÖ\8e~\82³\82ê\82Ä\82¢\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ----------------------------\r
+/*----- ユーザの操作が禁止されているかどうかを返す ----------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      YES=\8bÖ\8e~\82³\82ê\82Ä\82¢\82é/NO\r
+*              int ステータス\r
+*                      YES=禁止されている/NO\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskUserOpeDisabled(void)\r
@@ -820,16 +820,16 @@ int AskUserOpeDisabled(void)
 \r
 \r
 /*===================================================\r
-*                      \93]\91\97\83\82\81[\83h\r
+*                      転送モード\r
 *===================================================*/\r
 \r
-/*----- \93]\91\97\83\82\81[\83h\82ð\90Ý\92è\82·\82é --------------------------------------------------\r
+/*----- 転送モードを設定する --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Mode : \93]\91\97\83\82\81[\83h (TYPE_xx)\r
+*              int Mode : 転送モード (TYPE_xx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetTransferTypeImm(int Mode)\r
@@ -841,13 +841,13 @@ void SetTransferTypeImm(int Mode)
 }\r
 \r
 \r
-/*----- \83\81\83j\83\85\81[\82É\82æ\82è\93]\91\97\83\82\81[\83h\82ð\90Ý\92è\82·\82é ------------------------------------\r
+/*----- メニューにより転送モードを設定する ------------------------------------\r
 *\r
 *      Parameter\r
-*              int Type : \93]\91\97\83\82\81[\83h (MENU_xxxx)\r
+*              int Type : 転送モード (MENU_xxxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetTransferType(int Type)\r
@@ -872,13 +872,13 @@ void SetTransferType(int Type)
 }\r
 \r
 \r
-/*----- \93]\91\97\83\82\81[\83h\82É\82µ\82½\82ª\82Á\82Ä\83{\83^\83\93\82ð\95\\8e¦\82·\82é --------------------------------\r
+/*----- 転送モードにしたがってボタンを表示する --------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispTransferType(void)\r
@@ -901,13 +901,13 @@ void DispTransferType(void)
 }\r
 \r
 \r
-/*----- \90Ý\92è\8fã\82Ì\93]\91\97\83\82\81[\83h\82ð\95Ô\82· ----------------------------------------------\r
+/*----- 設定上の転送モードを返す ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \93]\91\97\83\82\81[\83h (TYPE_xx)\r
+*              int 転送モード (TYPE_xx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskTransferType(void)\r
@@ -916,14 +916,14 @@ int AskTransferType(void)
 }\r
 \r
 \r
-/*----- \8eÀ\8dÛ\82Ì\93]\91\97\83\82\81[\83h\82ð\95Ô\82· ------------------------------------------------\r
+/*----- 実際の転送モードを返す ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              char Fname : \83t\83@\83C\83\8b\96¼\r
-*              int Type : \90Ý\92è\8fã\82Ì\93]\91\97\83\82\81[\83h (TYPE_xx)\r
+*              char Fname : ファイル名\r
+*              int Type : 設定上の転送モード (TYPE_xx)\r
 *\r
 *      Return Value\r
-*              int \93]\91\97\83\82\81[\83h (TYPE_xx)\r
+*              int 転送モード (TYPE_xx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskTransferTypeAssoc(char *Fname, int Type)\r
@@ -942,7 +942,7 @@ int AskTransferTypeAssoc(char *Fname, int Type)
                        Pos = AsciiExt;\r
                        while(*Pos != NUL)\r
                        {\r
-                               if(CheckFname(Name, Pos) == SUCCESS)\r
+                               if(CheckFname(Name, Pos) == FFFTP_SUCCESS)\r
                                {\r
                                        Ret = TYPE_A;\r
                                        break;\r
@@ -955,16 +955,16 @@ int AskTransferTypeAssoc(char *Fname, int Type)
 }\r
 \r
 \r
-/*----- \93]\91\97\83\82\81[\83h\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
-*              \8c»\8dÝ\82Ì\93]\91\97\83\82\81[\83h\82ª\83\8c\83W\83X\83g\83\8a\82É\95Û\91\82³\82ê\82é\r
+*              現在の転送モードがレジストリに保存される\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SaveTransferType(void)\r
@@ -975,16 +975,16 @@ void SaveTransferType(void)
 \r
 \r
 /*===================================================\r
-*                      \8a¿\8e\9a\83\82\81[\83h\r
+*                      漢字モード\r
 *===================================================*/\r
 \r
-/*----- \83z\83X\83g\82Ì\8a¿\8e\9a\83\82\81[\83h\82ð\83Z\83b\83g\82·\82é ----------------------------------------\r
+/*----- ホストの漢字モードをセットする ----------------------------------------\r
 *\r
 *      Parameter\r
-*              int Mode : \8a¿\8e\9a\83\82\81[\83h (KANJI_xxxx)\r
+*              int Mode : 漢字モード (KANJI_xxxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetHostKanjiCodeImm(int Mode)\r
@@ -996,20 +996,20 @@ void SetHostKanjiCodeImm(int Mode)
 }\r
 \r
 \r
-/*----- \83\81\83j\83\85\81[\82É\82æ\82è\83z\83X\83g\82Ì\8a¿\8e\9a\83\82\81[\83h\82ð\90Ý\92è\82·\82é -----------------------------\r
+/*----- メニューによりホストの漢字モードを設定する -----------------------------\r
 *\r
 *      Parameter\r
-*              int Type : \8a¿\8e\9a\83\82\81[\83h (MENU_xxxx)\r
+*              int Type : 漢字モード (MENU_xxxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetHostKanjiCode(int Type)\r
 {\r
        switch(Type)\r
        {\r
-               // UTF-8\91Î\89\9e\r
+               // UTF-8対応\r
                case MENU_KNJ_SJIS :\r
                        TmpHostKanjiCode = KANJI_SJIS;\r
                        break;\r
@@ -1036,20 +1036,20 @@ void SetHostKanjiCode(int Type)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ì\8a¿\8e\9a\83\82\81[\83h\82É\82µ\82½\82ª\82Á\82Ä\83{\83^\83\93\82ð\95\\8e¦\82·\82é ------------------------\r
+/*----- ホストの漢字モードにしたがってボタンを表示する ------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispHostKanjiCode(void)\r
 {\r
        switch(TmpHostKanjiCode)\r
        {\r
-               // UTF-8\91Î\89\9e\r
+               // UTF-8対応\r
                case KANJI_SJIS :\r
                        SendMessage(hWndTbarMain, TB_CHECKBUTTON, MENU_KNJ_SJIS, MAKELONG(TRUE, 0));\r
                        break;\r
@@ -1074,13 +1074,13 @@ void DispHostKanjiCode(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ì\8a¿\8e\9a\83\82\81[\83h\82ð\95Ô\82· ----------------------------------------------\r
+/*----- ホストの漢字モードを返す ----------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \8a¿\8e\9a\83\82\81[\83h (KANJI_xxxx)\r
+*              int 漢字モード (KANJI_xxxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskHostKanjiCode(void)\r
@@ -1089,20 +1089,20 @@ int AskHostKanjiCode(void)
 }\r
 \r
 \r
-/*----- \8a¿\8e\9a\83\82\81[\83h\83{\83^\83\93\82Ì\83n\83C\83h\8f\88\97\9d\82ð\8ds\82¤ ------------------------------------\r
+/*----- 漢字モードボタンのハイド処理を行う ------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void HideHostKanjiButton(void)\r
 {\r
        switch(TmpTransMode)\r
        {\r
-               // UTF-8\91Î\89\9e\r
+               // UTF-8対応\r
                case TYPE_I : \r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KNJ_SJIS, MAKELONG(FALSE, 0));\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KNJ_EUC, MAKELONG(FALSE, 0));\r
@@ -1123,7 +1123,7 @@ void HideHostKanjiButton(void)
 //                     else\r
 //                             SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(FALSE, 0));\r
 //                     break;\r
-                       // \8c»\8dÝ\83J\83i\95Ï\8a·\82ÍShift_JIS\81AJIS\81AEUC\8aÔ\82Å\82Ì\82Ý\8b@\94\\82·\82é\r
+                       // 現在カナ変換はShift_JIS、JIS、EUC間でのみ機能する\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(FALSE, 0));\r
                        switch(TmpHostKanjiCode)\r
                        {\r
@@ -1145,9 +1145,9 @@ void HideHostKanjiButton(void)
 }\r
 \r
 \r
-// \83\8d\81[\83J\83\8b\82Ì\8a¿\8e\9a\83R\81[\83h\r
-// \83e\83L\83X\83g\83\82\81[\83h\93]\91\97\8e\9e\82É\8eg\97p\r
-// \83z\83X\83g\91¤\82ª\96³\95Ï\8a·\82Ì\8e\9e\82Í\83\8d\81[\83J\83\8b\82à\96³\95Ï\8a·\r
+// ローカルの漢字コード\r
+// テキストモード転送時に使用\r
+// ホスト側が無変換の時はローカルも無変換\r
 \r
 void SetLocalKanjiCodeImm(int Mode)\r
 {\r
@@ -1161,7 +1161,7 @@ void SetLocalKanjiCode(int Type)
 {\r
        switch(Type)\r
        {\r
-               // UTF-8\91Î\89\9e\r
+               // UTF-8対応\r
                case MENU_L_KNJ_SJIS :\r
                        TmpLocalKanjiCode = KANJI_SJIS;\r
                        break;\r
@@ -1187,7 +1187,7 @@ void DispLocalKanjiCode(void)
 {\r
        switch(TmpLocalKanjiCode)\r
        {\r
-               // UTF-8\91Î\89\9e\r
+               // UTF-8対応\r
                case KANJI_SJIS :\r
                        SendMessage(hWndTbarMain, TB_CHECKBUTTON, MENU_L_KNJ_SJIS, MAKELONG(TRUE, 0));\r
                        break;\r
@@ -1216,7 +1216,7 @@ void HideLocalKanjiButton(void)
 {\r
        switch(TmpTransMode)\r
        {\r
-               // UTF-8\91Î\89\9e\r
+               // UTF-8対応\r
                case TYPE_I : \r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_SJIS, MAKELONG(FALSE, 0));\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_EUC, MAKELONG(FALSE, 0));\r
@@ -1229,7 +1229,7 @@ void HideLocalKanjiButton(void)
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_EUC, MAKELONG(TRUE, 0));\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_JIS, MAKELONG(TRUE, 0));\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_L_KNJ_UTF8N, MAKELONG(TRUE, 0));\r
-                       // \8c»\8dÝ\83J\83i\95Ï\8a·\82ÍShift_JIS\81AJIS\81AEUC\8aÔ\82Å\82Ì\82Ý\8b@\94\\82·\82é\r
+                       // 現在カナ変換はShift_JIS、JIS、EUC間でのみ機能する\r
                        SendMessage(hWndTbarMain, TB_ENABLEBUTTON, MENU_KANACNV, MAKELONG(FALSE, 0));\r
                        switch(TmpHostKanjiCode)\r
                        {\r
@@ -1253,16 +1253,16 @@ void HideLocalKanjiButton(void)
 \r
 \r
 /*===================================================\r
-*                      \94¼\8ap\95Ï\8a·\83\82\81[\83h\r
+*                      半角変換モード\r
 *===================================================*/\r
 \r
-/*----- \83z\83X\83g\82Ì\94¼\8ap\95Ï\8a·\83\82\81[\83h\82ð\90Ý\92è\82·\82é --------------------------------------\r
+/*----- ホストの半角変換モードを設定する --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Mode : \94¼\8ap\95Ï\8a·\83\82\81[\83h(YES/NO)\r
+*              int Mode : 半角変換モード(YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetHostKanaCnvImm(int Mode)\r
@@ -1273,13 +1273,13 @@ void SetHostKanaCnvImm(int Mode)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ì\94¼\8ap\95Ï\8a·\83\82\81[\83h\82ð\94½\93]\82·\82é --------------------------------------\r
+/*----- ホストの半角変換モードを反転する --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetHostKanaCnv(void)\r
@@ -1290,13 +1290,13 @@ void SetHostKanaCnv(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ì\94¼\8ap\95Ï\8a·\83\82\81[\83h\82É\82µ\82½\82ª\82Á\82Ä\83{\83^\83\93\82ð\95\\8e¦\82·\82é --------------------\r
+/*----- ホストの半角変換モードにしたがってボタンを表示する --------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispHostKanaCnv(void)\r
@@ -1309,13 +1309,13 @@ void DispHostKanaCnv(void)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ì\94¼\8ap\95Ï\8a·\83\82\81[\83h\82ð\95Ô\82· ------------------------------------------\r
+/*----- ホストの半角変換モードを返す ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \94¼\8ap\95Ï\8a·\83\82\81[\83h\r
+*              int 半角変換モード\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskHostKanaCnv(void)\r
@@ -1325,19 +1325,19 @@ int AskHostKanaCnv(void)
 \r
 \r
 /*===================================================\r
-*                      \83\\81[\83g\95û\96@\r
+*                      ソート方法\r
 *===================================================*/\r
 \r
-/*----- \83\\81[\83g\95û\96@\82ð\83Z\83b\83g\82·\82é ------------------------------------------------\r
+/*----- ソート方法をセットする ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int LFsort : \83\8d\81[\83J\83\8b\91¤\82Ì\83t\83@\83C\83\8b\82Ì\83\\81[\83g\95û\96@ (SORT_xxx)\r
-*              int LDsort : \83\8d\81[\83J\83\8b\91¤\82Ì\83f\83B\83\8c\83N\83g\83\8a\82Ì\83\\81[\83g\95û\96@ (SORT_xxx)\r
-*              int RFsort : \83z\83X\83g\91¤\82Ì\83t\83@\83C\83\8b\82Ì\83\\81[\83g\95û\96@ (SORT_xxx)\r
-*              int RDsort : \83z\83X\83g\91¤\82Ì\83f\83B\83\8c\83N\83g\83\8a\82Ì\83\\81[\83g\95û\96@ (SORT_xxx)\r
+*              int LFsort : ローカル側のファイルのソート方法 (SORT_xxx)\r
+*              int LDsort : ローカル側のディレクトリのソート方法 (SORT_xxx)\r
+*              int RFsort : ホスト側のファイルのソート方法 (SORT_xxx)\r
+*              int RDsort : ホスト側のディレクトリのソート方法 (SORT_xxx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetSortTypeImm(int LFsort, int LDsort, int RFsort, int RDsort)\r
@@ -1350,14 +1350,14 @@ void SetSortTypeImm(int LFsort, int LDsort, int RFsort, int RDsort)
 }\r
 \r
 \r
-/*----- \83\8a\83X\83g\83r\83\85\81[\82Ì\83^\83u\83N\83\8a\83b\83N\82É\82æ\82é\83\\81[\83g\95û\96@\82Ì\83Z\83b\83g --------------------\r
+/*----- リストビューのタブクリックによるソート方法のセット --------------------\r
 *\r
 *      Parameter\r
-*              int Win : \83E\83C\83\93\83h\83E\94Ô\8d\86\r
-*              int Tab : \83J\83\89\83\80\94Ô\8d\86\r
+*              int Win : ウインドウ番号\r
+*              int Tab : カラム番号\r
 *\r
 *      Return Value\r
-*              int \83\\81[\83g\95û\96@ (SORT_xxx)\r
+*              int ソート方法 (SORT_xxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetSortTypeByColumn(int Win, int Tab)\r
@@ -1393,13 +1393,13 @@ void SetSortTypeByColumn(int Win, int Tab)
 }\r
 \r
 \r
-/*----- \83\\81[\83g\95û\96@\82ð\95Ô\82· ------------------------------------------------------\r
+/*----- ソート方法を返す ------------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Name : \82Ç\82Ì\95\94\95ª\82© (ITEM_xxx)\r
+*              int Name : どの部分か (ITEM_xxx)\r
 *\r
 *      Return Value\r
-*              int \83\\81[\83g\95û\96@ (SORT_xxx)\r
+*              int ソート方法 (SORT_xxx)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskSortType(int Name)\r
@@ -1428,13 +1428,13 @@ int AskSortType(int Name)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82²\82Æ\82É\83\\81[\83g\82ð\95Û\91\82·\82é\82©\82Ç\82¤\82©\82ð\83Z\83b\83g\82·\82é-----------------------\r
+/*----- ホストごとにソートを保存するかどうかをセットする-----------------------\r
 *\r
 *      Parameter\r
-*              int Sw : \83X\83C\83b\83` (YES/NO)\r
+*              int Sw : スイッチ (YES/NO)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetSaveSortToHost(int Sw)\r
@@ -1444,13 +1444,13 @@ void SetSaveSortToHost(int Sw)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82²\82Æ\82É\83\\81[\83g\82ð\95Û\91\82·\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ----------------------------\r
+/*----- ホストごとにソートを保存するかどうかを返す ----------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83C\83b\83` (YES/NO)\r
+*              int スイッチ (YES/NO)\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskSaveSortToHost(void)\r
@@ -1461,16 +1461,16 @@ int AskSaveSortToHost(void)
 \r
 \r
 /*===================================================\r
-*                      \83\8a\83X\83g\83\82\81[\83h\r
+*                      リストモード\r
 *===================================================*/\r
 \r
-/*----- \83\8a\83X\83g\83\82\81[\83h\82É\82µ\82½\82ª\82Á\82Ä\83{\83^\83\93\82ð\95\\8e¦\82·\82é ------------------------------\r
+/*----- リストモードにしたがってボタンを表示する ------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispListType(void)\r
@@ -1497,16 +1497,16 @@ void DispListType(void)
 \r
 \r
 /*===================================================\r
-*                      \83t\83H\83\8b\83_\93¯\8e\9e\88Ú\93®\83\82\81[\83h\r
+*                      フォルダ同時移動モード\r
 *===================================================*/\r
 \r
-/*----- \93]\91\97\83\82\81[\83h\82ð\90Ý\92è\82·\82é --------------------------------------------------\r
+/*----- 転送モードを設定する --------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Mode : \93]\91\97\83\82\81[\83h (TYPE_xx)\r
+*              int Mode : 転送モード (TYPE_xx)\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetSyncMoveMode(int Mode)\r
@@ -1517,13 +1517,13 @@ void SetSyncMoveMode(int Mode)
 }\r
 \r
 \r
-/*----- \83t\83H\83\8b\83_\93¯\8e\9e\88Ú\93®\83\82\81[\83h\82ð\90Ø\82è\91Ö\82¦\82é ------------------------------------\r
+/*----- フォルダ同時移動モードを切り替える ------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ToggleSyncMoveMode(void)\r
@@ -1534,13 +1534,13 @@ void ToggleSyncMoveMode(void)
 }\r
 \r
 \r
-/*----- \83t\83H\83\8b\83_\93¯\8e\9e\88Ú\93®\82ð\8ds\82¤\82©\82Ç\82¤\82©\82ð\82É\82æ\82Á\82Ä\83\81\83j\83\85\81[\81^\83{\83^\83\93\82ð\95\\8e¦ --------\r
+/*----- フォルダ同時移動を行うかどうかをによってメニュー/ボタンを表示 --------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispSyncMoveMode(void)\r
@@ -1559,13 +1559,13 @@ void DispSyncMoveMode(void)
 }\r
 \r
 \r
-/*----- \83t\83H\83\8b\83_\93¯\8e\9e\88Ú\93®\83\82\81[\83h\82ð\95Ô\82· ------------------------------------------\r
+/*----- フォルダ同時移動モードを返す ------------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \94¼\8ap\95Ï\8a·\83\82\81[\83h\r
+*              int 半角変換モード\r
 *----------------------------------------------------------------------------*/\r
 \r
 int AskSyncMoveMode(void)\r
@@ -1575,16 +1575,16 @@ int AskSyncMoveMode(void)
 \r
 \r
 /*===================================================\r
-*                      \83f\83B\83\8c\83N\83g\83\8a\83q\83X\83g\83\8a\r
+*                      ディレクトリヒストリ\r
 *===================================================*/\r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\83q\83X\83g\83\8a\88ê\97\97\83E\83C\83\93\83h\83E\82É\93o\98^ --------------------------------\r
+/*----- ホスト側のヒストリ一覧ウインドウに登録 --------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\r
+*              char *Path : パス\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetRemoteDirHist(char *Path)\r
@@ -1603,13 +1603,13 @@ void SetRemoteDirHist(char *Path)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\83q\83X\83g\83\8a\88ê\97\97\83E\83C\83\93\83h\83E\82É\93o\98^ -------------------------------\r
+/*----- ローカル側のヒストリ一覧ウインドウに登録 -------------------------------\r
 *\r
 *      Parameter\r
-*              char *Path : \83p\83X\r
+*              char *Path : パス\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetLocalDirHist(char *Path)\r
@@ -1626,14 +1626,14 @@ void SetLocalDirHist(char *Path)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\82Ì\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82ð\95Ô\82· ----------------------------------\r
+/*----- ローカルのカレントディレクトリを返す ----------------------------------\r
 *\r
 *      Parameter\r
-*              char *Buf : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\96¼\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              int Max : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              char *Buf : カレントディレクトリ名を返すバッファ\r
+*              int Max : バッファのサイズ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AskLocalCurDir(char *Buf, int Max)\r
@@ -1644,14 +1644,14 @@ void AskLocalCurDir(char *Buf, int Max)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\82Ì\83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82ð\95Ô\82· ------------------------------------\r
+/*----- ホストのカレントディレクトリを返す ------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Buf : \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\96¼\82ð\95Ô\82·\83o\83b\83t\83@\r
-*              int Max : \83o\83b\83t\83@\82Ì\83T\83C\83Y\r
+*              char *Buf : カレントディレクトリ名を返すバッファ\r
+*              int Max : バッファのサイズ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void AskRemoteCurDir(char *Buf, int Max)\r
@@ -1662,13 +1662,13 @@ void AskRemoteCurDir(char *Buf, int Max)
 }\r
 \r
 \r
-/*----- \83J\83\8c\83\93\83g\83f\83B\83\8c\83N\83g\83\8a\82ð\90Ý\92è\82·\82é ----------------------------------------\r
+/*----- カレントディレクトリを設定する ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SetCurrentDirAsDirHist(void)\r
@@ -1679,16 +1679,16 @@ void SetCurrentDirAsDirHist(void)
 \r
 \r
 /*===================================================\r
-*                      \83\81\83j\83\85\81[\r
+*                      メニュー\r
 *===================================================*/\r
 \r
-/*----- \83h\83b\83g\83t\83@\83C\83\8b\82ð\95\\8e¦\82·\82é\82©\82Ç\82¤\82©\82ð\83\81\83j\83\85\81[\82É\95\\8e¦\82·\82é ------------------\r
+/*----- ドットファイルを表示するかどうかをメニューに表示する ------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void DispDotFileMode(void)\r
@@ -1700,15 +1700,15 @@ void DispDotFileMode(void)
 }\r
 \r
 \r
-/*----- \83\8d\81[\83J\83\8b\91¤\82Ì\89E\83{\83^\83\93\83\81\83j\83\85\81[\82ð\95\\8e¦ ------------------------------------------------\r
+/*----- ローカル側の右ボタンメニューを表示 ------------------------------------------------\r
 *\r
 *      Parameter\r
-*              int Pos : \83\81\83j\83\85\81[\82Ì\88Ê\92u\r
-*                                      0=\83}\83E\83X\83J\81[\83\\83\8b\82Ì\88Ê\92u\r
-*                                      1=\83E\83C\83\93\83h\83E\82Ì\8d\8fã\r
+*              int Pos : メニューの位置\r
+*                                      0=マウスカーソルの位置\r
+*                                      1=ウインドウの左上\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void LocalRbuttonMenu(int Pos)\r
@@ -1765,15 +1765,15 @@ void LocalRbuttonMenu(int Pos)
 }\r
 \r
 \r
-/*----- \83z\83X\83g\91¤\82Ì\89E\83{\83^\83\93\83\81\83j\83\85\81[\82ð\95\\8e¦ --------------------------------------\r
+/*----- ホスト側の右ボタンメニューを表示 --------------------------------------\r
 *\r
 *      Parameter\r
-*              int Pos : \83\81\83j\83\85\81[\82Ì\88Ê\92u\r
-*                                      0=\83}\83E\83X\83J\81[\83\\83\8b\82Ì\88Ê\92u\r
-*                                      1=\83E\83C\83\93\83h\83E\82Ì\8d\8fã\r
+*              int Pos : メニューの位置\r
+*                                      0=マウスカーソルの位置\r
+*                                      1=ウインドウの左上\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void RemoteRbuttonMenu(int Pos)\r
@@ -1834,14 +1834,14 @@ void RemoteRbuttonMenu(int Pos)
 }\r
 \r
 \r
-/*----- \89E\83{\83^\83\93\83\81\83j\83\85\81[\82É\81u\8aJ\82­\81v\82ð\92Ç\89Á  -------------------------------------\r
+/*----- 右ボタンメニューに「開く」を追加  -------------------------------------\r
 *\r
 *      Parameter\r
-*              HMENU hMenu : \83\81\83j\83\85\81[\83n\83\93\83h\83\8b\r
-*              UINT Flg : \83t\83\89\83O\r
+*              HMENU hMenu : メニューハンドル\r
+*              UINT Flg : フラグ\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 static void AddOpenMenu(HMENU hMenu, UINT Flg)\r
@@ -1863,10 +1863,10 @@ static void AddOpenMenu(HMENU hMenu, UINT Flg)
        return;\r
 }\r
 \r
-/* 2007/09/21 sunasunamix  \82±\82±\82©\82ç *********************/\r
+/* 2007/09/21 sunasunamix  ここから *********************/\r
 \r
-/*----- CreateToolbarEx \82Ì\83}\83E\83X\83N\83\8a\83b\83N\8aÖ\98A\82ð\96³\8e\8b\82·\82é(TbarMain\97p) -----------\r
-*       (\83T\83u\83N\83\89\83X\89»\82ð\8ds\82¤\82½\82ß\82Ì\83E\83C\83\93\83h\83E\83v\83\8d\83V\81[\83W\83\83)\r
+/*----- CreateToolbarEx のマウスクリック関連を無視する(TbarMain用) -----------\r
+*       (サブクラス化を行うためのウインドウプロシージャ)\r
 *----------------------------------------------------------------------------*/\r
 static LRESULT CALLBACK CountermeasureTbarMainProc(HWND hWnd,UINT uMessage,WPARAM wParam,LPARAM lParam)\r
 {\r
@@ -1882,8 +1882,8 @@ static LRESULT CALLBACK CountermeasureTbarMainProc(HWND hWnd,UINT uMessage,WPARA
        return CallWindowProc(pOldTbarMainProc, hWnd, uMessage, wParam, lParam);\r
 }\r
 \r
-/*----- CreateToolbarEx \82Ì\83}\83E\83X\83N\83\8a\83b\83N\8aÖ\98A\82ð\96³\8e\8b\82·\82é(TbarLocal\97p) ----------\r
-*       (\83T\83u\83N\83\89\83X\89»\82ð\8ds\82¤\82½\82ß\82Ì\83E\83C\83\93\83h\83E\83v\83\8d\83V\81[\83W\83\83)\r
+/*----- CreateToolbarEx のマウスクリック関連を無視する(TbarLocal用) ----------\r
+*       (サブクラス化を行うためのウインドウプロシージャ)\r
 *----------------------------------------------------------------------------*/\r
 static LRESULT CALLBACK CountermeasureTbarLocalProc(HWND hWnd,UINT uMessage,WPARAM wParam,LPARAM lParam)\r
 {\r
@@ -1899,8 +1899,8 @@ static LRESULT CALLBACK CountermeasureTbarLocalProc(HWND hWnd,UINT uMessage,WPAR
        return CallWindowProc(pOldTbarLocalProc, hWnd, uMessage, wParam, lParam);\r
 }\r
 \r
-/*----- CreateToolbarEx \82Ì\83}\83E\83X\83N\83\8a\83b\83N\8aÖ\98A\82ð\96³\8e\8b\82·\82é(TbarRemote\97p) ---------\r
-*       (\83T\83u\83N\83\89\83X\89»\82ð\8ds\82¤\82½\82ß\82Ì\83E\83C\83\93\83h\83E\83v\83\8d\83V\81[\83W\83\83)\r
+/*----- CreateToolbarEx のマウスクリック関連を無視する(TbarRemote用) ---------\r
+*       (サブクラス化を行うためのウインドウプロシージャ)\r
 *----------------------------------------------------------------------------*/\r
 static LRESULT CALLBACK CountermeasureTbarRemoteProc(HWND hWnd,UINT uMessage,WPARAM wParam,LPARAM lParam)\r
 {\r
@@ -1915,4 +1915,4 @@ static LRESULT CALLBACK CountermeasureTbarRemoteProc(HWND hWnd,UINT uMessage,WPA
        }\r
        return CallWindowProc(pOldTbarRemoteProc, hWnd, uMessage, wParam, lParam);\r
 }\r
-/********************************************* \82±\82±\82Ü\82Å */\r
+/********************************************* ここまで */\r
index 1422aca..c300b77 100644 (file)
@@ -1,5 +1,5 @@
-/*=============================================================================\r
-*                                                              \8dX\90V\95\97\91ö\91Î\89\9e\r
+/*=============================================================================\r
+*                                                              更新風鐸対応\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 \r
 #define MAIL_ADDRESS   "sota@mwa.biglobe.ne.jp"\r
 #define SOFTWARE               "FFFTP"\r
-#define MYNAME                 "\91]\93c"\r
+#define MYNAME                 "曽田"\r
 #define MYURL                  "http://www2.biglobe.ne.jp/~sota/"\r
 #define INFOFILE               "http://www2.biglobe.ne.jp/~sota/product/update.inf"\r
 \r
 \r
-/*----- \8dX\90V\95\97\91ö\82Ì\83\8d\81[\83J\83\8b\8fî\95ñ\82ð\8f\91\82«\8d\9e\82Þ --------------------------------------\r
+/*----- 更新風鐸のローカル情報を書き込む --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void SaveUpdateBellInfo(void)\r
index 20acbe6..42aeb70 100644 (file)
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                      \83\8f\83C\83\8b\83h\83J\81[\83h\8c\9f\8dõ\r
+*                                                      ワイルドカード検索\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #include "jreusr.h"\r
 \r
 \r
-/*===== \83v\83\8d\83g\83^\83C\83v =====*/\r
+/*===== プロトタイプ =====*/\r
 \r
 static int CheckNameMatch(char *str, char *regexp);\r
 \r
 \r
 \r
-/*----- \83\8f\83C\83\8b\83h\83J\81[\83h\82É\83}\83b\83`\82·\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ------------------------------\r
+/*----- ワイルドカードにマッチするかどうかを返す ------------------------------\r
 *\r
 *      Parameter\r
-*              char *str : \95\8e\9a\97ñ\r
-*              char *regexp : \83\8f\83C\83\8b\83h\83J\81[\83h\8c\9f\8dõ\8e®\r
+*              char *str : 文字列\r
+*              char *regexp : ワイルドカード検索式\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *\r
 *      Note\r
-*              VAX VMS\82Ì\8e\9e\82Í ; \88È\8d~\82Í\96³\8e\8b\82·\82é\r
+*              VAX VMSの時は ; 以降は無視する\r
 *----------------------------------------------------------------------------*/\r
 \r
 int CheckFname(char *str, char *regexp)\r
@@ -67,14 +67,14 @@ int CheckFname(char *str, char *regexp)
        strcpy(p1, regexp);\r
        strcpy(p2, str);\r
 \r
-       /* VAX VMS\82Ì\8e\9e\82Ì\82½\82ß\82Ì\8f\88\97\9d */\r
+       /* VAX VMSの時のための処理 */\r
        if(AskHostType() == HTYPE_VMS)\r
        {\r
                if((p = strchr(p2, ';')) != NULL)\r
                        *p = NUL;\r
        }\r
 \r
-       /* *? \82Æ\82© ** \82Æ\82©\82ð\8dí\8f\9c */\r
+       /* *? とか ** とかを削除 */\r
        for(p = p1; *p != NUL; p++)\r
        {\r
                while((*p == '*') && ((*(p+1) == '?') || (*(p+1) == '*')))\r
@@ -84,14 +84,14 @@ int CheckFname(char *str, char *regexp)
        if((strcmp(p1, "*.*") == 0) || (strcmp(p1, "????????.???") == 0))\r
                strcpy(p1, "*");\r
 \r
-       Sts = SUCCESS;\r
+       Sts = FFFTP_SUCCESS;\r
        if(strcmp(p1, "*") != 0)\r
        {\r
                if(strcmp(p1, "*.") == 0)\r
                {\r
                        p = strchr(p2, '.');\r
                        if((p != NULL) && (*(p+1) != NUL))\r
-                               Sts = FAIL;\r
+                               Sts = FFFTP_FAIL;\r
                }\r
                else\r
                        Sts = CheckNameMatch(p2, p1);\r
@@ -100,15 +100,15 @@ int CheckFname(char *str, char *regexp)
 }\r
 \r
 \r
-/*----- \83\8f\83C\83\8b\83h\83J\81[\83h\8c\9f\8dõ\83T\83u\83\8b\81[\83`\83\93 ----------------------------------------\r
+/*----- ワイルドカード検索サブルーチン ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *str : \95\8e\9a\97ñ\r
-*              char *regexp : \83\8f\83C\83\8b\83h\83J\81[\83h\8c\9f\8dõ\8e®\r
+*              char *str : 文字列\r
+*              char *regexp : ワイルドカード検索式\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
-*                      SUCCESS/FAIL\r
+*              int ステータス\r
+*                      FFFTP_SUCCESS/FFFTP_FAIL\r
 *----------------------------------------------------------------------------*/\r
 \r
 static int CheckNameMatch(char *str, char *regexp)\r
@@ -128,23 +128,23 @@ static int CheckNameMatch(char *str, char *regexp)
                                /* Look for a character matching the one after the '*' */\r
                                p++;\r
                                if(*p == NUL)\r
-                                       return SUCCESS; /* Automatic match */\r
+                                       return FFFTP_SUCCESS; /* Automatic match */\r
                                while(*str != NUL)\r
                                {\r
                                        while((*str != NUL) && (toupper(*p)!=toupper(*str)))\r
                                                str++;\r
                                        if(CheckNameMatch(str, p))\r
-                                               return SUCCESS;\r
+                                               return FFFTP_SUCCESS;\r
                                        if(*str == NUL)\r
-                                               return FAIL;\r
+                                               return FFFTP_FAIL;\r
                                        else\r
                                                str++;\r
                                }\r
-                               return FAIL;\r
+                               return FFFTP_FAIL;\r
 \r
                        default:\r
                                if(toupper(*str) != toupper(*p))\r
-                                       return FAIL;\r
+                                       return FFFTP_FAIL;\r
                                str++;\r
                                p++;\r
                                break;\r
@@ -152,10 +152,10 @@ static int CheckNameMatch(char *str, char *regexp)
        }\r
 \r
        if((*p == NUL) && (*str == NUL))\r
-               return SUCCESS;\r
+               return FFFTP_SUCCESS;\r
 \r
        if ((*p != NUL) && (str[0] == '.') && (str[1] == 0))\r
-               return(SUCCESS);\r
+               return(FFFTP_SUCCESS);\r
   \r
        if ((*str == NUL) && (*p == '?'))\r
        {\r
@@ -165,8 +165,8 @@ static int CheckNameMatch(char *str, char *regexp)
        }\r
 \r
        if((*str == NUL) && (*p == '*') && (p[1] == '\0'))\r
-               return SUCCESS;\r
+               return FFFTP_SUCCESS;\r
 \r
-       return FAIL;\r
+       return FFFTP_FAIL;\r
 }\r
 \r