• R/O
  • HTTP
  • SSH
  • HTTPS

提交

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Loweynet


Commit MetaInfo

修订版e587af53be87fb0de7da2daf07813970b6e0bfad (tree)
时间2011-12-12 21:03:28
作者s_kawamoto <s_kawamoto@user...>
Commiters_kawamoto

Log Message

Added support for displaying icons in the local file list.
Modify documents.

更改概述

差异

Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
--- a/Resource/FFFTP.rc
+++ b/Resource/FFFTP.rc
@@ -235,9 +235,9 @@ FONT 9, "
235235 BEGIN
236236 DEFPUSHBUTTON "OK",IDOK,133,294,50,14
237237 ICON ffftp,-1,7,4,20,20
238- CTEXT "FFFTP Ver 1.98d",-1,113,11,90,8
238+ CTEXT "FFFTP Ver 1.98e",-1,113,11,90,8
239239 CTEXT "FFFTP‚Ífreeware‚Å‚·",-1,7,279,305,8
240- CTEXT "Copyright(C) 1997-2010 Sota & ‚²‹¦—Í‚¢‚½‚¾‚¢‚½•ûX\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, ‚¤‚ȁ[, Asami, fortran90, tomo1192)",-1,7,25,305,44,SS_NOPREFIX
240+ CTEXT "Copyright(C) 1997-2010 Sota & ‚²‹¦—Í‚¢‚½‚¾‚¢‚½•ûX\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, ‚¤‚ȁ[, Asami, fortran90, tomo1192, Yuji Tanaka)",-1,7,25,305,44,SS_NOPREFIX
241241 CTEXT "",ABOUT_JRE,7,96,305,8
242242 EDITTEXT ABOUT_URL,7,76,305,12,ES_CENTER | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER
243243 CTEXT "OLE D&&D‹@”\ by •½“c–L‚³‚ñAnakka‚³‚ñ\nƒzƒXƒg“à‚ł̃tƒ@ƒCƒ‹ˆÚ“®‹@”\ by •½“c–L‚³‚ñ\n‚¢‚­‚‚©‚Ì‹@”\ by miau‚³‚ñ\nƒ}ƒXƒ^[ƒpƒXƒ[ƒh‹@”\ by ‚°‚ñ‚°‚ñ‚³‚ñ\nAESˆÃ†‰» by Moca‚³‚ñ\n\n‘¼A‘½‚­‚Ì•û‚Ì‚²‹¦—Í‚ð‚¢‚½‚¾‚«‚Ü‚µ‚½B",-1,7,143,305,60
@@ -1290,6 +1290,7 @@ BEGIN
12901290 CONTROL "‰B‚µ‘®«‚̃tƒ@ƒCƒ‹AƒtƒHƒ‹ƒ_‚Í•\Ž¦‚µ‚È‚¢(&H)",DISP_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,30,172,10
12911291 LTEXT "‰B‚µ‘®«‚̃tƒ@ƒCƒ‹‚ð•\Ž¦‚µ‚È‚¢‚悤‚É‚·‚é‚ƁAƒ~ƒ‰[ƒŠƒ“ƒOƒAƒbƒvƒ[ƒh‚Å‚à‰B‚µ‘®«‚̃tƒ@ƒCƒ‹‚̓Aƒbƒvƒ[ƒh‚µ‚È‚¢‚悤‚É‚È‚è‚Ü‚·B",-1,29,44,167,27,SS_SUNKEN
12921292 CONTROL "ƒ[ƒJƒ‹‘¤‚̃tƒ@ƒCƒ‹ˆê——‚Ƀhƒ‰ƒCƒu–¼‚à•\Ž¦‚·‚é(&D)",DISP_DRIVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,79,172,10
1293+ CONTROL "ƒ[ƒJƒ‹‘¤‚̃tƒ@ƒCƒ‹ˆê——‚ɃAƒCƒRƒ“‚ð•\Ž¦‚·‚é(&I)",DISP_ICON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,93,172,10
12931294 END
12941295
12951296 bmark_edit_dlg DIALOG 0, 0, 187, 83
@@ -2073,8 +2074,8 @@ nodrop_csr CURSOR "nodrop_c.cur"
20732074 //
20742075
20752076 VS_VERSION_INFO VERSIONINFO
2076- FILEVERSION 1,98,4,0
2077- PRODUCTVERSION 1,98,4,0
2077+ FILEVERSION 1,98,5,0
2078+ PRODUCTVERSION 1,98,5,0
20782079 FILEFLAGSMASK 0x3fL
20792080 #ifdef _DEBUG
20802081 FILEFLAGS 0x1L
@@ -2092,12 +2093,12 @@ BEGIN
20922093 VALUE "Comments", "‚±‚ê‚̓tƒŠ[ƒ\ƒtƒgƒEƒGƒA‚Å‚·B"
20932094 VALUE "CompanyName", " "
20942095 VALUE "FileDescription", "FFFTP"
2095- VALUE "FileVersion", "1, 98, 4, 0"
2096+ VALUE "FileVersion", "1, 98, 5, 0"
20962097 VALUE "InternalName", "FFFTP"
2097- VALUE "LegalCopyright", "Copyright (C) 1997-2010 Sota & ‚²‹¦—Í‚¢‚½‚¾‚¢‚½•ûX\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, ‚¤‚ȁ[, Asami, fortran90, tomo1192)."
2098+ VALUE "LegalCopyright", "Copyright (C) 1997-2010 Sota & ‚²‹¦—Í‚¢‚½‚¾‚¢‚½•ûX\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, ‚¤‚ȁ[, Asami, fortran90, tomo1192, Yuji Tanaka)."
20982099 VALUE "OriginalFilename", "FFFTP.exe"
20992100 VALUE "ProductName", "FFFTP"
2100- VALUE "ProductVersion", "1, 98, 4, 0"
2101+ VALUE "ProductVersion", "1, 98, 5, 0"
21012102 END
21022103 END
21032104 BLOCK "VarFileInfo"
Binary files a/Resource/list_bmp.bmp and b/Resource/list_bmp.bmp differ
--- a/Resource/resource.h
+++ b/Resource/resource.h
@@ -202,6 +202,7 @@
202202 #define FIRE_RESOLV 1013
203203 #define HSET_DIALNOTIFY 1013
204204 #define MIRROR_DOWNDEL_NOTIFY 1013
205+#define DISP_ICON 1013
205206 #define OPT1_EDITOR_BR 1014
206207 #define PERM_G_WRITE 1014
207208 #define SORT_RDIR_REV 1014
--- a/Resource_eng/FFFTP-eng.rc
+++ b/Resource_eng/FFFTP-eng.rc
@@ -235,9 +235,9 @@ FONT 9, "MS Sans Serif", 0, 0, 0x0
235235 BEGIN
236236 DEFPUSHBUTTON "OK",IDOK,132,296,50,14
237237 ICON ffftp,-1,7,4,20,20
238- CTEXT "FFFTP Ver 1.98d",-1,110,11,90,8
238+ CTEXT "FFFTP Ver 1.98e",-1,110,11,90,8
239239 CTEXT "FFFTP is freeware",-1,7,281,301,8
240- CTEXT "Copyright(C) 1997-2010 Sota && cooperators\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192)",-1,7,25,301,44
240+ CTEXT "Copyright(C) 1997-2010 Sota && cooperators\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka)",-1,7,25,301,44
241241 CTEXT "",ABOUT_JRE,7,93,301,8
242242 EDITTEXT ABOUT_URL,7,76,301,12,ES_CENTER | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER
243243 CTEXT "OLE D&&D by Yutaka Hirata-san, nakka-san\nIn site file mover by Hirata-san\nAny issues by miau-san\nMaster Password by Gengen-san\nAES encryption by Moca-san\n\nI had cooperation of many other one.",-1,7,142,301,59
@@ -1315,6 +1315,7 @@ BEGIN
13151315 CONTROL "Do not display &hidden files/folders",DISP_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,30,172,10
13161316 LTEXT "If this box is checked, hidden files/folders are not transferred during Mirror operations.",-1,29,44,167,27,SS_SUNKEN
13171317 CONTROL "&Display drives in the file list",DISP_DRIVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,76,172,10
1318+ CONTROL "Display &icons in the file list",DISP_ICON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,90,172,10
13181319 END
13191320
13201321 bmark_edit_dlg DIALOG 0, 0, 187, 83
@@ -2098,8 +2099,8 @@ nodrop_csr CURSOR "nodrop_c.cur"
20982099 //
20992100
21002101 VS_VERSION_INFO VERSIONINFO
2101- FILEVERSION 1,98,4,0
2102- PRODUCTVERSION 1,98,4,0
2102+ FILEVERSION 1,98,5,0
2103+ PRODUCTVERSION 1,98,5,0
21032104 FILEFLAGSMASK 0x3fL
21042105 #ifdef _DEBUG
21052106 FILEFLAGS 0x1L
@@ -2117,12 +2118,12 @@ BEGIN
21172118 VALUE "Comments", "This software is Free Software"
21182119 VALUE "CompanyName", " Sota"
21192120 VALUE "FileDescription", "FFFTP"
2120- VALUE "FileVersion", "1, 98, 4, 0"
2121+ VALUE "FileVersion", "1, 98, 5, 0"
21212122 VALUE "InternalName", "FFFTP"
2122- VALUE "LegalCopyright", "Copyright (C) 1997-2010 Sota & cooperators\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192)."
2123+ VALUE "LegalCopyright", "Copyright (C) 1997-2010 Sota & cooperators\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka)."
21232124 VALUE "OriginalFilename", "FFFTP.exe"
21242125 VALUE "ProductName", "FFFTP"
2125- VALUE "ProductVersion", "1, 98, 4, 0"
2126+ VALUE "ProductVersion", "1, 98, 5, 0"
21262127 END
21272128 END
21282129 BLOCK "VarFileInfo"
Binary files a/Resource_eng/list_bmp.bmp and b/Resource_eng/list_bmp.bmp differ
--- a/Resource_eng/resource.h
+++ b/Resource_eng/resource.h
@@ -202,6 +202,7 @@
202202 #define FIRE_RESOLV 1013
203203 #define HSET_DIALNOTIFY 1013
204204 #define MIRROR_DOWNDEL_NOTIFY 1013
205+#define DISP_ICON 1013
205206 #define OPT1_EDITOR_BR 1014
206207 #define PERM_G_WRITE 1014
207208 #define SORT_RDIR_REV 1014
--- a/common.h
+++ b/common.h
@@ -70,9 +70,9 @@
7070 //#define VER_STR "1.97b"
7171 //#define VER_NUM 1921 /* 設定バージョン */
7272 //#define PROGRAM_VERSION_NUM 1972 /* バージョン */
73-#define VER_STR "1.98d"
74-#define VER_NUM 1984 /* 設定バージョン */
75-#define PROGRAM_VERSION_NUM 1984 /* バージョン */
73+#define VER_STR "1.98e"
74+#define VER_NUM 1985 /* 設定バージョン */
75+#define PROGRAM_VERSION_NUM 1985 /* バージョン */
7676
7777
7878 // SourceForge.JPによるフォーク
@@ -1085,6 +1085,8 @@ typedef struct filelist {
10851085 FILETIME Time; /* 時間(UTC) */
10861086 char Owner[OWNER_NAME_LEN+1]; /* オーナ名 */
10871087 char InfoExist; /* ファイル一覧に存在した情報のフラグ (FINFO_xxx) */
1088+ // ファイルアイコン表示対応
1089+ int ImageId; /* アイコン画像番号 */
10881090 struct filelist *Next;
10891091 } FILELIST;
10901092
@@ -1280,6 +1282,8 @@ BOOL __stdcall SSLConfirmCallback(BOOL* pbAborted, BOOL bVerified, LPCSTR Certif
12801282 BOOL LoadSSLRootCAFile();
12811283 // マルチコアCPUの特定環境下でファイル通信中にクラッシュするバグ対策
12821284 BOOL IsMainThread();
1285+// ファイルアイコン表示対応
1286+int AskDispFileIcon(void);
12831287
12841288 /*===== filelist.c =====*/
12851289
--- a/doc/eng/FFFTP.txt
+++ b/doc/eng/FFFTP.txt
@@ -1,7 +1,7 @@
11 ============================================================
2-[Software Name] FFFTP Ver.1.98d (FTP Client software)
2+[Software Name] FFFTP Ver.1.98e (FTP Client software)
33 [Copyright] Copyright(C) 1997-2010 Sota & cooperators
4- Copyright(C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192).
4+ Copyright(C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka).
55 [Environment] Windows 7, Vista, XP, 2000
66 ============================================================
77
@@ -28,38 +28,17 @@ following menu.
2828 File ->@Settings -> Change Master password
2929
3030
31-Changes in Ver.1.98d
31+Changes in Ver.1.98e
3232 --------------------
3333
34--- MLSD command became used for retrieving filenames on appropriate hosts.
35- That is helpful for hosts that do not return filenames properly.
34+-- Fixed bugs that an inputted password is ignored if failed in login.
3635
37--- Enhanced communication routines to reduce waiting time.
36+-- Fixed bugs to crash under multicore CPU environment.
3837
39--- Changed to display responses from hosts after decoding as Kanji code of
40- filenames.
38+-- Changed the location of temporary files.
39+ This resolves interference in file list caches between instances of FFFTP.
4140
42--- Fixed bugs of arbitrary code execution in saving registry settings to a
43- file.
44-
45--- Fixed bugs of launching wrong files if correct ones contain no extensions.
46-
47--- Internet Protocol Version 6 became available.
48- IPv6 will be used when name resolution for IPv4 is unavailable by default.
49-
50--- Changed to detect encoding of strings in INI file automatically.
51-
52--- Changed to verify SSL/TLS certificates with root CAs in FTPS connections.
53- Please modify "ssl.pem" in PEM format if you want to update root CA list.
54-
55--- Added a feature to send commands for keep alive.
56- This is disabled by default.
57-
58--- Reduced chance of stopping transfer when numerous files are transfered.
59-
60--- Added a feature to retry transfering files if failed.
61-
62--- Enhanced automatic detection of Kanji code of filenames.
41+-- Supported the file list format of linux-ftpd.
6342
6443
6544 Outline
@@ -94,7 +73,7 @@ Warranty Disclaimer
9473 License Agreement
9574 -----------------
9675 Copyright(C) 1997-2010, Sota & cooperators. All rights reserved.
97-Copyright(C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192).
76+Copyright(C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka).
9877
9978 Redistribution and use in source and binary forms, with or without
10079 modification, are permitted provided that the following conditions
--- a/doc/eng/history.txt
+++ b/doc/eng/history.txt
@@ -1,5 +1,17 @@
11 FFFTP version history.
22
3+Changes in Ver.1.98e
4+--------------------
5+
6+-- Fixed bugs that an inputted password is ignored if failed in login.
7+
8+-- Fixed bugs to crash under multicore CPU environment.
9+
10+-- Changed the location of temporary files.
11+ This resolves interference in file list caches between instances of FFFTP.
12+
13+-- Supported the file list format of linux-ftpd.
14+
315 Changes in Ver.1.98d
416 --------------------
517
--- a/doc/jpn/FFFTP.txt
+++ b/doc/jpn/FFFTP.txt
@@ -1,5 +1,5 @@
11 ============================================================
2-yƒ\ƒtƒg–¼z@FTPƒNƒ‰ƒCƒAƒ“ƒg FFFTPisf.jp”Łj Ver 1.98d
2+yƒ\ƒtƒg–¼z@FTPƒNƒ‰ƒCƒAƒ“ƒg FFFTPisf.jp”Łj Ver 1.98e
33 y“®ìŠm”FŠÂ‹«z@Windows 7AVistaAXPA2000
44 yƒTƒ|[ƒgz@http://sourceforge.jp/projects/ffftp/
55 ============================================================
@@ -27,46 +27,18 @@ FFFTP Ver.1.96d+009
2727 ƒ}ƒXƒ^[ƒpƒXƒ[ƒh‚Ì“ü—Í‚ª‹‚ß‚ç‚ê‚Ü‚·‚̂ŁA“ü—Í‚µ‚Ä‚­‚¾‚³‚¢B
2828
2929
30-Ver 1.98d‚ł̕ύX“_
30+Ver 1.98e‚ł̕ύX“_
3131 -------------------
3232
33-EMLSDƒRƒ}ƒ“ƒh‚ɑΉž‚µ‚½ƒzƒXƒg‚Å‚ÍMLSDƒRƒ}ƒ“ƒh‚ð—p‚¢‚ătƒ@ƒCƒ‹ˆê——‚ð
34-@Žæ“¾‚·‚é‚悤‚É‚µ‚Ü‚µ‚½BLISTƒRƒ}ƒ“ƒh‚̉ž“š‚É“Á’è‚̃tƒ@ƒCƒ‹‚ª
35-@ŠÜ‚Ü‚ê‚È‚¢ˆê•”‚̃zƒXƒg‚Å‚à³‚µ‚­—ñ‹“‚Å‚«‚é‰Â”\«‚ª‚‚­‚È‚è‚Ü‚·B
33+EƒzƒXƒg‚̃pƒXƒ[ƒh‚ª³‚µ‚­‚È‚¢ê‡‚ɃpƒXƒ[ƒh‚ðŽè“®‚ōēx“ü—Í‚µ‚Ä‚à
34+@ƒƒOƒCƒ“‚Å‚«‚È‚¢ƒoƒO‚ðC³‚µ‚Ü‚µ‚½B
3635
37-E’ʐM‚̃‹[ƒ`ƒ“‚ð‘Ò‚¿ŽžŠÔ‚ªŒ¸‚é‚悤‚ɉü‘P‚µ‚Ü‚µ‚½B
36+Eƒ}ƒ‹ƒ`ƒRƒACPU‚Ì“Á’èŠÂ‹«‰º‚ŃNƒ‰ƒbƒVƒ…‚·‚éƒoƒO‚ðC³‚µ‚Ü‚µ‚½B
3837
39-EƒzƒXƒg‚̉ž“š‚ðƒzƒXƒg‚̃tƒ@ƒCƒ‹–¼‚ÌŠ¿ŽšƒR[ƒh‚ŃfƒR[ƒh‚µ‚Ä‚©‚烍ƒO‚É
40-@•\Ž¦‚·‚é‚悤‚ɕύX‚µ‚Ü‚µ‚½B
38+Eì‹Æƒtƒ@ƒCƒ‹‚ð•Û‘¶‚·‚éƒtƒHƒ‹ƒ_‚̍\¬‚ð•ÏX‚µ‚Ü‚µ‚½B‚±‚ê‚É‚æ‚èFFFTP‚ð
39+@•¡”‹N“®‚µ‚Ä‚àƒLƒƒƒbƒVƒ…‚ªŠ±Â‚µ‚È‚­‚È‚è‚Ü‚·B
4140
42-EƒŒƒWƒXƒgƒŠ‚̐ݒè‚ðƒtƒ@ƒCƒ‹‚É•Û‘¶‚·‚é‚Æ‚«‚É”CˆÓ‚̃R[ƒh‚ªŽÀs‚³‚ê‚é
43-@‰Â”\«‚ª‚ ‚éƒoƒO‚ðC³‚µ‚Ü‚µ‚½B
44-
45-EŠg’£Žq‚ª–³‚¢ƒtƒ@ƒCƒ‹‚ðƒ_ƒuƒ‹ƒNƒŠƒbƒN‚µ‚½ê‡‚É‘I‘ð‚³‚ê‚½‚à‚̂ƈقȂé
46-@ƒtƒ@ƒCƒ‹‚ª•\Ž¦‚³‚ê‚éƒoƒO‚ðC³‚µ‚Ü‚µ‚½B
47-
48-EƒzƒXƒg‚Ƃ̐ڑ±‚ÉInternet Protocol Version 6i—ªÌIPv6j‚ªŽg—p‚Å‚«‚é
49-@‚悤‚É‚È‚è‚Ü‚µ‚½BƒfƒtƒHƒ‹ƒg‚ł͏]—ˆ‚ÌIPv4‚Å–¼‘O‰ðŒˆ‚ª‚Å‚«‚È‚¢ê‡‚É
50-@IPv6‚Őڑ±‚ðŽŽ‚Ý‚é‚悤‚É‚È‚è‚Ü‚·B
51-
52-EINIƒtƒ@ƒCƒ‹‚Ì•¶Žš—ñ‚Ì•¶ŽšƒR[ƒh‚ðŽ©“®”»•Ê‚·‚é‚悤‚ɕύX‚µ‚Ü‚µ‚½B
53-
54-EƒƒCƒ“ƒEƒBƒ“ƒhƒE‚ªŽg—p‚µ‚Ä‚¢‚éÚ‘±‚ð“]‘——p‚ɍĎg—p‚·‚邽‚߂̐ݒè‚ð
55-@’ljÁ‚µ‚Ü‚µ‚½B‚±‚ê‚É‚æ‚è1.97bˆÈ‘O‚Å“]‘—‰Â”\‚¾‚Á‚½‚ª1.98‚Å“]‘—•s”\‚É
56-@‚È‚é‚Æ‚¢‚¤Çó‚ª‰ü‘P‚³‚ê‚Ü‚·‚ªA•s‹ï‡‚ª”­¶‚·‚é‰Â”\«‚ª‚ ‚è‚Ü‚·B
57-
58-EFTPS‚Őڑ±‚µ‚½Žž‚ÉSSL/TLS‚̃‹[ƒgØ–¾‘‚ð—p‚¢‚ăzƒXƒg‚̏ؖ¾‘‚ðŒŸØ
59-@‚·‚é‚悤‚ɕύX‚µ‚Ü‚µ‚½Bƒ‹[ƒgØ–¾‘‚ðXV‚·‚é‚É‚Í“¯«‚Ì"ssl.pem"
60-@ƒtƒ@ƒCƒ‹‚ðPEMŒ`Ž®‚ɏ]‚Á‚ď‘‚«Š·‚¦‚Ä‚­‚¾‚³‚¢B
61-
62-EƒzƒXƒg‚Ƃ̐ڑ±‚ðˆÛŽ‚·‚邽‚߂Ɉê’莞ŠÔ‚²‚ƂɃRƒ}ƒ“ƒh‚𑗐M‚·‚é‹@”\‚ð
63-@’ljÁ‚µ‚Ü‚µ‚½B‚½‚¾‚µ‚±‚Ì‹@”\‚̓fƒtƒHƒ‹ƒg‚Å‚Í–³Œø‚ɐݒ肳‚ê‚Ü‚·B
64-
65-E‘å—ʂ̃tƒ@ƒCƒ‹‚ð“]‘—‚µ‚½Žž‚É“r’†‚Å“]‘—‚ªI—¹‚·‚éƒoƒO‚ðŒyŒ¸‚µ‚Ü‚µ‚½B
66-
67-Eƒtƒ@ƒCƒ‹‚Ì“]‘—‚ÉŽ¸”s‚µ‚½ê‡‚É“]‘—‚ð‚â‚è’¼‚·‹@”\‚ð’ljÁ‚µ‚Ü‚µ‚½B
68-
69-EƒzƒXƒg‚̃tƒ@ƒCƒ‹–¼‚ÌŠ¿ŽšƒR[ƒh‚ÌŽ©“®”»•Ê‚̐¸“x‚ð‰ü‘P‚µ‚Ü‚µ‚½B
41+Elinux-ftpd‚̃tƒ@ƒCƒ‹ˆê——Œ`Ž®‚ɑΉž‚µ‚Ü‚µ‚½B
7042
7143
7244 Ver 1.96dˆÈ‘O‚Ö–ß‚·ê‡
@@ -143,7 +115,7 @@ jre32.dll --------
143115 ‚µ‚Ü‚·B
144116
145117 Copyright(C) 1997-2010, Sota & cooperators. All rights reserved.
146-Copyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192).
118+Copyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka).
147119
148120 Redistribution and use in source and binary forms, with or without
149121 modification, are permitted provided that the following conditions
@@ -169,7 +141,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
169141 *** ˆÈ‰º‚Í“ú–{Œê–ó(ŽQl) ***
170142
171143 Copyright(C) 1997-2010 Sota & ‚²‹¦—Í‚¢‚½‚¾‚¢‚½•ûX. All rights reserved.
172-Copyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192).
144+Copyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka).
173145
174146 ƒ\[ƒXƒR[ƒhŒ`Ž®‚Å‚àƒoƒCƒiƒŠŒ`Ž®‚Å‚àA•ÏX‚Ì—L–³‚ÉŠÖ‚í‚炸AˆÈ‰º‚ÌðŒ‚ð
175147 –ž‚½‚·ê‡‚ɁAÄ”z•z‚¨‚æ‚ÑŽg—p‚ð‹–‰Â‚µ‚Ü‚·B
--- a/doc/jpn/history.txt
+++ b/doc/jpn/history.txt
@@ -1,5 +1,17 @@
11 FFFTP@‰ü”ŃŠƒXƒg
22
3+¡Ver 1.98e
4+
5+EƒzƒXƒg‚̃pƒXƒ[ƒh‚ª³‚µ‚­‚È‚¢ê‡‚ɃpƒXƒ[ƒh‚ðŽè“®‚ōēx“ü—Í‚µ‚Ä‚à
6+@ƒƒOƒCƒ“‚Å‚«‚È‚¢ƒoƒO‚ðC³‚µ‚Ü‚µ‚½B
7+
8+Eƒ}ƒ‹ƒ`ƒRƒACPU‚Ì“Á’èŠÂ‹«‰º‚ŃNƒ‰ƒbƒVƒ…‚·‚éƒoƒO‚ðC³‚µ‚Ü‚µ‚½B
9+
10+Eì‹Æƒtƒ@ƒCƒ‹‚ð•Û‘¶‚·‚éƒtƒHƒ‹ƒ_‚̍\¬‚ð•ÏX‚µ‚Ü‚µ‚½B‚±‚ê‚É‚æ‚èFFFTP‚ð
11+@•¡”‹N“®‚µ‚Ä‚àƒLƒƒƒbƒVƒ…‚ªŠ±Â‚µ‚È‚­‚È‚è‚Ü‚·B
12+
13+Elinux-ftpd‚̃tƒ@ƒCƒ‹ˆê——Œ`Ž®‚ɑΉž‚µ‚Ü‚µ‚½B
14+
315 ¡Ver 1.98d
416
517 EMLSDƒRƒ}ƒ“ƒh‚ɑΉž‚µ‚½ƒzƒXƒg‚Å‚ÍMLSDƒRƒ}ƒ“ƒh‚ð—p‚¢‚ătƒ@ƒCƒ‹ˆê——‚ð
--- a/filelist.c
+++ b/filelist.c
@@ -83,7 +83,9 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
8383 static void AddDispFileList(FLISTANCHOR *Anchor, char *Name, FILETIME *Time, LONGLONG Size, int Attr, int Type, int Link, char *Owner, int InfoExist, int Win);
8484 static void EraseDispFileList(FLISTANCHOR *Anchor);
8585 static void DispFileList2View(HWND hWnd, FLISTANCHOR *Anchor);
86-static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size, FILETIME *Time, int Attr, char *Owner, int Link, int InfoExist);
86+// ファイルアイコン表示対応
87+//static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size, FILETIME *Time, int Attr, char *Owner, int Link, int InfoExist);
88+static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size, FILETIME *Time, int Attr, char *Owner, int Link, int InfoExist, int ImageId);
8789 // 64ビット対応
8890 //static BOOL CALLBACK SelectDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);
8991 static INT_PTR CALLBACK SelectDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);
@@ -1318,6 +1320,57 @@ void GetRemoteDirForWnd(int Mode, int *CancelCheckWork)
13181320 * なし
13191321 *----------------------------------------------------------------------------*/
13201322
1323+// ファイルアイコン表示対応
1324+void RefreshIconImageList(FLISTANCHOR *Anchor)
1325+{
1326+ HBITMAP hBitmap;
1327+ int ImageId;
1328+ FILELIST *Pos;
1329+ int i;
1330+ char Cur[FMAX_PATH+1];
1331+ SHFILEINFO FileInfo;
1332+ SendMessage(hWndListLocal, LVM_SETIMAGELIST, LVSIL_SMALL, (LPARAM)NULL);
1333+ ShowWindow(hWndListLocal, SW_SHOW);
1334+ SendMessage(hWndListRemote, LVM_SETIMAGELIST, LVSIL_SMALL, (LPARAM)NULL);
1335+ ShowWindow(hWndListRemote, SW_SHOW);
1336+ ImageList_Destroy(ListImg);
1337+ ListImg = ImageList_Create(16, 16, ILC_MASK | ILC_COLOR24, 0, 1);
1338+ hBitmap = LoadBitmap(GetFtpInst(), MAKEINTRESOURCE(dirattr_bmp));
1339+ ImageList_AddMasked(ListImg, hBitmap, RGB(255,0,0));
1340+ DeleteObject(hBitmap);
1341+ ImageId = 0;
1342+ Pos = Anchor->Top;
1343+ for(i = 0; i < Anchor->Files; i++)
1344+ {
1345+ Pos->ImageId = -1;
1346+ if(AskDispFileIcon() == YES)
1347+ {
1348+ if(Pos->Node == NODE_DRIVE)
1349+ strcpy(Cur, Pos->File);
1350+ else
1351+ {
1352+ AskLocalCurDir(Cur, FMAX_PATH);
1353+ SetYenTail(Cur);
1354+ strcat(Cur, Pos->File);
1355+ }
1356+ if(SHGetFileInfoM(Cur, 0, &FileInfo, sizeof(SHFILEINFO), SHGFI_SMALLICON | SHGFI_ICON) != 0)
1357+ {
1358+ if(ImageList_AddIcon(ListImg, FileInfo.hIcon) >= 0)
1359+ {
1360+ Pos->ImageId = ImageId;
1361+ ImageId++;
1362+ }
1363+ DestroyIcon(FileInfo.hIcon);
1364+ }
1365+ }
1366+ Pos = Pos->Next;
1367+ }
1368+ SendMessage(hWndListLocal, LVM_SETIMAGELIST, LVSIL_SMALL, (LPARAM)ListImg);
1369+ ShowWindow(hWndListLocal, SW_SHOW);
1370+ SendMessage(hWndListRemote, LVM_SETIMAGELIST, LVSIL_SMALL, (LPARAM)ListImg);
1371+ ShowWindow(hWndListRemote, SW_SHOW);
1372+}
1373+
13211374 void GetLocalDirForWnd(void)
13221375 {
13231376 HANDLE fHnd;
@@ -1386,6 +1439,8 @@ void GetLocalDirForWnd(void)
13861439 }
13871440 }
13881441
1442+ // ファイルアイコン表示対応
1443+ RefreshIconImageList(&Anchor);
13891444 DispFileList2View(GetLocalHwnd(), &Anchor);
13901445 EraseDispFileList(&Anchor);
13911446
@@ -1565,7 +1620,9 @@ static void DispFileList2View(HWND hWnd, FLISTANCHOR *Anchor)
15651620 Pos = Anchor->Top;
15661621 for(i = 0; i < Anchor->Files; i++)
15671622 {
1568- AddListView(hWnd, -1, Pos->File, Pos->Node, Pos->Size, &Pos->Time, Pos->Attr, Pos->Owner, Pos->Link, Pos->InfoExist);
1623+ // ファイルアイコン表示対応
1624+// AddListView(hWnd, -1, Pos->File, Pos->Node, Pos->Size, &Pos->Time, Pos->Attr, Pos->Owner, Pos->Link, Pos->InfoExist);
1625+ AddListView(hWnd, -1, Pos->File, Pos->Node, Pos->Size, &Pos->Time, Pos->Attr, Pos->Owner, Pos->Link, Pos->InfoExist, Pos->ImageId);
15691626 Pos = Pos->Next;
15701627 }
15711628
@@ -1595,7 +1652,9 @@ static void DispFileList2View(HWND hWnd, FLISTANCHOR *Anchor)
15951652 * なし
15961653 *----------------------------------------------------------------------------*/
15971654
1598-static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size, FILETIME *Time, int Attr, char *Owner, int Link, int InfoExist)
1655+// ファイルアイコン表示対応
1656+//static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size, FILETIME *Time, int Attr, char *Owner, int Link, int InfoExist)
1657+static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size, FILETIME *Time, int Attr, char *Owner, int Link, int InfoExist, int ImageId)
15991658 {
16001659 LV_ITEM LvItem;
16011660 char Tmp[20];
@@ -1614,6 +1673,9 @@ static void AddListView(HWND hWnd, int Pos, char *Name, int Type, LONGLONG Size,
16141673 LvItem.iImage = Type;
16151674 else
16161675 LvItem.iImage = 4;
1676+ // ファイルアイコン表示対応
1677+ if(hWnd == GetLocalHwnd() && ImageId >= 0)
1678+ LvItem.iImage = 5 + ImageId;
16171679 LvItem.iItem = SendMessage(hWnd, LVM_INSERTITEM, 0, (LPARAM)&LvItem);
16181680
16191681 /* 日付/時刻 */
--- a/main.c
+++ b/main.c
@@ -231,6 +231,9 @@ int FolderAttrNum = 777;
231231 // 暗号化通信対応
232232 BYTE CertificateCacheHash[MAX_CERT_CACHE_HASH][20];
233233 BYTE SSLRootCAFileHash[20];
234+// ファイルアイコン表示対応
235+int DispFileIcon = NO;
236+
234237
235238
236239
@@ -534,7 +537,7 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow)
534537 DispWindowTitle();
535538 // SourceForge.JPによるフォーク
536539 // SetTaskMsg("FFFTP Ver." VER_STR " Copyright(C) 1997-2010 Sota & cooperators.");
537- SetTaskMsg("FFFTP Ver." VER_STR " Copyright(C) 1997-2010 Sota & cooperators.\r\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192).");
540+ SetTaskMsg("FFFTP Ver." VER_STR " Copyright(C) 1997-2010 Sota & cooperators.\r\nCopyright (C) 2011 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka).");
538541
539542 if(ForceIni)
540543 SetTaskMsg("%s%s", MSGJPN283, IniPath);
@@ -3068,4 +3071,11 @@ BOOL IsMainThread()
30683071 if(GetCurrentThreadId() != MainThreadId)
30693072 return FALSE;
30703073 return TRUE;
3071-}
\ No newline at end of file
3074+}
3075+
3076+// ファイルアイコン表示対応
3077+int AskDispFileIcon(void)
3078+{
3079+ return(DispFileIcon);
3080+}
3081+
--- a/mbswrapper.c
+++ b/mbswrapper.c
@@ -1875,6 +1875,27 @@ END_ROUTINE
18751875 return r;
18761876 }
18771877
1878+DWORD_PTR SHGetFileInfoM(LPCSTR pszPath, DWORD dwFileAttributes, SHFILEINFOA *psfi, UINT cbFileInfo, UINT uFlags)
1879+{
1880+ DWORD_PTR r = 0;
1881+ wchar_t* pw0 = NULL;
1882+ SHFILEINFOW wsfi;
1883+START_ROUTINE
1884+ pw0 = DuplicateMtoWMultiString(pszPath);
1885+ if((r = SHGetFileInfoW(pw0, dwFileAttributes, &wsfi, cbFileInfo, uFlags)) != 0)
1886+ {
1887+ psfi->hIcon = wsfi.hIcon;
1888+ psfi->iIcon = wsfi.iIcon;
1889+ psfi->dwAttributes = wsfi.dwAttributes;
1890+ WtoM(psfi->szDisplayName, MAX_PATH, wsfi.szDisplayName, -1);
1891+ WtoM(psfi->szTypeName, 80, wsfi.szTypeName, -1);
1892+ }
1893+END_ROUTINE
1894+ FreeDuplicatedString(pw0);
1895+ return r;
1896+}
1897+
1898+
18781899 BOOL AppendMenuM(HMENU hMenu, UINT uFlags, UINT_PTR uIDNewItem, LPCSTR lpNewItem)
18791900 {
18801901 int r = 0;
--- a/mbswrapper.h
+++ b/mbswrapper.h
@@ -143,6 +143,9 @@ BOOL SHGetPathFromIDListM(PCIDLIST_ABSOLUTE pidl, LPSTR pszPath);
143143 #undef SHFileOperation
144144 #define SHFileOperation SHFileOperationM
145145 int SHFileOperationM(LPSHFILEOPSTRUCTA lpFileOp);
146+#undef SHGetFileInfo
147+#define SHGetFileInfo SHGetFileInfoM
148+DWORD_PTR SHGetFileInfoM(LPCSTR pszPath, DWORD dwFileAttributes, SHFILEINFOA *psfi, UINT cbFileInfo, UINT uFlags);
146149 #undef AppendMenu
147150 #define AppendMenu AppendMenuM
148151 BOOL AppendMenuM(HMENU hMenu, UINT uFlags, UINT_PTR uIDNewItem, LPCSTR lpNewItem);
--- a/option.c
+++ b/option.c
@@ -166,6 +166,8 @@ extern int MirUpDelNotify;
166166 extern int MirDownDelNotify;
167167 extern int FolderAttr;
168168 extern int FolderAttrNum;
169+// ファイルアイコン表示対応
170+extern int DispFileIcon;
169171
170172
171173 /*----- オプションのプロパティシート ------------------------------------------
@@ -976,6 +978,8 @@ static INT_PTR CALLBACK DispSettingProc(HWND hDlg, UINT message, WPARAM wParam,
976978 SendDlgItemMessage(hDlg, DISP_FONT, WM_SETTEXT, 0, (LPARAM)TmpFont.lfFaceName);
977979 SendDlgItemMessage(hDlg, DISP_HIDE, BM_SETCHECK, DispIgnoreHide, 0);
978980 SendDlgItemMessage(hDlg, DISP_DRIVE, BM_SETCHECK, DispDrives, 0);
981+ // ファイルアイコン表示対応
982+ SendDlgItemMessage(hDlg, DISP_ICON, BM_SETCHECK, DispFileIcon, 0);
979983 return(TRUE);
980984
981985 case WM_NOTIFY:
@@ -985,6 +989,8 @@ static INT_PTR CALLBACK DispSettingProc(HWND hDlg, UINT message, WPARAM wParam,
985989 case PSN_APPLY :
986990 DispIgnoreHide = SendDlgItemMessage(hDlg, DISP_HIDE, BM_GETCHECK, 0, 0);
987991 DispDrives = SendDlgItemMessage(hDlg, DISP_DRIVE, BM_GETCHECK, 0, 0);
992+ // ファイルアイコン表示対応
993+ DispFileIcon = SendDlgItemMessage(hDlg, DISP_ICON, BM_GETCHECK, 0, 0);
988994 if(strlen(TmpFont.lfFaceName) > 0)
989995 {
990996 memcpy(&ListLogFont, &TmpFont, sizeof(LOGFONT));
--- a/registry.c
+++ b/registry.c
@@ -193,6 +193,8 @@ extern int FolderAttrNum;
193193 // 暗号化通信対応
194194 extern BYTE CertificateCacheHash[MAX_CERT_CACHE_HASH][20];
195195 extern BYTE SSLRootCAFileHash[20];
196+// ファイルアイコン表示対応
197+extern int DispFileIcon;
196198
197199 /*----- マスタパスワードの設定 ----------------------------------------------
198200 *
@@ -611,6 +613,8 @@ void SaveRegistory(void)
611613 StrCatOut((char*)&SSLRootCAFileHash, sizeof(SSLRootCAFileHash), Buf);
612614 EncodePassword(Buf, Str);
613615 WriteStringToReg(hKey4, "RootCertHash", Str);
616+ // ファイルアイコン表示対応
617+ WriteIntValueToReg(hKey4, "ListIcon", DispFileIcon);
614618 }
615619 CloseSubKey(hKey4);
616620 }
@@ -980,6 +984,8 @@ int LoadRegistory(void)
980984 ReadStringFromReg(hKey4, "RootCertHash", Str, PRIVATE_KEY_LEN*4+1);
981985 DecodePassword(Str, Buf);
982986 StrReadIn(Buf, sizeof(SSLRootCAFileHash), (char*)&SSLRootCAFileHash);
987+ // ファイルアイコン表示対応
988+ ReadIntValueFromReg(hKey4, "ListIcon", &DispFileIcon);
983989
984990 CloseSubKey(hKey4);
985991 }