OSDN Git Service

Add option to change default host settings.
authors_kawamoto <s_kawamoto@users.sourceforge.jp>
Fri, 31 Oct 2014 10:52:54 +0000 (19:52 +0900)
committers_kawamoto <s_kawamoto@users.sourceforge.jp>
Fri, 31 Oct 2014 10:52:54 +0000 (19:52 +0900)
Modify documents.
Rename resource files.

19 files changed:
FFFTP_Eng_Release/FFFTP.exe
FFFTP_Eng_Release_64/FFFTP.exe
FFFTP_English.vc80ee.vcproj
FFFTP_English.vc90.vcproj
FFFTP_English.vcproj
Release/FFFTP.exe
Release_64/FFFTP.exe
Resource/FFFTP.rc
Resource/resource.h
Resource_eng/ffftp.rc [moved from Resource_eng/FFFTP-eng.rc with 96% similarity]
Resource_eng/resource.h
common.h
doc/eng/FFFTP.txt
doc/eng/history.txt
doc/jpn/FFFTP.txt
doc/jpn/history.txt
hostman.c
main.c
registry.c

index 2a46121..9dcb433 100644 (file)
Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
index e12c9ab..7fa4511 100644 (file)
Binary files a/FFFTP_Eng_Release_64/FFFTP.exe and b/FFFTP_Eng_Release_64/FFFTP.exe differ
index 149d658..39cde5d 100644 (file)
@@ -28,7 +28,7 @@
                        >\r
                        <Tool\r
                                Name="VCPreBuildEventTool"\r
-                               CommandLine="utf8msg.exe mesg-eng.h mesg-eng.h&#x0D;&#x0A;cscript //nologo ReplaceAfxresh.js Resource_eng\FFFTP-eng.rc Resource_eng\FFFTP-eng._replaced_.rc&#x0D;&#x0A;"\r
+                               CommandLine="utf8msg.exe mesg-eng.h mesg-eng.h&#x0D;&#x0A;cscript //nologo ReplaceAfxresh.js Resource_eng\ffftp.rc Resource_eng\ffftp._replaced_.rc&#x0D;&#x0A;"\r
                        />\r
                        <Tool\r
                                Name="VCCustomBuildTool"\r
                        >\r
                        <Tool\r
                                Name="VCPreBuildEventTool"\r
-                               CommandLine="utf8msg.exe mesg-eng.h mesg-eng.h&#x0D;&#x0A;cscript //nologo ReplaceAfxresh.js Resource_eng\FFFTP-eng.rc Resource_eng\FFFTP-eng._replaced_.rc&#x0D;&#x0A;"\r
+                               CommandLine="utf8msg.exe mesg-eng.h mesg-eng.h&#x0D;&#x0A;cscript //nologo ReplaceAfxresh.js Resource_eng\ffftp.rc Resource_eng\ffftp._replaced_.rc&#x0D;&#x0A;"\r
                        />\r
                        <Tool\r
                                Name="VCCustomBuildTool"\r
                        >\r
                        <Tool\r
                                Name="VCPreBuildEventTool"\r
-                               CommandLine="utf8msg.exe mesg-eng.h mesg-eng.h&#x0D;&#x0A;cscript //nologo ReplaceAfxresh.js Resource_eng\FFFTP-eng.rc Resource_eng\FFFTP-eng._replaced_.rc&#x0D;&#x0A;"\r
+                               CommandLine="utf8msg.exe mesg-eng.h mesg-eng.h&#x0D;&#x0A;cscript //nologo ReplaceAfxresh.js Resource_eng\ffftp.rc Resource_eng\ffftp._replaced_.rc&#x0D;&#x0A;"\r
                        />\r
                        <Tool\r
                                Name="VCCustomBuildTool"\r
                        >\r
                        <Tool\r
                                Name="VCPreBuildEventTool"\r
-                               CommandLine="utf8msg.exe mesg-eng.h mesg-eng.h&#x0D;&#x0A;cscript //nologo ReplaceAfxresh.js Resource_eng\FFFTP-eng.rc Resource_eng\FFFTP-eng._replaced_.rc&#x0D;&#x0A;"\r
+                               CommandLine="utf8msg.exe mesg-eng.h mesg-eng.h&#x0D;&#x0A;cscript //nologo ReplaceAfxresh.js Resource_eng\ffftp.rc Resource_eng\ffftp._replaced_.rc&#x0D;&#x0A;"\r
                        />\r
                        <Tool\r
                                Name="VCCustomBuildTool"\r
                                >\r
                        </File>\r
                        <File\r
-                               RelativePath=".\Resource_eng\FFFTP-eng._replaced_.rc"\r
+                               RelativePath=".\Resource_eng\ffftp._replaced_.rc"\r
                                >\r
                        </File>\r
                        <File\r
-                               RelativePath=".\Resource_eng\FFFTP-eng.rc"\r
+                               RelativePath=".\Resource_eng\ffftp.rc"\r
                                >\r
                                <FileConfiguration\r
                                        Name="Debug|Win32"\r
index e61401e..6c3ac5d 100644 (file)
                                >\r
                        </File>\r
                        <File\r
-                               RelativePath=".\Resource_eng\FFFTP-eng.rc"\r
+                               RelativePath=".\Resource_eng\ffftp.rc"\r
                                >\r
                        </File>\r
                        <File\r
index 292b395..7450060 100644 (file)
                                >\r
                        </File>\r
                        <File\r
-                               RelativePath=".\Resource_eng\FFFTP-eng.rc"\r
+                               RelativePath=".\Resource_eng\ffftp.rc"\r
                                >\r
                        </File>\r
                        <File\r
index 06f8558..3995f73 100644 (file)
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
index 37dbe67..be76490 100644 (file)
Binary files a/Release_64/FFFTP.exe and b/Release_64/FFFTP.exe differ
index 4340e1c..86e5825 100644 (file)
@@ -296,14 +296,14 @@ BEGIN
     LTEXT           "\82ð\8dí\8f\9c\82µ\82Ü\82·\82©\81H",-1,17,21,167,8\r
 END\r
 \r
-hostlist_dlg DIALOG  0, 0, 232, 120\r
+hostlist_dlg DIALOG  0, 0, 232, 136\r
 STYLE DS_LOCALEDIT | DS_SETFONT | WS_POPUP | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME\r
 CAPTION "\83z\83X\83g\88ê\97\97"\r
 FONT 9, "MS Shell Dlg"\r
 BEGIN\r
-    CONTROL         "Tree1",HOST_LIST,"SysTreeView32",TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | TVS_FULLROWSELECT | WS_BORDER | WS_TABSTOP,7,6,152,89\r
-    DEFPUSHBUTTON   "\90Ú\91±(&S)",IDOK,27,102,50,14\r
-    PUSHBUTTON      "\95Â\82\82é(&O)",IDCANCEL,91,102,50,14\r
+    CONTROL         "Tree1",HOST_LIST,"SysTreeView32",TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | TVS_FULLROWSELECT | WS_BORDER | WS_TABSTOP,7,6,152,105\r
+    DEFPUSHBUTTON   "\90Ú\91±(&S)",IDOK,27,118,50,14\r
+    PUSHBUTTON      "\95Â\82\82é(&O)",IDCANCEL,91,118,50,14\r
     PUSHBUTTON      "\90V\8bK\83z\83X\83g(&N)...",HOST_NEW,165,6,60,14\r
     PUSHBUTTON      "\90V\8bK\83O\83\8b\81[\83v(&G)...",HOST_FOLDER,165,22,60,14\r
     PUSHBUTTON      "\90Ý\92è\95Ï\8dX(&M)...",HOST_SET,165,38,60,14\r
@@ -311,8 +311,9 @@ BEGIN
     PUSHBUTTON      "\8dí\8f\9c(&D)...",HOST_DEL,165,70,60,14\r
     PUSHBUTTON      "\81ª",HOST_UP,165,86,14,14\r
     PUSHBUTTON      "\81«",HOST_DOWN,184,86,14,14\r
-    SCROLLBAR       HOST_SIZEGRIP,222,106,10,13,SBS_BOTTOMALIGN | SBS_VERT | SBS_SIZEGRIP\r
-    PUSHBUTTON      "\83w\83\8b\83v",9,165,102,60,14\r
+    PUSHBUTTON      "\8aù\92è\82Ì\90Ý\92è(&F)...",HOST_SET_DEFAULT,165,102,60,14\r
+    SCROLLBAR       HOST_SIZEGRIP,222,122,10,13,SBS_BOTTOMALIGN | SBS_VERT | SBS_SIZEGRIP\r
+    PUSHBUTTON      "\83w\83\8b\83v",9,165,118,60,14\r
 END\r
 \r
 hset_main_dlg DIALOG  0, 0, 207, 155\r
@@ -1536,9 +1537,9 @@ BEGIN
     hostlist_dlg, DIALOG\r
     BEGIN\r
         LEFTMARGIN, 7\r
-        RIGHTMARGIN, 215\r
+        RIGHTMARGIN, 225\r
         TOPMARGIN, 6\r
-        BOTTOMMARGIN, 116\r
+        BOTTOMMARGIN, 132\r
     END\r
 \r
     hset_main_dlg, DIALOG\r
index be0b49e..37a8e53 100644 (file)
 #define UPDATES_INTERVAL                1224\r
 #define UPDATES_INTERVAL_SPN            1225\r
 #define HSET_NO_WEAK                    1226\r
+#define HOST_SET_DEFAULT                1227\r
 #define MENU_END                        40001\r
 #define MENU_EXIT                       40001\r
 #define MENU_CONNECT                    40003\r
 #ifndef APSTUDIO_READONLY_SYMBOLS\r
 #define _APS_NEXT_RESOURCE_VALUE        199\r
 #define _APS_NEXT_COMMAND_VALUE         40182\r
-#define _APS_NEXT_CONTROL_VALUE         1227\r
+#define _APS_NEXT_CONTROL_VALUE         1228\r
 #define _APS_NEXT_SYMED_VALUE           101\r
 #endif\r
 #endif\r
similarity index 96%
rename from Resource_eng/FFFTP-eng.rc
rename to Resource_eng/ffftp.rc
index 27e0bec..db0787e 100644 (file)
@@ -296,23 +296,24 @@ BEGIN
     LTEXT           "Delete following file?",-1,7,7,167,8\r
 END\r
 \r
-hostlist_dlg DIALOG  0, 0, 222, 120\r
+hostlist_dlg DIALOG  0, 0, 232, 136\r
 STYLE DS_LOCALEDIT | DS_SETFONT | WS_POPUP | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME\r
 CAPTION "Host List"\r
 FONT 9, "MS Shell Dlg"\r
 BEGIN\r
-    CONTROL         "Tree1",HOST_LIST,"SysTreeView32",TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | TVS_FULLROWSELECT | WS_BORDER | WS_TABSTOP,7,6,152,89\r
-    DEFPUSHBUTTON   "&Connect",IDOK,27,102,50,14\r
-    PUSHBUTTON      "C&lose",IDCANCEL,91,102,50,14\r
-    PUSHBUTTON      "New &Host...",HOST_NEW,165,6,50,14\r
-    PUSHBUTTON      "New &Group...",HOST_FOLDER,165,22,50,14\r
-    PUSHBUTTON      "&Modify...",HOST_SET,165,38,50,14\r
-    PUSHBUTTON      "Co&py",HOST_COPY,165,54,50,14\r
-    PUSHBUTTON      "&Delete...",HOST_DEL,165,70,50,14\r
-    PUSHBUTTON      "Up",HOST_UP,165,86,22,14\r
-    PUSHBUTTON      "Down",HOST_DOWN,193,86,22,14\r
-    SCROLLBAR       HOST_SIZEGRIP,212,106,10,13,SBS_BOTTOMALIGN | SBS_VERT | SBS_SIZEGRIP\r
-    PUSHBUTTON      "Help",9,165,102,50,14\r
+    CONTROL         "Tree1",HOST_LIST,"SysTreeView32",TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | TVS_FULLROWSELECT | WS_BORDER | WS_TABSTOP,7,6,152,105\r
+    DEFPUSHBUTTON   "&Connect",IDOK,27,118,50,14\r
+    PUSHBUTTON      "C&lose",IDCANCEL,91,118,50,14\r
+    PUSHBUTTON      "New &Host...",HOST_NEW,165,6,60,14\r
+    PUSHBUTTON      "New &Group...",HOST_FOLDER,165,22,60,14\r
+    PUSHBUTTON      "&Modify...",HOST_SET,165,38,60,14\r
+    PUSHBUTTON      "Co&py",HOST_COPY,165,54,60,14\r
+    PUSHBUTTON      "&Delete...",HOST_DEL,165,70,60,14\r
+    PUSHBUTTON      "Up",HOST_UP,165,86,27,14\r
+    PUSHBUTTON      "Down",HOST_DOWN,198,86,27,14\r
+    PUSHBUTTON      "Modify Def&ault...",HOST_SET_DEFAULT,165,102,60,14\r
+    SCROLLBAR       HOST_SIZEGRIP,222,122,10,13,SBS_BOTTOMALIGN | SBS_VERT | SBS_SIZEGRIP\r
+    PUSHBUTTON      "Help",9,165,118,60,14\r
 END\r
 \r
 hset_main_dlg DIALOG  0, 0, 207, 155\r
@@ -1574,9 +1575,9 @@ BEGIN
     hostlist_dlg, DIALOG\r
     BEGIN\r
         LEFTMARGIN, 7\r
-        RIGHTMARGIN, 215\r
+        RIGHTMARGIN, 225\r
         TOPMARGIN, 6\r
-        BOTTOMMARGIN, 116\r
+        BOTTOMMARGIN, 132\r
     END\r
 \r
     hset_main_dlg, DIALOG\r
index be0d991..caefb3a 100644 (file)
 #define UPDATES_INTERVAL                1224\r
 #define UPDATES_INTERVAL_SPN            1225\r
 #define HSET_NO_WEAK                    1226\r
+#define HOST_SET_DEFAULT                1227\r
 #define MENU_END                        40001\r
 #define MENU_EXIT                       40001\r
 #define MENU_CONNECT                    40003\r
 #ifndef APSTUDIO_READONLY_SYMBOLS\r
 #define _APS_NEXT_RESOURCE_VALUE        199\r
 #define _APS_NEXT_COMMAND_VALUE         40182\r
-#define _APS_NEXT_CONTROL_VALUE         1227\r
+#define _APS_NEXT_CONTROL_VALUE         1228\r
 #define _APS_NEXT_SYMED_VALUE           101\r
 #endif\r
 #endif\r
index 8a687b0..cf4cf70 100644 (file)
--- a/common.h
+++ b/common.h
@@ -1534,6 +1534,10 @@ void DecomposeSortType(ulong Sort, int *LFSort, int *LDSort, int *RFSort, int *R
 int AskCurrentHost(void);\r
 void SetCurrentHost(int Num);\r
 void CopyDefaultHost(HOSTDATA *Set);\r
+// ホスト共通設定機能\r
+void ResetDefaultHost(void);\r
+void SetDefaultHost(HOSTDATA *Set);\r
+void CopyDefaultDefaultHost(HOSTDATA *Set);\r
 int SearchHostName(char *Name);\r
 void ImportFromWSFTP(void);\r
 // 暗号化通信対応\r
index aceaa11..1cbd5b8 100644 (file)
@@ -33,6 +33,9 @@ Changes in Ver.1.99
 \r
 -- Tested on Windows 8.1 (32bit/64bit).\r
 \r
+-- 64bit version is now available.\r
+   This works around the certain restriction on 64bit Windows.\r
+\r
 -- Added the feature of automatic software update.\r
    It will connect to the dedicated server to check whether there are updates\r
    every 7 days by default, and then confirm whether to apply them.\r
@@ -78,10 +81,13 @@ Changes in Ver.1.99
 -- Added a feature to export settings as FileZilla XML format.\r
 \r
 -- Added an option not to use weak encryption methods for each host.\r
-   This refuses SSL 2.0 and encryption algorithms whose keys are shorter than\r
-   128 bits.\r
+   This refuses SSL 3.0 or older and encryption algorithms whose keys are\r
+   shorter than 128 bits.\r
    This feature is enabled by default.\r
 \r
+-- Added the default settings to the host list.\r
+   This is used for the initial state of new hosts and Quick Connect.\r
+\r
 \r
 Outline\r
 -------\r
index 5926d2c..8fbfc18 100644 (file)
@@ -5,6 +5,9 @@ Changes in Ver.1.99
 \r
 -- Tested on Windows 8.1 (32bit/64bit).\r
 \r
+-- 64bit version is now available.\r
+   This works around the certain restriction on 64bit Windows.\r
+\r
 -- Added the feature of automatic software update.\r
    It will connect to the dedicated server to check whether there are updates\r
    every 7 days by default, and then confirm whether to apply them.\r
@@ -50,10 +53,13 @@ Changes in Ver.1.99
 -- Added a feature to export settings as FileZilla XML format.\r
 \r
 -- Added an option not to use weak encryption methods for each host.\r
-   This refuses SSL 2.0 and encryption algorithms whose keys are shorter than\r
-   128 bits.\r
+   This refuses SSL 3.0 or older and encryption algorithms whose keys are\r
+   shorter than 128 bits.\r
    This feature is enabled by default.\r
 \r
+-- Added the default settings to the host list.\r
+   This is used for the initial state of new hosts and Quick Connect.\r
+\r
 Changes in Ver.1.98g2\r
 --------------------\r
 \r
index 365c945..66e95c1 100644 (file)
@@ -32,6 +32,9 @@ Ver 1.99
 \r
 \81EWindows 8.1 (32bit/64bit)\82Å\93®\8dì\82ð\8am\94F\82µ\82Ü\82µ\82½\81B\r
 \r
+\81E64bit\94Å\82ª\97\98\97p\89Â\94\\82É\82È\82è\82Ü\82µ\82½\81B\r
+\81@\82±\82ê\82É\82æ\82è64bit\94ÅWindows\82Å\93Á\92è\82Ì\91\80\8dì\82ª\90§\8cÀ\82³\82ê\82é\82Ì\82ð\89ñ\94ð\82Å\82«\82Ü\82·\81B\r
+\r
 \81E\83\\83t\83g\83E\83F\83A\82Ì\8e©\93®\8dX\90V\8b@\94\\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
 \81@\8aù\92è\82Å\82Í7\93ú\82²\82Æ\82É\90ê\97p\82Ì\83T\81[\83o\81[\82É\90Ú\91±\82µ\82Ä\8dX\90V\82ª\82 \82é\82©\82Ç\82¤\82©\8am\94F\82µ\81A\r
 \81@\8dX\90V\82ª\82 \82ê\82Î\8dX\90V\82ð\93K\97p\82·\82é\82©\82Ç\82¤\82©\83\86\81[\83U\81[\82É\8am\94F\82µ\82Ü\82·\81B\r
@@ -83,9 +86,12 @@ Ver 1.99
 \81E\90Ý\92è\82ðFileZilla XML\8c`\8e®\82É\83G\83N\83X\83|\81[\83g\82·\82é\8b@\94\\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
 \r
 \81E\83z\83X\83g\82Ì\90Ý\92è\82É\8eã\82¢\88Ã\8d\86\89»\95û\8e®\82ð\8eg\97p\82µ\82È\82¢\90Ý\92è\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
-\81@SSL 2.0\82â\8c®\82Ì\8b­\93x\82ª128\83r\83b\83g\96¢\96\9e\82Ì\88Ã\8d\86\82ð\8b\91\94Û\82·\82é\82æ\82¤\82É\82È\82è\82Ü\82·\81B\r
+\81@SSL 3.0\88È\91O\82â\8c®\82Ì\8b­\93x\82ª128\83r\83b\83g\96¢\96\9e\82Ì\88Ã\8d\86\82ð\8b\91\94Û\82·\82é\82æ\82¤\82É\82È\82è\82Ü\82·\81B\r
 \81@\82±\82Ì\8b@\94\\82Í\8aù\92è\82Å\82Í\97L\8cø\82É\82È\82è\82Ü\82·\81B\r
 \r
+\81E\83z\83X\83g\88ê\97\97\82É\8aù\92è\82Ì\90Ý\92è\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
+\81@\90V\8bK\83z\83X\83g\82Ì\8dì\90¬\8e\9e\82â\83N\83C\83b\83N\90Ú\91±\8e\9e\82Ì\8f\89\8aú\8fó\91Ô\82Æ\82µ\82Ä\8eg\97p\82³\82ê\82Ü\82·\81B\r
+\r
 \r
 Ver 1.96d\88È\91O\82Ö\96ß\82·\8fê\8d\87\r
 -----------------------\r
index e156ee1..cfc53b5 100644 (file)
@@ -4,6 +4,9 @@ FFFTP
 \r
 \81EWindows 8.1 (32bit/64bit)\82Å\93®\8dì\82ð\8am\94F\82µ\82Ü\82µ\82½\81B\r
 \r
+\81E64bit\94Å\82ª\97\98\97p\89Â\94\\82É\82È\82è\82Ü\82µ\82½\81B\r
+\81@\82±\82ê\82É\82æ\82è64bit\94ÅWindows\82Å\93Á\92è\82Ì\91\80\8dì\82ª\90§\8cÀ\82³\82ê\82é\82Ì\82ð\89ñ\94ð\82Å\82«\82Ü\82·\81B\r
+\r
 \81E\83\\83t\83g\83E\83F\83A\82Ì\8e©\93®\8dX\90V\8b@\94\\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
 \81@\8aù\92è\82Å\82Í7\93ú\82²\82Æ\82É\90ê\97p\82Ì\83T\81[\83o\81[\82É\90Ú\91±\82µ\82Ä\8dX\90V\82ª\82 \82é\82©\82Ç\82¤\82©\8am\94F\82µ\81A\r
 \81@\8dX\90V\82ª\82 \82ê\82Î\8dX\90V\82ð\93K\97p\82·\82é\82©\82Ç\82¤\82©\83\86\81[\83U\81[\82É\8am\94F\82µ\82Ü\82·\81B\r
@@ -55,9 +58,12 @@ FFFTP
 \81E\90Ý\92è\82ðFileZilla XML\8c`\8e®\82É\83G\83N\83X\83|\81[\83g\82·\82é\8b@\94\\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
 \r
 \81E\83z\83X\83g\82Ì\90Ý\92è\82É\8eã\82¢\88Ã\8d\86\89»\95û\8e®\82ð\8eg\97p\82µ\82È\82¢\90Ý\92è\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
-\81@SSL 2.0\82â\8c®\82Ì\8b­\93x\82ª128\83r\83b\83g\96¢\96\9e\82Ì\88Ã\8d\86\82ð\8b\91\94Û\82·\82é\82æ\82¤\82É\82È\82è\82Ü\82·\81B\r
+\81@SSL 3.0\88È\91O\82â\8c®\82Ì\8b­\93x\82ª128\83r\83b\83g\96¢\96\9e\82Ì\88Ã\8d\86\82ð\8b\91\94Û\82·\82é\82æ\82¤\82É\82È\82è\82Ü\82·\81B\r
 \81@\82±\82Ì\8b@\94\\82Í\8aù\92è\82Å\82Í\97L\8cø\82É\82È\82è\82Ü\82·\81B\r
 \r
+\81E\83z\83X\83g\88ê\97\97\82É\8aù\92è\82Ì\90Ý\92è\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
+\81@\90V\8bK\83z\83X\83g\82Ì\8dì\90¬\8e\9e\82â\83N\83C\83b\83N\90Ú\91±\8e\9e\82Ì\8f\89\8aú\8fó\91Ô\82Æ\82µ\82Ä\8eg\97p\82³\82ê\82Ü\82·\81B\r
+\r
 \81¡Ver 1.98g2\r
 \r
 \81E\83C\83\93\83X\83g\81[\83\89\94Å\82ÉZIP\94Å\82Ì\83t\83@\83C\83\8b\82ª\8d¬\93ü\82µ\82Ä\82¢\82½\96â\91è\82ð\8fC\90³\82µ\82Ü\82µ\82½\81B\r
index b16c40a..bcb5ac2 100644 (file)
--- a/hostman.c
+++ b/hostman.c
@@ -103,6 +103,9 @@ static HOSTDATA TmpHost;                                    /* ホスト情報コピー用 */
 static int Apply;                                                      /* プロパティシートでOKを押したフラグ */\r
 static WNDPROC HostListProcPtr;\r
 \r
+// ホスト共通設定機能\r
+HOSTDATA DefaultHost;\r
+\r
 \r
 \r
 /*----- ホスト一覧ウインドウ --------------------------------------------------\r
@@ -539,6 +542,13 @@ static INT_PTR CALLBACK SelectHostProc(HWND hDlg, UINT message, WPARAM wParam, L
                                        }\r
                                        break;\r
 \r
+                               // ホスト共通設定機能\r
+                               case HOST_SET_DEFAULT :\r
+                                       CopyDefaultHost(&TmpHost);\r
+                                       if(DispHostSetDlg(hDlg) == YES)\r
+                                               SetDefaultHost(&TmpHost);\r
+                                       break;\r
+\r
                                case HOST_LIST :\r
                                        if(HIWORD(wParam) == LBN_DBLCLK)\r
                                                PostMessage(hDlg, WM_COMMAND, MAKEWORD(IDOK, 0), 0);\r
@@ -1307,6 +1317,62 @@ void SetCurrentHost(int Num)
 \r
 void CopyDefaultHost(HOSTDATA *Set)\r
 {\r
+       // ホスト共通設定機能\r
+//     Set->Level = 0;\r
+//     strcpy(Set->HostName, "");\r
+//     strcpy(Set->HostAdrs, "");\r
+//     strcpy(Set->UserName, "");\r
+//     strcpy(Set->PassWord, "");\r
+//     strcpy(Set->Account, "");\r
+//     strcpy(Set->LocalInitDir, DefaultLocalPath);\r
+//     strcpy(Set->RemoteInitDir, "");\r
+//     memcpy(Set->BookMark, "\0\0", 2);\r
+//     strcpy(Set->ChmodCmd, CHMOD_CMD_NOR);\r
+//     strcpy(Set->LsName, LS_FNAME);\r
+//     strcpy(Set->InitCmd, "");\r
+//     Set->Port = PORT_NOR;\r
+//     Set->Anonymous = NO;\r
+//     Set->KanjiCode = KANJI_NOCNV;\r
+//     Set->KanaCnv = YES;\r
+//     Set->NameKanjiCode = KANJI_NOCNV;\r
+//     Set->NameKanaCnv = NO;\r
+//     Set->Pasv = YES;\r
+//     Set->FireWall = NO;\r
+//     Set->ListCmdOnly = YES;\r
+//     Set->UseNLST_R = YES;\r
+//     Set->LastDir = NO;\r
+//     Set->TimeZone = 9;                              /* GMT+9 (JST) */\r
+//     Set->HostType = HTYPE_AUTO;\r
+//     Set->SyncMove = NO;\r
+//     Set->NoFullPath = NO;\r
+//     Set->Sort = SORT_NOTSAVED;\r
+//     Set->Security = SECURITY_AUTO;\r
+//     Set->Dialup = NO;\r
+//     Set->DialupAlways = NO;\r
+//     Set->DialupNotify = YES;\r
+//     strcpy(Set->DialEntry, "");\r
+       memcpy(Set, &DefaultHost, sizeof(HOSTDATA));\r
+       return;\r
+}\r
+\r
+\r
+// ホスト共通設定機能\r
+void ResetDefaultHost(void)\r
+{\r
+       CopyDefaultDefaultHost(&DefaultHost);\r
+       return;\r
+}\r
+\r
+void SetDefaultHost(HOSTDATA *Set)\r
+{\r
+       memcpy(&DefaultHost, Set, sizeof(HOSTDATA));\r
+       return;\r
+}\r
+\r
+void CopyDefaultDefaultHost(HOSTDATA *Set)\r
+{\r
+       // 国際化対応\r
+       TIME_ZONE_INFORMATION tzi;\r
        Set->Level = 0;\r
        strcpy(Set->HostName, "");\r
        strcpy(Set->HostAdrs, "");\r
@@ -1332,7 +1398,10 @@ void CopyDefaultHost(HOSTDATA *Set)
        Set->ListCmdOnly = YES;\r
        Set->UseNLST_R = YES;\r
        Set->LastDir = NO;\r
-       Set->TimeZone = 9;                              /* GMT+9 (JST) */\r
+       // 国際化対応\r
+//     Set->TimeZone = 9;                              /* GMT+9 (JST) */\r
+       GetTimeZoneInformation(&tzi);\r
+       Set->TimeZone = (int)(tzi.Bias / -60);\r
        Set->HostType = HTYPE_AUTO;\r
        Set->SyncMove = NO;\r
        Set->NoFullPath = NO;\r
@@ -1370,7 +1439,6 @@ void CopyDefaultHost(HOSTDATA *Set)
        return;\r
 }\r
 \r
-\r
 /*----- 設定名一覧をウィンドウに送る ------------------------------------------\r
 *\r
 *      Parameter\r
diff --git a/main.c b/main.c
index ee8f25d..bebf19a 100644 (file)
--- a/main.c
+++ b/main.c
@@ -696,6 +696,9 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
                \r
                if(masterpass != 0)\r
                {\r
+                       // ホスト共通設定機能\r
+                       ResetDefaultHost();\r
+\r
                        LoadRegistry();\r
 \r
                        // ポータブル版判定\r
index a3809c2..2d2ac02 100644 (file)
@@ -657,6 +657,66 @@ void SaveRegistry(void)
                                                break;\r
                                }\r
 \r
+                               // ホスト共通設定機能\r
+                               if(CreateSubKey(hKey4, "DefaultHost", &hKey5) == FFFTP_SUCCESS)\r
+                               {\r
+                                       CopyDefaultDefaultHost(&DefaultHost);\r
+                                       CopyDefaultHost(&Host);\r
+                                       WriteIntValueToReg(hKey5, "Set", Host.Level);\r
+                                       SaveStr(hKey5, "HostName", Host.HostName, DefaultHost.HostName);\r
+                                       SaveStr(hKey5, "HostAdrs", Host.HostAdrs, DefaultHost.HostAdrs);\r
+                                       SaveStr(hKey5, "UserName", Host.UserName, DefaultHost.UserName);\r
+                                       SaveStr(hKey5, "Account", Host.Account, DefaultHost.Account);\r
+                                       SaveStr(hKey5, "LocalDir", Host.LocalInitDir, NULL);\r
+                                       SaveStr(hKey5, "RemoteDir", Host.RemoteInitDir, DefaultHost.RemoteInitDir);\r
+                                       SaveStr(hKey5, "Chmod", Host.ChmodCmd, DefaultHost.ChmodCmd);\r
+                                       SaveStr(hKey5, "Nlst", Host.LsName, DefaultHost.LsName);\r
+                                       SaveStr(hKey5, "Init", Host.InitCmd, DefaultHost.InitCmd);\r
+                                       if(Host.Anonymous == NO)\r
+                                               EncodePassword(Host.PassWord, Str);\r
+                                       else\r
+                                               strcpy(Str, DefaultHost.PassWord);\r
+                                       SaveStr(hKey5, "Password", Str, DefaultHost.PassWord);\r
+                                       SaveIntNum(hKey5, "Port", Host.Port, DefaultHost.Port);\r
+                                       SaveIntNum(hKey5, "Anonymous", Host.Anonymous, DefaultHost.Anonymous);\r
+                                       SaveIntNum(hKey5, "Kanji", Host.KanjiCode, DefaultHost.KanjiCode);\r
+                                       SaveIntNum(hKey5, "KanaCnv", Host.KanaCnv, DefaultHost.KanaCnv);\r
+                                       SaveIntNum(hKey5, "NameKanji", Host.NameKanjiCode, DefaultHost.NameKanjiCode);\r
+                                       SaveIntNum(hKey5, "NameKana", Host.NameKanaCnv, DefaultHost.NameKanaCnv);\r
+                                       SaveIntNum(hKey5, "Pasv", Host.Pasv, DefaultHost.Pasv);\r
+                                       SaveIntNum(hKey5, "Fwall", Host.FireWall, DefaultHost.FireWall);\r
+                                       SaveIntNum(hKey5, "List", Host.ListCmdOnly, DefaultHost.ListCmdOnly);\r
+                                       SaveIntNum(hKey5, "NLST-R", Host.UseNLST_R, DefaultHost.UseNLST_R);\r
+                                       SaveIntNum(hKey5, "Last", Host.LastDir, DefaultHost.LastDir);\r
+                                       SaveIntNum(hKey5, "Tzone", Host.TimeZone, DefaultHost.TimeZone);\r
+                                       SaveIntNum(hKey5, "Type", Host.HostType, DefaultHost.HostType);\r
+                                       SaveIntNum(hKey5, "Sync", Host.SyncMove, DefaultHost.SyncMove);\r
+                                       SaveIntNum(hKey5, "Fpath", Host.NoFullPath, DefaultHost.NoFullPath);\r
+                                       WriteBinaryToReg(hKey5, "Sort", &Host.Sort, sizeof(Host.Sort));\r
+                                       SaveIntNum(hKey5, "Secu", Host.Security, DefaultHost.Security);\r
+                                       WriteMultiStringToReg(hKey5, "Bmarks", Host.BookMark);\r
+                                       SaveIntNum(hKey5, "Dial", Host.Dialup, DefaultHost.Dialup);\r
+                                       SaveIntNum(hKey5, "UseIt", Host.DialupAlways, DefaultHost.DialupAlways);\r
+                                       SaveIntNum(hKey5, "Notify", Host.DialupNotify, DefaultHost.DialupNotify);\r
+                                       SaveStr(hKey5, "DialTo", Host.DialEntry, DefaultHost.DialEntry);\r
+                                       SaveIntNum(hKey5, "NoEncryption", Host.UseNoEncryption, DefaultHost.UseNoEncryption);\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
+                                       EncodePassword(Host.PrivateKey, Str);\r
+                                       SaveStr(hKey5, "PKey", Str, DefaultHost.PrivateKey);\r
+                                       SaveIntNum(hKey5, "NoWeak", Host.NoWeakEncryption, DefaultHost.NoWeakEncryption);\r
+                                       SaveIntNum(hKey5, "ThreadCount", Host.MaxThreadCount, DefaultHost.MaxThreadCount);\r
+                                       SaveIntNum(hKey5, "ReuseCmdSkt", Host.ReuseCmdSkt, DefaultHost.ReuseCmdSkt);\r
+                                       SaveIntNum(hKey5, "MLSD", Host.UseMLSD, DefaultHost.UseMLSD);\r
+                                       SaveIntNum(hKey5, "NetType", Host.NetType, DefaultHost.NetType);\r
+                                       SaveIntNum(hKey5, "Noop", Host.NoopInterval, DefaultHost.NoopInterval);\r
+                                       SaveIntNum(hKey5, "ErrMode", Host.TransferErrorMode, DefaultHost.TransferErrorMode);\r
+                                       SaveIntNum(hKey5, "ErrNotify", Host.TransferErrorNotify, DefaultHost.TransferErrorNotify);\r
+                                       SaveIntNum(hKey5, "ErrReconnect", Host.TransferErrorReconnect, DefaultHost.TransferErrorReconnect);\r
+                                       CloseSubKey(hKey5);\r
+                               }\r
+\r
                                /* ホストの設定を保存 */\r
                                CopyDefaultHost(&DefaultHost);\r
                                i = 0;\r
@@ -1159,6 +1219,72 @@ int LoadRegistry(void)
                                }\r
                        }\r
 \r
+                       // ホスト共通設定機能\r
+                       if(OpenSubKey(hKey4, "DefaultHost", &hKey5) == FFFTP_SUCCESS)\r
+                       {\r
+                               CopyDefaultDefaultHost(&Host);\r
+                               ReadIntValueFromReg(hKey5, "Set", &Host.Level);\r
+                               ReadStringFromReg(hKey5, "HostName", Host.HostName, HOST_NAME_LEN+1);\r
+                               ReadStringFromReg(hKey5, "HostAdrs", Host.HostAdrs, HOST_ADRS_LEN+1);\r
+                               ReadStringFromReg(hKey5, "UserName", Host.UserName, USER_NAME_LEN+1);\r
+                               ReadStringFromReg(hKey5, "Account", Host.Account, ACCOUNT_LEN+1);\r
+                               ReadStringFromReg(hKey5, "LocalDir", Host.LocalInitDir, INIT_DIR_LEN+1);\r
+                               ReadStringFromReg(hKey5, "RemoteDir", Host.RemoteInitDir, INIT_DIR_LEN+1);\r
+                               ReadStringFromReg(hKey5, "Chmod", Host.ChmodCmd, CHMOD_CMD_LEN+1);\r
+                               ReadStringFromReg(hKey5, "Nlst", Host.LsName, NLST_NAME_LEN+1);\r
+                               ReadStringFromReg(hKey5, "Init", Host.InitCmd, INITCMD_LEN+1);\r
+                               ReadIntValueFromReg(hKey5, "Port", &Host.Port);\r
+                               ReadIntValueFromReg(hKey5, "Anonymous", &Host.Anonymous);\r
+                               ReadIntValueFromReg(hKey5, "Kanji", &Host.KanjiCode);\r
+                               ReadIntValueFromReg(hKey5, "KanaCnv", &Host.KanaCnv);\r
+                               ReadIntValueFromReg(hKey5, "NameKanji", &Host.NameKanjiCode);\r
+                               ReadIntValueFromReg(hKey5, "NameKana", &Host.NameKanaCnv);\r
+                               ReadIntValueFromReg(hKey5, "Pasv", &Host.Pasv);\r
+                               ReadIntValueFromReg(hKey5, "Fwall", &Host.FireWall);\r
+                               ReadIntValueFromReg(hKey5, "List", &Host.ListCmdOnly);\r
+                               ReadIntValueFromReg(hKey5, "NLST-R", &Host.UseNLST_R);\r
+                               ReadIntValueFromReg(hKey5, "Last", &Host.LastDir);\r
+                               ReadIntValueFromReg(hKey5, "Tzone", &Host.TimeZone);\r
+                               ReadIntValueFromReg(hKey5, "Type", &Host.HostType);\r
+                               ReadIntValueFromReg(hKey5, "Sync", &Host.SyncMove);\r
+                               ReadIntValueFromReg(hKey5, "Fpath", &Host.NoFullPath);\r
+                               ReadBinaryFromReg(hKey5, "Sort", &Host.Sort, sizeof(Host.Sort));\r
+                               ReadIntValueFromReg(hKey5, "Secu", &Host.Security);\r
+                               if(Host.Anonymous != YES)\r
+                               {\r
+                                       strcpy(Str, "");\r
+                                       ReadStringFromReg(hKey5, "Password", Str, 255);\r
+                                       DecodePassword(Str, Host.PassWord);\r
+                               }\r
+                               else\r
+                                       strcpy(Host.PassWord, UserMailAdrs);\r
+                               ReadMultiStringFromReg(hKey5, "Bmarks", Host.BookMark, BOOKMARK_SIZE);\r
+                               ReadIntValueFromReg(hKey5, "Dial", &Host.Dialup);\r
+                               ReadIntValueFromReg(hKey5, "UseIt", &Host.DialupAlways);\r
+                               ReadIntValueFromReg(hKey5, "Notify", &Host.DialupNotify);\r
+                               ReadStringFromReg(hKey5, "DialTo", Host.DialEntry, RAS_NAME_LEN+1);\r
+                               ReadIntValueFromReg(hKey5, "NoEncryption", &Host.UseNoEncryption);\r
+                               ReadIntValueFromReg(hKey5, "FTPES", &Host.UseFTPES);\r
+                               ReadIntValueFromReg(hKey5, "FTPIS", &Host.UseFTPIS);\r
+                               ReadIntValueFromReg(hKey5, "SFTP", &Host.UseSFTP);\r
+                               strcpy(Str, "");\r
+                               ReadStringFromReg(hKey5, "PKey", Str, PRIVATE_KEY_LEN*4+1);\r
+                               DecodePassword(Str, Host.PrivateKey);\r
+                               ReadIntValueFromReg(hKey5, "NoWeak", &Host.NoWeakEncryption);\r
+                               ReadIntValueFromReg(hKey5, "ThreadCount", &Host.MaxThreadCount);\r
+                               ReadIntValueFromReg(hKey5, "ReuseCmdSkt", &Host.ReuseCmdSkt);\r
+                               ReadIntValueFromReg(hKey5, "MLSD", &Host.UseMLSD);\r
+                               ReadIntValueFromReg(hKey5, "NetType", &Host.NetType);\r
+                               ReadIntValueFromReg(hKey5, "Noop", &Host.NoopInterval);\r
+                               ReadIntValueFromReg(hKey5, "ErrMode", &Host.TransferErrorMode);\r
+                               ReadIntValueFromReg(hKey5, "ErrNotify", &Host.TransferErrorNotify);\r
+                               ReadIntValueFromReg(hKey5, "ErrReconnect", &Host.TransferErrorReconnect);\r
+\r
+                               CloseSubKey(hKey5);\r
+\r
+                               SetDefaultHost(&Host);\r
+                       }\r
+\r
                        /* ホストの設定を読み込む */\r
                        Sets = 0;\r
                        ReadIntValueFromReg(hKey4, "SetNum", &Sets);\r