• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

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

FFFTPのソースコードです。


Commit MetaInfo

Revisão7631e4e2cadedea383c39369afc6f195cd4002ef (tree)
Hora2011-10-05 19:48:11
Autorhiromichi-m <hiromichi-m@user...>
Commiterhiromichi-m

Mensagem de Log

Merge branch '1.98' of git.sourceforge.jp:/gitroot/ffftp/ffftp into 1.98

Conflicts:
FFFTP.vc90.vcproj
FFFTP_Eng_Release/FFFTP.exe
FFFTP_English.vc90.vcproj
Release/FFFTP.exe
connect.c

Mudança Sumário

Diff

--- a/FFFTP.vc90.vcproj
+++ b/FFFTP.vc90.vcproj
@@ -1,455 +1,455 @@
1-<?xml version="1.0" encoding="shift_jis"?>
2-<VisualStudioProject
3- ProjectType="Visual C++"
4- Version="9.00"
5- Name="FFFTP"
6- ProjectGUID="{5D9496DB-45AF-4389-8FEE-27C9A2FA207A}"
7- TargetFrameworkVersion="131072"
8- >
9- <Platforms>
10- <Platform
11- Name="Win32"
12- />
13- </Platforms>
14- <ToolFiles>
15- </ToolFiles>
16- <Configurations>
17- <Configuration
18- Name="Debug|Win32"
19- OutputDirectory=".\Debug"
20- IntermediateDirectory=".\Debug"
21- ConfigurationType="1"
22- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
23- UseOfMFC="0"
24- ATLMinimizesCRunTimeLibraryUsage="false"
25- >
26- <Tool
27- Name="VCPreBuildEventTool"
28- />
29- <Tool
30- Name="VCCustomBuildTool"
31- />
32- <Tool
33- Name="VCXMLDataGeneratorTool"
34- />
35- <Tool
36- Name="VCWebServiceProxyGeneratorTool"
37- />
38- <Tool
39- Name="VCMIDLTool"
40- PreprocessorDefinitions="_DEBUG"
41- MkTypLibCompatible="true"
42- SuppressStartupBanner="true"
43- TargetEnvironment="1"
44- TypeLibraryName=".\Debug\FFFTP.tlb"
45- />
46- <Tool
47- Name="VCCLCompilerTool"
48- Optimization="0"
49- AdditionalIncludeDirectories=".\contrib\openssl\include;Resource"
50- PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,_WIN32_IE=0x600,_CRT_SECURE_NO_WARNINGS"
51- RuntimeLibrary="1"
52- PrecompiledHeaderFile=".\Debug\FFFTP.pch"
53- AssemblerListingLocation=".\Debug\"
54- ObjectFile=".\Debug\"
55- ProgramDataBaseFileName=".\Debug\"
56- WarningLevel="3"
57- SuppressStartupBanner="true"
58- DebugInformationFormat="4"
59- />
60- <Tool
61- Name="VCManagedResourceCompilerTool"
62- />
63- <Tool
64- Name="VCResourceCompilerTool"
65- PreprocessorDefinitions="_DEBUG"
66- Culture="1041"
67- />
68- <Tool
69- Name="VCPreLinkEventTool"
70- />
71- <Tool
72- Name="VCLinkerTool"
73- AdditionalOptions="/MACHINE:I386"
74- AdditionalDependencies="wsock32.lib comctl32.lib winmm.lib htmlhelp.lib"
75- OutputFile=".\Debug\FFFTP.exe"
76- LinkIncremental="2"
77- SuppressStartupBanner="true"
78- GenerateManifest="false"
79- GenerateDebugInformation="true"
80- ProgramDatabaseFile=".\Debug\FFFTP.pdb"
81- SubSystem="2"
82- RandomizedBaseAddress="1"
83- DataExecutionPrevention="0"
84- />
85- <Tool
86- Name="VCALinkTool"
87- />
88- <Tool
89- Name="VCManifestTool"
90- />
91- <Tool
92- Name="VCXDCMakeTool"
93- />
94- <Tool
95- Name="VCBscMakeTool"
96- />
97- <Tool
98- Name="VCFxCopTool"
99- />
100- <Tool
101- Name="VCAppVerifierTool"
102- />
103- <Tool
104- Name="VCPostBuildEventTool"
105- />
106- </Configuration>
107- <Configuration
108- Name="Release|Win32"
109- OutputDirectory=".\Release"
110- IntermediateDirectory=".\Release"
111- ConfigurationType="1"
112- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
113- UseOfMFC="0"
114- ATLMinimizesCRunTimeLibraryUsage="false"
115- >
116- <Tool
117- Name="VCPreBuildEventTool"
118- />
119- <Tool
120- Name="VCCustomBuildTool"
121- />
122- <Tool
123- Name="VCXMLDataGeneratorTool"
124- />
125- <Tool
126- Name="VCWebServiceProxyGeneratorTool"
127- />
128- <Tool
129- Name="VCMIDLTool"
130- PreprocessorDefinitions="NDEBUG"
131- MkTypLibCompatible="true"
132- SuppressStartupBanner="true"
133- TargetEnvironment="1"
134- TypeLibraryName=".\Release\FFFTP.tlb"
135- />
136- <Tool
137- Name="VCCLCompilerTool"
138- InlineFunctionExpansion="1"
139- AdditionalIncludeDirectories=".\contrib\openssl\include;Resource"
140- PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,_WIN32_IE=0x600,_CRT_SECURE_NO_WARNINGS"
141- StringPooling="true"
142- RuntimeLibrary="0"
143- EnableFunctionLevelLinking="true"
144- PrecompiledHeaderFile=".\Release\FFFTP.pch"
145- AssemblerListingLocation=".\Release\"
146- ObjectFile=".\Release\"
147- ProgramDataBaseFileName=".\Release\"
148- WarningLevel="3"
149- SuppressStartupBanner="true"
150- DebugInformationFormat="0"
151- />
152- <Tool
153- Name="VCManagedResourceCompilerTool"
154- />
155- <Tool
156- Name="VCResourceCompilerTool"
157- PreprocessorDefinitions="NDEBUG"
158- Culture="1041"
159- />
160- <Tool
161- Name="VCPreLinkEventTool"
162- />
163- <Tool
164- Name="VCLinkerTool"
165- AdditionalOptions="/MACHINE:I386"
166- AdditionalDependencies="wsock32.lib comctl32.lib winmm.lib RASAPI32.LIB htmlhelp.lib"
167- OutputFile=".\Release\FFFTP.exe"
168- LinkIncremental="1"
169- SuppressStartupBanner="true"
170- GenerateManifest="false"
171- ProgramDatabaseFile=".\Release\FFFTP.pdb"
172- SubSystem="2"
173- RandomizedBaseAddress="1"
174- DataExecutionPrevention="0"
175- />
176- <Tool
177- Name="VCALinkTool"
178- />
179- <Tool
180- Name="VCManifestTool"
181- />
182- <Tool
183- Name="VCXDCMakeTool"
184- />
185- <Tool
186- Name="VCBscMakeTool"
187- />
188- <Tool
189- Name="VCFxCopTool"
190- />
191- <Tool
192- Name="VCAppVerifierTool"
193- />
194- <Tool
195- Name="VCPostBuildEventTool"
196- />
197- </Configuration>
198- </Configurations>
199- <References>
200- </References>
201- <Files>
202- <Filter
203- Name="Source Files"
204- Filter="cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"
205- >
206- <File
207- RelativePath=".\aes_modes.c"
208- >
209- </File>
210- <File
211- RelativePath=".\aescrypt.c"
212- >
213- </File>
214- <File
215- RelativePath=".\aeskey.c"
216- >
217- </File>
218- <File
219- RelativePath=".\aestab.c"
220- >
221- </File>
222- <File
223- RelativePath=".\bookmark.c"
224- >
225- </File>
226- <File
227- RelativePath=".\cache.c"
228- >
229- </File>
230- <File
231- RelativePath=".\clipboard.c"
232- >
233- </File>
234- <File
235- RelativePath=".\codecnv.c"
236- >
237- </File>
238- <File
239- RelativePath=".\connect.c"
240- >
241- </File>
242- <File
243- RelativePath=".\diskfree.c"
244- >
245- </File>
246- <File
247- RelativePath=".\dlgsize.c"
248- >
249- </File>
250- <File
251- RelativePath=".\Resource\ffftp.rc"
252- >
253- </File>
254- <File
255- RelativePath=".\filelist.c"
256- >
257- </File>
258- <File
259- RelativePath=".\ftpproc.c"
260- >
261- </File>
262- <File
263- RelativePath=".\getput.c"
264- >
265- </File>
266- <File
267- RelativePath=".\history.c"
268- >
269- </File>
270- <File
271- RelativePath=".\hostman.c"
272- >
273- </File>
274- <File
275- RelativePath=".\local.c"
276- >
277- </File>
278- <File
279- RelativePath=".\lvtips.c"
280- >
281- </File>
282- <File
283- RelativePath=".\main.c"
284- >
285- </File>
286- <File
287- RelativePath=".\mbswrapper.c"
288- >
289- </File>
290- <File
291- RelativePath=".\md4.c"
292- >
293- </File>
294- <File
295- RelativePath=".\md5.c"
296- >
297- </File>
298- <File
299- RelativePath=".\misc.c"
300- >
301- </File>
302- <File
303- RelativePath=".\OleDragDrop.c"
304- >
305- </File>
306- <File
307- RelativePath=".\option.c"
308- >
309- </File>
310- <File
311- RelativePath=".\ras.c"
312- >
313- </File>
314- <File
315- RelativePath=".\regexp.c"
316- >
317- </File>
318- <File
319- RelativePath=".\registory.c"
320- >
321- </File>
322- <File
323- RelativePath=".\remote.c"
324- >
325- </File>
326- <File
327- RelativePath=".\sha.c"
328- >
329- </File>
330- <File
331- RelativePath=".\skey.c"
332- >
333- </File>
334- <File
335- RelativePath=".\socket.c"
336- >
337- </File>
338- <File
339- RelativePath=".\socketwrapper.c"
340- >
341- </File>
342- <File
343- RelativePath=".\statuswin.c"
344- >
345- </File>
346- <File
347- RelativePath=".\taskwin.c"
348- >
349- </File>
350- <File
351- RelativePath=".\tool.c"
352- >
353- </File>
354- <File
355- RelativePath=".\toolmenu.c"
356- >
357- </File>
358- <File
359- RelativePath=".\updatebell.c"
360- >
361- </File>
362- <File
363- RelativePath=".\wildcard.c"
364- >
365- </File>
366- </Filter>
367- <Filter
368- Name="Header Files"
369- Filter="h;hpp;hxx;hm;inl;fi;fd"
370- >
371- <File
372- RelativePath=".\common.h"
373- >
374- </File>
375- <File
376- RelativePath=".\mbswrapper.h"
377- >
378- </File>
379- <File
380- RelativePath=".\Resource\resource.h"
381- >
382- </File>
383- <File
384- RelativePath=".\socketwrapper.h"
385- >
386- </File>
387- </Filter>
388- <Filter
389- Name="Resource Files"
390- Filter="ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
391- >
392- <File
393- RelativePath=".\Resource\bitmap1.bmp"
394- >
395- </File>
396- <File
397- RelativePath=".\Resource\cursor1.cur"
398- >
399- </File>
400- <File
401- RelativePath=".\Resource\cursor2.cur"
402- >
403- </File>
404- <File
405- RelativePath=".\Resource\drag_csr.cur"
406- >
407- </File>
408- <File
409- RelativePath=".\Resource\icon1.ico"
410- >
411- </File>
412- <File
413- RelativePath=".\Resource\icon2.ico"
414- >
415- </File>
416- <File
417- RelativePath=".\Resource\list_bmp.bmp"
418- >
419- </File>
420- <File
421- RelativePath=".\Resource\main_too.bmp"
422- >
423- </File>
424- <File
425- RelativePath=".\Resource\nodrop_c.cur"
426- >
427- </File>
428- <File
429- RelativePath=".\Resource\toolbar1.bmp"
430- >
431- </File>
432- </Filter>
433- <File
434- RelativePath=".\Resource\ffftp.exe.manifest"
435- >
436- <FileConfiguration
437- Name="Debug|Win32"
438- ExcludedFromBuild="true"
439- >
440- <Tool
441- Name="VCCustomBuildTool"
442- />
443- </FileConfiguration>
444- <FileConfiguration
445- Name="Release|Win32"
446- >
447- <Tool
448- Name="VCCustomBuildTool"
449- />
450- </FileConfiguration>
451- </File>
452- </Files>
453- <Globals>
454- </Globals>
455-</VisualStudioProject>
1+<?xml version="1.0" encoding="shift_jis"?>
2+<VisualStudioProject
3+ ProjectType="Visual C++"
4+ Version="9.00"
5+ Name="FFFTP"
6+ ProjectGUID="{5D9496DB-45AF-4389-8FEE-27C9A2FA207A}"
7+ TargetFrameworkVersion="131072"
8+ >
9+ <Platforms>
10+ <Platform
11+ Name="Win32"
12+ />
13+ </Platforms>
14+ <ToolFiles>
15+ </ToolFiles>
16+ <Configurations>
17+ <Configuration
18+ Name="Debug|Win32"
19+ OutputDirectory=".\Debug"
20+ IntermediateDirectory=".\Debug"
21+ ConfigurationType="1"
22+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
23+ UseOfMFC="0"
24+ ATLMinimizesCRunTimeLibraryUsage="false"
25+ >
26+ <Tool
27+ Name="VCPreBuildEventTool"
28+ />
29+ <Tool
30+ Name="VCCustomBuildTool"
31+ />
32+ <Tool
33+ Name="VCXMLDataGeneratorTool"
34+ />
35+ <Tool
36+ Name="VCWebServiceProxyGeneratorTool"
37+ />
38+ <Tool
39+ Name="VCMIDLTool"
40+ PreprocessorDefinitions="_DEBUG"
41+ MkTypLibCompatible="true"
42+ SuppressStartupBanner="true"
43+ TargetEnvironment="1"
44+ TypeLibraryName=".\Debug\FFFTP.tlb"
45+ />
46+ <Tool
47+ Name="VCCLCompilerTool"
48+ Optimization="0"
49+ AdditionalIncludeDirectories="Resource"
50+ PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0400,_CRT_SECURE_NO_WARNINGS"
51+ RuntimeLibrary="1"
52+ PrecompiledHeaderFile=".\Debug\FFFTP.pch"
53+ AssemblerListingLocation=".\Debug\"
54+ ObjectFile=".\Debug\"
55+ ProgramDataBaseFileName=".\Debug\"
56+ WarningLevel="3"
57+ SuppressStartupBanner="true"
58+ DebugInformationFormat="4"
59+ />
60+ <Tool
61+ Name="VCManagedResourceCompilerTool"
62+ />
63+ <Tool
64+ Name="VCResourceCompilerTool"
65+ PreprocessorDefinitions="_DEBUG"
66+ Culture="1041"
67+ />
68+ <Tool
69+ Name="VCPreLinkEventTool"
70+ />
71+ <Tool
72+ Name="VCLinkerTool"
73+ AdditionalOptions="/MACHINE:I386"
74+ AdditionalDependencies="comctl32.lib htmlhelp.lib rasapi32.lib winmm.lib wsock32.lib"
75+ OutputFile=".\Debug\FFFTP.exe"
76+ LinkIncremental="2"
77+ SuppressStartupBanner="true"
78+ GenerateManifest="false"
79+ GenerateDebugInformation="true"
80+ ProgramDatabaseFile=".\Debug\FFFTP.pdb"
81+ SubSystem="2"
82+ RandomizedBaseAddress="1"
83+ DataExecutionPrevention="0"
84+ />
85+ <Tool
86+ Name="VCALinkTool"
87+ />
88+ <Tool
89+ Name="VCManifestTool"
90+ />
91+ <Tool
92+ Name="VCXDCMakeTool"
93+ />
94+ <Tool
95+ Name="VCBscMakeTool"
96+ />
97+ <Tool
98+ Name="VCFxCopTool"
99+ />
100+ <Tool
101+ Name="VCAppVerifierTool"
102+ />
103+ <Tool
104+ Name="VCPostBuildEventTool"
105+ />
106+ </Configuration>
107+ <Configuration
108+ Name="Release|Win32"
109+ OutputDirectory=".\Release"
110+ IntermediateDirectory=".\Release"
111+ ConfigurationType="1"
112+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
113+ UseOfMFC="0"
114+ ATLMinimizesCRunTimeLibraryUsage="false"
115+ >
116+ <Tool
117+ Name="VCPreBuildEventTool"
118+ />
119+ <Tool
120+ Name="VCCustomBuildTool"
121+ />
122+ <Tool
123+ Name="VCXMLDataGeneratorTool"
124+ />
125+ <Tool
126+ Name="VCWebServiceProxyGeneratorTool"
127+ />
128+ <Tool
129+ Name="VCMIDLTool"
130+ PreprocessorDefinitions="NDEBUG"
131+ MkTypLibCompatible="true"
132+ SuppressStartupBanner="true"
133+ TargetEnvironment="1"
134+ TypeLibraryName=".\Release\FFFTP.tlb"
135+ />
136+ <Tool
137+ Name="VCCLCompilerTool"
138+ InlineFunctionExpansion="1"
139+ AdditionalIncludeDirectories="Resource"
140+ PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0400,_CRT_SECURE_NO_WARNINGS"
141+ StringPooling="true"
142+ RuntimeLibrary="0"
143+ EnableFunctionLevelLinking="true"
144+ PrecompiledHeaderFile=".\Release\FFFTP.pch"
145+ AssemblerListingLocation=".\Release\"
146+ ObjectFile=".\Release\"
147+ ProgramDataBaseFileName=".\Release\"
148+ WarningLevel="3"
149+ SuppressStartupBanner="true"
150+ DebugInformationFormat="0"
151+ />
152+ <Tool
153+ Name="VCManagedResourceCompilerTool"
154+ />
155+ <Tool
156+ Name="VCResourceCompilerTool"
157+ PreprocessorDefinitions="NDEBUG"
158+ Culture="1041"
159+ />
160+ <Tool
161+ Name="VCPreLinkEventTool"
162+ />
163+ <Tool
164+ Name="VCLinkerTool"
165+ AdditionalOptions="/MACHINE:I386"
166+ AdditionalDependencies="comctl32.lib htmlhelp.lib rasapi32.lib winmm.lib wsock32.lib"
167+ OutputFile=".\Release\FFFTP.exe"
168+ LinkIncremental="1"
169+ SuppressStartupBanner="true"
170+ GenerateManifest="false"
171+ ProgramDatabaseFile=".\Release\FFFTP.pdb"
172+ SubSystem="2"
173+ RandomizedBaseAddress="1"
174+ DataExecutionPrevention="0"
175+ />
176+ <Tool
177+ Name="VCALinkTool"
178+ />
179+ <Tool
180+ Name="VCManifestTool"
181+ />
182+ <Tool
183+ Name="VCXDCMakeTool"
184+ />
185+ <Tool
186+ Name="VCBscMakeTool"
187+ />
188+ <Tool
189+ Name="VCFxCopTool"
190+ />
191+ <Tool
192+ Name="VCAppVerifierTool"
193+ />
194+ <Tool
195+ Name="VCPostBuildEventTool"
196+ />
197+ </Configuration>
198+ </Configurations>
199+ <References>
200+ </References>
201+ <Files>
202+ <Filter
203+ Name="Source Files"
204+ Filter="cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"
205+ >
206+ <File
207+ RelativePath=".\aes_modes.c"
208+ >
209+ </File>
210+ <File
211+ RelativePath=".\aescrypt.c"
212+ >
213+ </File>
214+ <File
215+ RelativePath=".\aeskey.c"
216+ >
217+ </File>
218+ <File
219+ RelativePath=".\aestab.c"
220+ >
221+ </File>
222+ <File
223+ RelativePath=".\bookmark.c"
224+ >
225+ </File>
226+ <File
227+ RelativePath=".\cache.c"
228+ >
229+ </File>
230+ <File
231+ RelativePath=".\clipboard.c"
232+ >
233+ </File>
234+ <File
235+ RelativePath=".\codecnv.c"
236+ >
237+ </File>
238+ <File
239+ RelativePath=".\connect.c"
240+ >
241+ </File>
242+ <File
243+ RelativePath=".\diskfree.c"
244+ >
245+ </File>
246+ <File
247+ RelativePath=".\dlgsize.c"
248+ >
249+ </File>
250+ <File
251+ RelativePath=".\Resource\ffftp.rc"
252+ >
253+ </File>
254+ <File
255+ RelativePath=".\filelist.c"
256+ >
257+ </File>
258+ <File
259+ RelativePath=".\ftpproc.c"
260+ >
261+ </File>
262+ <File
263+ RelativePath=".\getput.c"
264+ >
265+ </File>
266+ <File
267+ RelativePath=".\history.c"
268+ >
269+ </File>
270+ <File
271+ RelativePath=".\hostman.c"
272+ >
273+ </File>
274+ <File
275+ RelativePath=".\local.c"
276+ >
277+ </File>
278+ <File
279+ RelativePath=".\lvtips.c"
280+ >
281+ </File>
282+ <File
283+ RelativePath=".\main.c"
284+ >
285+ </File>
286+ <File
287+ RelativePath=".\mbswrapper.c"
288+ >
289+ </File>
290+ <File
291+ RelativePath=".\md4.c"
292+ >
293+ </File>
294+ <File
295+ RelativePath=".\md5.c"
296+ >
297+ </File>
298+ <File
299+ RelativePath=".\misc.c"
300+ >
301+ </File>
302+ <File
303+ RelativePath=".\OleDragDrop.c"
304+ >
305+ </File>
306+ <File
307+ RelativePath=".\option.c"
308+ >
309+ </File>
310+ <File
311+ RelativePath=".\ras.c"
312+ >
313+ </File>
314+ <File
315+ RelativePath=".\regexp.c"
316+ >
317+ </File>
318+ <File
319+ RelativePath=".\registory.c"
320+ >
321+ </File>
322+ <File
323+ RelativePath=".\remote.c"
324+ >
325+ </File>
326+ <File
327+ RelativePath=".\sha.c"
328+ >
329+ </File>
330+ <File
331+ RelativePath=".\skey.c"
332+ >
333+ </File>
334+ <File
335+ RelativePath=".\socket.c"
336+ >
337+ </File>
338+ <File
339+ RelativePath=".\socketwrapper.c"
340+ >
341+ </File>
342+ <File
343+ RelativePath=".\statuswin.c"
344+ >
345+ </File>
346+ <File
347+ RelativePath=".\taskwin.c"
348+ >
349+ </File>
350+ <File
351+ RelativePath=".\tool.c"
352+ >
353+ </File>
354+ <File
355+ RelativePath=".\toolmenu.c"
356+ >
357+ </File>
358+ <File
359+ RelativePath=".\updatebell.c"
360+ >
361+ </File>
362+ <File
363+ RelativePath=".\wildcard.c"
364+ >
365+ </File>
366+ </Filter>
367+ <Filter
368+ Name="Header Files"
369+ Filter="h;hpp;hxx;hm;inl;fi;fd"
370+ >
371+ <File
372+ RelativePath=".\common.h"
373+ >
374+ </File>
375+ <File
376+ RelativePath=".\mbswrapper.h"
377+ >
378+ </File>
379+ <File
380+ RelativePath=".\Resource\resource.h"
381+ >
382+ </File>
383+ <File
384+ RelativePath=".\socketwrapper.h"
385+ >
386+ </File>
387+ </Filter>
388+ <Filter
389+ Name="Resource Files"
390+ Filter="ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
391+ >
392+ <File
393+ RelativePath=".\Resource\bitmap1.bmp"
394+ >
395+ </File>
396+ <File
397+ RelativePath=".\Resource\cursor1.cur"
398+ >
399+ </File>
400+ <File
401+ RelativePath=".\Resource\cursor2.cur"
402+ >
403+ </File>
404+ <File
405+ RelativePath=".\Resource\drag_csr.cur"
406+ >
407+ </File>
408+ <File
409+ RelativePath=".\Resource\icon1.ico"
410+ >
411+ </File>
412+ <File
413+ RelativePath=".\Resource\icon2.ico"
414+ >
415+ </File>
416+ <File
417+ RelativePath=".\Resource\list_bmp.bmp"
418+ >
419+ </File>
420+ <File
421+ RelativePath=".\Resource\main_too.bmp"
422+ >
423+ </File>
424+ <File
425+ RelativePath=".\Resource\nodrop_c.cur"
426+ >
427+ </File>
428+ <File
429+ RelativePath=".\Resource\toolbar1.bmp"
430+ >
431+ </File>
432+ </Filter>
433+ <File
434+ RelativePath=".\Resource\ffftp.exe.manifest"
435+ >
436+ <FileConfiguration
437+ Name="Debug|Win32"
438+ ExcludedFromBuild="true"
439+ >
440+ <Tool
441+ Name="VCCustomBuildTool"
442+ />
443+ </FileConfiguration>
444+ <FileConfiguration
445+ Name="Release|Win32"
446+ >
447+ <Tool
448+ Name="VCCustomBuildTool"
449+ />
450+ </FileConfiguration>
451+ </File>
452+ </Files>
453+ <Globals>
454+ </Globals>
455+</VisualStudioProject>
--- a/FFFTP.vcproj
+++ b/FFFTP.vcproj
@@ -46,7 +46,7 @@
4646 Name="VCCLCompilerTool"
4747 Optimization="0"
4848 AdditionalIncludeDirectories="Resource"
49- PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,_WIN32_IE=0x300,_CRT_SECURE_NO_WARNINGS"
49+ PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0400,_CRT_SECURE_NO_WARNINGS"
5050 RuntimeLibrary="1"
5151 PrecompiledHeaderFile=".\Debug\FFFTP.pch"
5252 AssemblerListingLocation=".\Debug\"
@@ -70,7 +70,7 @@
7070 <Tool
7171 Name="VCLinkerTool"
7272 AdditionalOptions="/MACHINE:I386"
73- AdditionalDependencies="wsock32.lib comctl32.lib winmm.lib htmlhelp.lib"
73+ AdditionalDependencies="comctl32.lib htmlhelp.lib rasapi32.lib winmm.lib wsock32.lib"
7474 OutputFile=".\Debug\FFFTP.exe"
7575 LinkIncremental="2"
7676 SuppressStartupBanner="true"
@@ -137,7 +137,7 @@
137137 Name="VCCLCompilerTool"
138138 InlineFunctionExpansion="1"
139139 AdditionalIncludeDirectories="Resource"
140- PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,_WIN32_IE=0x300,_CRT_SECURE_NO_WARNINGS"
140+ PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0400,_CRT_SECURE_NO_WARNINGS"
141141 StringPooling="true"
142142 RuntimeLibrary="0"
143143 EnableFunctionLevelLinking="true"
@@ -163,7 +163,7 @@
163163 <Tool
164164 Name="VCLinkerTool"
165165 AdditionalOptions="/MACHINE:I386"
166- AdditionalDependencies="wsock32.lib comctl32.lib winmm.lib RASAPI32.LIB htmlhelp.lib"
166+ AdditionalDependencies="comctl32.lib htmlhelp.lib rasapi32.lib winmm.lib wsock32.lib"
167167 OutputFile=".\Release\FFFTP.exe"
168168 LinkIncremental="1"
169169 SuppressStartupBanner="true"
Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
--- a/FFFTP_English.vc90.vcproj
+++ b/FFFTP_English.vc90.vcproj
@@ -1,456 +1,456 @@
1-<?xml version="1.0" encoding="shift_jis"?>
2-<VisualStudioProject
3- ProjectType="Visual C++"
4- Version="9.00"
5- Name="FFFTP_English"
6- ProjectGUID="{EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}"
7- RootNamespace="FFFTP_English"
8- TargetFrameworkVersion="131072"
9- >
10- <Platforms>
11- <Platform
12- Name="Win32"
13- />
14- </Platforms>
15- <ToolFiles>
16- </ToolFiles>
17- <Configurations>
18- <Configuration
19- Name="Debug|Win32"
20- OutputDirectory=".\FFFTP_Eng_Debug"
21- IntermediateDirectory=".\FFFTP_Eng_Debug"
22- ConfigurationType="1"
23- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
24- UseOfMFC="0"
25- ATLMinimizesCRunTimeLibraryUsage="false"
26- >
27- <Tool
28- Name="VCPreBuildEventTool"
29- />
30- <Tool
31- Name="VCCustomBuildTool"
32- />
33- <Tool
34- Name="VCXMLDataGeneratorTool"
35- />
36- <Tool
37- Name="VCWebServiceProxyGeneratorTool"
38- />
39- <Tool
40- Name="VCMIDLTool"
41- PreprocessorDefinitions="_DEBUG"
42- MkTypLibCompatible="true"
43- SuppressStartupBanner="true"
44- TargetEnvironment="1"
45- TypeLibraryName=".\FFFTP_Eng_Debug\FFFTP_English.tlb"
46- />
47- <Tool
48- Name="VCCLCompilerTool"
49- Optimization="0"
50- AdditionalIncludeDirectories=".\contrib\openssl\include;Resource"
51- PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,_WIN32_IE=0x600,_CRT_SECURE_NO_WARNINGS,ENGLISH"
52- BasicRuntimeChecks="3"
53- RuntimeLibrary="1"
54- PrecompiledHeaderFile=".\FFFTP_Eng_Debug\FFFTP_English.pch"
55- AssemblerListingLocation=".\FFFTP_Eng_Debug\"
56- ObjectFile=".\FFFTP_Eng_Debug\"
57- ProgramDataBaseFileName=".\FFFTP_Eng_Debug\"
58- WarningLevel="3"
59- SuppressStartupBanner="true"
60- DebugInformationFormat="4"
61- />
62- <Tool
63- Name="VCManagedResourceCompilerTool"
64- />
65- <Tool
66- Name="VCResourceCompilerTool"
67- PreprocessorDefinitions="_DEBUG"
68- Culture="1033"
69- />
70- <Tool
71- Name="VCPreLinkEventTool"
72- />
73- <Tool
74- Name="VCLinkerTool"
75- AdditionalOptions="/MACHINE:I386"
76- AdditionalDependencies="wsock32.lib comctl32.lib winmm.lib htmlhelp.lib"
77- OutputFile=".\FFFTP_Eng_Debug\FFFTP.exe"
78- LinkIncremental="2"
79- SuppressStartupBanner="true"
80- GenerateManifest="false"
81- GenerateDebugInformation="true"
82- ProgramDatabaseFile=".\FFFTP_Eng_Debug\FFFTP.pdb"
83- SubSystem="2"
84- RandomizedBaseAddress="1"
85- DataExecutionPrevention="0"
86- />
87- <Tool
88- Name="VCALinkTool"
89- />
90- <Tool
91- Name="VCManifestTool"
92- />
93- <Tool
94- Name="VCXDCMakeTool"
95- />
96- <Tool
97- Name="VCBscMakeTool"
98- />
99- <Tool
100- Name="VCFxCopTool"
101- />
102- <Tool
103- Name="VCAppVerifierTool"
104- />
105- <Tool
106- Name="VCPostBuildEventTool"
107- />
108- </Configuration>
109- <Configuration
110- Name="Release|Win32"
111- OutputDirectory=".\FFFTP_Eng_Release"
112- IntermediateDirectory=".\FFFTP_Eng_Release"
113- ConfigurationType="1"
114- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
115- UseOfMFC="0"
116- ATLMinimizesCRunTimeLibraryUsage="false"
117- >
118- <Tool
119- Name="VCPreBuildEventTool"
120- />
121- <Tool
122- Name="VCCustomBuildTool"
123- />
124- <Tool
125- Name="VCXMLDataGeneratorTool"
126- />
127- <Tool
128- Name="VCWebServiceProxyGeneratorTool"
129- />
130- <Tool
131- Name="VCMIDLTool"
132- PreprocessorDefinitions="NDEBUG"
133- MkTypLibCompatible="true"
134- SuppressStartupBanner="true"
135- TargetEnvironment="1"
136- TypeLibraryName=".\FFFTP_Eng_Release\FFFTP_English.tlb"
137- />
138- <Tool
139- Name="VCCLCompilerTool"
140- InlineFunctionExpansion="1"
141- AdditionalIncludeDirectories=".\contrib\openssl\include;Resource"
142- PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,_WIN32_IE=0x600,_CRT_SECURE_NO_WARNINGS,ENGLISH"
143- StringPooling="true"
144- RuntimeLibrary="0"
145- EnableFunctionLevelLinking="true"
146- PrecompiledHeaderFile=".\FFFTP_Eng_Release\FFFTP_English.pch"
147- AssemblerListingLocation=".\FFFTP_Eng_Release\"
148- ObjectFile=".\FFFTP_Eng_Release\"
149- ProgramDataBaseFileName=".\FFFTP_Eng_Release\"
150- WarningLevel="3"
151- SuppressStartupBanner="true"
152- />
153- <Tool
154- Name="VCManagedResourceCompilerTool"
155- />
156- <Tool
157- Name="VCResourceCompilerTool"
158- PreprocessorDefinitions="NDEBUG"
159- Culture="1033"
160- />
161- <Tool
162- Name="VCPreLinkEventTool"
163- />
164- <Tool
165- Name="VCLinkerTool"
166- AdditionalOptions="/MACHINE:I386"
167- AdditionalDependencies="wsock32.lib comctl32.lib winmm.lib htmlhelp.lib"
168- OutputFile=".\FFFTP_Eng_Release\FFFTP.exe"
169- LinkIncremental="1"
170- SuppressStartupBanner="true"
171- GenerateManifest="false"
172- ProgramDatabaseFile=".\FFFTP_Eng_Release\FFFTP.pdb"
173- SubSystem="2"
174- RandomizedBaseAddress="1"
175- DataExecutionPrevention="0"
176- />
177- <Tool
178- Name="VCALinkTool"
179- />
180- <Tool
181- Name="VCManifestTool"
182- />
183- <Tool
184- Name="VCXDCMakeTool"
185- />
186- <Tool
187- Name="VCBscMakeTool"
188- />
189- <Tool
190- Name="VCFxCopTool"
191- />
192- <Tool
193- Name="VCAppVerifierTool"
194- />
195- <Tool
196- Name="VCPostBuildEventTool"
197- />
198- </Configuration>
199- </Configurations>
200- <References>
201- </References>
202- <Files>
203- <Filter
204- Name="Source Files"
205- Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
206- >
207- <File
208- RelativePath=".\aes_modes.c"
209- >
210- </File>
211- <File
212- RelativePath=".\aescrypt.c"
213- >
214- </File>
215- <File
216- RelativePath=".\aeskey.c"
217- >
218- </File>
219- <File
220- RelativePath=".\aestab.c"
221- >
222- </File>
223- <File
224- RelativePath=".\bookmark.c"
225- >
226- </File>
227- <File
228- RelativePath=".\cache.c"
229- >
230- </File>
231- <File
232- RelativePath=".\clipboard.c"
233- >
234- </File>
235- <File
236- RelativePath=".\codecnv.c"
237- >
238- </File>
239- <File
240- RelativePath=".\connect.c"
241- >
242- </File>
243- <File
244- RelativePath=".\diskfree.c"
245- >
246- </File>
247- <File
248- RelativePath=".\dlgsize.c"
249- >
250- </File>
251- <File
252- RelativePath=".\Resource_eng\FFFTP-eng.rc"
253- >
254- </File>
255- <File
256- RelativePath=".\filelist.c"
257- >
258- </File>
259- <File
260- RelativePath=".\ftpproc.c"
261- >
262- </File>
263- <File
264- RelativePath=".\getput.c"
265- >
266- </File>
267- <File
268- RelativePath=".\history.c"
269- >
270- </File>
271- <File
272- RelativePath=".\hostman.c"
273- >
274- </File>
275- <File
276- RelativePath=".\local.c"
277- >
278- </File>
279- <File
280- RelativePath=".\lvtips.c"
281- >
282- </File>
283- <File
284- RelativePath=".\main.c"
285- >
286- </File>
287- <File
288- RelativePath=".\mbswrapper.c"
289- >
290- </File>
291- <File
292- RelativePath=".\md4.c"
293- >
294- </File>
295- <File
296- RelativePath=".\md5.c"
297- >
298- </File>
299- <File
300- RelativePath=".\misc.c"
301- >
302- </File>
303- <File
304- RelativePath=".\OleDragDrop.c"
305- >
306- </File>
307- <File
308- RelativePath=".\option.c"
309- >
310- </File>
311- <File
312- RelativePath=".\ras.c"
313- >
314- </File>
315- <File
316- RelativePath=".\regexp.c"
317- >
318- </File>
319- <File
320- RelativePath=".\registory.c"
321- >
322- </File>
323- <File
324- RelativePath=".\remote.c"
325- >
326- </File>
327- <File
328- RelativePath=".\sha.c"
329- >
330- </File>
331- <File
332- RelativePath=".\skey.c"
333- >
334- </File>
335- <File
336- RelativePath=".\socket.c"
337- >
338- </File>
339- <File
340- RelativePath=".\socketwrapper.c"
341- >
342- </File>
343- <File
344- RelativePath=".\statuswin.c"
345- >
346- </File>
347- <File
348- RelativePath=".\taskwin.c"
349- >
350- </File>
351- <File
352- RelativePath=".\tool.c"
353- >
354- </File>
355- <File
356- RelativePath=".\toolmenu.c"
357- >
358- </File>
359- <File
360- RelativePath=".\updatebell.c"
361- >
362- </File>
363- <File
364- RelativePath=".\wildcard.c"
365- >
366- </File>
367- </Filter>
368- <Filter
369- Name="Header Files"
370- Filter="h;hpp;hxx;hm;inl"
371- >
372- <File
373- RelativePath=".\common.h"
374- >
375- </File>
376- <File
377- RelativePath=".\mbswrapper.h"
378- >
379- </File>
380- <File
381- RelativePath=".\Resource_eng\resource.h"
382- >
383- </File>
384- <File
385- RelativePath=".\socketwrapper.h"
386- >
387- </File>
388- </Filter>
389- <Filter
390- Name="Resource Files"
391- Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
392- >
393- <File
394- RelativePath=".\Resource_eng\bitmap1.bmp"
395- >
396- </File>
397- <File
398- RelativePath=".\Resource_eng\cursor1.cur"
399- >
400- </File>
401- <File
402- RelativePath=".\Resource_eng\cursor2.cur"
403- >
404- </File>
405- <File
406- RelativePath=".\Resource_eng\drag_csr.cur"
407- >
408- </File>
409- <File
410- RelativePath=".\Resource_eng\icon1.ico"
411- >
412- </File>
413- <File
414- RelativePath=".\Resource_eng\icon2.ico"
415- >
416- </File>
417- <File
418- RelativePath=".\Resource_eng\list_bmp.bmp"
419- >
420- </File>
421- <File
422- RelativePath=".\Resource_eng\main_too.bmp"
423- >
424- </File>
425- <File
426- RelativePath=".\Resource_eng\nodrop_c.cur"
427- >
428- </File>
429- <File
430- RelativePath=".\Resource_eng\toolbar1.bmp"
431- >
432- </File>
433- </Filter>
434- <File
435- RelativePath=".\Resource_eng\ffftp.exe.manifest"
436- >
437- <FileConfiguration
438- Name="Debug|Win32"
439- ExcludedFromBuild="true"
440- >
441- <Tool
442- Name="VCCustomBuildTool"
443- />
444- </FileConfiguration>
445- <FileConfiguration
446- Name="Release|Win32"
447- >
448- <Tool
449- Name="VCCustomBuildTool"
450- />
451- </FileConfiguration>
452- </File>
453- </Files>
454- <Globals>
455- </Globals>
456-</VisualStudioProject>
1+<?xml version="1.0" encoding="shift_jis"?>
2+<VisualStudioProject
3+ ProjectType="Visual C++"
4+ Version="9.00"
5+ Name="FFFTP_English"
6+ ProjectGUID="{EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}"
7+ RootNamespace="FFFTP_English"
8+ TargetFrameworkVersion="131072"
9+ >
10+ <Platforms>
11+ <Platform
12+ Name="Win32"
13+ />
14+ </Platforms>
15+ <ToolFiles>
16+ </ToolFiles>
17+ <Configurations>
18+ <Configuration
19+ Name="Debug|Win32"
20+ OutputDirectory=".\FFFTP_Eng_Debug"
21+ IntermediateDirectory=".\FFFTP_Eng_Debug"
22+ ConfigurationType="1"
23+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
24+ UseOfMFC="0"
25+ ATLMinimizesCRunTimeLibraryUsage="false"
26+ >
27+ <Tool
28+ Name="VCPreBuildEventTool"
29+ />
30+ <Tool
31+ Name="VCCustomBuildTool"
32+ />
33+ <Tool
34+ Name="VCXMLDataGeneratorTool"
35+ />
36+ <Tool
37+ Name="VCWebServiceProxyGeneratorTool"
38+ />
39+ <Tool
40+ Name="VCMIDLTool"
41+ PreprocessorDefinitions="_DEBUG"
42+ MkTypLibCompatible="true"
43+ SuppressStartupBanner="true"
44+ TargetEnvironment="1"
45+ TypeLibraryName=".\FFFTP_Eng_Debug\FFFTP_English.tlb"
46+ />
47+ <Tool
48+ Name="VCCLCompilerTool"
49+ Optimization="0"
50+ AdditionalIncludeDirectories="Resource_eng"
51+ PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0400,_CRT_SECURE_NO_WARNINGS,ENGLISH"
52+ BasicRuntimeChecks="3"
53+ RuntimeLibrary="1"
54+ PrecompiledHeaderFile=".\FFFTP_Eng_Debug\FFFTP_English.pch"
55+ AssemblerListingLocation=".\FFFTP_Eng_Debug\"
56+ ObjectFile=".\FFFTP_Eng_Debug\"
57+ ProgramDataBaseFileName=".\FFFTP_Eng_Debug\"
58+ WarningLevel="3"
59+ SuppressStartupBanner="true"
60+ DebugInformationFormat="4"
61+ />
62+ <Tool
63+ Name="VCManagedResourceCompilerTool"
64+ />
65+ <Tool
66+ Name="VCResourceCompilerTool"
67+ PreprocessorDefinitions="_DEBUG"
68+ Culture="1033"
69+ />
70+ <Tool
71+ Name="VCPreLinkEventTool"
72+ />
73+ <Tool
74+ Name="VCLinkerTool"
75+ AdditionalOptions="/MACHINE:I386"
76+ AdditionalDependencies="comctl32.lib htmlhelp.lib rasapi32.lib winmm.lib wsock32.lib"
77+ OutputFile=".\FFFTP_Eng_Debug\FFFTP.exe"
78+ LinkIncremental="2"
79+ SuppressStartupBanner="true"
80+ GenerateManifest="false"
81+ GenerateDebugInformation="true"
82+ ProgramDatabaseFile=".\FFFTP_Eng_Debug\FFFTP.pdb"
83+ SubSystem="2"
84+ RandomizedBaseAddress="1"
85+ DataExecutionPrevention="0"
86+ />
87+ <Tool
88+ Name="VCALinkTool"
89+ />
90+ <Tool
91+ Name="VCManifestTool"
92+ />
93+ <Tool
94+ Name="VCXDCMakeTool"
95+ />
96+ <Tool
97+ Name="VCBscMakeTool"
98+ />
99+ <Tool
100+ Name="VCFxCopTool"
101+ />
102+ <Tool
103+ Name="VCAppVerifierTool"
104+ />
105+ <Tool
106+ Name="VCPostBuildEventTool"
107+ />
108+ </Configuration>
109+ <Configuration
110+ Name="Release|Win32"
111+ OutputDirectory=".\FFFTP_Eng_Release"
112+ IntermediateDirectory=".\FFFTP_Eng_Release"
113+ ConfigurationType="1"
114+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
115+ UseOfMFC="0"
116+ ATLMinimizesCRunTimeLibraryUsage="false"
117+ >
118+ <Tool
119+ Name="VCPreBuildEventTool"
120+ />
121+ <Tool
122+ Name="VCCustomBuildTool"
123+ />
124+ <Tool
125+ Name="VCXMLDataGeneratorTool"
126+ />
127+ <Tool
128+ Name="VCWebServiceProxyGeneratorTool"
129+ />
130+ <Tool
131+ Name="VCMIDLTool"
132+ PreprocessorDefinitions="NDEBUG"
133+ MkTypLibCompatible="true"
134+ SuppressStartupBanner="true"
135+ TargetEnvironment="1"
136+ TypeLibraryName=".\FFFTP_Eng_Release\FFFTP_English.tlb"
137+ />
138+ <Tool
139+ Name="VCCLCompilerTool"
140+ InlineFunctionExpansion="1"
141+ AdditionalIncludeDirectories="Resource_eng"
142+ PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0400,_CRT_SECURE_NO_WARNINGS,ENGLISH"
143+ StringPooling="true"
144+ RuntimeLibrary="0"
145+ EnableFunctionLevelLinking="true"
146+ PrecompiledHeaderFile=".\FFFTP_Eng_Release\FFFTP_English.pch"
147+ AssemblerListingLocation=".\FFFTP_Eng_Release\"
148+ ObjectFile=".\FFFTP_Eng_Release\"
149+ ProgramDataBaseFileName=".\FFFTP_Eng_Release\"
150+ WarningLevel="3"
151+ SuppressStartupBanner="true"
152+ />
153+ <Tool
154+ Name="VCManagedResourceCompilerTool"
155+ />
156+ <Tool
157+ Name="VCResourceCompilerTool"
158+ PreprocessorDefinitions="NDEBUG"
159+ Culture="1033"
160+ />
161+ <Tool
162+ Name="VCPreLinkEventTool"
163+ />
164+ <Tool
165+ Name="VCLinkerTool"
166+ AdditionalOptions="/MACHINE:I386"
167+ AdditionalDependencies="comctl32.lib htmlhelp.lib rasapi32.lib winmm.lib wsock32.lib"
168+ OutputFile=".\FFFTP_Eng_Release\FFFTP.exe"
169+ LinkIncremental="1"
170+ SuppressStartupBanner="true"
171+ GenerateManifest="false"
172+ ProgramDatabaseFile=".\FFFTP_Eng_Release\FFFTP.pdb"
173+ SubSystem="2"
174+ RandomizedBaseAddress="1"
175+ DataExecutionPrevention="0"
176+ />
177+ <Tool
178+ Name="VCALinkTool"
179+ />
180+ <Tool
181+ Name="VCManifestTool"
182+ />
183+ <Tool
184+ Name="VCXDCMakeTool"
185+ />
186+ <Tool
187+ Name="VCBscMakeTool"
188+ />
189+ <Tool
190+ Name="VCFxCopTool"
191+ />
192+ <Tool
193+ Name="VCAppVerifierTool"
194+ />
195+ <Tool
196+ Name="VCPostBuildEventTool"
197+ />
198+ </Configuration>
199+ </Configurations>
200+ <References>
201+ </References>
202+ <Files>
203+ <Filter
204+ Name="Source Files"
205+ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
206+ >
207+ <File
208+ RelativePath=".\aes_modes.c"
209+ >
210+ </File>
211+ <File
212+ RelativePath=".\aescrypt.c"
213+ >
214+ </File>
215+ <File
216+ RelativePath=".\aeskey.c"
217+ >
218+ </File>
219+ <File
220+ RelativePath=".\aestab.c"
221+ >
222+ </File>
223+ <File
224+ RelativePath=".\bookmark.c"
225+ >
226+ </File>
227+ <File
228+ RelativePath=".\cache.c"
229+ >
230+ </File>
231+ <File
232+ RelativePath=".\clipboard.c"
233+ >
234+ </File>
235+ <File
236+ RelativePath=".\codecnv.c"
237+ >
238+ </File>
239+ <File
240+ RelativePath=".\connect.c"
241+ >
242+ </File>
243+ <File
244+ RelativePath=".\diskfree.c"
245+ >
246+ </File>
247+ <File
248+ RelativePath=".\dlgsize.c"
249+ >
250+ </File>
251+ <File
252+ RelativePath=".\Resource_eng\FFFTP-eng.rc"
253+ >
254+ </File>
255+ <File
256+ RelativePath=".\filelist.c"
257+ >
258+ </File>
259+ <File
260+ RelativePath=".\ftpproc.c"
261+ >
262+ </File>
263+ <File
264+ RelativePath=".\getput.c"
265+ >
266+ </File>
267+ <File
268+ RelativePath=".\history.c"
269+ >
270+ </File>
271+ <File
272+ RelativePath=".\hostman.c"
273+ >
274+ </File>
275+ <File
276+ RelativePath=".\local.c"
277+ >
278+ </File>
279+ <File
280+ RelativePath=".\lvtips.c"
281+ >
282+ </File>
283+ <File
284+ RelativePath=".\main.c"
285+ >
286+ </File>
287+ <File
288+ RelativePath=".\mbswrapper.c"
289+ >
290+ </File>
291+ <File
292+ RelativePath=".\md4.c"
293+ >
294+ </File>
295+ <File
296+ RelativePath=".\md5.c"
297+ >
298+ </File>
299+ <File
300+ RelativePath=".\misc.c"
301+ >
302+ </File>
303+ <File
304+ RelativePath=".\OleDragDrop.c"
305+ >
306+ </File>
307+ <File
308+ RelativePath=".\option.c"
309+ >
310+ </File>
311+ <File
312+ RelativePath=".\ras.c"
313+ >
314+ </File>
315+ <File
316+ RelativePath=".\regexp.c"
317+ >
318+ </File>
319+ <File
320+ RelativePath=".\registory.c"
321+ >
322+ </File>
323+ <File
324+ RelativePath=".\remote.c"
325+ >
326+ </File>
327+ <File
328+ RelativePath=".\sha.c"
329+ >
330+ </File>
331+ <File
332+ RelativePath=".\skey.c"
333+ >
334+ </File>
335+ <File
336+ RelativePath=".\socket.c"
337+ >
338+ </File>
339+ <File
340+ RelativePath=".\socketwrapper.c"
341+ >
342+ </File>
343+ <File
344+ RelativePath=".\statuswin.c"
345+ >
346+ </File>
347+ <File
348+ RelativePath=".\taskwin.c"
349+ >
350+ </File>
351+ <File
352+ RelativePath=".\tool.c"
353+ >
354+ </File>
355+ <File
356+ RelativePath=".\toolmenu.c"
357+ >
358+ </File>
359+ <File
360+ RelativePath=".\updatebell.c"
361+ >
362+ </File>
363+ <File
364+ RelativePath=".\wildcard.c"
365+ >
366+ </File>
367+ </Filter>
368+ <Filter
369+ Name="Header Files"
370+ Filter="h;hpp;hxx;hm;inl"
371+ >
372+ <File
373+ RelativePath=".\common.h"
374+ >
375+ </File>
376+ <File
377+ RelativePath=".\mbswrapper.h"
378+ >
379+ </File>
380+ <File
381+ RelativePath=".\Resource_eng\resource.h"
382+ >
383+ </File>
384+ <File
385+ RelativePath=".\socketwrapper.h"
386+ >
387+ </File>
388+ </Filter>
389+ <Filter
390+ Name="Resource Files"
391+ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
392+ >
393+ <File
394+ RelativePath=".\Resource_eng\bitmap1.bmp"
395+ >
396+ </File>
397+ <File
398+ RelativePath=".\Resource_eng\cursor1.cur"
399+ >
400+ </File>
401+ <File
402+ RelativePath=".\Resource_eng\cursor2.cur"
403+ >
404+ </File>
405+ <File
406+ RelativePath=".\Resource_eng\drag_csr.cur"
407+ >
408+ </File>
409+ <File
410+ RelativePath=".\Resource_eng\icon1.ico"
411+ >
412+ </File>
413+ <File
414+ RelativePath=".\Resource_eng\icon2.ico"
415+ >
416+ </File>
417+ <File
418+ RelativePath=".\Resource_eng\list_bmp.bmp"
419+ >
420+ </File>
421+ <File
422+ RelativePath=".\Resource_eng\main_too.bmp"
423+ >
424+ </File>
425+ <File
426+ RelativePath=".\Resource_eng\nodrop_c.cur"
427+ >
428+ </File>
429+ <File
430+ RelativePath=".\Resource_eng\toolbar1.bmp"
431+ >
432+ </File>
433+ </Filter>
434+ <File
435+ RelativePath=".\Resource_eng\ffftp.exe.manifest"
436+ >
437+ <FileConfiguration
438+ Name="Release|Win32"
439+ >
440+ <Tool
441+ Name="VCCustomBuildTool"
442+ />
443+ </FileConfiguration>
444+ <FileConfiguration
445+ Name="Debug|Win32"
446+ ExcludedFromBuild="true"
447+ >
448+ <Tool
449+ Name="VCCustomBuildTool"
450+ />
451+ </FileConfiguration>
452+ </File>
453+ </Files>
454+ <Globals>
455+ </Globals>
456+</VisualStudioProject>
--- a/FFFTP_English.vcproj
+++ b/FFFTP_English.vcproj
@@ -47,7 +47,7 @@
4747 Name="VCCLCompilerTool"
4848 Optimization="0"
4949 AdditionalIncludeDirectories="Resource_eng"
50- PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,_WIN32_IE=0x300,_CRT_SECURE_NO_WARNINGS,ENGLISH"
50+ PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0400,_CRT_SECURE_NO_WARNINGS,ENGLISH"
5151 BasicRuntimeChecks="3"
5252 RuntimeLibrary="1"
5353 PrecompiledHeaderFile=".\FFFTP_Eng_Debug\FFFTP_English.pch"
@@ -72,7 +72,7 @@
7272 <Tool
7373 Name="VCLinkerTool"
7474 AdditionalOptions="/MACHINE:I386"
75- AdditionalDependencies="wsock32.lib comctl32.lib winmm.lib htmlhelp.lib"
75+ AdditionalDependencies="comctl32.lib htmlhelp.lib rasapi32.lib winmm.lib wsock32.lib"
7676 OutputFile=".\FFFTP_Eng_Debug\FFFTP.exe"
7777 LinkIncremental="2"
7878 SuppressStartupBanner="true"
@@ -139,7 +139,7 @@
139139 Name="VCCLCompilerTool"
140140 InlineFunctionExpansion="1"
141141 AdditionalIncludeDirectories="Resource_eng"
142- PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,_WIN32_IE=0x300,_CRT_SECURE_NO_WARNINGS,ENGLISH"
142+ PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0400,_CRT_SECURE_NO_WARNINGS,ENGLISH"
143143 StringPooling="true"
144144 RuntimeLibrary="0"
145145 EnableFunctionLevelLinking="true"
@@ -164,7 +164,7 @@
164164 <Tool
165165 Name="VCLinkerTool"
166166 AdditionalOptions="/MACHINE:I386"
167- AdditionalDependencies="wsock32.lib comctl32.lib winmm.lib htmlhelp.lib"
167+ AdditionalDependencies="comctl32.lib htmlhelp.lib rasapi32.lib winmm.lib wsock32.lib"
168168 OutputFile=".\FFFTP_Eng_Release\FFFTP.exe"
169169 LinkIncremental="1"
170170 SuppressStartupBanner="true"
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
--- a/bookmark.c
+++ b/bookmark.c
@@ -27,7 +27,8 @@
2727 / THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2828 /============================================================================*/
2929
30-#define WINVER 0x400
30+// UTF-8対応
31+//#define WINVER 0x400
3132
3233 #define STRICT
3334 #include <windows.h>
--- a/common.h
+++ b/common.h
@@ -868,6 +868,10 @@ LIST_UNIX_70
868868 #define CRYPT_FTPIS 2
869869 #define CRYPT_SFTP 3
870870
871+// FEAT対応
872+// UTF-8対応
873+#define FEATURE_UTF8 0x00000001
874+
871875
872876 /*=================================================
873877 * ストラクチャ
@@ -918,6 +922,8 @@ typedef struct {
918922 int UseSFTP; /* SFTPで接続する (YES/NO) */
919923 // 同時接続対応
920924 int MaxThreadCount; /* 同時接続数 */
925+ // FEAT対応
926+ int Feature; /* 利用可能な機能のフラグ (FEATURE_xxx) */
921927 } HOSTDATA;
922928
923929
@@ -1383,6 +1389,8 @@ int AskUseFTPIS(void);
13831389 int AskUseSFTP(void);
13841390 // 同時接続対応
13851391 int AskMaxThreadCount(void);
1392+// FEAT対応
1393+int AskHostFeature(void);
13861394
13871395 /*===== cache.c =====*/
13881396
--- a/connect.c
+++ b/connect.c
@@ -957,6 +957,7 @@ int ReConnectCmdSkt(void)
957957 // 同時接続対応
958958 int ReConnectTrnSkt(SOCKET *Skt)
959959 {
960+// char Path[FMAX_PATH+1];
960961 int Sts;
961962
962963 Sts = FFFTP_FAIL;
@@ -1091,8 +1092,8 @@ int AskShareProh(void)
10911092 int Sts;
10921093
10931094 Sts = YES;
1094- if(CmdCtrlSocket == TrnCtrlSocket)
1095- Sts = NO;
1095+// if(CmdCtrlSocket == TrnCtrlSocket)
1096+// Sts = NO;
10961097
10971098 return(Sts);
10981099 }
@@ -1475,6 +1476,26 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
14751476 #endif
14761477 TryConnect = NO;
14771478
1479+ // FEAT対応
1480+ // ホストの機能を確認
1481+ if(ContSock != INVALID_SOCKET)
1482+ {
1483+ if((Sts = command(ContSock, Reply, &CancelFlg, "FEAT")) == 211)
1484+ {
1485+ // 改行文字はReadReplyMessageで消去されるため区切り文字に空白を使用
1486+ // UTF-8対応
1487+ if(strstr(Reply, " UTF8 "))
1488+ CurHost.Feature |= FEATURE_UTF8;
1489+ }
1490+ // UTF-8対応
1491+ if(CurHost.NameKanjiCode == KANJI_AUTO && (CurHost.Feature & FEATURE_UTF8))
1492+ {
1493+ if((Sts = command(ContSock, Reply, &CancelFlg, "OPTS UTF8 ON")) == 200)
1494+ {
1495+ }
1496+ }
1497+ }
1498+
14781499 return(ContSock);
14791500 }
14801501
@@ -2237,3 +2258,9 @@ int AskMaxThreadCount(void)
22372258 return(CurHost.MaxThreadCount);
22382259 }
22392260
2261+// FEAT対応
2262+int AskHostFeature(void)
2263+{
2264+ return(CurHost.Feature);
2265+}
2266+
--- a/filelist.c
+++ b/filelist.c
@@ -27,7 +27,8 @@
2727 / THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2828 /============================================================================*/
2929
30-#define _WIN32_WINNT 0x400
30+// UTF-8対応
31+//#define _WIN32_WINNT 0x400
3132
3233 #define STRICT
3334 #include <windows.h>
@@ -3593,7 +3594,6 @@ static int AnalizeFileInfo(char *Str)
35933594 }
35943595 }
35953596 }
3596-
35973597 }
35983598
35993599 DoPrintf("ListType=%d", Ret);
--- a/getput.c
+++ b/getput.c
@@ -120,6 +120,8 @@ static HANDLE hListAccMutex; /* 転送ファイルアクセス用ミューテ
120120
121121 static int TransFiles = 0; /* 転送待ちファイル数 */
122122 static TRANSPACKET *TransPacketBase = NULL; /* 転送ファイルリスト */
123+// 同時接続対応
124+static TRANSPACKET *NextTransPacketBase = NULL;
123125
124126 // 同時接続対応
125127 //static int Canceled; /* 中止フラグ YES/NO */
@@ -373,6 +375,9 @@ void AddTransFileList(TRANSPACKET *Pkt)
373375 PostMessage(GetMainHwnd(), WM_CHANGE_COND, 0, 0);
374376 }
375377 }
378+ // 同時接続対応
379+ if(NextTransPacketBase == NULL)
380+ NextTransPacketBase = TransPacketBase;
376381 ReleaseMutex(hListAccMutex);
377382
378383 return;
@@ -413,6 +418,9 @@ void AppendTransFileList(TRANSPACKET *Pkt)
413418 Pos = Pos->Next;
414419 Pos->Next = Pkt;
415420 }
421+ // 同時接続対応
422+ if(NextTransPacketBase == NULL)
423+ NextTransPacketBase = TransPacketBase;
416424
417425 while(Pkt != NULL)
418426 {
@@ -494,19 +502,26 @@ static void EraseTransFileList(void)
494502 if(strcmp(New->Cmd, "BACKCUR") == 0)
495503 {
496504 if(NotDel != NULL)
497- free(NotDel);
505+ // 同時接続対応
506+// free(NotDel);
507+ strcpy(NotDel->Cmd, "");
498508 NotDel = New;
499509 New = New->Next;
500- NotDel->Next = NULL;
510+ // 同時接続対応
511+// NotDel->Next = NULL;
501512 }
502513 else
503514 {
504515 Next = New->Next;
505- free(New);
516+ // 同時接続対応
517+// free(New);
518+ strcpy(New->Cmd, "");
506519 New = Next;
507520 }
508521 }
509522 TransPacketBase = NotDel;
523+ // 同時接続対応
524+ NextTransPacketBase = TransPacketBase;
510525 TransFiles = 0;
511526 PostMessage(GetMainHwnd(), WM_CHANGE_COND, 0, 0);
512527 ReleaseMutex(hListAccMutex);
@@ -611,8 +626,10 @@ static ULONG WINAPI TransferThread(void *Dummy)
611626 char Tmp[FMAX_PATH+1];
612627 int CwdSts;
613628 int GoExit;
614- int Down;
615- int Up;
629+// int Down;
630+// int Up;
631+ static int Down;
632+ static int Up;
616633 int DelNotify;
617634 int ThreadCount;
618635 SOCKET CmdSkt;
@@ -650,6 +667,12 @@ static ULONG WINAPI TransferThread(void *Dummy)
650667 // Canceled = NO;
651668 Canceled[ThreadCount] = NO;
652669
670+ while(TransPacketBase != NULL && strcmp(TransPacketBase->Cmd, "") == 0)
671+ {
672+ Pos = TransPacketBase;
673+ TransPacketBase = TransPacketBase->Next;
674+ free(Pos);
675+ }
653676 NewCmdSkt = AskCmdCtrlSkt();
654677 if(TransPacketBase && NewCmdSkt != INVALID_SOCKET && ThreadCount < AskMaxThreadCount())
655678 {
@@ -682,10 +705,10 @@ static ULONG WINAPI TransferThread(void *Dummy)
682705 }
683706 CmdSkt = NewCmdSkt;
684707 // if(TransPacketBase != NULL)
685- if(TrnSkt != INVALID_SOCKET && TransPacketBase != NULL)
708+ if(TrnSkt != INVALID_SOCKET && NextTransPacketBase != NULL)
686709 {
687- Pos = TransPacketBase;
688- TransPacketBase = TransPacketBase->Next;
710+ Pos = NextTransPacketBase;
711+ NextTransPacketBase = NextTransPacketBase->Next;
689712 // ディレクトリ操作は非同期で行わない
690713 // ReleaseMutex(hListAccMutex);
691714 if(hWndTrans == NULL)
@@ -1003,6 +1026,7 @@ static ULONG WINAPI TransferThread(void *Dummy)
10031026 for(i = 0; i < MAX_DATA_CONNECTION; i++)
10041027 Canceled[i] = YES;
10051028 EraseTransFileList();
1029+ Pos = NULL;
10061030 }
10071031 else
10081032 {
@@ -1032,7 +1056,8 @@ static ULONG WINAPI TransferThread(void *Dummy)
10321056 }
10331057 if(hWndTrans != NULL)
10341058 SendMessage(hWndTrans, WM_SET_PACKET, 0, 0);
1035- free(Pos);
1059+ if(Pos != NULL)
1060+ strcpy(Pos->Cmd, "");
10361061 }
10371062 // else
10381063 else if(TransPacketBase == NULL)
@@ -1047,20 +1072,20 @@ static ULONG WINAPI TransferThread(void *Dummy)
10471072 DestroyWindow(hWndTrans);
10481073 hWndTrans = NULL;
10491074
1050- if(GoExit == YES)
1051- {
1052- SoundPlay(SND_TRANS);
1053-
1054- if(AskAutoExit() == NO)
1055- {
1056- if(Down == YES)
1057- PostMessage(GetMainHwnd(), WM_REFRESH_LOCAL_FLG, 0, 0);
1058- if(Up == YES)
1059- PostMessage(GetMainHwnd(), WM_REFRESH_REMOTE_FLG, 0, 0);
1060- }
1061- Down = NO;
1062- Up = NO;
1063- }
1075+// if(GoExit == YES)
1076+// {
1077+// SoundPlay(SND_TRANS);
1078+//
1079+// if(AskAutoExit() == NO)
1080+// {
1081+// if(Down == YES)
1082+// PostMessage(GetMainHwnd(), WM_REFRESH_LOCAL_FLG, 0, 0);
1083+// if(Up == YES)
1084+// PostMessage(GetMainHwnd(), WM_REFRESH_REMOTE_FLG, 0, 0);
1085+// }
1086+// Down = NO;
1087+// Up = NO;
1088+// }
10641089 }
10651090 }
10661091 BackgrndMessageProc();
@@ -1068,6 +1093,16 @@ static ULONG WINAPI TransferThread(void *Dummy)
10681093
10691094 if(GoExit == YES)
10701095 {
1096+ SoundPlay(SND_TRANS);
1097+ if(AskAutoExit() == NO)
1098+ {
1099+ if(Down == YES)
1100+ PostMessage(GetMainHwnd(), WM_REFRESH_LOCAL_FLG, 0, 0);
1101+ if(Up == YES)
1102+ PostMessage(GetMainHwnd(), WM_REFRESH_REMOTE_FLG, 0, 0);
1103+ }
1104+ Down = NO;
1105+ Up = NO;
10711106 PostMessage(GetMainHwnd(), WM_COMMAND, MAKEWPARAM(MENU_AUTO_EXIT, 0), 0);
10721107 GoExit = NO;
10731108 }
--- a/hostman.c
+++ b/hostman.c
@@ -1309,6 +1309,7 @@ void CopyDefaultHost(HOSTDATA *Set)
13091309 Set->UseSFTP = YES;
13101310 // 同時接続対応
13111311 Set->MaxThreadCount = 1;
1312+ Set->Feature = 0;
13121313 return;
13131314 }
13141315
@@ -1526,6 +1527,10 @@ static int DispHostSetDlg(HWND hDlg)
15261527 PROPSHEETPAGE psp[7];
15271528 PROPSHEETHEADER psh;
15281529
1530+ // 変数が未初期化のバグ修正
1531+ memset(&psp, 0, sizeof(psp));
1532+ memset(&psh, 0, sizeof(psh));
1533+
15291534 psp[0].dwSize = sizeof(PROPSHEETPAGE);
15301535 psp[0].dwFlags = PSP_USETITLE | PSP_HASHELP;
15311536 psp[0].hInstance = GetFtpInst();
--- a/main.c
+++ b/main.c
@@ -244,6 +244,7 @@ int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLi
244244
245245 InitCommonControls();
246246
247+ // FTPS対応
247248 #ifdef USE_OPENSSL
248249 LoadOpenSSL();
249250 #endif
@@ -277,6 +278,7 @@ int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLi
277278 Ret = Msg.wParam;
278279 }
279280 UnregisterClass(FtpClassStr, hInstFtp);
281+ // FTPS対応
280282 #ifdef USE_OPENSSL
281283 FreeOpenSSL();
282284 #endif
--- a/mbswrapper.c
+++ b/mbswrapper.c
@@ -1,4 +1,4 @@
1-// mbswrapper.cpp
1+// mbswrapper.c
22 // Copyright (C) 2011 Suguru Kawamoto
33 // マルチバイト文字ワイド文字APIラッパー
44 // マルチバイト文字はUTF-8、ワイド文字はUTF-16であるものとする
@@ -6,9 +6,6 @@
66
77 #define UNICODE
88 #define _UNICODE
9-#define _WIN32_WINNT 0x0600
10-#undef _WIN32_IE
11-#define _WIN32_IE 0x0400
129
1310 #include <tchar.h>
1411 #include <direct.h>
@@ -40,6 +37,16 @@ int WtoM(LPSTR pDst, int size, LPCWSTR pSrc, int count)
4037 return WideCharToMultiByte(CP_UTF8, 0, pSrc, count, NULL, 0, NULL, NULL);
4138 }
4239
40+// Shift_JIS文字列からワイド文字列へ変換
41+int AtoW(LPWSTR pDst, int size, LPCSTR pSrc, int count)
42+{
43+ if(pSrc < (LPCSTR)0x00010000 || pSrc == (LPCSTR)~0)
44+ return 0;
45+ if(pDst)
46+ return MultiByteToWideChar(CP_ACP, 0, pSrc, count, pDst, size);
47+ return MultiByteToWideChar(CP_ACP, 0, pSrc, count, NULL, 0);
48+}
49+
4350 // ワイド文字列からShift_JIS文字列へ変換
4451 int WtoA(LPSTR pDst, int size, LPCWSTR pSrc, int count)
4552 {
@@ -179,6 +186,24 @@ int WtoMMultiString(LPSTR pDst, int size, LPCWSTR pSrc)
179186 return i;
180187 }
181188
189+// NULL区切りShift_JIS文字列からワイド文字列へ変換
190+int AtoWMultiString(LPWSTR pDst, int size, LPCSTR pSrc)
191+{
192+ int i;
193+ if(pSrc < (LPCSTR)0x00010000 || pSrc == (LPCSTR)~0)
194+ return 0;
195+ if(!pDst)
196+ return GetMultiStringLengthA(pSrc);
197+ i = 0;
198+ while(*pSrc != '\0')
199+ {
200+ i += MultiByteToWideChar(CP_ACP, 0, pSrc, -1, pDst + i, size - i - 1);
201+ pSrc += strlen(pSrc) + 1;
202+ }
203+ pDst[i] = L'\0';
204+ return i;
205+}
206+
182207 // NULL区切りワイド文字列からShift_JIS文字列へ変換
183208 int WtoAMultiString(LPSTR pDst, int size, LPCWSTR pSrc)
184209 {
@@ -234,6 +259,7 @@ char* AllocateStringA(int size)
234259 }
235260
236261 // メモリを確保してマルチバイト文字列からワイド文字列へ変換
262+// リソースIDならば元の値を返す
237263 wchar_t* DuplicateMtoW(LPCSTR lpString, int c)
238264 {
239265 wchar_t* p;
@@ -252,6 +278,7 @@ wchar_t* DuplicateMtoW(LPCSTR lpString, int c)
252278 }
253279
254280 // 指定したサイズのメモリを確保してマルチバイト文字列からワイド文字列へ変換
281+// リソースIDならば元の値を返す
255282 wchar_t* DuplicateMtoWBuffer(LPCSTR lpString, int c, int size)
256283 {
257284 wchar_t* p;
@@ -270,6 +297,7 @@ wchar_t* DuplicateMtoWBuffer(LPCSTR lpString, int c, int size)
270297 }
271298
272299 // メモリを確保してNULL区切りマルチバイト文字列からワイド文字列へ変換
300+// リソースIDならば元の値を返す
273301 wchar_t* DuplicateMtoWMultiString(LPCSTR lpString)
274302 {
275303 int count;
@@ -284,6 +312,7 @@ wchar_t* DuplicateMtoWMultiString(LPCSTR lpString)
284312 }
285313
286314 // 指定したサイズのメモリを確保してNULL区切りマルチバイト文字列からワイド文字列へ変換
315+// リソースIDならば元の値を返す
287316 wchar_t* DuplicateMtoWMultiStringBuffer(LPCSTR lpString, int size)
288317 {
289318 int count;
@@ -302,6 +331,7 @@ wchar_t* DuplicateMtoWMultiStringBuffer(LPCSTR lpString, int size)
302331 }
303332
304333 // メモリを確保してワイド文字列からマルチバイト文字列へ変換
334+// リソースIDならば元の値を返す
305335 char* DuplicateWtoM(LPCWSTR lpString, int c)
306336 {
307337 char* p;
@@ -319,7 +349,27 @@ char* DuplicateWtoM(LPCWSTR lpString, int c)
319349 return p;
320350 }
321351
352+// メモリを確保してShift_JIS文字列からワイド文字列へ変換
353+// リソースIDならば元の値を返す
354+wchar_t* DuplicateAtoW(LPCSTR lpString, int c)
355+{
356+ wchar_t* p;
357+ int i;
358+ if(lpString < (LPCSTR)0x00010000 || lpString == (LPCSTR)~0)
359+ return (wchar_t*)lpString;
360+ if(c < 0)
361+ c = strlen(lpString);
362+ p = AllocateStringW(AtoW(NULL, 0, lpString, c) + 1);
363+ if(p)
364+ {
365+ i = AtoW(p, 65535, lpString, c);
366+ p[i] = L'\0';
367+ }
368+ return p;
369+}
370+
322371 // メモリを確保してワイド文字列からShift_JIS文字列へ変換
372+// リソースIDならば元の値を返す
323373 char* DuplicateWtoA(LPCWSTR lpString, int c)
324374 {
325375 char* p;
@@ -338,6 +388,7 @@ char* DuplicateWtoA(LPCWSTR lpString, int c)
338388 }
339389
340390 // 文字列用に確保したメモリを開放
391+// リソースIDならば何もしない
341392 void FreeDuplicatedString(void* p)
342393 {
343394 if(p < (void*)0x00010000 || p == (void*)~0)
@@ -351,6 +402,7 @@ void FreeDuplicatedString(void* p)
351402 // マルチバイト文字バッファ pm%d
352403 // 引数バッファ a%d
353404
405+#pragma warning(disable:4102)
354406 #define START_ROUTINE do{
355407 #define END_ROUTINE }while(0);
356408
@@ -359,6 +411,30 @@ void FreeDuplicatedString(void* p)
359411 #define QUIT_ROUTINE goto end_of_routine;
360412 */
361413
414+int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow)
415+{
416+ int r = 0;
417+ char* pm0 = NULL;
418+START_ROUTINE
419+ pm0 = DuplicateWtoM(lpCmdLine, -1);
420+ r = WinMainM(hInstance, hPrevInstance, pm0, nCmdShow);
421+END_ROUTINE
422+ FreeDuplicatedString(pm0);
423+ return r;
424+}
425+
426+HMODULE LoadLibraryM(LPCSTR lpLibFileName)
427+{
428+ HMODULE r = NULL;
429+ wchar_t* pw0 = NULL;
430+START_ROUTINE
431+ pw0 = DuplicateMtoW(lpLibFileName, -1);
432+ r = LoadLibraryW(pw0);
433+END_ROUTINE
434+ FreeDuplicatedString(pw0);
435+ return r;
436+}
437+
362438 HANDLE CreateFileM(LPCSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile)
363439 {
364440 HANDLE r = INVALID_HANDLE_VALUE;
@@ -878,11 +954,24 @@ END_ROUTINE
878954 return r;
879955 }
880956
957+LPSTR GetCommandLineM()
958+{
959+ LPSTR r = 0;
960+ static char* pm0 = NULL;
961+START_ROUTINE
962+ if(!pm0)
963+ pm0 = DuplicateWtoM(GetCommandLineW(), -1);
964+ r = pm0;
965+END_ROUTINE
966+ return r;
967+}
968+
881969 DWORD GetCurrentDirectoryM(DWORD nBufferLength, LPSTR lpBuffer)
882970 {
883971 DWORD r = 0;
884972 wchar_t* pw0 = NULL;
885973 START_ROUTINE
974+ // TODO: バッファが不十分な場合に必要なサイズを返す
886975 pw0 = AllocateStringW(nBufferLength * 4);
887976 GetCurrentDirectoryW(nBufferLength * 4, pw0);
888977 WtoM(lpBuffer, nBufferLength, pw0, -1);
@@ -904,18 +993,6 @@ END_ROUTINE
904993 return r;
905994 }
906995
907-BOOL SetDllDirectoryM(LPCSTR lpPathName)
908-{
909- BOOL r = FALSE;
910- wchar_t* pw0 = NULL;
911-START_ROUTINE
912- pw0 = DuplicateMtoW(lpPathName, -1);
913- r = SetDllDirectoryW(pw0);
914-END_ROUTINE
915- FreeDuplicatedString(pw0);
916- return r;
917-}
918-
919996 DWORD GetTempPathM(DWORD nBufferLength, LPSTR lpBuffer)
920997 {
921998 DWORD r = 0;
@@ -1104,56 +1181,79 @@ START_ROUTINE
11041181 a0.hIcon = v0->hIcon;
11051182 a0.pszCaption = DuplicateMtoW(v0->pszCaption, -1);
11061183 a0.nPages = v0->nPages;
1107- a0.pStartPage = DuplicateMtoW(v0->pStartPage, -1);
1108- if(v0->ppsp && (pwPage = (PROPSHEETPAGEW*)malloc(sizeof(PROPSHEETPAGEW) * v0->nPages)))
1184+ if(v0->dwFlags & PSH_USEPSTARTPAGE)
1185+ a0.pStartPage = DuplicateMtoW(v0->pStartPage, -1);
1186+ else
1187+ a0.nStartPage = v0->nStartPage;
1188+ if(v0->dwFlags & PSH_PROPSHEETPAGE)
11091189 {
1110- for(i = 0; i < v0->nPages; i++)
1190+ if(v0->ppsp && (pwPage = (PROPSHEETPAGEW*)malloc(sizeof(PROPSHEETPAGEW) * v0->nPages)))
11111191 {
1112- pwPage[i].dwSize = sizeof(PROPSHEETPAGEW);
1113- pwPage[i].dwFlags = v0->ppsp[i].dwFlags;
1114- pwPage[i].hInstance = v0->ppsp[i].hInstance;
1115- pwPage[i].pszTemplate = DuplicateMtoW(v0->ppsp[i].pszTemplate, -1);
1116- if(v0->ppsp[i].dwFlags & PSP_USEICONID)
1117- pwPage[i].pszIcon = DuplicateMtoW(v0->ppsp[i].pszIcon, -1);
1118- else
1119- pwPage[i].hIcon = v0->ppsp[i].hIcon;
1120- if(v0->ppsp[i].dwFlags & PSP_USETITLE)
1121- pwPage[i].pszTitle = DuplicateMtoW(v0->ppsp[i].pszTitle, -1);
1122- pwPage[i].pfnDlgProc = v0->ppsp[i].pfnDlgProc;
1123- pwPage[i].lParam = v0->ppsp[i].lParam;
1124- // TODO: pfnCallback
1125- pwPage[i].pfnCallback = v0->ppsp[i].pfnCallback;
1126- pwPage[i].pcRefParent = v0->ppsp[i].pcRefParent;
1127-// pwPage[i].pszHeaderTitle = DuplicateMtoW(v0->ppsp[i].pszHeaderTitle, -1);
1128-// pwPage[i].pszHeaderSubTitle = DuplicateMtoW(v0->ppsp[i].pszHeaderSubTitle, -1);
1129- pwPage[i].hActCtx = v0->ppsp[i].hActCtx;
1130-// pwPage[i].pszbmHeader = DuplicateMtoW(v0->ppsp[i].pszbmHeader, -1);
1192+ for(i = 0; i < v0->nPages; i++)
1193+ {
1194+ pwPage[i].dwSize = sizeof(PROPSHEETPAGEW);
1195+ pwPage[i].dwFlags = v0->ppsp[i].dwFlags;
1196+ pwPage[i].hInstance = v0->ppsp[i].hInstance;
1197+ if(v0->ppsp[i].dwFlags & PSP_DLGINDIRECT)
1198+ pwPage[i].pResource = v0->ppsp[i].pResource;
1199+ else
1200+ pwPage[i].pszTemplate = DuplicateMtoW(v0->ppsp[i].pszTemplate, -1);
1201+ if(v0->ppsp[i].dwFlags & PSP_USEICONID)
1202+ pwPage[i].pszIcon = DuplicateMtoW(v0->ppsp[i].pszIcon, -1);
1203+ else
1204+ pwPage[i].hIcon = v0->ppsp[i].hIcon;
1205+ if(v0->ppsp[i].dwFlags & PSP_USETITLE)
1206+ pwPage[i].pszTitle = DuplicateMtoW(v0->ppsp[i].pszTitle, -1);
1207+ pwPage[i].pfnDlgProc = v0->ppsp[i].pfnDlgProc;
1208+ pwPage[i].lParam = v0->ppsp[i].lParam;
1209+ // TODO: pfnCallback
1210+ pwPage[i].pfnCallback = (LPFNPSPCALLBACKW)v0->ppsp[i].pfnCallback;
1211+ pwPage[i].pcRefParent = v0->ppsp[i].pcRefParent;
1212+ if(v0->ppsp[i].dwFlags & PSP_USEHEADERTITLE)
1213+ pwPage[i].pszHeaderTitle = DuplicateMtoW(v0->ppsp[i].pszHeaderTitle, -1);
1214+ if(v0->ppsp[i].dwFlags & PSP_USEHEADERSUBTITLE)
1215+ pwPage[i].pszHeaderSubTitle = DuplicateMtoW(v0->ppsp[i].pszHeaderSubTitle, -1);
1216+ }
11311217 }
1218+ else
1219+ pwPage = NULL;
1220+ a0.ppsp = pwPage;
11321221 }
11331222 else
1134- pwPage = NULL;
1135- a0.ppsp = pwPage;
1223+ a0.phpage = v0->phpage;
11361224 a0.pfnCallback = v0->pfnCallback;
1225+ if(v0->dwFlags & PSH_USEHBMWATERMARK)
1226+ a0.hbmWatermark = v0->hbmWatermark;
1227+ else
1228+ a0.pszbmWatermark = DuplicateMtoW(v0->pszbmWatermark, -1);
11371229 r = PropertySheetW(&a0);
11381230 if(a0.dwFlags & PSH_USEICONID)
1139- FreeDuplicatedString(a0.pszIcon);
1140- FreeDuplicatedString(a0.pszCaption);
1141- FreeDuplicatedString(a0.pStartPage);
1142- if(pwPage)
1231+ FreeDuplicatedString((void*)a0.pszIcon);
1232+ FreeDuplicatedString((void*)a0.pszCaption);
1233+ if(v0->dwFlags & PSH_USEPSTARTPAGE)
1234+ FreeDuplicatedString((void*)a0.pStartPage);
1235+ if(v0->dwFlags & PSH_PROPSHEETPAGE)
11431236 {
1144- for(i = 0; i < v0->nPages; i++)
1237+ if(pwPage)
11451238 {
1146- FreeDuplicatedString(pwPage[i].pszTemplate);
1147- if(pwPage[i].dwFlags & PSP_USEICONID)
1148- FreeDuplicatedString(pwPage[i].pszIcon);
1149- if(pwPage[i].dwFlags & PSP_USETITLE)
1150- FreeDuplicatedString(pwPage[i].pszTitle);
1151-// FreeDuplicatedString(pwPage[i].pszHeaderTitle);
1152-// FreeDuplicatedString(pwPage[i].pszHeaderSubTitle);
1153-// FreeDuplicatedString(pwPage[i].pszbmHeader);
1239+ for(i = 0; i < v0->nPages; i++)
1240+ {
1241+ if(!(v0->ppsp[i].dwFlags & PSP_DLGINDIRECT))
1242+ FreeDuplicatedString((void*)pwPage[i].pszTemplate);
1243+ if(v0->ppsp[i].dwFlags & PSP_USEICONID)
1244+ FreeDuplicatedString((void*)pwPage[i].pszIcon);
1245+ if(v0->ppsp[i].dwFlags & PSP_USETITLE)
1246+ FreeDuplicatedString((void*)pwPage[i].pszTitle);
1247+ if(v0->ppsp[i].dwFlags & PSP_USEHEADERTITLE)
1248+ FreeDuplicatedString((void*)pwPage[i].pszHeaderTitle);
1249+ if(v0->ppsp[i].dwFlags & PSP_USEHEADERSUBTITLE)
1250+ FreeDuplicatedString((void*)pwPage[i].pszHeaderSubTitle);
1251+ }
1252+ free(pwPage);
11541253 }
1155- free(pwPage);
11561254 }
1255+ if(!(v0->dwFlags & PSH_USEHBMWATERMARK))
1256+ FreeDuplicatedString((void*)a0.pszbmWatermark);
11571257 END_ROUTINE
11581258 return r;
11591259 }
@@ -1441,7 +1541,8 @@ START_ROUTINE
14411541 wFileOp.fFlags = lpFileOp->fFlags;
14421542 wFileOp.fAnyOperationsAborted = lpFileOp->fAnyOperationsAborted;
14431543 wFileOp.hNameMappings = lpFileOp->hNameMappings;
1444- pw2 = DuplicateMtoW(lpFileOp->lpszProgressTitle, -1);
1544+ if(lpFileOp->fFlags & FOF_SIMPLEPROGRESS)
1545+ pw2 = DuplicateMtoW(lpFileOp->lpszProgressTitle, -1);
14451546 r = SHFileOperationW(&wFileOp);
14461547 lpFileOp->fAnyOperationsAborted = wFileOp.fAnyOperationsAborted;
14471548 END_ROUTINE
@@ -1483,9 +1584,13 @@ START_ROUTINE
14831584 wmii.hbmpChecked = lpmii->hbmpChecked;
14841585 wmii.hbmpUnchecked = lpmii->hbmpUnchecked;
14851586 wmii.dwItemData = lpmii->dwItemData;
1486- pw0 = DuplicateMtoWBuffer(lpmii->dwTypeData, -1, lpmii->cch * 4);
1487- wmii.dwTypeData = pw0;
1488- wmii.cch = lpmii->cch * 4;
1587+ if(lpmii->fMask & MIIM_TYPE)
1588+ {
1589+ pw0 = DuplicateMtoWBuffer(lpmii->dwTypeData, -1, lpmii->cch * 4);
1590+ wmii.dwTypeData = pw0;
1591+ wmii.cch = lpmii->cch * 4;
1592+ }
1593+ wmii.hbmpItem = lpmii->hbmpItem;
14891594 r = GetMenuItemInfoW(hmenu, item, fByPosition, &wmii);
14901595 lpmii->fType = wmii.fType;
14911596 lpmii->fState = wmii.fState;
@@ -1593,7 +1698,7 @@ START_ROUTINE
15931698 v0->nFontType = a0.nFontType;
15941699 if(pwlf)
15951700 free(pwlf);
1596- FreeDuplicatedString(a0.lpTemplateName);
1701+ FreeDuplicatedString((void*)a0.lpTemplateName);
15971702 FreeDuplicatedString(a0.lpszStyle);
15981703 END_ROUTINE
15991704 FreeDuplicatedString(pw0);
@@ -1696,7 +1801,7 @@ START_ROUTINE
16961801 if(wr)
16971802 {
16981803 *wr = L'\0';
1699- r = _Str + WtoM(NULL, 0, pw0, -1) - 1;
1804+ r = (unsigned char*)_Str + WtoM(NULL, 0, pw0, -1) - 1;
17001805 }
17011806 END_ROUTINE
17021807 FreeDuplicatedString(pw0);
@@ -1715,7 +1820,7 @@ START_ROUTINE
17151820 if(wr)
17161821 {
17171822 *wr = L'\0';
1718- r = _Str + WtoM(NULL, 0, pw0, -1) - 1;
1823+ r = (unsigned char*)_Str + WtoM(NULL, 0, pw0, -1) - 1;
17191824 }
17201825 END_ROUTINE
17211826 FreeDuplicatedString(pw0);
@@ -1735,7 +1840,7 @@ START_ROUTINE
17351840 if(wr)
17361841 {
17371842 *wr = L'\0';
1738- r = _Str + WtoM(NULL, 0, pw0, -1) - 1;
1843+ r = (unsigned char*)_Str + WtoM(NULL, 0, pw0, -1) - 1;
17391844 }
17401845 END_ROUTINE
17411846 FreeDuplicatedString(pw0);
@@ -1827,7 +1932,7 @@ START_ROUTINE
18271932 if(wr)
18281933 {
18291934 *wr = L'\0';
1830- r = _Str + WtoM(NULL, 0, pw0, -1) - 1;
1935+ r = (unsigned char*)_Str + WtoM(NULL, 0, pw0, -1) - 1;
18311936 }
18321937 END_ROUTINE
18331938 FreeDuplicatedString(pw0);
--- a/mbswrapper.h
+++ b/mbswrapper.h
@@ -11,6 +11,12 @@
1111
1212 #ifndef DO_NOT_REPLACE
1313
14+#undef WinMain
15+#define WinMain WinMainM
16+int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow);
17+#undef LoadLibrary
18+#define LoadLibrary LoadLibraryM
19+HMODULE LoadLibraryM(LPCSTR lpLibFileName);
1420 #undef CreateFile
1521 #define CreateFile CreateFileM
1622 HANDLE CreateFileM(LPCSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile);
@@ -59,15 +65,15 @@ BOOL SetWindowTextM(HWND hWnd, LPCSTR lpString);
5965 #undef DragQueryFile
6066 #define DragQueryFile DragQueryFileM
6167 UINT DragQueryFileM(HDROP hDrop, UINT iFile, LPSTR lpszFile, UINT cch);
68+#undef GetCommandLine
69+#define GetCommandLine GetCommandLineM
70+LPSTR GetCommandLineM();
6271 #undef GetCurrentDirectory
6372 #define GetCurrentDirectory GetCurrentDirectoryM
6473 DWORD GetCurrentDirectoryM(DWORD nBufferLength, LPSTR lpBuffer);
6574 #undef SetCurrentDirectory
6675 #define SetCurrentDirectory SetCurrentDirectoryM
6776 BOOL SetCurrentDirectoryM(LPCSTR lpPathName);
68-#undef SetDllDirectory
69-#define SetDllDirectory SetDllDirectoryM
70-BOOL SetDllDirectoryM(LPCSTR lpPathName);
7177 #undef GetTempPath
7278 #define GetTempPath GetTempPathM
7379 DWORD GetTempPathM(DWORD nBufferLength, LPSTR lpBuffer);
@@ -201,15 +207,17 @@ FILE * fopenM(const char * _Filename, const char * _Mode);
201207
202208 int MtoW(LPWSTR pDst, int size, LPCSTR pSrc, int count);
203209 int WtoM(LPSTR pDst, int size, LPCWSTR pSrc, int count);
210+int AtoW(LPWSTR pDst, int size, LPCSTR pSrc, int count);
204211 int WtoA(LPSTR pDst, int size, LPCWSTR pSrc, int count);
205212 int TerminateStringM(LPSTR lpString, int size);
206213 int TerminateStringW(LPWSTR lpString, int size);
207-int TerminateStringA(LPWSTR lpString, int size);
214+int TerminateStringA(LPSTR lpString, int size);
208215 size_t GetMultiStringLengthM(LPCSTR lpString);
209216 size_t GetMultiStringLengthW(LPCWSTR lpString);
210-size_t GetMultiStringLengthA(LPCWSTR lpString);
217+size_t GetMultiStringLengthA(LPCSTR lpString);
211218 int MtoWMultiString(LPWSTR pDst, int size, LPCSTR pSrc);
212219 int WtoMMultiString(LPSTR pDst, int size, LPCWSTR pSrc);
220+int AtoWMultiString(LPWSTR pDst, int size, LPCSTR pSrc);
213221 int WtoAMultiString(LPSTR pDst, int size, LPCWSTR pSrc);
214222 char* AllocateStringM(int size);
215223 wchar_t* AllocateStringW(int size);
@@ -219,8 +227,11 @@ wchar_t* DuplicateMtoWBuffer(LPCSTR lpString, int c, int size);
219227 wchar_t* DuplicateMtoWMultiString(LPCSTR lpString);
220228 wchar_t* DuplicateMtoWMultiStringBuffer(LPCSTR lpString, int size);
221229 char* DuplicateWtoM(LPCWSTR lpString, int c);
230+wchar_t* DuplicateAtoW(LPCSTR lpString, int c);
222231 char* DuplicateWtoA(LPCWSTR lpString, int c);
223232 void FreeDuplicatedString(void* p);
224233
234+int WINAPI WinMainM(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow);
235+
225236 #endif
226237
--- a/option.c
+++ b/option.c
@@ -163,6 +163,10 @@ void SetOption(int Start)
163163 PROPSHEETPAGE psp[12];
164164 PROPSHEETHEADER psh;
165165
166+ // 変数が未初期化のバグ修正
167+ memset(&psp, 0, sizeof(psp));
168+ memset(&psh, 0, sizeof(psh));
169+
166170 psp[0].dwSize = sizeof(PROPSHEETPAGE);
167171 psp[0].dwFlags = PSP_USETITLE | PSP_HASHELP;
168172 psp[0].hInstance = GetFtpInst();
--- a/ras.c
+++ b/ras.c
@@ -29,7 +29,8 @@
2929
3030 #define STRICT
3131
32-#define WINVER 0x400
32+// UTF-8対応
33+//#define WINVER 0x400
3334
3435 #include <windows.h>
3536 #include <stdio.h>
--- a/socketwrapper.c
+++ b/socketwrapper.c
@@ -1,4 +1,4 @@
1-// socketwrapper.cpp
1+// socketwrapper.c
22 // Copyright (C) 2011 Suguru Kawamoto
33 // ソケットラッパー
44 // socket関連関数をOpenSSL用に置換