OSDN Git Service

Fix line feed codes.
authors_kawamoto <s_kawamoto@users.sourceforge.jp>
Wed, 12 Oct 2011 22:31:26 +0000 (07:31 +0900)
committers_kawamoto <s_kawamoto@users.sourceforge.jp>
Wed, 12 Oct 2011 22:31:26 +0000 (07:31 +0900)
30 files changed:
FFFTP.vc90.sln
FFFTP.vc90.vcproj
FFFTP_English.vc90.vcproj
Package/EXEpress/eng/ffftp.ini
Package/EXEpress/jpn/ffftp.ini
dist/Microsoft.VC90.CRT.manifest
encutf8/ReadMe.txt
encutf8/encutf8.cpp
encutf8/encutf8.sln
encutf8/encutf8.vcproj
encutf8/stdafx.cpp
encutf8/stdafx.h
encutf8/targetver.h
howtobuild.htm
htmlhelp/HTML/H0000065.HTM
htmlhelp/HTML/H0000066.HTM
mbswrapper.c
mbswrapper.h
mbtoutf8.bat
mbtoutf8/ReadMe.txt
mbtoutf8/mbtoutf8.cpp
mbtoutf8/mbtoutf8.sln
mbtoutf8/mbtoutf8.vcproj
mbtoutf8/stdafx.cpp
mbtoutf8/stdafx.h
mbtoutf8/targetver.h
protectprocess.c
protectprocess.h
socketwrapper.c
socketwrapper.h

index 30658d4..f73d409 100644 (file)
@@ -1,25 +1,25 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FFFTP", "FFFTP.vc90.vcproj", "{5D9496DB-45AF-4389-8FEE-27C9A2FA207A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FFFTP_English", "FFFTP_English.vc90.vcproj", "{EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}"
-EndProject
-Global
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Win32 = Debug|Win32
-               Release|Win32 = Release|Win32
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {5D9496DB-45AF-4389-8FEE-27C9A2FA207A}.Debug|Win32.ActiveCfg = Debug|Win32
-               {5D9496DB-45AF-4389-8FEE-27C9A2FA207A}.Debug|Win32.Build.0 = Debug|Win32
-               {5D9496DB-45AF-4389-8FEE-27C9A2FA207A}.Release|Win32.ActiveCfg = Release|Win32
-               {5D9496DB-45AF-4389-8FEE-27C9A2FA207A}.Release|Win32.Build.0 = Release|Win32
-               {EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}.Debug|Win32.ActiveCfg = Debug|Win32
-               {EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}.Debug|Win32.Build.0 = Debug|Win32
-               {EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}.Release|Win32.ActiveCfg = Release|Win32
-               {EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}.Release|Win32.Build.0 = Release|Win32
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-EndGlobal
+Microsoft Visual Studio Solution File, Format Version 10.00\r
+# Visual Studio 2008\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FFFTP", "FFFTP.vc90.vcproj", "{5D9496DB-45AF-4389-8FEE-27C9A2FA207A}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FFFTP_English", "FFFTP_English.vc90.vcproj", "{EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}"\r
+EndProject\r
+Global\r
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
+               Debug|Win32 = Debug|Win32\r
+               Release|Win32 = Release|Win32\r
+       EndGlobalSection\r
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
+               {5D9496DB-45AF-4389-8FEE-27C9A2FA207A}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {5D9496DB-45AF-4389-8FEE-27C9A2FA207A}.Debug|Win32.Build.0 = Debug|Win32\r
+               {5D9496DB-45AF-4389-8FEE-27C9A2FA207A}.Release|Win32.ActiveCfg = Release|Win32\r
+               {5D9496DB-45AF-4389-8FEE-27C9A2FA207A}.Release|Win32.Build.0 = Release|Win32\r
+               {EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}.Debug|Win32.Build.0 = Debug|Win32\r
+               {EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}.Release|Win32.ActiveCfg = Release|Win32\r
+               {EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}.Release|Win32.Build.0 = Release|Win32\r
+       EndGlobalSection\r
+       GlobalSection(SolutionProperties) = preSolution\r
+               HideSolutionNode = FALSE\r
+       EndGlobalSection\r
+EndGlobal\r
index 5b2cba9..f9dee13 100644 (file)
-<?xml version="1.0" encoding="shift_jis"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="9.00"
-       Name="FFFTP"
-       ProjectGUID="{5D9496DB-45AF-4389-8FEE-27C9A2FA207A}"
-       RootNamespace="FFFTP"
-       TargetFrameworkVersion="131072"
-       >
-       <Platforms>
-               <Platform
-                       Name="Win32"
-               />
-       </Platforms>
-       <ToolFiles>
-       </ToolFiles>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory=".\Debug"
-                       IntermediateDirectory=".\Debug"
-                       ConfigurationType="1"
-                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="false"
-                       >
-                       <Tool
-                               Name="VCPreBuildEventTool"
-                       />
-                       <Tool
-                               Name="VCCustomBuildTool"
-                       />
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               MkTypLibCompatible="true"
-                               SuppressStartupBanner="true"
-                               TargetEnvironment="1"
-                               TypeLibraryName=".\Debug\FFFTP.tlb"
-                       />
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="Resource;contrib\openssl\include"
-                               PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0500,_CRT_SECURE_NO_WARNINGS"
-                               RuntimeLibrary="1"
-                               PrecompiledHeaderFile=".\Debug\FFFTP.pch"
-                               AssemblerListingLocation=".\Debug\"
-                               ObjectFile=".\Debug\"
-                               ProgramDataBaseFileName=".\Debug\"
-                               WarningLevel="3"
-                               SuppressStartupBanner="true"
-                               DebugInformationFormat="4"
-                       />
-                       <Tool
-                               Name="VCManagedResourceCompilerTool"
-                       />
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               Culture="1041"
-                       />
-                       <Tool
-                               Name="VCPreLinkEventTool"
-                       />
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalOptions="/MACHINE:I386"
-                               AdditionalDependencies="comctl32.lib crypt32.lib htmlhelp.lib imagehlp.lib rasapi32.lib sfc.lib winmm.lib wintrust.lib wsock32.lib"
-                               OutputFile=".\Debug\FFFTP.exe"
-                               LinkIncremental="2"
-                               SuppressStartupBanner="true"
-                               GenerateManifest="false"
-                               DelayLoadDLLs="advapi32.dll;comctl32.dll;crypt32.dll;comdlg32.dll;gdi32.dll;imagehlp.dll;ole32.dll;sfc.dll;shell32.dll;user32.dll;winmm.dll;wintrust.dll;wsock32.dll"
-                               GenerateDebugInformation="true"
-                               ProgramDatabaseFile=".\Debug\FFFTP.pdb"
-                               SubSystem="2"
-                               RandomizedBaseAddress="1"
-                               DataExecutionPrevention="0"
-                       />
-                       <Tool
-                               Name="VCALinkTool"
-                       />
-                       <Tool
-                               Name="VCManifestTool"
-                       />
-                       <Tool
-                               Name="VCXDCMakeTool"
-                       />
-                       <Tool
-                               Name="VCBscMakeTool"
-                       />
-                       <Tool
-                               Name="VCFxCopTool"
-                       />
-                       <Tool
-                               Name="VCAppVerifierTool"
-                       />
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                       />
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory=".\Release"
-                       IntermediateDirectory=".\Release"
-                       ConfigurationType="1"
-                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="false"
-                       >
-                       <Tool
-                               Name="VCPreBuildEventTool"
-                       />
-                       <Tool
-                               Name="VCCustomBuildTool"
-                       />
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               MkTypLibCompatible="true"
-                               SuppressStartupBanner="true"
-                               TargetEnvironment="1"
-                               TypeLibraryName=".\Release\FFFTP.tlb"
-                       />
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               InlineFunctionExpansion="1"
-                               AdditionalIncludeDirectories="Resource;contrib\openssl\include"
-                               PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0500,_CRT_SECURE_NO_WARNINGS"
-                               StringPooling="true"
-                               RuntimeLibrary="0"
-                               EnableFunctionLevelLinking="true"
-                               PrecompiledHeaderFile=".\Release\FFFTP.pch"
-                               AssemblerListingLocation=".\Release\"
-                               ObjectFile=".\Release\"
-                               ProgramDataBaseFileName=".\Release\"
-                               WarningLevel="3"
-                               SuppressStartupBanner="true"
-                               DebugInformationFormat="0"
-                       />
-                       <Tool
-                               Name="VCManagedResourceCompilerTool"
-                       />
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               Culture="1041"
-                       />
-                       <Tool
-                               Name="VCPreLinkEventTool"
-                       />
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalOptions="/MACHINE:I386"
-                               AdditionalDependencies="comctl32.lib crypt32.lib htmlhelp.lib imagehlp.lib rasapi32.lib sfc.lib winmm.lib wintrust.lib wsock32.lib"
-                               OutputFile=".\Release\FFFTP.exe"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="true"
-                               GenerateManifest="false"
-                               DelayLoadDLLs="advapi32.dll;comctl32.dll;crypt32.dll;comdlg32.dll;gdi32.dll;sfc.dll;shell32.dll;ole32.dll;user32.dll;winmm.dll;wintrust.dll;wsock32.dll"
-                               ProgramDatabaseFile=".\Release\FFFTP.pdb"
-                               SubSystem="2"
-                               RandomizedBaseAddress="1"
-                               DataExecutionPrevention="0"
-                       />
-                       <Tool
-                               Name="VCALinkTool"
-                       />
-                       <Tool
-                               Name="VCManifestTool"
-                       />
-                       <Tool
-                               Name="VCXDCMakeTool"
-                       />
-                       <Tool
-                               Name="VCBscMakeTool"
-                       />
-                       <Tool
-                               Name="VCFxCopTool"
-                       />
-                       <Tool
-                               Name="VCAppVerifierTool"
-                       />
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                       />
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"
-                       >
-                       <File
-                               RelativePath=".\aes_modes.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\aescrypt.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\aeskey.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\aestab.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\bookmark.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\cache.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\clipboard.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\codecnv.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\connect.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\diskfree.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\dlgsize.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\ffftp.rc"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\filelist.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\ftpproc.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\getput.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\history.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\hostman.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\local.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\lvtips.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\main.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\mbswrapper.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\md4.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\md5.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\misc.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\OleDragDrop.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\option.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\protectprocess.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\ras.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\regexp.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\registory.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\remote.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\sha.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\skey.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\socket.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\socketwrapper.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\statuswin.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\taskwin.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\tool.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\toolmenu.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\updatebell.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\wildcard.c"
-                               >
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;fi;fd"
-                       >
-                       <File
-                               RelativePath=".\common.h"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\mbswrapper.h"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\protectprocess.h"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\resource.h"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\socketwrapper.h"
-                               >
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Resource Files"
-                       Filter="ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
-                       >
-                       <File
-                               RelativePath=".\Resource\bitmap1.bmp"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\cursor1.cur"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\cursor2.cur"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\drag_csr.cur"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\icon1.ico"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\icon2.ico"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\list_bmp.bmp"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\main_too.bmp"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\nodrop_c.cur"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource\toolbar1.bmp"
-                               >
-                       </File>
-               </Filter>
-               <File
-                       RelativePath=".\Resource\ffftp.exe.manifest"
-                       >
-                       <FileConfiguration
-                               Name="Debug|Win32"
-                               ExcludedFromBuild="true"
-                               >
-                               <Tool
-                                       Name="VCCustomBuildTool"
-                               />
-                       </FileConfiguration>
-                       <FileConfiguration
-                               Name="Release|Win32"
-                               >
-                               <Tool
-                                       Name="VCCustomBuildTool"
-                               />
-                       </FileConfiguration>
-               </File>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="shift_jis"?>\r
+<VisualStudioProject\r
+       ProjectType="Visual C++"\r
+       Version="9.00"\r
+       Name="FFFTP"\r
+       ProjectGUID="{5D9496DB-45AF-4389-8FEE-27C9A2FA207A}"\r
+       RootNamespace="FFFTP"\r
+       TargetFrameworkVersion="131072"\r
+       >\r
+       <Platforms>\r
+               <Platform\r
+                       Name="Win32"\r
+               />\r
+       </Platforms>\r
+       <ToolFiles>\r
+       </ToolFiles>\r
+       <Configurations>\r
+               <Configuration\r
+                       Name="Debug|Win32"\r
+                       OutputDirectory=".\Debug"\r
+                       IntermediateDirectory=".\Debug"\r
+                       ConfigurationType="1"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"\r
+                       UseOfMFC="0"\r
+                       ATLMinimizesCRunTimeLibraryUsage="false"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                               PreprocessorDefinitions="_DEBUG"\r
+                               MkTypLibCompatible="true"\r
+                               SuppressStartupBanner="true"\r
+                               TargetEnvironment="1"\r
+                               TypeLibraryName=".\Debug\FFFTP.tlb"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               Optimization="0"\r
+                               AdditionalIncludeDirectories="Resource;contrib\openssl\include"\r
+                               PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0500,_CRT_SECURE_NO_WARNINGS"\r
+                               RuntimeLibrary="1"\r
+                               PrecompiledHeaderFile=".\Debug\FFFTP.pch"\r
+                               AssemblerListingLocation=".\Debug\"\r
+                               ObjectFile=".\Debug\"\r
+                               ProgramDataBaseFileName=".\Debug\"\r
+                               WarningLevel="3"\r
+                               SuppressStartupBanner="true"\r
+                               DebugInformationFormat="4"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                               PreprocessorDefinitions="_DEBUG"\r
+                               Culture="1041"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalOptions="/MACHINE:I386"\r
+                               AdditionalDependencies="comctl32.lib crypt32.lib htmlhelp.lib imagehlp.lib rasapi32.lib sfc.lib winmm.lib wintrust.lib wsock32.lib"\r
+                               OutputFile=".\Debug\FFFTP.exe"\r
+                               LinkIncremental="2"\r
+                               SuppressStartupBanner="true"\r
+                               GenerateManifest="false"\r
+                               DelayLoadDLLs="advapi32.dll;comctl32.dll;crypt32.dll;comdlg32.dll;gdi32.dll;imagehlp.dll;ole32.dll;sfc.dll;shell32.dll;user32.dll;winmm.dll;wintrust.dll;wsock32.dll"\r
+                               GenerateDebugInformation="true"\r
+                               ProgramDatabaseFile=".\Debug\FFFTP.pdb"\r
+                               SubSystem="2"\r
+                               RandomizedBaseAddress="1"\r
+                               DataExecutionPrevention="0"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+               <Configuration\r
+                       Name="Release|Win32"\r
+                       OutputDirectory=".\Release"\r
+                       IntermediateDirectory=".\Release"\r
+                       ConfigurationType="1"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"\r
+                       UseOfMFC="0"\r
+                       ATLMinimizesCRunTimeLibraryUsage="false"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               MkTypLibCompatible="true"\r
+                               SuppressStartupBanner="true"\r
+                               TargetEnvironment="1"\r
+                               TypeLibraryName=".\Release\FFFTP.tlb"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               InlineFunctionExpansion="1"\r
+                               AdditionalIncludeDirectories="Resource;contrib\openssl\include"\r
+                               PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0500,_CRT_SECURE_NO_WARNINGS"\r
+                               StringPooling="true"\r
+                               RuntimeLibrary="0"\r
+                               EnableFunctionLevelLinking="true"\r
+                               PrecompiledHeaderFile=".\Release\FFFTP.pch"\r
+                               AssemblerListingLocation=".\Release\"\r
+                               ObjectFile=".\Release\"\r
+                               ProgramDataBaseFileName=".\Release\"\r
+                               WarningLevel="3"\r
+                               SuppressStartupBanner="true"\r
+                               DebugInformationFormat="0"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               Culture="1041"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalOptions="/MACHINE:I386"\r
+                               AdditionalDependencies="comctl32.lib crypt32.lib htmlhelp.lib imagehlp.lib rasapi32.lib sfc.lib winmm.lib wintrust.lib wsock32.lib"\r
+                               OutputFile=".\Release\FFFTP.exe"\r
+                               LinkIncremental="1"\r
+                               SuppressStartupBanner="true"\r
+                               GenerateManifest="false"\r
+                               DelayLoadDLLs="advapi32.dll;comctl32.dll;crypt32.dll;comdlg32.dll;gdi32.dll;sfc.dll;shell32.dll;ole32.dll;user32.dll;winmm.dll;wintrust.dll;wsock32.dll"\r
+                               ProgramDatabaseFile=".\Release\FFFTP.pdb"\r
+                               SubSystem="2"\r
+                               RandomizedBaseAddress="1"\r
+                               DataExecutionPrevention="0"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+       </Configurations>\r
+       <References>\r
+       </References>\r
+       <Files>\r
+               <Filter\r
+                       Name="Source Files"\r
+                       Filter="cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"\r
+                       >\r
+                       <File\r
+                               RelativePath=".\aes_modes.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\aescrypt.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\aeskey.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\aestab.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\bookmark.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\cache.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\clipboard.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\codecnv.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\connect.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\diskfree.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\dlgsize.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\ffftp.rc"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\filelist.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\ftpproc.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\getput.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\history.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\hostman.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\local.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\lvtips.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\main.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\mbswrapper.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\md4.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\md5.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\misc.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\OleDragDrop.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\option.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\protectprocess.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\ras.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\regexp.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\registory.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\remote.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\sha.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\skey.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\socket.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\socketwrapper.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\statuswin.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\taskwin.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\tool.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\toolmenu.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\updatebell.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\wildcard.c"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <Filter\r
+                       Name="Header Files"\r
+                       Filter="h;hpp;hxx;hm;inl;fi;fd"\r
+                       >\r
+                       <File\r
+                               RelativePath=".\common.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\mbswrapper.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\protectprocess.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\resource.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\socketwrapper.h"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <Filter\r
+                       Name="Resource Files"\r
+                       Filter="ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"\r
+                       >\r
+                       <File\r
+                               RelativePath=".\Resource\bitmap1.bmp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\cursor1.cur"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\cursor2.cur"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\drag_csr.cur"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\icon1.ico"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\icon2.ico"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\list_bmp.bmp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\main_too.bmp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\nodrop_c.cur"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource\toolbar1.bmp"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <File\r
+                       RelativePath=".\Resource\ffftp.exe.manifest"\r
+                       >\r
+                       <FileConfiguration\r
+                               Name="Debug|Win32"\r
+                               ExcludedFromBuild="true"\r
+                               >\r
+                               <Tool\r
+                                       Name="VCCustomBuildTool"\r
+                               />\r
+                       </FileConfiguration>\r
+                       <FileConfiguration\r
+                               Name="Release|Win32"\r
+                               >\r
+                               <Tool\r
+                                       Name="VCCustomBuildTool"\r
+                               />\r
+                       </FileConfiguration>\r
+               </File>\r
+       </Files>\r
+       <Globals>\r
+       </Globals>\r
+</VisualStudioProject>\r
index b4e6f3c..0895fd7 100644 (file)
-<?xml version="1.0" encoding="shift_jis"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="9.00"
-       Name="FFFTP_English"
-       ProjectGUID="{EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}"
-       RootNamespace="FFFTP_English"
-       TargetFrameworkVersion="131072"
-       >
-       <Platforms>
-               <Platform
-                       Name="Win32"
-               />
-       </Platforms>
-       <ToolFiles>
-       </ToolFiles>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory=".\FFFTP_Eng_Debug"
-                       IntermediateDirectory=".\FFFTP_Eng_Debug"
-                       ConfigurationType="1"
-                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="false"
-                       >
-                       <Tool
-                               Name="VCPreBuildEventTool"
-                       />
-                       <Tool
-                               Name="VCCustomBuildTool"
-                       />
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               MkTypLibCompatible="true"
-                               SuppressStartupBanner="true"
-                               TargetEnvironment="1"
-                               TypeLibraryName=".\FFFTP_Eng_Debug\FFFTP_English.tlb"
-                       />
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="Resource_eng;contrib\openssl\include"
-                               PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0500,_CRT_SECURE_NO_WARNINGS,ENGLISH"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="1"
-                               PrecompiledHeaderFile=".\FFFTP_Eng_Debug\FFFTP_English.pch"
-                               AssemblerListingLocation=".\FFFTP_Eng_Debug\"
-                               ObjectFile=".\FFFTP_Eng_Debug\"
-                               ProgramDataBaseFileName=".\FFFTP_Eng_Debug\"
-                               WarningLevel="3"
-                               SuppressStartupBanner="true"
-                               DebugInformationFormat="4"
-                       />
-                       <Tool
-                               Name="VCManagedResourceCompilerTool"
-                       />
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               Culture="1033"
-                       />
-                       <Tool
-                               Name="VCPreLinkEventTool"
-                       />
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalOptions="/MACHINE:I386"
-                               AdditionalDependencies="comctl32.lib crypt32.lib htmlhelp.lib imagehlp.lib rasapi32.lib sfc.lib winmm.lib wintrust.lib wsock32.lib"
-                               OutputFile=".\FFFTP_Eng_Debug\FFFTP.exe"
-                               LinkIncremental="2"
-                               SuppressStartupBanner="true"
-                               GenerateManifest="false"
-                               DelayLoadDLLs="advapi32.dll;comctl32.dll;crypt32.dll;comdlg32.dll;gdi32.dll;sfc.dll;shell32.dll;ole32.dll;user32.dll;winmm.dll;wintrust.dll;wsock32.dll"
-                               GenerateDebugInformation="true"
-                               ProgramDatabaseFile=".\FFFTP_Eng_Debug\FFFTP.pdb"
-                               SubSystem="2"
-                               RandomizedBaseAddress="1"
-                               DataExecutionPrevention="0"
-                       />
-                       <Tool
-                               Name="VCALinkTool"
-                       />
-                       <Tool
-                               Name="VCManifestTool"
-                       />
-                       <Tool
-                               Name="VCXDCMakeTool"
-                       />
-                       <Tool
-                               Name="VCBscMakeTool"
-                       />
-                       <Tool
-                               Name="VCFxCopTool"
-                       />
-                       <Tool
-                               Name="VCAppVerifierTool"
-                       />
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                       />
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory=".\FFFTP_Eng_Release"
-                       IntermediateDirectory=".\FFFTP_Eng_Release"
-                       ConfigurationType="1"
-                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="false"
-                       >
-                       <Tool
-                               Name="VCPreBuildEventTool"
-                       />
-                       <Tool
-                               Name="VCCustomBuildTool"
-                       />
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               MkTypLibCompatible="true"
-                               SuppressStartupBanner="true"
-                               TargetEnvironment="1"
-                               TypeLibraryName=".\FFFTP_Eng_Release\FFFTP_English.tlb"
-                       />
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               InlineFunctionExpansion="1"
-                               AdditionalIncludeDirectories="Resource_eng;contrib\openssl\include"
-                               PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0500,_CRT_SECURE_NO_WARNINGS,ENGLISH"
-                               StringPooling="true"
-                               RuntimeLibrary="0"
-                               EnableFunctionLevelLinking="true"
-                               PrecompiledHeaderFile=".\FFFTP_Eng_Release\FFFTP_English.pch"
-                               AssemblerListingLocation=".\FFFTP_Eng_Release\"
-                               ObjectFile=".\FFFTP_Eng_Release\"
-                               ProgramDataBaseFileName=".\FFFTP_Eng_Release\"
-                               WarningLevel="3"
-                               SuppressStartupBanner="true"
-                       />
-                       <Tool
-                               Name="VCManagedResourceCompilerTool"
-                       />
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               Culture="1033"
-                       />
-                       <Tool
-                               Name="VCPreLinkEventTool"
-                       />
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalOptions="/MACHINE:I386"
-                               AdditionalDependencies="comctl32.lib crypt32.lib htmlhelp.lib imagehlp.lib rasapi32.lib sfc.lib winmm.lib wintrust.lib wsock32.lib"
-                               OutputFile=".\FFFTP_Eng_Release\FFFTP.exe"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="true"
-                               GenerateManifest="false"
-                               DelayLoadDLLs="advapi32.dll;comctl32.dll;crypt32.dll;comdlg32.dll;gdi32.dll;sfc.dll;shell32.dll;ole32.dll;user32.dll;winmm.dll;wintrust.dll;wsock32.dll"
-                               ProgramDatabaseFile=".\FFFTP_Eng_Release\FFFTP.pdb"
-                               SubSystem="2"
-                               RandomizedBaseAddress="1"
-                               DataExecutionPrevention="0"
-                       />
-                       <Tool
-                               Name="VCALinkTool"
-                       />
-                       <Tool
-                               Name="VCManifestTool"
-                       />
-                       <Tool
-                               Name="VCXDCMakeTool"
-                       />
-                       <Tool
-                               Name="VCBscMakeTool"
-                       />
-                       <Tool
-                               Name="VCFxCopTool"
-                       />
-                       <Tool
-                               Name="VCAppVerifierTool"
-                       />
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                       />
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-                       >
-                       <File
-                               RelativePath=".\aes_modes.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\aescrypt.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\aeskey.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\aestab.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\bookmark.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\cache.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\clipboard.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\codecnv.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\connect.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\diskfree.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\dlgsize.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\FFFTP-eng.rc"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\filelist.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\ftpproc.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\getput.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\history.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\hostman.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\local.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\lvtips.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\main.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\mbswrapper.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\md4.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\md5.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\misc.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\OleDragDrop.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\option.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\protectprocess.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\ras.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\regexp.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\registory.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\remote.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\sha.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\skey.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\socket.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\socketwrapper.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\statuswin.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\taskwin.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\tool.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\toolmenu.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\updatebell.c"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\wildcard.c"
-                               >
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl"
-                       >
-                       <File
-                               RelativePath=".\common.h"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\mbswrapper.h"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\protectprocess.h"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\resource.h"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\socketwrapper.h"
-                               >
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Resource Files"
-                       Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-                       >
-                       <File
-                               RelativePath=".\Resource_eng\bitmap1.bmp"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\cursor1.cur"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\cursor2.cur"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\drag_csr.cur"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\icon1.ico"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\icon2.ico"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\list_bmp.bmp"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\main_too.bmp"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\nodrop_c.cur"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\Resource_eng\toolbar1.bmp"
-                               >
-                       </File>
-               </Filter>
-               <File
-                       RelativePath=".\Resource_eng\ffftp.exe.manifest"
-                       >
-                       <FileConfiguration
-                               Name="Debug|Win32"
-                               ExcludedFromBuild="true"
-                               >
-                               <Tool
-                                       Name="VCCustomBuildTool"
-                               />
-                       </FileConfiguration>
-                       <FileConfiguration
-                               Name="Release|Win32"
-                               >
-                               <Tool
-                                       Name="VCCustomBuildTool"
-                               />
-                       </FileConfiguration>
-               </File>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="shift_jis"?>\r
+<VisualStudioProject\r
+       ProjectType="Visual C++"\r
+       Version="9.00"\r
+       Name="FFFTP_English"\r
+       ProjectGUID="{EE7CC1BD-92A9-46D5-8270-386BD7BEEA55}"\r
+       RootNamespace="FFFTP_English"\r
+       TargetFrameworkVersion="131072"\r
+       >\r
+       <Platforms>\r
+               <Platform\r
+                       Name="Win32"\r
+               />\r
+       </Platforms>\r
+       <ToolFiles>\r
+       </ToolFiles>\r
+       <Configurations>\r
+               <Configuration\r
+                       Name="Debug|Win32"\r
+                       OutputDirectory=".\FFFTP_Eng_Debug"\r
+                       IntermediateDirectory=".\FFFTP_Eng_Debug"\r
+                       ConfigurationType="1"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"\r
+                       UseOfMFC="0"\r
+                       ATLMinimizesCRunTimeLibraryUsage="false"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                               PreprocessorDefinitions="_DEBUG"\r
+                               MkTypLibCompatible="true"\r
+                               SuppressStartupBanner="true"\r
+                               TargetEnvironment="1"\r
+                               TypeLibraryName=".\FFFTP_Eng_Debug\FFFTP_English.tlb"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               Optimization="0"\r
+                               AdditionalIncludeDirectories="Resource_eng;contrib\openssl\include"\r
+                               PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0500,_CRT_SECURE_NO_WARNINGS,ENGLISH"\r
+                               BasicRuntimeChecks="3"\r
+                               RuntimeLibrary="1"\r
+                               PrecompiledHeaderFile=".\FFFTP_Eng_Debug\FFFTP_English.pch"\r
+                               AssemblerListingLocation=".\FFFTP_Eng_Debug\"\r
+                               ObjectFile=".\FFFTP_Eng_Debug\"\r
+                               ProgramDataBaseFileName=".\FFFTP_Eng_Debug\"\r
+                               WarningLevel="3"\r
+                               SuppressStartupBanner="true"\r
+                               DebugInformationFormat="4"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                               PreprocessorDefinitions="_DEBUG"\r
+                               Culture="1033"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalOptions="/MACHINE:I386"\r
+                               AdditionalDependencies="comctl32.lib crypt32.lib htmlhelp.lib imagehlp.lib rasapi32.lib sfc.lib winmm.lib wintrust.lib wsock32.lib"\r
+                               OutputFile=".\FFFTP_Eng_Debug\FFFTP.exe"\r
+                               LinkIncremental="2"\r
+                               SuppressStartupBanner="true"\r
+                               GenerateManifest="false"\r
+                               DelayLoadDLLs="advapi32.dll;comctl32.dll;crypt32.dll;comdlg32.dll;gdi32.dll;sfc.dll;shell32.dll;ole32.dll;user32.dll;winmm.dll;wintrust.dll;wsock32.dll"\r
+                               GenerateDebugInformation="true"\r
+                               ProgramDatabaseFile=".\FFFTP_Eng_Debug\FFFTP.pdb"\r
+                               SubSystem="2"\r
+                               RandomizedBaseAddress="1"\r
+                               DataExecutionPrevention="0"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+               <Configuration\r
+                       Name="Release|Win32"\r
+                       OutputDirectory=".\FFFTP_Eng_Release"\r
+                       IntermediateDirectory=".\FFFTP_Eng_Release"\r
+                       ConfigurationType="1"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"\r
+                       UseOfMFC="0"\r
+                       ATLMinimizesCRunTimeLibraryUsage="false"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               MkTypLibCompatible="true"\r
+                               SuppressStartupBanner="true"\r
+                               TargetEnvironment="1"\r
+                               TypeLibraryName=".\FFFTP_Eng_Release\FFFTP_English.tlb"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               InlineFunctionExpansion="1"\r
+                               AdditionalIncludeDirectories="Resource_eng;contrib\openssl\include"\r
+                               PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS,WINVER=0x0500,_WIN32_WINNT=0x0500,_WIN32_IE=0x0500,_CRT_SECURE_NO_WARNINGS,ENGLISH"\r
+                               StringPooling="true"\r
+                               RuntimeLibrary="0"\r
+                               EnableFunctionLevelLinking="true"\r
+                               PrecompiledHeaderFile=".\FFFTP_Eng_Release\FFFTP_English.pch"\r
+                               AssemblerListingLocation=".\FFFTP_Eng_Release\"\r
+                               ObjectFile=".\FFFTP_Eng_Release\"\r
+                               ProgramDataBaseFileName=".\FFFTP_Eng_Release\"\r
+                               WarningLevel="3"\r
+                               SuppressStartupBanner="true"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               Culture="1033"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalOptions="/MACHINE:I386"\r
+                               AdditionalDependencies="comctl32.lib crypt32.lib htmlhelp.lib imagehlp.lib rasapi32.lib sfc.lib winmm.lib wintrust.lib wsock32.lib"\r
+                               OutputFile=".\FFFTP_Eng_Release\FFFTP.exe"\r
+                               LinkIncremental="1"\r
+                               SuppressStartupBanner="true"\r
+                               GenerateManifest="false"\r
+                               DelayLoadDLLs="advapi32.dll;comctl32.dll;crypt32.dll;comdlg32.dll;gdi32.dll;sfc.dll;shell32.dll;ole32.dll;user32.dll;winmm.dll;wintrust.dll;wsock32.dll"\r
+                               ProgramDatabaseFile=".\FFFTP_Eng_Release\FFFTP.pdb"\r
+                               SubSystem="2"\r
+                               RandomizedBaseAddress="1"\r
+                               DataExecutionPrevention="0"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+       </Configurations>\r
+       <References>\r
+       </References>\r
+       <Files>\r
+               <Filter\r
+                       Name="Source Files"\r
+                       Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
+                       >\r
+                       <File\r
+                               RelativePath=".\aes_modes.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\aescrypt.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\aeskey.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\aestab.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\bookmark.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\cache.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\clipboard.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\codecnv.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\connect.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\diskfree.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\dlgsize.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\FFFTP-eng.rc"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\filelist.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\ftpproc.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\getput.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\history.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\hostman.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\local.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\lvtips.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\main.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\mbswrapper.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\md4.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\md5.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\misc.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\OleDragDrop.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\option.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\protectprocess.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\ras.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\regexp.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\registory.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\remote.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\sha.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\skey.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\socket.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\socketwrapper.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\statuswin.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\taskwin.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\tool.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\toolmenu.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\updatebell.c"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\wildcard.c"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <Filter\r
+                       Name="Header Files"\r
+                       Filter="h;hpp;hxx;hm;inl"\r
+                       >\r
+                       <File\r
+                               RelativePath=".\common.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\mbswrapper.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\protectprocess.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\resource.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\socketwrapper.h"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <Filter\r
+                       Name="Resource Files"\r
+                       Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
+                       >\r
+                       <File\r
+                               RelativePath=".\Resource_eng\bitmap1.bmp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\cursor1.cur"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\cursor2.cur"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\drag_csr.cur"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\icon1.ico"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\icon2.ico"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\list_bmp.bmp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\main_too.bmp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\nodrop_c.cur"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\Resource_eng\toolbar1.bmp"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <File\r
+                       RelativePath=".\Resource_eng\ffftp.exe.manifest"\r
+                       >\r
+                       <FileConfiguration\r
+                               Name="Debug|Win32"\r
+                               ExcludedFromBuild="true"\r
+                               >\r
+                               <Tool\r
+                                       Name="VCCustomBuildTool"\r
+                               />\r
+                       </FileConfiguration>\r
+                       <FileConfiguration\r
+                               Name="Release|Win32"\r
+                               >\r
+                               <Tool\r
+                                       Name="VCCustomBuildTool"\r
+                               />\r
+                       </FileConfiguration>\r
+               </File>\r
+       </Files>\r
+       <Globals>\r
+       </Globals>\r
+</VisualStudioProject>\r
index 8fc75e7..68e2fe2 100644 (file)
-[EXEpress]
-UseExtensionModuleFile=0
-ExtensionModuleFile=
-ExtensionModuleDatFile=
-NoUI=0
-SrcArchiveFile=ffftp.cab
-DstExeFile=ffftp.exe
-DialogTitle=FFFTP Ver.1.99
-ForFreeSoftWare=0
-EXEpressFor=EXEpress CX 5 Professional Licensed Edition
-Greeting0=Click Next button to start install...
-Greeting1=
-Greeting2=
-IconFile=
-IconTypeIndex=1
-UseBannerFile=1
-NoExtractBannerFile=1
-BannerFile=banner.bmp
-UseURL=1
-HPTitle=\82±\82Ì\83v\83\8d\83O\83\89\83\80\82Ì\83E\83F\83u\83T\83C\83g\82É\83A\83N\83Z\83X\82µ\82Ü\82·\82©\81H
-URL=http://sourceforge.jp/projects/ffftp/
-NoSaveInstallPath=0
-FailIfPathRegNotExist=0
-OnlyAdmin=0
-DenyUsers=1
-NoCRCCheck=0
-BootOSCheck=1
-BootOSFlag=1008
-BootableOSFlag=1008
-Deny64bitMode=0
-CheckTrust=0
-UsePanelBitmap=0
-NoExtractPanelBitmap=0
-PanelBitmap=
-UseNewWizard=0
-UseWiz97PanelBitmap=0
-NoExtractWiz97PanelBitmap=0
-Wiz97PanelBitmap=
-UseBackScreen=0
-BackScreenText=
-BackScreenColor=0,0,255
-BackScreenLogoBmp=
-UseBackScreenLogoBmp=0
-ExtractScreenLogo=1
-UseExplain=1
-ExplainFile=FFFTP.txt
-NoExtractExplainFile=0
-ExplainToConsent=0
-ExplainAllRead=0
-UseSaveExplainShowFlag=0
-SaveExplainShowFlagRootKey=1
-SaveExplainShowFlagKey=Software\EXEpress Programs
-SaveExplainShowFlagValue=SetupShowExplainFlag
-AskExtPath=1
-UseExtractFolder=1
-BaseFolder=0
-ExtractFolder=ffftp
-AskOverwrite=0
-HideAskOverWrite=0
-AddFileTitle=0
-WithAttribute=0
-NoAskMakeDir=0
-ForceUninstallDir=0
-OverWriteMethod=0
-NoOverwriteNewTimeStamp=0
-NoOpenFolderOnEnd=0
-UseSavePath=1
-SavePathRootKey=2
-SavePathKey=Software\Sota\FFFTP
-SavePathValue=InstallDir
-StartMenuToCommon=1
-UseStartMenu=1
-StartMenuGroup=FFFTP
-StartMenu0_Title=FFFTP
-StartMenu0_File=FFFTP.exe
-StartMenu0_Args=
-StartMenu0_Comment=
-StartMenu0_Icon=
-StartMenu0_CreateOnQuickLaunch=0
-StartMenu0_CreateOnDesktop=1
-StartMenu0_CreateOnStartup=0
-StartMenu0_CreateOnStartRoot=0
-StartMenu0_NoCreateInGroup=0
-StartMenu1_Title=About FFFTP
-StartMenu1_File=FFFTP.txt
-StartMenu1_Args=
-StartMenu1_Comment=
-StartMenu1_Icon=
-StartMenu1_CreateOnQuickLaunch=0
-StartMenu1_CreateOnDesktop=0
-StartMenu1_CreateOnStartup=0
-StartMenu1_CreateOnStartRoot=0
-StartMenu1_NoCreateInGroup=0
-StartMenu2_Title=History
-StartMenu2_File=history.txt
-StartMenu2_Args=
-StartMenu2_Comment=
-StartMenu2_Icon=
-StartMenu2_CreateOnQuickLaunch=0
-StartMenu2_CreateOnDesktop=0
-StartMenu2_CreateOnStartup=0
-StartMenu2_CreateOnStartRoot=0
-StartMenu2_NoCreateInGroup=0
-UseUnInstall=1
-UseEXEpressUninstaller=1
-UseEXEpressUninstallerFolder=
-UnInstallTitle=FFFTP
-UnInstallKey=FFFTP
-UnInstallFile=
-UnInstallArgs=
-UninstIconFile=
-UninstallRebootable=1
-AutoUninstIni=1
-AutoDeleteDat=0
-UnInstallPublisher=
-UnInstallSupportLink=
-UnInstallHelpLink=
-UnInstallUpdateLink=
-UninstallReg0=HKEY_CURRENT_USER\Sota\FFFTP
-UseAutoExecute=0
-CmdLine=
-CmdArgs=
-AfterDeleteFiles=0
-InstallShield=0
-64bitSFX=0
-ModifyOSVersion=0
-ModifySubSysVersion=0
-SFXOSMajor=4
-SFXOSMinor=0
-SFXSubSysMajor=4
-SFXSubSysMinor=0
-ModifyManifest=0
-ManifestFile=
+[EXEpress]\r
+UseExtensionModuleFile=0\r
+ExtensionModuleFile=\r
+ExtensionModuleDatFile=\r
+NoUI=0\r
+SrcArchiveFile=ffftp.cab\r
+DstExeFile=ffftp.exe\r
+DialogTitle=FFFTP Ver.1.99\r
+ForFreeSoftWare=0\r
+EXEpressFor=EXEpress CX 5 Professional Licensed Edition\r
+Greeting0=Click Next button to start install...\r
+Greeting1=\r
+Greeting2=\r
+IconFile=\r
+IconTypeIndex=1\r
+UseBannerFile=1\r
+NoExtractBannerFile=1\r
+BannerFile=banner.bmp\r
+UseURL=1\r
+HPTitle=\82±\82Ì\83v\83\8d\83O\83\89\83\80\82Ì\83E\83F\83u\83T\83C\83g\82É\83A\83N\83Z\83X\82µ\82Ü\82·\82©\81H\r
+URL=http://sourceforge.jp/projects/ffftp/\r
+NoSaveInstallPath=0\r
+FailIfPathRegNotExist=0\r
+OnlyAdmin=0\r
+DenyUsers=1\r
+NoCRCCheck=0\r
+BootOSCheck=1\r
+BootOSFlag=1008\r
+BootableOSFlag=1008\r
+Deny64bitMode=0\r
+CheckTrust=0\r
+UsePanelBitmap=0\r
+NoExtractPanelBitmap=0\r
+PanelBitmap=\r
+UseNewWizard=0\r
+UseWiz97PanelBitmap=0\r
+NoExtractWiz97PanelBitmap=0\r
+Wiz97PanelBitmap=\r
+UseBackScreen=0\r
+BackScreenText=\r
+BackScreenColor=0,0,255\r
+BackScreenLogoBmp=\r
+UseBackScreenLogoBmp=0\r
+ExtractScreenLogo=1\r
+UseExplain=1\r
+ExplainFile=FFFTP.txt\r
+NoExtractExplainFile=0\r
+ExplainToConsent=0\r
+ExplainAllRead=0\r
+UseSaveExplainShowFlag=0\r
+SaveExplainShowFlagRootKey=1\r
+SaveExplainShowFlagKey=Software\EXEpress Programs\r
+SaveExplainShowFlagValue=SetupShowExplainFlag\r
+AskExtPath=1\r
+UseExtractFolder=1\r
+BaseFolder=0\r
+ExtractFolder=ffftp\r
+AskOverwrite=0\r
+HideAskOverWrite=0\r
+AddFileTitle=0\r
+WithAttribute=0\r
+NoAskMakeDir=0\r
+ForceUninstallDir=0\r
+OverWriteMethod=0\r
+NoOverwriteNewTimeStamp=0\r
+NoOpenFolderOnEnd=0\r
+UseSavePath=1\r
+SavePathRootKey=2\r
+SavePathKey=Software\Sota\FFFTP\r
+SavePathValue=InstallDir\r
+StartMenuToCommon=1\r
+UseStartMenu=1\r
+StartMenuGroup=FFFTP\r
+StartMenu0_Title=FFFTP\r
+StartMenu0_File=FFFTP.exe\r
+StartMenu0_Args=\r
+StartMenu0_Comment=\r
+StartMenu0_Icon=\r
+StartMenu0_CreateOnQuickLaunch=0\r
+StartMenu0_CreateOnDesktop=1\r
+StartMenu0_CreateOnStartup=0\r
+StartMenu0_CreateOnStartRoot=0\r
+StartMenu0_NoCreateInGroup=0\r
+StartMenu1_Title=About FFFTP\r
+StartMenu1_File=FFFTP.txt\r
+StartMenu1_Args=\r
+StartMenu1_Comment=\r
+StartMenu1_Icon=\r
+StartMenu1_CreateOnQuickLaunch=0\r
+StartMenu1_CreateOnDesktop=0\r
+StartMenu1_CreateOnStartup=0\r
+StartMenu1_CreateOnStartRoot=0\r
+StartMenu1_NoCreateInGroup=0\r
+StartMenu2_Title=History\r
+StartMenu2_File=history.txt\r
+StartMenu2_Args=\r
+StartMenu2_Comment=\r
+StartMenu2_Icon=\r
+StartMenu2_CreateOnQuickLaunch=0\r
+StartMenu2_CreateOnDesktop=0\r
+StartMenu2_CreateOnStartup=0\r
+StartMenu2_CreateOnStartRoot=0\r
+StartMenu2_NoCreateInGroup=0\r
+UseUnInstall=1\r
+UseEXEpressUninstaller=1\r
+UseEXEpressUninstallerFolder=\r
+UnInstallTitle=FFFTP\r
+UnInstallKey=FFFTP\r
+UnInstallFile=\r
+UnInstallArgs=\r
+UninstIconFile=\r
+UninstallRebootable=1\r
+AutoUninstIni=1\r
+AutoDeleteDat=0\r
+UnInstallPublisher=\r
+UnInstallSupportLink=\r
+UnInstallHelpLink=\r
+UnInstallUpdateLink=\r
+UninstallReg0=HKEY_CURRENT_USER\Sota\FFFTP\r
+UseAutoExecute=0\r
+CmdLine=\r
+CmdArgs=\r
+AfterDeleteFiles=0\r
+InstallShield=0\r
+64bitSFX=0\r
+ModifyOSVersion=0\r
+ModifySubSysVersion=0\r
+SFXOSMajor=4\r
+SFXOSMinor=0\r
+SFXSubSysMajor=4\r
+SFXSubSysMinor=0\r
+ModifyManifest=0\r
+ManifestFile=\r
index 34da8b1..05df9e3 100644 (file)
-[EXEpress]
-UseExtensionModuleFile=0
-ExtensionModuleFile=
-ExtensionModuleDatFile=
-NoUI=0
-SrcArchiveFile=ffftp.cab
-DstExeFile=ffftp.exe
-DialogTitle=FFFTP Ver.1.99
-ForFreeSoftWare=0
-EXEpressFor=EXEpress CX 5 Professional Licensed Edition
-Greeting0=FFFTP\82ð\83C\83\93\83X\83g\81[\83\8b\82µ\82Ü\82·\81B
-Greeting1=[\8e\9f\82Ö(N)]\82ð\89\9f\82µ\82Ä\82­\82¾\82³\82¢\81B
-Greeting2=
-IconFile=
-IconTypeIndex=1
-UseBannerFile=1
-NoExtractBannerFile=1
-BannerFile=banner.bmp
-UseURL=1
-HPTitle=\82±\82Ì\83v\83\8d\83O\83\89\83\80\82Ì\83E\83F\83u\83T\83C\83g\82É\83A\83N\83Z\83X\82µ\82Ü\82·\82©\81H
-URL=http://sourceforge.jp/projects/ffftp/
-NoSaveInstallPath=0
-FailIfPathRegNotExist=0
-OnlyAdmin=0
-DenyUsers=1
-NoCRCCheck=0
-BootOSCheck=1
-BootOSFlag=1008
-BootableOSFlag=1008
-Deny64bitMode=0
-CheckTrust=0
-UsePanelBitmap=0
-NoExtractPanelBitmap=0
-PanelBitmap=
-UseNewWizard=0
-UseWiz97PanelBitmap=0
-NoExtractWiz97PanelBitmap=0
-Wiz97PanelBitmap=
-UseBackScreen=0
-BackScreenText=
-BackScreenColor=0,0,255
-BackScreenLogoBmp=
-UseBackScreenLogoBmp=0
-ExtractScreenLogo=1
-UseExplain=1
-ExplainFile=FFFTP.txt
-NoExtractExplainFile=0
-ExplainToConsent=0
-ExplainAllRead=0
-UseSaveExplainShowFlag=0
-SaveExplainShowFlagRootKey=1
-SaveExplainShowFlagKey=Software\EXEpress Programs
-SaveExplainShowFlagValue=SetupShowExplainFlag
-AskExtPath=1
-UseExtractFolder=1
-BaseFolder=0
-ExtractFolder=ffftp
-AskOverwrite=0
-HideAskOverWrite=0
-AddFileTitle=0
-WithAttribute=0
-NoAskMakeDir=0
-ForceUninstallDir=0
-OverWriteMethod=0
-NoOverwriteNewTimeStamp=0
-NoOpenFolderOnEnd=0
-UseSavePath=1
-SavePathRootKey=2
-SavePathKey=Software\Sota\FFFTP
-SavePathValue=InstallDir
-StartMenuToCommon=1
-UseStartMenu=1
-StartMenuGroup=FFFTP
-StartMenu0_Title=FFFTP
-StartMenu0_File=FFFTP.exe
-StartMenu0_Args=
-StartMenu0_Comment=
-StartMenu0_Icon=
-StartMenu0_CreateOnQuickLaunch=0
-StartMenu0_CreateOnDesktop=1
-StartMenu0_CreateOnStartup=0
-StartMenu0_CreateOnStartRoot=0
-StartMenu0_NoCreateInGroup=0
-StartMenu1_Title=FFFTP\82É\82Â\82¢\82Ä
-StartMenu1_File=FFFTP.txt
-StartMenu1_Args=
-StartMenu1_Comment=
-StartMenu1_Icon=
-StartMenu1_CreateOnQuickLaunch=0
-StartMenu1_CreateOnDesktop=0
-StartMenu1_CreateOnStartup=0
-StartMenu1_CreateOnStartRoot=0
-StartMenu1_NoCreateInGroup=0
-StartMenu2_Title=FFFTP\82Ì\83w\83\8b\83v
-StartMenu2_File=FFFTP.CHM
-StartMenu2_Args=
-StartMenu2_Comment=
-StartMenu2_Icon=
-StartMenu2_CreateOnQuickLaunch=0
-StartMenu2_CreateOnDesktop=0
-StartMenu2_CreateOnStartup=0
-StartMenu2_CreateOnStartRoot=0
-StartMenu2_NoCreateInGroup=0
-StartMenu3_Title=FFFTP\82Ì\89ü\94Å\97\9a\97ð
-StartMenu3_File=history.txt
-StartMenu3_Args=
-StartMenu3_Comment=
-StartMenu3_Icon=
-StartMenu3_CreateOnQuickLaunch=0
-StartMenu3_CreateOnDesktop=0
-StartMenu3_CreateOnStartup=0
-StartMenu3_CreateOnStartRoot=0
-StartMenu3_NoCreateInGroup=0
-UseUnInstall=1
-UseEXEpressUninstaller=1
-UseEXEpressUninstallerFolder=
-UnInstallTitle=FFFTP
-UnInstallKey=FFFTP
-UnInstallFile=
-UnInstallArgs=
-UninstIconFile=
-UninstallRebootable=1
-AutoUninstIni=1
-AutoDeleteDat=0
-UnInstallPublisher=
-UnInstallSupportLink=
-UnInstallHelpLink=
-UnInstallUpdateLink=
-UninstallReg0=HKEY_CURRENT_USER\Sota\FFFTP
-UseAutoExecute=0
-CmdLine=
-CmdArgs=
-AfterDeleteFiles=0
-InstallShield=0
-64bitSFX=0
-ModifyOSVersion=0
-ModifySubSysVersion=0
-SFXOSMajor=4
-SFXOSMinor=0
-SFXSubSysMajor=4
-SFXSubSysMinor=0
-ModifyManifest=0
-ManifestFile=
+[EXEpress]\r
+UseExtensionModuleFile=0\r
+ExtensionModuleFile=\r
+ExtensionModuleDatFile=\r
+NoUI=0\r
+SrcArchiveFile=ffftp.cab\r
+DstExeFile=ffftp.exe\r
+DialogTitle=FFFTP Ver.1.99\r
+ForFreeSoftWare=0\r
+EXEpressFor=EXEpress CX 5 Professional Licensed Edition\r
+Greeting0=FFFTP\82ð\83C\83\93\83X\83g\81[\83\8b\82µ\82Ü\82·\81B\r
+Greeting1=[\8e\9f\82Ö(N)]\82ð\89\9f\82µ\82Ä\82­\82¾\82³\82¢\81B\r
+Greeting2=\r
+IconFile=\r
+IconTypeIndex=1\r
+UseBannerFile=1\r
+NoExtractBannerFile=1\r
+BannerFile=banner.bmp\r
+UseURL=1\r
+HPTitle=\82±\82Ì\83v\83\8d\83O\83\89\83\80\82Ì\83E\83F\83u\83T\83C\83g\82É\83A\83N\83Z\83X\82µ\82Ü\82·\82©\81H\r
+URL=http://sourceforge.jp/projects/ffftp/\r
+NoSaveInstallPath=0\r
+FailIfPathRegNotExist=0\r
+OnlyAdmin=0\r
+DenyUsers=1\r
+NoCRCCheck=0\r
+BootOSCheck=1\r
+BootOSFlag=1008\r
+BootableOSFlag=1008\r
+Deny64bitMode=0\r
+CheckTrust=0\r
+UsePanelBitmap=0\r
+NoExtractPanelBitmap=0\r
+PanelBitmap=\r
+UseNewWizard=0\r
+UseWiz97PanelBitmap=0\r
+NoExtractWiz97PanelBitmap=0\r
+Wiz97PanelBitmap=\r
+UseBackScreen=0\r
+BackScreenText=\r
+BackScreenColor=0,0,255\r
+BackScreenLogoBmp=\r
+UseBackScreenLogoBmp=0\r
+ExtractScreenLogo=1\r
+UseExplain=1\r
+ExplainFile=FFFTP.txt\r
+NoExtractExplainFile=0\r
+ExplainToConsent=0\r
+ExplainAllRead=0\r
+UseSaveExplainShowFlag=0\r
+SaveExplainShowFlagRootKey=1\r
+SaveExplainShowFlagKey=Software\EXEpress Programs\r
+SaveExplainShowFlagValue=SetupShowExplainFlag\r
+AskExtPath=1\r
+UseExtractFolder=1\r
+BaseFolder=0\r
+ExtractFolder=ffftp\r
+AskOverwrite=0\r
+HideAskOverWrite=0\r
+AddFileTitle=0\r
+WithAttribute=0\r
+NoAskMakeDir=0\r
+ForceUninstallDir=0\r
+OverWriteMethod=0\r
+NoOverwriteNewTimeStamp=0\r
+NoOpenFolderOnEnd=0\r
+UseSavePath=1\r
+SavePathRootKey=2\r
+SavePathKey=Software\Sota\FFFTP\r
+SavePathValue=InstallDir\r
+StartMenuToCommon=1\r
+UseStartMenu=1\r
+StartMenuGroup=FFFTP\r
+StartMenu0_Title=FFFTP\r
+StartMenu0_File=FFFTP.exe\r
+StartMenu0_Args=\r
+StartMenu0_Comment=\r
+StartMenu0_Icon=\r
+StartMenu0_CreateOnQuickLaunch=0\r
+StartMenu0_CreateOnDesktop=1\r
+StartMenu0_CreateOnStartup=0\r
+StartMenu0_CreateOnStartRoot=0\r
+StartMenu0_NoCreateInGroup=0\r
+StartMenu1_Title=FFFTP\82É\82Â\82¢\82Ä\r
+StartMenu1_File=FFFTP.txt\r
+StartMenu1_Args=\r
+StartMenu1_Comment=\r
+StartMenu1_Icon=\r
+StartMenu1_CreateOnQuickLaunch=0\r
+StartMenu1_CreateOnDesktop=0\r
+StartMenu1_CreateOnStartup=0\r
+StartMenu1_CreateOnStartRoot=0\r
+StartMenu1_NoCreateInGroup=0\r
+StartMenu2_Title=FFFTP\82Ì\83w\83\8b\83v\r
+StartMenu2_File=FFFTP.CHM\r
+StartMenu2_Args=\r
+StartMenu2_Comment=\r
+StartMenu2_Icon=\r
+StartMenu2_CreateOnQuickLaunch=0\r
+StartMenu2_CreateOnDesktop=0\r
+StartMenu2_CreateOnStartup=0\r
+StartMenu2_CreateOnStartRoot=0\r
+StartMenu2_NoCreateInGroup=0\r
+StartMenu3_Title=FFFTP\82Ì\89ü\94Å\97\9a\97ð\r
+StartMenu3_File=history.txt\r
+StartMenu3_Args=\r
+StartMenu3_Comment=\r
+StartMenu3_Icon=\r
+StartMenu3_CreateOnQuickLaunch=0\r
+StartMenu3_CreateOnDesktop=0\r
+StartMenu3_CreateOnStartup=0\r
+StartMenu3_CreateOnStartRoot=0\r
+StartMenu3_NoCreateInGroup=0\r
+UseUnInstall=1\r
+UseEXEpressUninstaller=1\r
+UseEXEpressUninstallerFolder=\r
+UnInstallTitle=FFFTP\r
+UnInstallKey=FFFTP\r
+UnInstallFile=\r
+UnInstallArgs=\r
+UninstIconFile=\r
+UninstallRebootable=1\r
+AutoUninstIni=1\r
+AutoDeleteDat=0\r
+UnInstallPublisher=\r
+UnInstallSupportLink=\r
+UnInstallHelpLink=\r
+UnInstallUpdateLink=\r
+UninstallReg0=HKEY_CURRENT_USER\Sota\FFFTP\r
+UseAutoExecute=0\r
+CmdLine=\r
+CmdArgs=\r
+AfterDeleteFiles=0\r
+InstallShield=0\r
+64bitSFX=0\r
+ModifyOSVersion=0\r
+ModifySubSysVersion=0\r
+SFXOSMajor=4\r
+SFXOSMinor=0\r
+SFXSubSysMajor=4\r
+SFXSubSysMinor=0\r
+ModifyManifest=0\r
+ManifestFile=\r
index f31d51f..328d083 100644 (file)
@@ -1,12 +1,12 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
-    <assemblyIdentity
-        type="win32"
-        name="Microsoft.VC90.CRT"
-        version="9.0.21022.8"
-        processorArchitecture="x86"
-        publicKeyToken="1fc8b3b9a1e18e3b"
-    />
-    <file name="msvcr90.dll"/>
-</assembly>
-
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">\r
+    <assemblyIdentity\r
+        type="win32"\r
+        name="Microsoft.VC90.CRT"\r
+        version="9.0.21022.8"\r
+        processorArchitecture="x86"\r
+        publicKeyToken="1fc8b3b9a1e18e3b"\r
+    />\r
+    <file name="msvcr90.dll"/>\r
+</assembly>\r
+\r
index ec5b23f..c225939 100644 (file)
@@ -1,29 +1,29 @@
-========================================================================
-    コンソール アプリケーション : encutf8 プロジェクトの概要
-========================================================================
-
-この encutf8 アプリケーションは、AppWizard によって作成されました。
-
-このファイルには、encutf8 アプリケーションを構成する各ファイル
-の内容の概略が記述されています。
-
-
-encutf8.vcproj
-    これは、アプリケーション ウィザードを使用して生成された VC++ プロジェクトのメイン プロジェクト ファイルです。
-    ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション ウィザードで選択されたプラットフォーム、構成、およびプロジェクト機能に関する情報が含まれています。
-
-encutf8.cpp
-    これは、メインのアプリケーション ソース ファイルです。
-
-/////////////////////////////////////////////////////////////////////////////
-その他の標準ファイル :
-
-StdAfx.h, StdAfx.cpp
-    これらのファイルは、プリコンパイル済みヘッダー (PCH) ファイル encutf8.pch とプリコンパイル済み型ファイル StdAfx.obj をビルドするために使用されます。
-
-/////////////////////////////////////////////////////////////////////////////
-その他のメモ :
-
-AppWizard では、ユーザーが追加またはカスタマイズする必要のあるソース コードの部分を示すために、"TODO:" コメントを使用します。
-
-/////////////////////////////////////////////////////////////////////////////
+========================================================================\r
+    コンソール アプリケーション : encutf8 プロジェクトの概要\r
+========================================================================\r
+\r
+この encutf8 アプリケーションは、AppWizard によって作成されました。\r
+\r
+このファイルには、encutf8 アプリケーションを構成する各ファイル\r
+の内容の概略が記述されています。\r
+\r
+\r
+encutf8.vcproj\r
+    これは、アプリケーション ウィザードを使用して生成された VC++ プロジェクトのメイン プロジェクト ファイルです。\r
+    ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション ウィザードで選択されたプラットフォーム、構成、およびプロジェクト機能に関する情報が含まれています。\r
+\r
+encutf8.cpp\r
+    これは、メインのアプリケーション ソース ファイルです。\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+その他の標準ファイル :\r
+\r
+StdAfx.h, StdAfx.cpp\r
+    これらのファイルは、プリコンパイル済みヘッダー (PCH) ファイル encutf8.pch とプリコンパイル済み型ファイル StdAfx.obj をビルドするために使用されます。\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+その他のメモ :\r
+\r
+AppWizard では、ユーザーが追加またはカスタマイズする必要のあるソース コードの部分を示すために、"TODO:" コメントを使用します。\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
index ed73504..c6f0d6e 100644 (file)
@@ -1,63 +1,63 @@
-// encutf8.cpp : \83R\83\93\83\\81[\83\8b \83A\83v\83\8a\83P\81[\83V\83\87\83\93\82Ì\83G\83\93\83g\83\8a \83|\83C\83\93\83g\82ð\92è\8b`\82µ\82Ü\82·\81B
-//
-
-#include "stdafx.h"
-
-
-int _tmain(int argc, _TCHAR* argv[])
-{
-       FILE* fpIn;
-       FILE* fpOut;
-       fpos_t Length;
-       int InLength;
-       char* pInBuffer;
-       int UTF16Length;
-       wchar_t* pUTF16Buffer;
-       int OutLength;
-       char* pOutBuffer;
-       _tsetlocale(LC_ALL, _T(""));
-       if(argc != 3)
-       {
-               _tprintf(_T("\83}\83\8b\83`\83o\83C\83g\95\8e\9a\81i\83R\81[\83h\83y\81[\83W932\82Ü\82½\82ÍShift JIS\81j\82Å\8f\91\82©\82ê\82½\83e\83L\83X\83g\83t\83@\83C\83\8b\82ðUTF-8\82É\83G\83\93\83R\81[\83h\82µ\82Ü\82·\81B\n"));
-               _tprintf(_T("\83R\83}\83\93\83h\83\89\83C\83\93\n"));
-               _tprintf(_T("encutf8 [in] [out]\n"));
-               _tprintf(_T("[in]    \8c³\82Ì\83\\81[\83X\83t\83@\83C\83\8b\82Ì\83t\83@\83C\83\8b\96¼\n"));
-               _tprintf(_T("[out]   \95Û\91\90æ\82Ì\83t\83@\83C\83\8b\96¼\n"));
-               return 0;
-       }
-       fpIn = _tfopen(argv[1], _T("rb"));
-       if(!fpIn)
-       {
-               _tprintf(_T("\83t\83@\83C\83\8b\"%s\"\82ª\8aJ\82¯\82Ü\82¹\82ñ\81B\n"), argv[1]);
-               return 0;
-       }
-       fseek(fpIn, 0, SEEK_END);
-       fgetpos(fpIn, &Length);
-       fseek(fpIn, 0, SEEK_SET);
-       InLength = Length / sizeof(char);
-       pInBuffer = new char[InLength];
-       UTF16Length = InLength;
-       pUTF16Buffer = new wchar_t[InLength];
-       OutLength = InLength * 4;
-       pOutBuffer = new char[OutLength];
-       if(!pInBuffer || !pUTF16Buffer || !pOutBuffer)
-       {
-               _tprintf(_T("\83\81\83\82\83\8a\82ª\8am\95Û\82Å\82«\82Ü\82¹\82ñ\81B\n"));
-               return 0;
-       }
-       fread(pInBuffer, 1, InLength, fpIn);
-       fclose(fpIn);
-       fpOut = _tfopen(argv[2], _T("wb"));
-       if(!fpIn)
-       {
-               _tprintf(_T("\83t\83@\83C\83\8b\"%s\"\82ª\8dì\90¬\82Å\82«\82Ü\82¹\82ñ\81B\n"), argv[2]);
-               return 0;
-       }
-       fwrite("\xEF\xBB\xBF", 1, 3, fpOut);
-       UTF16Length = MultiByteToWideChar(CP_ACP, 0, pInBuffer, InLength / sizeof(char), pUTF16Buffer, UTF16Length);
-       OutLength = WideCharToMultiByte(CP_UTF8, 0, pUTF16Buffer, UTF16Length, pOutBuffer, OutLength / sizeof(char), NULL, NULL);
-       fwrite(pOutBuffer, sizeof(char), OutLength, fpOut);
-       fclose(fpOut);
-       return 0;
-}
-
+// encutf8.cpp : \83R\83\93\83\\81[\83\8b \83A\83v\83\8a\83P\81[\83V\83\87\83\93\82Ì\83G\83\93\83g\83\8a \83|\83C\83\93\83g\82ð\92è\8b`\82µ\82Ü\82·\81B\r
+//\r
+\r
+#include "stdafx.h"\r
+\r
+\r
+int _tmain(int argc, _TCHAR* argv[])\r
+{\r
+       FILE* fpIn;\r
+       FILE* fpOut;\r
+       fpos_t Length;\r
+       int InLength;\r
+       char* pInBuffer;\r
+       int UTF16Length;\r
+       wchar_t* pUTF16Buffer;\r
+       int OutLength;\r
+       char* pOutBuffer;\r
+       _tsetlocale(LC_ALL, _T(""));\r
+       if(argc != 3)\r
+       {\r
+               _tprintf(_T("\83}\83\8b\83`\83o\83C\83g\95\8e\9a\81i\83R\81[\83h\83y\81[\83W932\82Ü\82½\82ÍShift JIS\81j\82Å\8f\91\82©\82ê\82½\83e\83L\83X\83g\83t\83@\83C\83\8b\82ðUTF-8\82É\83G\83\93\83R\81[\83h\82µ\82Ü\82·\81B\n"));\r
+               _tprintf(_T("\83R\83}\83\93\83h\83\89\83C\83\93\n"));\r
+               _tprintf(_T("encutf8 [in] [out]\n"));\r
+               _tprintf(_T("[in]    \8c³\82Ì\83\\81[\83X\83t\83@\83C\83\8b\82Ì\83t\83@\83C\83\8b\96¼\n"));\r
+               _tprintf(_T("[out]   \95Û\91\90æ\82Ì\83t\83@\83C\83\8b\96¼\n"));\r
+               return 0;\r
+       }\r
+       fpIn = _tfopen(argv[1], _T("rb"));\r
+       if(!fpIn)\r
+       {\r
+               _tprintf(_T("\83t\83@\83C\83\8b\"%s\"\82ª\8aJ\82¯\82Ü\82¹\82ñ\81B\n"), argv[1]);\r
+               return 0;\r
+       }\r
+       fseek(fpIn, 0, SEEK_END);\r
+       fgetpos(fpIn, &Length);\r
+       fseek(fpIn, 0, SEEK_SET);\r
+       InLength = Length / sizeof(char);\r
+       pInBuffer = new char[InLength];\r
+       UTF16Length = InLength;\r
+       pUTF16Buffer = new wchar_t[InLength];\r
+       OutLength = InLength * 4;\r
+       pOutBuffer = new char[OutLength];\r
+       if(!pInBuffer || !pUTF16Buffer || !pOutBuffer)\r
+       {\r
+               _tprintf(_T("\83\81\83\82\83\8a\82ª\8am\95Û\82Å\82«\82Ü\82¹\82ñ\81B\n"));\r
+               return 0;\r
+       }\r
+       fread(pInBuffer, 1, InLength, fpIn);\r
+       fclose(fpIn);\r
+       fpOut = _tfopen(argv[2], _T("wb"));\r
+       if(!fpIn)\r
+       {\r
+               _tprintf(_T("\83t\83@\83C\83\8b\"%s\"\82ª\8dì\90¬\82Å\82«\82Ü\82¹\82ñ\81B\n"), argv[2]);\r
+               return 0;\r
+       }\r
+       fwrite("\xEF\xBB\xBF", 1, 3, fpOut);\r
+       UTF16Length = MultiByteToWideChar(CP_ACP, 0, pInBuffer, InLength / sizeof(char), pUTF16Buffer, UTF16Length);\r
+       OutLength = WideCharToMultiByte(CP_UTF8, 0, pUTF16Buffer, UTF16Length, pOutBuffer, OutLength / sizeof(char), NULL, NULL);\r
+       fwrite(pOutBuffer, sizeof(char), OutLength, fpOut);\r
+       fclose(fpOut);\r
+       return 0;\r
+}\r
+\r
index 4f2c7a1..0e893f3 100644 (file)
@@ -1,20 +1,20 @@
-
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "encutf8", "encutf8.vcproj", "{655A8FD3-5998-472F-8906-F0A028B70C4F}"
-EndProject
-Global
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Win32 = Debug|Win32
-               Release|Win32 = Release|Win32
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Debug|Win32.ActiveCfg = Debug|Win32
-               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Debug|Win32.Build.0 = Debug|Win32
-               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Release|Win32.ActiveCfg = Release|Win32
-               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Release|Win32.Build.0 = Release|Win32
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-EndGlobal
+\r
+Microsoft Visual Studio Solution File, Format Version 10.00\r
+# Visual Studio 2008\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "encutf8", "encutf8.vcproj", "{655A8FD3-5998-472F-8906-F0A028B70C4F}"\r
+EndProject\r
+Global\r
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
+               Debug|Win32 = Debug|Win32\r
+               Release|Win32 = Release|Win32\r
+       EndGlobalSection\r
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
+               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Debug|Win32.Build.0 = Debug|Win32\r
+               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Release|Win32.ActiveCfg = Release|Win32\r
+               {655A8FD3-5998-472F-8906-F0A028B70C4F}.Release|Win32.Build.0 = Release|Win32\r
+       EndGlobalSection\r
+       GlobalSection(SolutionProperties) = preSolution\r
+               HideSolutionNode = FALSE\r
+       EndGlobalSection\r
+EndGlobal\r
index 1601100..805bddb 100644 (file)
-<?xml version="1.0" encoding="shift_jis"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="9.00"
-       Name="encutf8"
-       ProjectGUID="{655A8FD3-5998-472F-8906-F0A028B70C4F}"
-       RootNamespace="encutf8"
-       Keyword="Win32Proj"
-       TargetFrameworkVersion="196613"
-       >
-       <Platforms>
-               <Platform
-                       Name="Win32"
-               />
-       </Platforms>
-       <ToolFiles>
-       </ToolFiles>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
-                       IntermediateDirectory="$(ConfigurationName)"
-                       ConfigurationType="1"
-                       CharacterSet="1"
-                       >
-                       <Tool
-                               Name="VCPreBuildEventTool"
-                       />
-                       <Tool
-                               Name="VCCustomBuildTool"
-                       />
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCMIDLTool"
-                       />
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
-                               MinimalRebuild="true"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="2"
-                               WarningLevel="3"
-                               DebugInformationFormat="4"
-                       />
-                       <Tool
-                               Name="VCManagedResourceCompilerTool"
-                       />
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                       />
-                       <Tool
-                               Name="VCPreLinkEventTool"
-                       />
-                       <Tool
-                               Name="VCLinkerTool"
-                               LinkIncremental="2"
-                               GenerateDebugInformation="true"
-                               SubSystem="1"
-                               TargetMachine="1"
-                       />
-                       <Tool
-                               Name="VCALinkTool"
-                       />
-                       <Tool
-                               Name="VCManifestTool"
-                       />
-                       <Tool
-                               Name="VCXDCMakeTool"
-                       />
-                       <Tool
-                               Name="VCBscMakeTool"
-                       />
-                       <Tool
-                               Name="VCFxCopTool"
-                       />
-                       <Tool
-                               Name="VCAppVerifierTool"
-                       />
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                       />
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
-                       IntermediateDirectory="$(ConfigurationName)"
-                       ConfigurationType="1"
-                       CharacterSet="1"
-                       WholeProgramOptimization="1"
-                       >
-                       <Tool
-                               Name="VCPreBuildEventTool"
-                       />
-                       <Tool
-                               Name="VCCustomBuildTool"
-                       />
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"
-                       />
-                       <Tool
-                               Name="VCMIDLTool"
-                       />
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="2"
-                               EnableIntrinsicFunctions="true"
-                               PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
-                               RuntimeLibrary="2"
-                               EnableFunctionLevelLinking="true"
-                               UsePrecompiledHeader="2"
-                               WarningLevel="3"
-                               DebugInformationFormat="3"
-                       />
-                       <Tool
-                               Name="VCManagedResourceCompilerTool"
-                       />
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                       />
-                       <Tool
-                               Name="VCPreLinkEventTool"
-                       />
-                       <Tool
-                               Name="VCLinkerTool"
-                               LinkIncremental="1"
-                               GenerateDebugInformation="true"
-                               SubSystem="1"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               TargetMachine="1"
-                       />
-                       <Tool
-                               Name="VCALinkTool"
-                       />
-                       <Tool
-                               Name="VCManifestTool"
-                       />
-                       <Tool
-                               Name="VCXDCMakeTool"
-                       />
-                       <Tool
-                               Name="VCBscMakeTool"
-                       />
-                       <Tool
-                               Name="VCFxCopTool"
-                       />
-                       <Tool
-                               Name="VCAppVerifierTool"
-                       />
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                       />
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="\83\\81[\83\83t\83@\83C\83\8b"
-                       Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
-                       >
-                       <File
-                               RelativePath=".\encutf8.cpp"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\stdafx.cpp"
-                               >
-                               <FileConfiguration
-                                       Name="Debug|Win32"
-                                       >
-                                       <Tool
-                                               Name="VCCLCompilerTool"
-                                               UsePrecompiledHeader="1"
-                                       />
-                               </FileConfiguration>
-                               <FileConfiguration
-                                       Name="Release|Win32"
-                                       >
-                                       <Tool
-                                               Name="VCCLCompilerTool"
-                                               UsePrecompiledHeader="1"
-                                       />
-                               </FileConfiguration>
-                       </File>
-               </Filter>
-               <Filter
-                       Name="\83w\83b\83_\81\83t\83@\83C\83\8b"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
-                       >
-                       <File
-                               RelativePath=".\stdafx.h"
-                               >
-                       </File>
-                       <File
-                               RelativePath=".\targetver.h"
-                               >
-                       </File>
-               </Filter>
-               <Filter
-                       Name="\83\8a\83\\81[\83\83t\83@\83C\83\8b"
-                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
-                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
-                       >
-               </Filter>
-               <File
-                       RelativePath=".\ReadMe.txt"
-                       >
-               </File>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="shift_jis"?>\r
+<VisualStudioProject\r
+       ProjectType="Visual C++"\r
+       Version="9.00"\r
+       Name="encutf8"\r
+       ProjectGUID="{655A8FD3-5998-472F-8906-F0A028B70C4F}"\r
+       RootNamespace="encutf8"\r
+       Keyword="Win32Proj"\r
+       TargetFrameworkVersion="196613"\r
+       >\r
+       <Platforms>\r
+               <Platform\r
+                       Name="Win32"\r
+               />\r
+       </Platforms>\r
+       <ToolFiles>\r
+       </ToolFiles>\r
+       <Configurations>\r
+               <Configuration\r
+                       Name="Debug|Win32"\r
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"\r
+                       IntermediateDirectory="$(ConfigurationName)"\r
+                       ConfigurationType="1"\r
+                       CharacterSet="1"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               Optimization="0"\r
+                               PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"\r
+                               MinimalRebuild="true"\r
+                               BasicRuntimeChecks="3"\r
+                               RuntimeLibrary="3"\r
+                               UsePrecompiledHeader="2"\r
+                               WarningLevel="3"\r
+                               DebugInformationFormat="4"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               LinkIncremental="2"\r
+                               GenerateDebugInformation="true"\r
+                               SubSystem="1"\r
+                               TargetMachine="1"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+               <Configuration\r
+                       Name="Release|Win32"\r
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"\r
+                       IntermediateDirectory="$(ConfigurationName)"\r
+                       ConfigurationType="1"\r
+                       CharacterSet="1"\r
+                       WholeProgramOptimization="1"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               Optimization="2"\r
+                               EnableIntrinsicFunctions="true"\r
+                               PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"\r
+                               RuntimeLibrary="2"\r
+                               EnableFunctionLevelLinking="true"\r
+                               UsePrecompiledHeader="2"\r
+                               WarningLevel="3"\r
+                               DebugInformationFormat="3"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               LinkIncremental="1"\r
+                               GenerateDebugInformation="true"\r
+                               SubSystem="1"\r
+                               OptimizeReferences="2"\r
+                               EnableCOMDATFolding="2"\r
+                               TargetMachine="1"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+       </Configurations>\r
+       <References>\r
+       </References>\r
+       <Files>\r
+               <Filter\r
+                       Name="\83\\81[\83\83t\83@\83C\83\8b"\r
+                       Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"\r
+                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"\r
+                       >\r
+                       <File\r
+                               RelativePath=".\encutf8.cpp"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\stdafx.cpp"\r
+                               >\r
+                               <FileConfiguration\r
+                                       Name="Debug|Win32"\r
+                                       >\r
+                                       <Tool\r
+                                               Name="VCCLCompilerTool"\r
+                                               UsePrecompiledHeader="1"\r
+                                       />\r
+                               </FileConfiguration>\r
+                               <FileConfiguration\r
+                                       Name="Release|Win32"\r
+                                       >\r
+                                       <Tool\r
+                                               Name="VCCLCompilerTool"\r
+                                               UsePrecompiledHeader="1"\r
+                                       />\r
+                               </FileConfiguration>\r
+                       </File>\r
+               </Filter>\r
+               <Filter\r
+                       Name="\83w\83b\83_\81\83t\83@\83C\83\8b"\r
+                       Filter="h;hpp;hxx;hm;inl;inc;xsd"\r
+                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"\r
+                       >\r
+                       <File\r
+                               RelativePath=".\stdafx.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath=".\targetver.h"\r
+                               >\r
+                       </File>\r
+               </Filter>\r
+               <Filter\r
+                       Name="\83\8a\83\\81[\83\83t\83@\83C\83\8b"\r
+                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"\r
+                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"\r
+                       >\r
+               </Filter>\r
+               <File\r
+                       RelativePath=".\ReadMe.txt"\r
+                       >\r
+               </File>\r
+       </Files>\r
+       <Globals>\r
+       </Globals>\r
+</VisualStudioProject>\r
index f25fa4f..dff203e 100644 (file)
@@ -1,8 +1,8 @@
-// stdafx.cpp : \95W\8f\80\83C\83\93\83N\83\8b\81[\83h encutf8.pch \82Ì\82Ý\82ð
-// \8aÜ\82Þ\83\\81[\83\83t\83@\83C\83\8b\82Í\81A\83v\83\8a\83R\83\93\83p\83C\83\8b\8dÏ\82Ý\83w\83b\83_\81[\82É\82È\82è\82Ü\82·\81B
-// stdafx.obj \82É\82Í\83v\83\8a\83R\83\93\83p\83C\83\8b\8dÏ\82Ý\8c^\8fî\95ñ\82ª\8aÜ\82Ü\82ê\82Ü\82·\81B
-
-#include "stdafx.h"
-
-// TODO: \82±\82Ì\83t\83@\83C\83\8b\82Å\82Í\82È\82­\81ASTDAFX.H \82Å\95K\97v\82È
-// \92Ç\89Á\83w\83b\83_\81[\82ð\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B
+// stdafx.cpp : \95W\8f\80\83C\83\93\83N\83\8b\81[\83h encutf8.pch \82Ì\82Ý\82ð\r
+// \8aÜ\82Þ\83\\81[\83\83t\83@\83C\83\8b\82Í\81A\83v\83\8a\83R\83\93\83p\83C\83\8b\8dÏ\82Ý\83w\83b\83_\81[\82É\82È\82è\82Ü\82·\81B\r
+// stdafx.obj \82É\82Í\83v\83\8a\83R\83\93\83p\83C\83\8b\8dÏ\82Ý\8c^\8fî\95ñ\82ª\8aÜ\82Ü\82ê\82Ü\82·\81B\r
+\r
+#include "stdafx.h"\r
+\r
+// TODO: \82±\82Ì\83t\83@\83C\83\8b\82Å\82Í\82È\82­\81ASTDAFX.H \82Å\95K\97v\82È\r
+// \92Ç\89Á\83w\83b\83_\81[\82ð\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B\r
index 4bee9d7..269cc47 100644 (file)
@@ -1,19 +1,19 @@
-// stdafx.h : \95W\8f\80\82Ì\83V\83X\83e\83\80 \83C\83\93\83N\83\8b\81[\83\83t\83@\83C\83\8b\82Ì\83C\83\93\83N\83\8b\81[\83\83t\83@\83C\83\8b\81A\82Ü\82½\82Í
-// \8eQ\8fÆ\89ñ\90\94\82ª\91½\82­\81A\82©\82Â\82 \82Ü\82è\95Ï\8dX\82³\82ê\82È\82¢\81A\83v\83\8d\83W\83F\83N\83g\90ê\97p\82Ì\83C\83\93\83N\83\8b\81[\83\83t\83@\83C\83\8b
-// \82ð\8bL\8fq\82µ\82Ü\82·\81B
-//
-
-#pragma once
-
-#include "targetver.h"
-
-#include <stdio.h>
-#include <tchar.h>
-
-
-
-// TODO: \83v\83\8d\83O\83\89\83\80\82É\95K\97v\82È\92Ç\89Á\83w\83b\83_\81[\82ð\82±\82±\82Å\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B
-
-#include <locale.h>
-#include <windows.h>
-
+// stdafx.h : \95W\8f\80\82Ì\83V\83X\83e\83\80 \83C\83\93\83N\83\8b\81[\83\83t\83@\83C\83\8b\82Ì\83C\83\93\83N\83\8b\81[\83\83t\83@\83C\83\8b\81A\82Ü\82½\82Í\r
+// \8eQ\8fÆ\89ñ\90\94\82ª\91½\82­\81A\82©\82Â\82 \82Ü\82è\95Ï\8dX\82³\82ê\82È\82¢\81A\83v\83\8d\83W\83F\83N\83g\90ê\97p\82Ì\83C\83\93\83N\83\8b\81[\83\83t\83@\83C\83\8b\r
+// \82ð\8bL\8fq\82µ\82Ü\82·\81B\r
+//\r
+\r
+#pragma once\r
+\r
+#include "targetver.h"\r
+\r
+#include <stdio.h>\r
+#include <tchar.h>\r
+\r
+\r
+\r
+// TODO: \83v\83\8d\83O\83\89\83\80\82É\95K\97v\82È\92Ç\89Á\83w\83b\83_\81[\82ð\82±\82±\82Å\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B\r
+\r
+#include <locale.h>\r
+#include <windows.h>\r
+\r
index b18cde4..504eb81 100644 (file)
@@ -1,13 +1,13 @@
-#pragma once
-
-// \88È\89º\82Ì\83}\83N\83\8d\82Í\81A\8dÅ\92á\8cÀ\95K\97v\82È\83v\83\89\83b\83g\83t\83H\81[\83\80\82ð\92è\8b`\82µ\82Ü\82·\81B\8dÅ\92á\8cÀ\95K\97v\82È\83v\83\89\83b\83g\83t\83H\81[\83\80\82Æ\82Í\81A
-// \83A\83v\83\8a\83P\81[\83V\83\87\83\93\82ð\8eÀ\8ds\82·\82é\82½\82ß\82É\95K\97v\82È\8b@\94\\82ð\94õ\82¦\82½\8dÅ\82à\8cÃ\82¢\83o\81[\83W\83\87\83\93\82Ì Windows \82â Internet Explorer \82È\82Ç
-// \82ð\82¢\82¢\82Ü\82·\81B\82±\82ê\82ç\82Ì\83}\83N\83\8d\82Í\81A\8ew\92è\82µ\82½\83o\81[\83W\83\87\83\93\82Æ\81A\82»\82ê\88È\91O\82Ì\83o\81[\83W\83\87\83\93\82Ì\83v\83\89\83b\83g\83t\83H\81[\83\80\8fã\82Å\97\98\97p\82Å\82«\82é\82·\82×\82Ä\82Ì\8b@\94\\82ð\97L\8cø\82É\82·\82é\82±\82Æ\82É\82æ\82Á\82Ä 
-// \93®\8dì\82µ\82Ü\82·\81B
-
-// \89º\82Å\8ew\92è\82³\82ê\82½\92è\8b`\82Ì\91O\82É\91Î\8fÛ\83v\83\89\83b\83g\83t\83H\81[\83\80\82ð\8ew\92è\82µ\82È\82¯\82ê\82Î\82È\82ç\82È\82¢\8fê\8d\87\81A\88È\89º\82Ì\92è\8b`\82ð\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B
-// \88Ù\82È\82é\83v\83\89\83b\83g\83t\83H\81[\83\80\82É\91Î\89\9e\82·\82é\92l\82É\8aÖ\82·\82é\8dÅ\90V\8fî\95ñ\82É\82Â\82¢\82Ä\82Í\81AMSDN \82ð\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B
-#ifndef _WIN32_WINNT            // \8dÅ\92á\8cÀ\95K\97v\82È\83v\83\89\83b\83g\83t\83H\81[\83\80\82ª Windows Vista \82Å\82 \82é\82±\82Æ\82ð\8ew\92è\82µ\82Ü\82·\81B
-#define _WIN32_WINNT 0x0600     // \82±\82ê\82ð Windows \82Ì\91¼\82Ì\83o\81[\83W\83\87\83\93\8cü\82¯\82É\93K\90Ø\82È\92l\82É\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B
-#endif
-
+#pragma once\r
+\r
+// \88È\89º\82Ì\83}\83N\83\8d\82Í\81A\8dÅ\92á\8cÀ\95K\97v\82È\83v\83\89\83b\83g\83t\83H\81[\83\80\82ð\92è\8b`\82µ\82Ü\82·\81B\8dÅ\92á\8cÀ\95K\97v\82È\83v\83\89\83b\83g\83t\83H\81[\83\80\82Æ\82Í\81A\r
+// \83A\83v\83\8a\83P\81[\83V\83\87\83\93\82ð\8eÀ\8ds\82·\82é\82½\82ß\82É\95K\97v\82È\8b@\94\\82ð\94õ\82¦\82½\8dÅ\82à\8cÃ\82¢\83o\81[\83W\83\87\83\93\82Ì Windows \82â Internet Explorer \82È\82Ç\r
+// \82ð\82¢\82¢\82Ü\82·\81B\82±\82ê\82ç\82Ì\83}\83N\83\8d\82Í\81A\8ew\92è\82µ\82½\83o\81[\83W\83\87\83\93\82Æ\81A\82»\82ê\88È\91O\82Ì\83o\81[\83W\83\87\83\93\82Ì\83v\83\89\83b\83g\83t\83H\81[\83\80\8fã\82Å\97\98\97p\82Å\82«\82é\82·\82×\82Ä\82Ì\8b@\94\\82ð\97L\8cø\82É\82·\82é\82±\82Æ\82É\82æ\82Á\82Ä \r
+// \93®\8dì\82µ\82Ü\82·\81B\r
+\r
+// \89º\82Å\8ew\92è\82³\82ê\82½\92è\8b`\82Ì\91O\82É\91Î\8fÛ\83v\83\89\83b\83g\83t\83H\81[\83\80\82ð\8ew\92è\82µ\82È\82¯\82ê\82Î\82È\82ç\82È\82¢\8fê\8d\87\81A\88È\89º\82Ì\92è\8b`\82ð\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B\r
+// \88Ù\82È\82é\83v\83\89\83b\83g\83t\83H\81[\83\80\82É\91Î\89\9e\82·\82é\92l\82É\8aÖ\82·\82é\8dÅ\90V\8fî\95ñ\82É\82Â\82¢\82Ä\82Í\81AMSDN \82ð\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B\r
+#ifndef _WIN32_WINNT            // \8dÅ\92á\8cÀ\95K\97v\82È\83v\83\89\83b\83g\83t\83H\81[\83\80\82ª Windows Vista \82Å\82 \82é\82±\82Æ\82ð\8ew\92è\82µ\82Ü\82·\81B\r
+#define _WIN32_WINNT 0x0600     // \82±\82ê\82ð Windows \82Ì\91¼\82Ì\83o\81[\83W\83\87\83\93\8cü\82¯\82É\93K\90Ø\82È\92l\82É\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B\r
+#endif\r
+\r
index efab57d..32f3e87 100644 (file)
@@ -1,54 +1,54 @@
-<html>
-<head>
-<title>SourceForge.JP版FFFTPのビルドおよび開発の手順について</title>
-<style type="text/css">
-.filename {font-weight:bold}
-</style>
-</head>
-<body>
-SourceForge.JP版<span style="font-weight:bold"><span style="color:yellow;vertical-align:super">F</span><span style="color:green">F</span><span style="color:red;vertical-align:sub">F</span><span style="color:green">TP</span></span>のビルドおよび開発の手順について<br>
-<ol>
-       <li>ビルドの手順<br>
-       FFFTPをビルドするには以下の手順に従ってください。
-       <ol>
-               <li>Visual C++ 2005を使用する場合
-               <ol>
-                       <li><span class="filename">"FFFTP.sln"</span>を開く。
-                       <li>必要に応じてソースコードを編集する。
-                       <ol>
-                               <li>プロジェクトはマルチバイト文字(Shift_JIS)用に設定されているが、ファイル名のUTF-8対応に伴い、実際の内部形式はUTF-8として扱っている(構造については<span class="filename">"mbswrapper.c"</span>およびその他のソースコード内のコメントを参照)。
-                               <li>メッセージ文字列については<span class="filename">"mesg-jpn.h"</span>および<span class="filename">"mesg-eng.h"</span>に記述されているが、編集する際は<span class="filename">"mesg-jpn.old.h"</span>および<span class="filename">"mesg-eng.old.h"</span>をShift_JISで保存し、<span class="filename">"mbtoutf8.bat"</span>を実行して文字列リテラルをUTF-8に変換する。
-                       </ol>
-                       <li>必要に応じてリソースを編集する。
-                       <ol>
-                               <li>追加の依存ライブラリの著作権情報は、ダイアログabout_dlgの「FFFTPはfreewareです」の上のテキストに追記してください。<br>
-                               今後の機能追加に伴い著作権情報が増える見込みのため、テキストの範囲を大きめに設定してあります。
-                       </ol>
-                       <li>ソリューション構成から「Debug」または「Release」を選択する。
-                       <li>メニューから「ソリューションのビルド」を選択する。
-                       <li>問題が無ければ<span class="filename">"Debug\FFFTP.exe"</span>または<span class="filename">"Release\FFFTP.exe"</span>が生成される。
-               </ol>
-               <li>Visual C++ 2008を使用する場合
-               <ol>
-                       <li><span class="filename">"FFFTP.vc90.sln"</span>を開く。
-                       <li>必要に応じてソースコードを編集する。
-                       <ol>
-                               <li>プロジェクトはマルチバイト文字(Shift_JIS)用に設定されているが、ファイル名のUTF-8対応に伴い、実際の内部形式はUTF-8として扱っている(構造については<span class="filename">"mbswrapper.c"</span>およびその他のソースコード内のコメントを参照)。
-                               <li>メッセージ文字列については<span class="filename">"mesg-jpn.h"</span>および<span class="filename">"mesg-eng.h"</span>に記述されているが、編集する際は<span class="filename">"mesg-jpn.old.h"</span>および<span class="filename">"mesg-eng.old.h"</span>をShift_JISで保存し、<span class="filename">"mbtoutf8.bat"</span>を実行して文字列リテラルをUTF-8に変換する。
-                       </ol>
-                       <li>必要に応じてリソースを編集する。
-                       <ol>
-                               <li>追加の依存ライブラリの著作権情報は、ダイアログabout_dlgの「FFFTPはfreewareです」の上のテキストに追記してください。<br>
-                               今後の機能追加に伴い著作権情報が増える見込みのため、テキストの範囲を大きめに設定してあります。
-                       </ol>
-                       <li>ソリューション構成から「Debug」または「Release」を選択する。
-                       <li>メニューから「ソリューションのビルド」を選択する。
-                       <li>問題が無ければ<span class="filename">"Debug\FFFTP.exe"</span>または<span class="filename">"Release\FFFTP.exe"</span>が生成される。
-               </ol>
-       </ol>
-</ol>
-質問やサポートはこちらまで。<br>
-<a href="http://sourceforge.jp/projects/ffftp/">http://sourceforge.jp/projects/ffftp/</a>
-
-</body>
-</html>
+<html>\r
+<head>\r
+<title>SourceForge.JP版FFFTPのビルドおよび開発の手順について</title>\r
+<style type="text/css">\r
+.filename {font-weight:bold}\r
+</style>\r
+</head>\r
+<body>\r
+SourceForge.JP版<span style="font-weight:bold"><span style="color:yellow;vertical-align:super">F</span><span style="color:green">F</span><span style="color:red;vertical-align:sub">F</span><span style="color:green">TP</span></span>のビルドおよび開発の手順について<br>\r
+<ol>\r
+       <li>ビルドの手順<br>\r
+       FFFTPをビルドするには以下の手順に従ってください。\r
+       <ol>\r
+               <li>Visual C++ 2005を使用する場合\r
+               <ol>\r
+                       <li><span class="filename">"FFFTP.sln"</span>を開く。\r
+                       <li>必要に応じてソースコードを編集する。\r
+                       <ol>\r
+                               <li>プロジェクトはマルチバイト文字(Shift_JIS)用に設定されているが、ファイル名のUTF-8対応に伴い、実際の内部形式はUTF-8として扱っている(構造については<span class="filename">"mbswrapper.c"</span>およびその他のソースコード内のコメントを参照)。\r
+                               <li>メッセージ文字列については<span class="filename">"mesg-jpn.h"</span>および<span class="filename">"mesg-eng.h"</span>に記述されているが、編集する際は<span class="filename">"mesg-jpn.old.h"</span>および<span class="filename">"mesg-eng.old.h"</span>をShift_JISで保存し、<span class="filename">"mbtoutf8.bat"</span>を実行して文字列リテラルをUTF-8に変換する。\r
+                       </ol>\r
+                       <li>必要に応じてリソースを編集する。\r
+                       <ol>\r
+                               <li>追加の依存ライブラリの著作権情報は、ダイアログabout_dlgの「FFFTPはfreewareです」の上のテキストに追記してください。<br>\r
+                               今後の機能追加に伴い著作権情報が増える見込みのため、テキストの範囲を大きめに設定してあります。\r
+                       </ol>\r
+                       <li>ソリューション構成から「Debug」または「Release」を選択する。\r
+                       <li>メニューから「ソリューションのビルド」を選択する。\r
+                       <li>問題が無ければ<span class="filename">"Debug\FFFTP.exe"</span>または<span class="filename">"Release\FFFTP.exe"</span>が生成される。\r
+               </ol>\r
+               <li>Visual C++ 2008を使用する場合\r
+               <ol>\r
+                       <li><span class="filename">"FFFTP.vc90.sln"</span>を開く。\r
+                       <li>必要に応じてソースコードを編集する。\r
+                       <ol>\r
+                               <li>プロジェクトはマルチバイト文字(Shift_JIS)用に設定されているが、ファイル名のUTF-8対応に伴い、実際の内部形式はUTF-8として扱っている(構造については<span class="filename">"mbswrapper.c"</span>およびその他のソースコード内のコメントを参照)。\r
+                               <li>メッセージ文字列については<span class="filename">"mesg-jpn.h"</span>および<span class="filename">"mesg-eng.h"</span>に記述されているが、編集する際は<span class="filename">"mesg-jpn.old.h"</span>および<span class="filename">"mesg-eng.old.h"</span>をShift_JISで保存し、<span class="filename">"mbtoutf8.bat"</span>を実行して文字列リテラルをUTF-8に変換する。\r
+                       </ol>\r
+                       <li>必要に応じてリソースを編集する。\r
+                       <ol>\r
+                               <li>追加の依存ライブラリの著作権情報は、ダイアログabout_dlgの「FFFTPはfreewareです」の上のテキストに追記してください。<br>\r
+                               今後の機能追加に伴い著作権情報が増える見込みのため、テキストの範囲を大きめに設定してあります。\r
+                       </ol>\r
+                       <li>ソリューション構成から「Debug」または「Release」を選択する。\r
+                       <li>メニューから「ソリューションのビルド」を選択する。\r
+                       <li>問題が無ければ<span class="filename">"Debug\FFFTP.exe"</span>または<span class="filename">"Release\FFFTP.exe"</span>が生成される。\r
+               </ol>\r
+       </ol>\r
+</ol>\r
+質問やサポートはこちらまで。<br>\r
+<a href="http://sourceforge.jp/projects/ffftp/">http://sourceforge.jp/projects/ffftp/</a>\r
+\r
+</body>\r
+</html>\r
index 6ba3c6a..1099b6d 100644 (file)
@@ -1,15 +1,15 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<HTML><HEAD><TITLE>\88Ã\8d\86\89»</TITLE>
-<META http-equiv=Content-Type content="text/html; charset=shift_jis">
-<META content="MSHTML 6.00.6000.16546" name=GENERATOR></HEAD>
-<BODY>
-<P><FONT 
-color=#ff0000>\83z\83X\83g\82Ö\82Ì\90Ú\91±\81A\83t\83@\83C\83\8b\88ê\97\97\81A\83A\83b\83v\83\8d\81[\83h\81A\83_\83E\83\93\83\8d\81[\83h\82È\82Ç\82É\96â\91è\82ª\8bN\82«\82½\8e\9e\82É\82Ì\82Ý\90Ý\92è\82ð\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B</FONT></P>
-<P><IMG src="..\pic\dlg_hset_crypt.png"></P>
-<P><STRONG>\81¡FTPS (Explicit)\82Å\90Ú\91±</STRONG></P>
-<P>FTP over Explicit SSL/TLS\82ð\8eg\97p\82µ\82Ä\83z\83X\83g\82Æ\82Ì\83\86\81[\83U\81[\94F\8fØ\82¨\82æ\82Ñ\83t\83@\83C\83\8b\93]\91\97\82ð\8ds\82¢\82Ü\82·\81B</P>
-<P><STRONG>\81¡FTPS (Implicit)\82Å\90Ú\91±</STRONG></P>
-<P>\8c»\8dÝ\82Í\96¢\8eÀ\91\95\82Ì\82½\82ß\8eg\97p\82Å\82«\82Ü\82¹\82ñ\81B</P>
-<P><STRONG>\81¡SFTP\82Å\90Ú\91±</STRONG></P>
-<P>\8c»\8dÝ\82Í\96¢\8eÀ\91\95\82Ì\82½\82ß\8eg\97p\82Å\82«\82Ü\82¹\82ñ\81B</P>
-<P>&nbsp;</P></BODY></HTML>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">\r
+<HTML><HEAD><TITLE>\88Ã\8d\86\89»</TITLE>\r
+<META http-equiv=Content-Type content="text/html; charset=shift_jis">\r
+<META content="MSHTML 6.00.6000.16546" name=GENERATOR></HEAD>\r
+<BODY>\r
+<P><FONT \r
+color=#ff0000>\83z\83X\83g\82Ö\82Ì\90Ú\91±\81A\83t\83@\83C\83\8b\88ê\97\97\81A\83A\83b\83v\83\8d\81[\83h\81A\83_\83E\83\93\83\8d\81[\83h\82È\82Ç\82É\96â\91è\82ª\8bN\82«\82½\8e\9e\82É\82Ì\82Ý\90Ý\92è\82ð\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B</FONT></P>\r
+<P><IMG src="..\pic\dlg_hset_crypt.png"></P>\r
+<P><STRONG>\81¡FTPS (Explicit)\82Å\90Ú\91±</STRONG></P>\r
+<P>FTP over Explicit SSL/TLS\82ð\8eg\97p\82µ\82Ä\83z\83X\83g\82Æ\82Ì\83\86\81[\83U\81[\94F\8fØ\82¨\82æ\82Ñ\83t\83@\83C\83\8b\93]\91\97\82ð\8ds\82¢\82Ü\82·\81B</P>\r
+<P><STRONG>\81¡FTPS (Implicit)\82Å\90Ú\91±</STRONG></P>\r
+<P>\8c»\8dÝ\82Í\96¢\8eÀ\91\95\82Ì\82½\82ß\8eg\97p\82Å\82«\82Ü\82¹\82ñ\81B</P>\r
+<P><STRONG>\81¡SFTP\82Å\90Ú\91±</STRONG></P>\r
+<P>\8c»\8dÝ\82Í\96¢\8eÀ\91\95\82Ì\82½\82ß\8eg\97p\82Å\82«\82Ü\82¹\82ñ\81B</P>\r
+<P>&nbsp;</P></BODY></HTML>\r
index 87ee4e8..8ffdf8f 100644 (file)
@@ -1,12 +1,12 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<HTML><HEAD><TITLE>\93Á\8eê\8b@\94\</TITLE>
-<META http-equiv=Content-Type content="text/html; charset=shift_jis">
-<META content="MSHTML 6.00.6000.16546" name=GENERATOR></HEAD>
-<BODY>
-<P><FONT 
-color=#ff0000>\83z\83X\83g\82Ö\82Ì\90Ú\91±\81A\83t\83@\83C\83\8b\88ê\97\97\81A\83A\83b\83v\83\8d\81[\83h\81A\83_\83E\83\93\83\8d\81[\83h\82È\82Ç\82É\96â\91è\82ª\8bN\82«\82½\8e\9e\82É\82Ì\82Ý\90Ý\92è\82ð\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B</FONT></P>
-<P><IMG src="..\pic\dlg_hset_adv3.png"></P>
-<P><STRONG>\81¡\8dÅ\91å\93¯\8e\9e\90Ú\91±\90\94</STRONG></P>
-<P>\83z\83X\83g\82Æ\93¯\8e\9e\82É\90Ú\91±\82Å\82«\82é\83Z\83b\83V\83\87\83\93\90\94\82ð\90Ý\92è\82µ\82Ü\82·\81B</P>
-<P>\82±\82Ì\92l\82ð\91\9d\82â\82·\82Æ\93¯\8e\9e\82É\93]\91\97\82Å\82«\82é\83t\83@\83C\83\8b\90\94\82ª\91\9d\82¦\82Ä\92Ê\90M\91¬\93x\82ª\8cü\8fã\82µ\82Ü\82·\81B\81i\94ñ\91Î\89\9e\82Ì\83z\83X\83g\82à\91\8dÝ\82·\82é\82½\82ß\81A\92Ê\8fí\82Í1\82É\90Ý\92è\82µ\82Ä\82­\82¾\82³\82¢\81B\81j</P>
-<P>&nbsp;</P></BODY></HTML>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">\r
+<HTML><HEAD><TITLE>\93Á\8eê\8b@\94\</TITLE>\r
+<META http-equiv=Content-Type content="text/html; charset=shift_jis">\r
+<META content="MSHTML 6.00.6000.16546" name=GENERATOR></HEAD>\r
+<BODY>\r
+<P><FONT \r
+color=#ff0000>\83z\83X\83g\82Ö\82Ì\90Ú\91±\81A\83t\83@\83C\83\8b\88ê\97\97\81A\83A\83b\83v\83\8d\81[\83h\81A\83_\83E\83\93\83\8d\81[\83h\82È\82Ç\82É\96â\91è\82ª\8bN\82«\82½\8e\9e\82É\82Ì\82Ý\90Ý\92è\82ð\95Ï\8dX\82µ\82Ä\82­\82¾\82³\82¢\81B</FONT></P>\r
+<P><IMG src="..\pic\dlg_hset_adv3.png"></P>\r
+<P><STRONG>\81¡\8dÅ\91å\93¯\8e\9e\90Ú\91±\90\94</STRONG></P>\r
+<P>\83z\83X\83g\82Æ\93¯\8e\9e\82É\90Ú\91±\82Å\82«\82é\83Z\83b\83V\83\87\83\93\90\94\82ð\90Ý\92è\82µ\82Ü\82·\81B</P>\r
+<P>\82±\82Ì\92l\82ð\91\9d\82â\82·\82Æ\93¯\8e\9e\82É\93]\91\97\82Å\82«\82é\83t\83@\83C\83\8b\90\94\82ª\91\9d\82¦\82Ä\92Ê\90M\91¬\93x\82ª\8cü\8fã\82µ\82Ü\82·\81B\81i\94ñ\91Î\89\9e\82Ì\83z\83X\83g\82à\91\8dÝ\82·\82é\82½\82ß\81A\92Ê\8fí\82Í1\82É\90Ý\92è\82µ\82Ä\82­\82¾\82³\82¢\81B\81j</P>\r
+<P>&nbsp;</P></BODY></HTML>\r
index f51a62d..25e603d 100644 (file)
-// mbswrapper.c
-// Copyright (C) 2011 Suguru Kawamoto
-// マルチバイト文字ワイド文字APIラッパー
-// マルチバイト文字はUTF-8、ワイド文字はUTF-16であるものとする
-// 全ての制御用の文字はASCIIの範囲であるため、Shift_JISとUTF-8間の変換は不要
-
-#define UNICODE
-#define _UNICODE
-
-#include <tchar.h>
-#include <direct.h>
-#include <windows.h>
-#include <commctrl.h>
-#include <shlobj.h>
-#include <htmlhelp.h>
-
-#define DO_NOT_REPLACE
-#include "mbswrapper.h"
-
-// マルチバイト文字列からワイド文字列へ変換
-int MtoW(LPWSTR pDst, int size, LPCSTR pSrc, int count)
-{
-       if(pSrc < (LPCSTR)0x00010000 || pSrc == (LPCSTR)~0)
-               return 0;
-       if(pDst)
-               return MultiByteToWideChar(CP_UTF8, 0, pSrc, count, pDst, size);
-       return MultiByteToWideChar(CP_UTF8, 0, pSrc, count, NULL, 0);
-}
-
-// ワイド文字列からマルチバイト文字列へ変換
-int WtoM(LPSTR pDst, int size, LPCWSTR pSrc, int count)
-{
-       if(pSrc < (LPCWSTR)0x00010000 || pSrc == (LPCWSTR)~0)
-               return 0;
-       if(pDst)
-               return WideCharToMultiByte(CP_UTF8, 0, pSrc, count, pDst, size, NULL, NULL);
-       return WideCharToMultiByte(CP_UTF8, 0, pSrc, count, NULL, 0, NULL, NULL);
-}
-
-// Shift_JIS文字列からワイド文字列へ変換
-int AtoW(LPWSTR pDst, int size, LPCSTR pSrc, int count)
-{
-       if(pSrc < (LPCSTR)0x00010000 || pSrc == (LPCSTR)~0)
-               return 0;
-       if(pDst)
-               return MultiByteToWideChar(CP_ACP, 0, pSrc, count, pDst, size);
-       return MultiByteToWideChar(CP_ACP, 0, pSrc, count, NULL, 0);
-}
-
-// ワイド文字列からShift_JIS文字列へ変換
-int WtoA(LPSTR pDst, int size, LPCWSTR pSrc, int count)
-{
-       if(pSrc < (LPCWSTR)0x00010000 || pSrc == (LPCWSTR)~0)
-               return 0;
-       if(pDst)
-               return WideCharToMultiByte(CP_ACP, 0, pSrc, count, pDst, size, NULL, NULL);
-       return WideCharToMultiByte(CP_ACP, 0, pSrc, count, NULL, 0, NULL, NULL);
-}
-
-// マルチバイト文字列バッファ終端を強制的にNULLで置換
-int TerminateStringM(LPSTR lpString, int size)
-{
-       int i;
-       if(lpString < (LPSTR)0x00010000 || lpString == (LPSTR)~0)
-               return 0;
-       for(i = 0; i < size; i++)
-       {
-               if(lpString[i] == '\0')
-                       return i;
-       }
-       i--;
-       lpString[i] = '\0';
-       return i;
-}
-
-// ワイド文字列バッファ終端を強制的にNULLで置換
-int TerminateStringW(LPWSTR lpString, int size)
-{
-       int i;
-       if(lpString < (LPWSTR)0x00010000 || lpString == (LPWSTR)~0)
-               return 0;
-       for(i = 0; i < size; i++)
-       {
-               if(lpString[i] == L'\0')
-                       return i;
-       }
-       i--;
-       lpString[i] = L'\0';
-       return i;
-}
-
-// Shift_JIS文字列バッファ終端を強制的にNULLで置換
-int TerminateStringA(LPSTR lpString, int size)
-{
-       int i;
-       if(lpString < (LPSTR)0x00010000 || lpString == (LPSTR)~0)
-               return 0;
-       for(i = 0; i < size; i++)
-       {
-               if(lpString[i] == '\0')
-                       return i;
-       }
-       i--;
-       lpString[i] = '\0';
-       return i;
-}
-
-// NULL区切り複数マルチバイト文字列の長さを取得
-size_t GetMultiStringLengthM(LPCSTR lpString)
-{
-       size_t i;
-       if(lpString < (LPCSTR)0x00010000 || lpString == (LPCSTR)~0)
-               return 0;
-       i = 0;
-       while(lpString[i] != '\0' || lpString[i + 1] != '\0')
-       {
-               i++;
-       }
-       i++;
-       return i;
-}
-
-// NULL区切り複数ワイド文字列の長さを取得
-size_t GetMultiStringLengthW(LPCWSTR lpString)
-{
-       size_t i;
-       if(lpString < (LPCWSTR)0x00010000 || lpString == (LPCWSTR)~0)
-               return 0;
-       i = 0;
-       while(lpString[i] != L'\0' || lpString[i + 1] != L'\0')
-       {
-               i++;
-       }
-       i++;
-       return i;
-}
-
-// NULL区切り複数Shift_JIS文字列の長さを取得
-size_t GetMultiStringLengthA(LPCSTR lpString)
-{
-       size_t i;
-       if(lpString < (LPCSTR)0x00010000 || lpString == (LPCSTR)~0)
-               return 0;
-       i = 0;
-       while(lpString[i] != '\0' || lpString[i + 1] != '\0')
-       {
-               i++;
-       }
-       i++;
-       return i;
-}
-
-// NULL区切りマルチバイト文字列からワイド文字列へ変換
-int MtoWMultiString(LPWSTR pDst, int size, LPCSTR pSrc)
-{
-       int i;
-       if(pSrc < (LPCSTR)0x00010000 || pSrc == (LPCSTR)~0)
-               return 0;
-       if(!pDst)
-               return GetMultiStringLengthM(pSrc);
-       i = 0;
-       while(*pSrc != '\0')
-       {
-               i += MultiByteToWideChar(CP_UTF8, 0, pSrc, -1, pDst + i, size - i - 1);
-               pSrc += strlen(pSrc) + 1;
-       }
-       pDst[i] = L'\0';
-       return i;
-}
-
-// NULL区切りワイド文字列からマルチバイト文字列へ変換
-int WtoMMultiString(LPSTR pDst, int size, LPCWSTR pSrc)
-{
-       int i;
-       if(pSrc < (LPCWSTR)0x00010000 || pSrc == (LPCWSTR)~0)
-               return 0;
-       if(!pDst)
-               return GetMultiStringLengthW(pSrc);
-       i = 0;
-       while(*pSrc != L'\0')
-       {
-               i += WideCharToMultiByte(CP_UTF8, 0, pSrc, -1, pDst + i, size - i - 1, NULL, NULL);
-               pSrc += wcslen(pSrc) + 1;
-       }
-       pDst[i] = '\0';
-       return i;
-}
-
-// NULL区切りShift_JIS文字列からワイド文字列へ変換
-int AtoWMultiString(LPWSTR pDst, int size, LPCSTR pSrc)
-{
-       int i;
-       if(pSrc < (LPCSTR)0x00010000 || pSrc == (LPCSTR)~0)
-               return 0;
-       if(!pDst)
-               return GetMultiStringLengthA(pSrc);
-       i = 0;
-       while(*pSrc != '\0')
-       {
-               i += MultiByteToWideChar(CP_ACP, 0, pSrc, -1, pDst + i, size - i - 1);
-               pSrc += strlen(pSrc) + 1;
-       }
-       pDst[i] = L'\0';
-       return i;
-}
-
-// NULL区切りワイド文字列からShift_JIS文字列へ変換
-int WtoAMultiString(LPSTR pDst, int size, LPCWSTR pSrc)
-{
-       int i;
-       if(pSrc < (LPCWSTR)0x00010000 || pSrc == (LPCWSTR)~0)
-               return 0;
-       if(!pDst)
-               return GetMultiStringLengthW(pSrc);
-       i = 0;
-       while(*pSrc != L'\0')
-       {
-               i += WideCharToMultiByte(CP_ACP, 0, pSrc, -1, pDst + i, size - i - 1, NULL, NULL);
-               pSrc += wcslen(pSrc) + 1;
-       }
-       pDst[i] = '\0';
-       return i;
-}
-
-// マルチバイト文字列用のメモリを確保
-char* AllocateStringM(int size)
-{
-       char* p;
-       // 0が指定される場合があるため1文字分追加
-       p = (char*)malloc(sizeof(char) * (size + 1));
-       // 念のため先頭にNULL文字を代入
-       if(p)
-               *p = '\0';
-       return p;
-}
-
-// ワイド文字列用のメモリを確保
-wchar_t* AllocateStringW(int size)
-{
-       wchar_t* p;
-       // 0が指定される場合があるため1文字分追加
-       p = (wchar_t*)malloc(sizeof(wchar_t) * (size + 1));
-       // 念のため先頭にNULL文字を代入
-       if(p)
-               *p = L'\0';
-       return p;
-}
-
-// Shift_JIS文字列用のメモリを確保
-char* AllocateStringA(int size)
-{
-       char* p;
-       // 0が指定される場合があるため1文字分追加
-       p = (char*)malloc(sizeof(char) * (size + 1));
-       // 念のため先頭にNULL文字を代入
-       if(p)
-               *p = '\0';
-       return p;
-}
-
-// メモリを確保してマルチバイト文字列からワイド文字列へ変換
-// リソースIDならば元の値を返す
-wchar_t* DuplicateMtoW(LPCSTR lpString, int c)
-{
-       wchar_t* p;
-       int i;
-       if(lpString < (LPCSTR)0x00010000 || lpString == (LPCSTR)~0)
-               return (wchar_t*)lpString;
-       if(c < 0)
-               c = strlen(lpString);
-       p = AllocateStringW(MtoW(NULL, 0, lpString, c) + 1);
-       if(p)
-       {
-               i = MtoW(p, 65535, lpString, c);
-               p[i] = L'\0';
-       }
-       return p;
-}
-
-// 指定したサイズのメモリを確保してマルチバイト文字列からワイド文字列へ変換
-// リソースIDならば元の値を返す
-wchar_t* DuplicateMtoWBuffer(LPCSTR lpString, int c, int size)
-{
-       wchar_t* p;
-       int i;
-       if(lpString < (LPCSTR)0x00010000 || lpString == (LPCSTR)~0)
-               return (wchar_t*)lpString;
-       if(c < 0)
-               c = strlen(lpString);
-       p = AllocateStringW(size);
-       if(p)
-       {
-               i = MtoW(p, size, lpString, c);
-               p[i] = L'\0';
-       }
-       return p;
-}
-
-// メモリを確保してNULL区切りマルチバイト文字列からワイド文字列へ変換
-// リソースIDならば元の値を返す
-wchar_t* DuplicateMtoWMultiString(LPCSTR lpString)
-{
-       int count;
-       wchar_t* p;
-       if(lpString < (LPCSTR)0x00010000 || lpString == (LPCSTR)~0)
-               return (wchar_t*)lpString;
-       count = GetMultiStringLengthM(lpString) + 1;
-       p = AllocateStringW(count);
-       if(p)
-               MtoW(p, count, lpString, count);
-       return p;
-}
-
-// 指定したサイズのメモリを確保してNULL区切りマルチバイト文字列からワイド文字列へ変換
-// リソースIDならば元の値を返す
-wchar_t* DuplicateMtoWMultiStringBuffer(LPCSTR lpString, int size)
-{
-       int count;
-       wchar_t* p;
-       if(lpString < (LPCSTR)0x00010000 || lpString == (LPCSTR)~0)
-               return (wchar_t*)lpString;
-       count = GetMultiStringLengthM(lpString) + 1;
-       p = AllocateStringW(size);
-       if(p)
-       {
-               MtoW(p, size, lpString, count);
-               p[size - 2] = L'\0';
-               p[size - 1] = L'\0';
-       }
-       return p;
-}
-
-// メモリを確保してワイド文字列からマルチバイト文字列へ変換
-// リソースIDならば元の値を返す
-char* DuplicateWtoM(LPCWSTR lpString, int c)
-{
-       char* p;
-       int i;
-       if(lpString < (LPCWSTR)0x00010000 || lpString == (LPCWSTR)~0)
-               return (char*)lpString;
-       if(c < 0)
-               c = wcslen(lpString);
-       p = AllocateStringM(WtoM(NULL, 0, lpString, c) + 1);
-       if(p)
-       {
-               i = WtoM(p, 65535, lpString, c);
-               p[i] = L'\0';
-       }
-       return p;
-}
-
-// メモリを確保してShift_JIS文字列からワイド文字列へ変換
-// リソースIDならば元の値を返す
-wchar_t* DuplicateAtoW(LPCSTR lpString, int c)
-{
-       wchar_t* p;
-       int i;
-       if(lpString < (LPCSTR)0x00010000 || lpString == (LPCSTR)~0)
-               return (wchar_t*)lpString;
-       if(c < 0)
-               c = strlen(lpString);
-       p = AllocateStringW(AtoW(NULL, 0, lpString, c) + 1);
-       if(p)
-       {
-               i = AtoW(p, 65535, lpString, c);
-               p[i] = L'\0';
-       }
-       return p;
-}
-
-// メモリを確保してワイド文字列からShift_JIS文字列へ変換
-// リソースIDならば元の値を返す
-char* DuplicateWtoA(LPCWSTR lpString, int c)
-{
-       char* p;
-       int i;
-       if(lpString < (LPCWSTR)0x00010000 || lpString == (LPCWSTR)~0)
-               return (char*)lpString;
-       if(c < 0)
-               c = wcslen(lpString);
-       p = AllocateStringA(WtoA(NULL, 0, lpString, c) + 1);
-       if(p)
-       {
-               i = WtoA(p, 65535, lpString, c);
-               p[i] = L'\0';
-       }
-       return p;
-}
-
-// 文字列用に確保したメモリを開放
-// リソースIDならば何もしない
-void FreeDuplicatedString(void* p)
-{
-       if(p < (void*)0x00010000 || p == (void*)~0)
-               return;
-       free(p);
-}
-
-// 以下ラッパー
-// 戻り値バッファ r
-// ワイド文字バッファ pw%d
-// マルチバイト文字バッファ pm%d
-// 引数バッファ a%d
-
-#pragma warning(disable:4102)
-#define START_ROUTINE                                  do{
-#define END_ROUTINE                                            }while(0);end_of_routine:
-#define QUIT_ROUTINE                                   goto end_of_routine;
-
-int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow)
-{
-       int r = 0;
-       char* pm0 = NULL;
-START_ROUTINE
-       pm0 = DuplicateWtoM(lpCmdLine, -1);
-       r = WinMainM(hInstance, hPrevInstance, pm0, nCmdShow);
-END_ROUTINE
-       FreeDuplicatedString(pm0);
-       return r;
-}
-
-HMODULE LoadLibraryM(LPCSTR lpLibFileName)
-{
-       HMODULE r = NULL;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpLibFileName, -1);
-       r = LoadLibraryW(pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-HANDLE CreateFileM(LPCSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile)
-{
-       HANDLE r = INVALID_HANDLE_VALUE;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpFileName, -1);
-       r = CreateFileW(pw0, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-int MessageBoxM(HWND hWnd, LPCSTR lpText, LPCSTR lpCaption, UINT uType)
-{
-       int r = IDOK;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpText, -1);
-       pw1 = DuplicateMtoW(lpCaption, -1);
-       r = MessageBoxW(hWnd, pw0, pw1, uType);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-HANDLE FindFirstFileM(LPCSTR lpFileName, LPWIN32_FIND_DATAA lpFindFileData)
-{
-       HANDLE r = INVALID_HANDLE_VALUE;
-       wchar_t* pw0 = NULL;
-       WIN32_FIND_DATAW a0;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpFileName, -1);
-       r = FindFirstFileW(pw0, &a0);
-       if(r != INVALID_HANDLE_VALUE)
-       {
-               lpFindFileData->dwFileAttributes = a0.dwFileAttributes;
-               lpFindFileData->ftCreationTime = a0.ftCreationTime;
-               lpFindFileData->ftLastAccessTime = a0.ftLastAccessTime;
-               lpFindFileData->ftLastWriteTime = a0.ftLastWriteTime;
-               lpFindFileData->nFileSizeHigh = a0.nFileSizeHigh;
-               lpFindFileData->nFileSizeLow = a0.nFileSizeLow;
-               lpFindFileData->dwReserved0 = a0.dwReserved0;
-               lpFindFileData->dwReserved1 = a0.dwReserved1;
-               WtoM(lpFindFileData->cFileName, sizeof(lpFindFileData->cFileName), a0.cFileName, -1);
-               WtoM(lpFindFileData->cAlternateFileName, sizeof(lpFindFileData->cAlternateFileName), a0.cAlternateFileName, -1);
-       }
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-BOOL FindNextFileM(HANDLE hFindFile, LPWIN32_FIND_DATAA lpFindFileData)
-{
-       BOOL r = FALSE;
-       WIN32_FIND_DATAW a0;
-START_ROUTINE
-       r = FindNextFileW(hFindFile, &a0);
-       if(r)
-       {
-               lpFindFileData->dwFileAttributes = a0.dwFileAttributes;
-               lpFindFileData->ftCreationTime = a0.ftCreationTime;
-               lpFindFileData->ftLastAccessTime = a0.ftLastAccessTime;
-               lpFindFileData->ftLastWriteTime = a0.ftLastWriteTime;
-               lpFindFileData->nFileSizeHigh = a0.nFileSizeHigh;
-               lpFindFileData->nFileSizeLow = a0.nFileSizeLow;
-               lpFindFileData->dwReserved0 = a0.dwReserved0;
-               lpFindFileData->dwReserved1 = a0.dwReserved1;
-               WtoM(lpFindFileData->cFileName, sizeof(lpFindFileData->cFileName), a0.cFileName, -1);
-               WtoM(lpFindFileData->cAlternateFileName, sizeof(lpFindFileData->cAlternateFileName), a0.cAlternateFileName, -1);
-       }
-END_ROUTINE
-       return r;
-}
-
-DWORD GetLogicalDriveStringsM(DWORD nBufferLength, LPSTR lpBuffer)
-{
-       DWORD r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = AllocateStringW(nBufferLength * 4);
-       GetLogicalDriveStringsW(nBufferLength * 4, pw0);
-       WtoMMultiString(lpBuffer, nBufferLength, pw0);
-       r = TerminateStringM(lpBuffer, nBufferLength);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-ATOM RegisterClassExM(CONST WNDCLASSEXA * v0)
-{
-       ATOM r = 0;
-START_ROUTINE
-       // WNDPROCがShift_JIS用であるため
-       r = RegisterClassExA(v0);
-END_ROUTINE
-       return r;
-}
-
-HWND CreateWindowExM(DWORD dwExStyle, LPCSTR lpClassName, LPCSTR lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam)
-{
-       HWND r = NULL;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpClassName, -1);
-       pw1 = DuplicateMtoW(lpWindowName, -1);
-       r = CreateWindowExW(dwExStyle, pw0, pw1, dwStyle, X, Y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-LONG GetWindowLongM(HWND hWnd, int nIndex)
-{
-       LRESULT r = 0;
-START_ROUTINE
-       // WNDPROCがShift_JIS用であるため
-       if(IsWindowUnicode(hWnd))
-               r = GetWindowLongW(hWnd, nIndex);
-       else
-               r = GetWindowLongA(hWnd, nIndex);
-END_ROUTINE
-       return r;
-}
-
-LONG SetWindowLongM(HWND hWnd, int nIndex, LONG dwNewLong)
-{
-       LRESULT r = 0;
-START_ROUTINE
-       // WNDPROCがShift_JIS用であるため
-       if(IsWindowUnicode(hWnd))
-               r = SetWindowLongW(hWnd, nIndex, dwNewLong);
-       else
-               r = SetWindowLongA(hWnd, nIndex, dwNewLong);
-END_ROUTINE
-       return r;
-}
-
-LRESULT DefWindowProcM(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
-{
-       LRESULT r = 0;
-START_ROUTINE
-       // WNDPROCがShift_JIS用であるため
-       if(IsWindowUnicode(hWnd))
-               r = DefWindowProcW(hWnd, Msg, wParam, lParam);
-       else
-               r = DefWindowProcA(hWnd, Msg, wParam, lParam);
-END_ROUTINE
-       return r;
-}
-
-LRESULT CallWindowProcM(WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
-{
-       LRESULT r = 0;
-START_ROUTINE
-       // WNDPROCがShift_JIS用であるため
-       if(IsWindowUnicode(hWnd))
-               r = CallWindowProcW(lpPrevWndFunc, hWnd, Msg, wParam, lParam);
-       else
-               r = CallWindowProcA(lpPrevWndFunc, hWnd, Msg, wParam, lParam);
-END_ROUTINE
-       return r;
-}
-
-LRESULT SendMessageM(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
-{
-       LRESULT r = 0;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       int Size;
-       LVITEMA* pmLVItem;
-       LVITEMW wLVItem;
-       LVFINDINFOA* pmLVFindInfo;
-       LVFINDINFOW wLVFindInfo;
-       LVCOLUMNA* pmLVColumn;
-       LVCOLUMNW wLVColumn;
-       TVITEMEXA* pmTVItem;
-       TVITEMEXW wTVItem;
-       TVINSERTSTRUCTA* pmTVInsert;
-       TVINSERTSTRUCTW wTVInsert;
-       wchar_t ClassName[MAX_PATH];
-START_ROUTINE
-       switch(Msg)
-       {
-       case WM_SETTEXT:
-               pw0 = DuplicateMtoW((LPCSTR)lParam, -1);
-               r = SendMessageW(hWnd, WM_SETTEXT, wParam, (LPARAM)pw0);
-               break;
-       case WM_GETTEXT:
-               pw0 = AllocateStringW(wParam * 4);
-               SendMessageW(hWnd, WM_GETTEXT, wParam * 4, (LPARAM)pw0);
-               WtoM((LPSTR)lParam, wParam, pw0, -1);
-               r = TerminateStringM((LPSTR)lParam, wParam);
-               break;
-       case WM_GETTEXTLENGTH:
-               Size = SendMessageW(hWnd, WM_GETTEXTLENGTH, wParam, lParam) + 1;
-               pw0 = AllocateStringW(Size);
-               SendMessageW(hWnd, WM_GETTEXT, (WPARAM)Size, (LPARAM)pw0);
-               r = WtoM(NULL, 0, pw0, -1) - 1;
-               break;
-       default:
-               GetClassNameW(hWnd, ClassName, sizeof(ClassName) / sizeof(wchar_t));
-               if(_wcsicmp(ClassName, WC_EDITW) == 0)
-               {
-                       switch(Msg)
-                       {
-                       case EM_REPLACESEL:
-                               pw0 = DuplicateMtoW((LPCSTR)lParam, -1);
-                               r = SendMessageW(hWnd, EM_REPLACESEL, wParam, (LPARAM)pw0);
-                               break;
-                       default:
-                               r = SendMessageW(hWnd, Msg, wParam, lParam);
-                               break;
-                       }
-               }
-               else if(_wcsicmp(ClassName, WC_COMBOBOXW) == 0)
-               {
-                       switch(Msg)
-                       {
-                       case CB_ADDSTRING:
-                               pw0 = DuplicateMtoW((LPCSTR)lParam, -1);
-                               r = SendMessageW(hWnd, CB_ADDSTRING, wParam, (LPARAM)pw0);
-                               break;
-                       case CB_GETLBTEXT:
-                               Size = SendMessageW(hWnd, CB_GETLBTEXTLEN, wParam, 0) + 1;
-                               pw0 = AllocateStringW(Size);
-                               SendMessageW(hWnd, CB_GETLBTEXT, wParam, (LPARAM)pw0);
-                               // バッファ長不明のためオーバーランの可能性あり
-                               WtoM((LPSTR)lParam, Size * 4, pw0, -1);
-                               r = TerminateStringM((LPSTR)lParam, Size * 4);
-                               break;
-                       case CB_GETLBTEXTLEN:
-                               Size = SendMessageW(hWnd, CB_GETLBTEXTLEN, wParam, 0) + 1;
-                               pw0 = AllocateStringW(Size);
-                               SendMessageW(hWnd, WM_GETTEXT, wParam, (LPARAM)pw0);
-                               r = WtoM(NULL, 0, pw0, -1) - 1;
-                               break;
-                       case CB_INSERTSTRING:
-                               pw0 = DuplicateMtoW((LPCSTR)lParam, -1);
-                               r = SendMessageW(hWnd, CB_INSERTSTRING, wParam, (LPARAM)pw0);
-                               break;
-                       case CB_FINDSTRINGEXACT:
-                               pw0 = DuplicateMtoW((LPCSTR)lParam, -1);
-                               r = SendMessageW(hWnd, CB_FINDSTRINGEXACT, wParam, (LPARAM)pw0);
-                               break;
-                       default:
-                               r = SendMessageW(hWnd, Msg, wParam, lParam);
-                               break;
-                       }
-               }
-               else if(_wcsicmp(ClassName, WC_LISTBOXW) == 0)
-               {
-                       switch(Msg)
-                       {
-                       case LB_ADDSTRING:
-                               pw0 = DuplicateMtoW((LPCSTR)lParam, -1);
-                               r = SendMessageW(hWnd, LB_ADDSTRING, wParam, (LPARAM)pw0);
-                               break;
-                       case LB_INSERTSTRING:
-                               pw0 = DuplicateMtoW((LPCSTR)lParam, -1);
-                               r = SendMessageW(hWnd, LB_INSERTSTRING, wParam, (LPARAM)pw0);
-                               break;
-                       case LB_GETTEXT:
-                               Size = SendMessageW(hWnd, LB_GETTEXTLEN, wParam, 0) + 1;
-                               pw0 = AllocateStringW(Size);
-                               SendMessageW(hWnd, LB_GETTEXT, wParam, (LPARAM)pw0);
-                               // バッファ長不明のためオーバーランの可能性あり
-                               WtoM((LPSTR)lParam, Size * 4, pw0, -1);
-                               r = TerminateStringM((LPSTR)lParam, Size * 4);
-                               break;
-                       case LB_GETTEXTLEN:
-                               Size = SendMessageW(hWnd, LB_GETTEXTLEN, wParam, 0) + 1;
-                               pw0 = AllocateStringW(Size);
-                               SendMessageW(hWnd, WM_GETTEXT, wParam, (LPARAM)pw0);
-                               r = WtoM(NULL, 0, pw0, -1) - 1;
-                               break;
-                       default:
-                               r = SendMessageW(hWnd, Msg, wParam, lParam);
-                               break;
-                       }
-               }
-               else if(_wcsicmp(ClassName, WC_LISTVIEWW) == 0)
-               {
-                       switch(Msg)
-                       {
-                       case LVM_GETITEMA:
-                               pmLVItem = (LVITEMA*)lParam;
-                               wLVItem.mask = pmLVItem->mask;
-                               wLVItem.iItem = pmLVItem->iItem;
-                               wLVItem.iSubItem = pmLVItem->iSubItem;
-                               wLVItem.state = pmLVItem->state;
-                               wLVItem.stateMask = pmLVItem->stateMask;
-                               if(pmLVItem->mask & LVIF_TEXT)
-                               {
-                                       Size = pmLVItem->cchTextMax * 4;
-                                       pw0 = AllocateStringW(Size);
-                                       wLVItem.pszText = pw0;
-                                       wLVItem.cchTextMax = Size;
-                               }
-                               wLVItem.iImage = pmLVItem->iImage;
-                               wLVItem.lParam = pmLVItem->lParam;
-                               wLVItem.iIndent = pmLVItem->iIndent;
-                               r = SendMessageW(hWnd, LVM_GETITEMW, wParam, (LPARAM)&wLVItem);
-                               pmLVItem->mask = wLVItem.mask;
-                               pmLVItem->iItem = wLVItem.iItem;
-                               pmLVItem->iSubItem = wLVItem.iSubItem;
-                               pmLVItem->state = wLVItem.state;
-                               pmLVItem->stateMask = wLVItem.stateMask;
-                               if(pmLVItem->mask & LVIF_TEXT)
-                               {
-                                       WtoM(pmLVItem->pszText, pmLVItem->cchTextMax, wLVItem.pszText, -1);
-                                       TerminateStringM(pmLVItem->pszText, pmLVItem->cchTextMax);
-                               }
-                               pmLVItem->iImage = wLVItem.iImage;
-                               pmLVItem->lParam = wLVItem.lParam;
-                               pmLVItem->iIndent = wLVItem.iIndent;
-                               break;
-                       case LVM_SETITEMA:
-                               pmLVItem = (LVITEMA*)lParam;
-                               wLVItem.mask = pmLVItem->mask;
-                               wLVItem.iItem = pmLVItem->iItem;
-                               wLVItem.iSubItem = pmLVItem->iSubItem;
-                               wLVItem.state = pmLVItem->state;
-                               wLVItem.stateMask = pmLVItem->stateMask;
-                               if(pmLVItem->mask & LVIF_TEXT)
-                               {
-                                       pw0 = DuplicateMtoW(pmLVItem->pszText, -1);
-                                       wLVItem.pszText = pw0;
-                                       // TODO: cchTextMaxの確認
-                                       wLVItem.cchTextMax = pmLVItem->cchTextMax;
-                               }
-                               wLVItem.iImage = pmLVItem->iImage;
-                               wLVItem.lParam = pmLVItem->lParam;
-                               wLVItem.iIndent = pmLVItem->iIndent;
-                               r = SendMessageW(hWnd, LVM_SETITEMW, wParam, (LPARAM)&wLVItem);
-                               break;
-                       case LVM_INSERTITEMA:
-                               pmLVItem = (LVITEMA*)lParam;
-                               wLVItem.mask = pmLVItem->mask;
-                               wLVItem.iItem = pmLVItem->iItem;
-                               wLVItem.iSubItem = pmLVItem->iSubItem;
-                               wLVItem.state = pmLVItem->state;
-                               wLVItem.stateMask = pmLVItem->stateMask;
-                               if(pmLVItem->mask & LVIF_TEXT)
-                               {
-                                       pw0 = DuplicateMtoW(pmLVItem->pszText, -1);
-                                       wLVItem.pszText = pw0;
-                                       // TODO: cchTextMaxの確認
-                                       wLVItem.cchTextMax = pmLVItem->cchTextMax;
-                               }
-                               wLVItem.iImage = pmLVItem->iImage;
-                               wLVItem.lParam = pmLVItem->lParam;
-                               wLVItem.iIndent = pmLVItem->iIndent;
-                               r = SendMessageW(hWnd, LVM_INSERTITEMW, wParam, (LPARAM)&wLVItem);
-                               break;
-                       case LVM_FINDITEMA:
-                               pmLVFindInfo = (LVFINDINFOA*)lParam;
-                               wLVFindInfo.flags = pmLVFindInfo->flags;
-                               if(pmLVFindInfo->flags & (LVFI_STRING | LVFI_PARTIAL))
-                               {
-                                       pw0 = DuplicateMtoW(pmLVFindInfo->psz, -1);
-                                       wLVFindInfo.psz = pw0;
-                               }
-                               wLVFindInfo.lParam = pmLVFindInfo->lParam;
-                               wLVFindInfo.pt = pmLVFindInfo->pt;
-                               wLVFindInfo.vkDirection = pmLVFindInfo->vkDirection;
-                               r = SendMessageW(hWnd, LVM_FINDITEMW, wParam, (LPARAM)&wLVItem);
-                               break;
-                       case LVM_GETCOLUMNA:
-                               pmLVColumn = (LVCOLUMNA*)lParam;
-                               wLVColumn.mask = pmLVColumn->mask;
-                               wLVColumn.fmt = pmLVColumn->fmt;
-                               wLVColumn.cx = pmLVColumn->cx;
-                               Size = pmLVColumn->cchTextMax * 4;
-                               if(pmLVColumn->mask & LVCF_TEXT)
-                               {
-                                       pw0 = AllocateStringW(Size);
-                                       wLVColumn.pszText = pw0;
-                                       wLVColumn.cchTextMax = Size;
-                               }
-                               wLVColumn.iSubItem = pmLVColumn->iSubItem;
-                               wLVColumn.iImage = pmLVColumn->iImage;
-                               wLVColumn.iOrder = pmLVColumn->iOrder;
-                               r = SendMessageW(hWnd, LVM_GETCOLUMNW, wParam, (LPARAM)&wLVColumn);
-                               pmLVColumn->mask = wLVColumn.mask;
-                               pmLVColumn->fmt = wLVColumn.fmt;
-                               pmLVColumn->cx = wLVColumn.cx;
-                               if(pmLVColumn->mask & LVCF_TEXT)
-                               {
-                                       WtoM(pmLVColumn->pszText, pmLVColumn->cchTextMax, wLVColumn.pszText, -1);
-                                       TerminateStringM(pmLVColumn->pszText, pmLVColumn->cchTextMax);
-                               }
-                               pmLVColumn->iSubItem = wLVColumn.iSubItem;
-                               pmLVColumn->iImage = wLVColumn.iImage;
-                               pmLVColumn->iOrder = wLVColumn.iOrder;
-                               break;
-                       case LVM_INSERTCOLUMNA:
-                               pmLVColumn = (LVCOLUMNA*)lParam;
-                               wLVColumn.mask = pmLVColumn->mask;
-                               wLVColumn.fmt = pmLVColumn->fmt;
-                               wLVColumn.cx = pmLVColumn->cx;
-                               if(pmLVColumn->mask & LVCF_TEXT)
-                               {
-                                       pw0 = DuplicateMtoW(pmLVColumn->pszText, -1);
-                                       wLVColumn.pszText = pw0;
-                                       // TODO: cchTextMaxの確認
-                                       wLVColumn.cchTextMax = pmLVColumn->cchTextMax;
-                               }
-                               wLVColumn.iSubItem = pmLVColumn->iSubItem;
-                               wLVColumn.iImage = pmLVColumn->iImage;
-                               wLVColumn.iOrder = pmLVColumn->iOrder;
-                               r = SendMessageW(hWnd, LVM_INSERTCOLUMNW, wParam, (LPARAM)&wLVColumn);
-                               break;
-                       case LVM_GETITEMTEXTA:
-                               pmLVItem = (LVITEMA*)lParam;
-                               wLVItem.mask = pmLVItem->mask;
-                               wLVItem.iItem = pmLVItem->iItem;
-                               wLVItem.iSubItem = pmLVItem->iSubItem;
-                               wLVItem.state = pmLVItem->state;
-                               wLVItem.stateMask = pmLVItem->stateMask;
-                               Size = pmLVItem->cchTextMax * 4;
-                               pw0 = AllocateStringW(Size);
-                               wLVItem.pszText = pw0;
-                               wLVItem.cchTextMax = Size;
-                               wLVItem.iImage = pmLVItem->iImage;
-                               wLVItem.lParam = pmLVItem->lParam;
-                               wLVItem.iIndent = pmLVItem->iIndent;
-                               r = SendMessageW(hWnd, LVM_GETITEMTEXTW, wParam, (LPARAM)&wLVItem);
-                               pmLVItem->mask = wLVItem.mask;
-                               pmLVItem->iItem = wLVItem.iItem;
-                               pmLVItem->iSubItem = wLVItem.iSubItem;
-                               pmLVItem->state = wLVItem.state;
-                               pmLVItem->stateMask = wLVItem.stateMask;
-                               WtoM(pmLVItem->pszText, pmLVItem->cchTextMax, wLVItem.pszText, -1);
-                               TerminateStringM(pmLVItem->pszText, pmLVItem->cchTextMax);
-                               pmLVItem->iImage = wLVItem.iImage;
-                               pmLVItem->lParam = wLVItem.lParam;
-                               pmLVItem->iIndent = wLVItem.iIndent;
-                               break;
-                       default:
-                               r = SendMessageW(hWnd, Msg, wParam, lParam);
-                               break;
-                       }
-               }
-               else if(_wcsicmp(ClassName, STATUSCLASSNAMEW) == 0)
-               {
-                       switch(Msg)
-                       {
-                       case SB_SETTEXTA:
-                               pw0 = DuplicateMtoW((LPCSTR)lParam, -1);
-                               r = SendMessageW(hWnd, SB_SETTEXTW, wParam, (LPARAM)pw0);
-                               break;
-                       default:
-                               r = SendMessageW(hWnd, Msg, wParam, lParam);
-                               break;
-                       }
-               }
-               else if(_wcsicmp(ClassName, WC_TREEVIEWW) == 0)
-               {
-                       switch(Msg)
-                       {
-                       case TVM_GETITEMA:
-                               pmTVItem = (TVITEMEXA*)lParam;
-                               wTVItem.mask = pmTVItem->mask;
-                               wTVItem.hItem = pmTVItem->hItem;
-                               wTVItem.state = pmTVItem->state;
-                               wTVItem.stateMask = pmTVItem->stateMask;
-                               if(pmTVItem->mask & TVIF_TEXT)
-                               {
-                                       Size = pmTVItem->cchTextMax * 4;
-                                       pw0 = AllocateStringW(Size);
-                                       wTVItem.pszText = pw0;
-                                       wTVItem.cchTextMax = Size;
-                               }
-                               wTVItem.iImage = pmTVItem->iImage;
-                               wTVItem.iSelectedImage = pmTVItem->iSelectedImage;
-                               wTVItem.cChildren = pmTVItem->cChildren;
-                               wTVItem.lParam = pmTVItem->lParam;
-                               wTVItem.iIntegral = pmTVItem->iIntegral;
-//                             wTVItem.uStateEx = pmTVItem->uStateEx;
-//                             wTVItem.hwnd = pmTVItem->hwnd;
-//                             wTVItem.iExpandedImage = pmTVItem->iExpandedImage;
-//                             wTVItem.iReserved = pmTVItem->iReserved;
-                               r = SendMessageW(hWnd, TVM_GETITEMW, wParam, (LPARAM)&wTVItem);
-                               pmTVItem->mask = wTVItem.mask;
-                               pmTVItem->hItem = wTVItem.hItem;
-                               pmTVItem->state = wTVItem.state;
-                               pmTVItem->stateMask = wTVItem.stateMask;
-                               if(pmTVItem->mask & TVIF_TEXT)
-                               {
-                                       WtoM(pmTVItem->pszText, pmTVItem->cchTextMax, wTVItem.pszText, -1);
-                                       TerminateStringM(pmTVItem->pszText, pmTVItem->cchTextMax);
-                               }
-                               pmTVItem->iImage = wTVItem.iImage;
-                               pmTVItem->iSelectedImage = wTVItem.iSelectedImage;
-                               pmTVItem->cChildren = wTVItem.cChildren;
-                               pmTVItem->lParam = wTVItem.lParam;
-                               pmTVItem->iIntegral = wTVItem.iIntegral;
-//                             pmTVItem->uStateEx = wTVItem.uStateEx;
-//                             pmTVItem->hwnd = wTVItem.hwnd;
-//                             pmTVItem->iExpandedImage = wTVItem.iExpandedImage;
-//                             pmTVItem->iReserved = wTVItem.iReserved;
-                               break;
-                       case TVM_INSERTITEMA:
-                               pmTVInsert = (TVINSERTSTRUCTA*)lParam;
-                               wTVInsert.hParent = pmTVInsert->hParent;
-                               wTVInsert.hInsertAfter = pmTVInsert->hInsertAfter;
-                               wTVInsert.itemex.mask = pmTVInsert->itemex.mask;
-                               wTVInsert.itemex.hItem = pmTVInsert->itemex.hItem;
-                               wTVInsert.itemex.state = pmTVInsert->itemex.state;
-                               wTVInsert.itemex.stateMask = pmTVInsert->itemex.stateMask;
-                               if(pmTVInsert->itemex.mask & TVIF_TEXT)
-                               {
-                                       pw0 = DuplicateMtoW(pmTVInsert->itemex.pszText, -1);
-                                       wTVInsert.itemex.pszText = pw0;
-                                       // TODO: cchTextMaxの確認
-                                       wTVInsert.itemex.cchTextMax = pmTVInsert->itemex.cchTextMax;
-                               }
-                               wTVInsert.itemex.iImage = pmTVInsert->itemex.iImage;
-                               wTVInsert.itemex.iSelectedImage = pmTVInsert->itemex.iSelectedImage;
-                               wTVInsert.itemex.cChildren = pmTVInsert->itemex.cChildren;
-                               wTVInsert.itemex.lParam = pmTVInsert->itemex.lParam;
-                               wTVInsert.itemex.iIntegral = pmTVInsert->itemex.iIntegral;
-//                             wTVInsert.itemex.uStateEx = pmTVInsert->itemex.uStateEx;
-//                             wTVInsert.itemex.hwnd = pmTVInsert->itemex.hwnd;
-//                             wTVInsert.itemex.iExpandedImage = pmTVInsert->itemex.iExpandedImage;
-//                             wTVInsert.itemex.iReserved = pmTVInsert->itemex.iReserved;
-                               r = SendMessageW(hWnd, TVM_INSERTITEMW, wParam, (LPARAM)&wTVInsert);
-                               break;
-                       default:
-                               r = SendMessageW(hWnd, Msg, wParam, lParam);
-                               break;
-                       }
-               }
-               else
-                       r = SendMessageW(hWnd, Msg, wParam, lParam);
-               break;
-       }
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-LRESULT DefDlgProcM(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
-{
-       LRESULT r = 0;
-START_ROUTINE
-       // WNDPROCがShift_JIS用であるため
-       if(IsWindowUnicode(hWnd))
-               r = DefDlgProcW(hWnd, Msg, wParam, lParam);
-       else
-               r = DefDlgProcA(hWnd, Msg, wParam, lParam);
-END_ROUTINE
-       return r;
-}
-
-LRESULT SendDlgItemMessageM(HWND hDlg, int nIDDlgItem, UINT Msg, WPARAM wParam, LPARAM lParam)
-{
-       LRESULT r = 0;
-START_ROUTINE
-       r = SendMessageM(GetDlgItem(hDlg, nIDDlgItem), Msg, wParam, lParam);
-END_ROUTINE
-       return r;
-}
-
-BOOL SetWindowTextM(HWND hWnd, LPCSTR lpString)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpString, -1);
-       r = SetWindowTextW(hWnd, pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-UINT DragQueryFileM(HDROP hDrop, UINT iFile, LPSTR lpszFile, UINT cch)
-{
-       UINT r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       if(iFile == (UINT)-1)
-               r = DragQueryFileW(hDrop, iFile, (LPWSTR)lpszFile, cch);
-       else
-       {
-               pw0 = AllocateStringW(cch * 4);
-               DragQueryFileW(hDrop, iFile, pw0, cch * 4);
-               WtoM(lpszFile, cch, pw0, -1);
-               r = TerminateStringM(lpszFile, cch);
-       }
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-LPSTR GetCommandLineM()
-{
-       LPSTR r = 0;
-       static char* pm0 = NULL;
-START_ROUTINE
-       if(!pm0)
-               pm0 = DuplicateWtoM(GetCommandLineW(), -1);
-       r = pm0;
-END_ROUTINE
-       return r;
-}
-
-DWORD GetCurrentDirectoryM(DWORD nBufferLength, LPSTR lpBuffer)
-{
-       DWORD r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       // TODO: バッファが不十分な場合に必要なサイズを返す
-       pw0 = AllocateStringW(nBufferLength * 4);
-       GetCurrentDirectoryW(nBufferLength * 4, pw0);
-       WtoM(lpBuffer, nBufferLength, pw0, -1);
-       r = TerminateStringM(lpBuffer, nBufferLength);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-BOOL SetCurrentDirectoryM(LPCSTR lpPathName)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpPathName, -1);
-       r = SetCurrentDirectoryW(pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-DWORD GetTempPathM(DWORD nBufferLength, LPSTR lpBuffer)
-{
-       DWORD r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = AllocateStringW(nBufferLength * 4);
-       GetTempPathW(nBufferLength * 4, pw0);
-       WtoM(lpBuffer, nBufferLength, pw0, -1);
-       r = TerminateStringM(lpBuffer, nBufferLength);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-DWORD GetFileAttributesM(LPCSTR lpFileName)
-{
-       DWORD r = FALSE;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpFileName, -1);
-       r = GetFileAttributesW(pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-DWORD GetModuleFileNameM(HMODULE hModule, LPCH lpFilename, DWORD nSize)
-{
-       DWORD r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = AllocateStringW(nSize * 4);
-       GetModuleFileNameW(hModule, pw0, nSize * 4);
-       WtoM(lpFilename, nSize, pw0, -1);
-       r = TerminateStringM(lpFilename, nSize);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-LSTATUS RegOpenKeyExM(HKEY hKey, LPCSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
-{
-       LSTATUS r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpSubKey, -1);
-       r = RegOpenKeyExW(hKey, pw0, ulOptions, samDesired, phkResult);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-LSTATUS RegCreateKeyExM(HKEY hKey, LPCSTR lpSubKey, DWORD Reserved, LPSTR lpClass, DWORD dwOptions, REGSAM samDesired, CONST LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition)
-{
-       LSTATUS r = 0;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpSubKey, -1);
-       pw1 = DuplicateMtoW(lpClass, -1);
-       r = RegCreateKeyExW(hKey, pw0, Reserved, pw1, dwOptions, samDesired, lpSecurityAttributes, phkResult, lpdwDisposition);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-LSTATUS RegDeleteValueM(HKEY hKey, LPCSTR lpValueName)
-{
-       LSTATUS r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpValueName, -1);
-       r = RegDeleteValueW(hKey, pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-LSTATUS RegQueryValueExM(HKEY hKey, LPCSTR lpValueName, LPDWORD lpReserved, LPDWORD lpType, LPBYTE lpData, LPDWORD lpcbData)
-{
-       LSTATUS r = 0;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       DWORD dwType;
-       DWORD wcbData;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpValueName, -1);
-       if(RegQueryValueExW(hKey, pw0, NULL, &dwType, NULL, 0) == ERROR_SUCCESS)
-       {
-               switch(dwType)
-               {
-               case REG_SZ:
-               case REG_EXPAND_SZ:
-               case REG_MULTI_SZ:
-                       if(lpcbData)
-                       {
-                               pw1 = AllocateStringW(*lpcbData / sizeof(char) * 4);
-                               wcbData = *lpcbData / sizeof(char) * 4;
-                               r = RegQueryValueExW(hKey, pw0, lpReserved, lpType, (LPBYTE)pw1, &wcbData);
-                               if(lpData)
-                                       *lpcbData = sizeof(char) * WtoM((char*)lpData, *lpcbData / sizeof(char), pw1, wcbData / sizeof(wchar_t));
-                               else
-                                       *lpcbData = sizeof(char) * WtoM(NULL, 0, pw1, wcbData / sizeof(wchar_t));
-                       }
-                       break;
-               default:
-                       r = RegQueryValueExW(hKey, pw0, lpReserved, lpType, lpData, lpcbData);
-                       break;
-               }
-       }
-       else
-               r = RegQueryValueExW(hKey, pw0, lpReserved, lpType, lpData, lpcbData);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-LSTATUS RegSetValueExM(HKEY hKey, LPCSTR lpValueName, DWORD Reserved, DWORD dwType, CONST BYTE* lpData, DWORD cbData)
-{
-       LSTATUS r = 0;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       DWORD wcbData;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpValueName, -1);
-       switch(dwType)
-       {
-       case REG_SZ:
-       case REG_EXPAND_SZ:
-       case REG_MULTI_SZ:
-               wcbData = MtoW(NULL, 0, (char*)lpData, cbData / sizeof(char));
-               pw1 = AllocateStringW(wcbData);
-               MtoW(pw1, wcbData, (char*)lpData, cbData / sizeof(char));
-               wcbData = sizeof(wchar_t) * wcbData;
-               lpData = (BYTE*)pw1;
-               cbData = wcbData;
-               break;
-       }
-       r = RegSetValueExW(hKey, pw0, Reserved, dwType, lpData, cbData);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-BOOL TextOutM(HDC hdc, int x, int y, LPCSTR lpString, int c)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpString, c);
-       r = TextOutW(hdc, x, y, pw0, wcslen(pw0));
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-BOOL GetTextExtentPoint32M(HDC hdc, LPCSTR lpString, int c, LPSIZE psizl)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpString, c);
-       r = GetTextExtentPoint32W(hdc, pw0, wcslen(pw0), psizl);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-INT_PTR PropertySheetM(LPCPROPSHEETHEADERA v0)
-{
-       INT_PTR r = 0;
-       PROPSHEETHEADERW a0;
-       PROPSHEETPAGEW* pwPage;
-       UINT i;
-START_ROUTINE
-       a0.dwSize = sizeof(PROPSHEETHEADERW);
-       a0.dwFlags = v0->dwFlags;
-       a0.hwndParent = v0->hwndParent;
-       a0.hInstance = v0->hInstance;
-       if(v0->dwFlags & PSH_USEICONID)
-               a0.pszIcon = DuplicateMtoW(v0->pszIcon, -1);
-       else
-               a0.hIcon = v0->hIcon;
-       a0.pszCaption = DuplicateMtoW(v0->pszCaption, -1);
-       a0.nPages = v0->nPages;
-       if(v0->dwFlags & PSH_USEPSTARTPAGE)
-               a0.pStartPage = DuplicateMtoW(v0->pStartPage, -1);
-       else
-               a0.nStartPage = v0->nStartPage;
-       if(v0->dwFlags & PSH_PROPSHEETPAGE)
-       {
-               if(v0->ppsp && (pwPage = (PROPSHEETPAGEW*)malloc(sizeof(PROPSHEETPAGEW) * v0->nPages)))
-               {
-                       for(i = 0; i < v0->nPages; i++)
-                       {
-                               pwPage[i].dwSize = sizeof(PROPSHEETPAGEW);
-                               pwPage[i].dwFlags = v0->ppsp[i].dwFlags;
-                               pwPage[i].hInstance = v0->ppsp[i].hInstance;
-                               if(v0->ppsp[i].dwFlags & PSP_DLGINDIRECT)
-                                       pwPage[i].pResource = v0->ppsp[i].pResource;
-                               else
-                                       pwPage[i].pszTemplate = DuplicateMtoW(v0->ppsp[i].pszTemplate, -1);
-                               if(v0->ppsp[i].dwFlags & PSP_USEICONID)
-                                       pwPage[i].pszIcon = DuplicateMtoW(v0->ppsp[i].pszIcon, -1);
-                               else
-                                       pwPage[i].hIcon = v0->ppsp[i].hIcon;
-                               if(v0->ppsp[i].dwFlags & PSP_USETITLE)
-                                       pwPage[i].pszTitle = DuplicateMtoW(v0->ppsp[i].pszTitle, -1);
-                               pwPage[i].pfnDlgProc = v0->ppsp[i].pfnDlgProc;
-                               pwPage[i].lParam = v0->ppsp[i].lParam;
-                               // TODO: pfnCallback
-                               pwPage[i].pfnCallback = (LPFNPSPCALLBACKW)v0->ppsp[i].pfnCallback;
-                               pwPage[i].pcRefParent = v0->ppsp[i].pcRefParent;
-                               if(v0->ppsp[i].dwFlags & PSP_USEHEADERTITLE)
-                                       pwPage[i].pszHeaderTitle = DuplicateMtoW(v0->ppsp[i].pszHeaderTitle, -1);
-                               if(v0->ppsp[i].dwFlags & PSP_USEHEADERSUBTITLE)
-                                       pwPage[i].pszHeaderSubTitle = DuplicateMtoW(v0->ppsp[i].pszHeaderSubTitle, -1);
-                       }
-               }
-               else
-                       pwPage = NULL;
-               a0.ppsp = pwPage;
-       }
-       else
-               a0.phpage = v0->phpage;
-       a0.pfnCallback = v0->pfnCallback;
-       if(v0->dwFlags & PSH_USEHBMWATERMARK)
-               a0.hbmWatermark = v0->hbmWatermark;
-       else
-               a0.pszbmWatermark = DuplicateMtoW(v0->pszbmWatermark, -1);
-       r = PropertySheetW(&a0);
-       if(a0.dwFlags & PSH_USEICONID)
-               FreeDuplicatedString((void*)a0.pszIcon);
-       FreeDuplicatedString((void*)a0.pszCaption);
-       if(v0->dwFlags & PSH_USEPSTARTPAGE)
-               FreeDuplicatedString((void*)a0.pStartPage);
-       if(v0->dwFlags & PSH_PROPSHEETPAGE)
-       {
-               if(pwPage)
-               {
-                       for(i = 0; i < v0->nPages; i++)
-                       {
-                               if(!(v0->ppsp[i].dwFlags & PSP_DLGINDIRECT))
-                                       FreeDuplicatedString((void*)pwPage[i].pszTemplate);
-                               if(v0->ppsp[i].dwFlags & PSP_USEICONID)
-                                       FreeDuplicatedString((void*)pwPage[i].pszIcon);
-                               if(v0->ppsp[i].dwFlags & PSP_USETITLE)
-                                       FreeDuplicatedString((void*)pwPage[i].pszTitle);
-                               if(v0->ppsp[i].dwFlags & PSP_USEHEADERTITLE)
-                                       FreeDuplicatedString((void*)pwPage[i].pszHeaderTitle);
-                               if(v0->ppsp[i].dwFlags & PSP_USEHEADERSUBTITLE)
-                                       FreeDuplicatedString((void*)pwPage[i].pszHeaderSubTitle);
-                       }
-                       free(pwPage);
-               }
-       }
-       if(!(v0->dwFlags & PSH_USEHBMWATERMARK))
-               FreeDuplicatedString((void*)a0.pszbmWatermark);
-END_ROUTINE
-       return r;
-}
-
-BOOL GetOpenFileNameM(LPOPENFILENAMEA v0)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       wchar_t* pw2 = NULL;
-       wchar_t* pw3 = NULL;
-       wchar_t* pw4 = NULL;
-       wchar_t* pw5 = NULL;
-       wchar_t* pw6 = NULL;
-       wchar_t* pw7 = NULL;
-       wchar_t* pw8 = NULL;
-       wchar_t* pw9 = NULL;
-       OPENFILENAMEW wofn;
-START_ROUTINE
-       wofn.lStructSize = sizeof(OPENFILENAMEW);
-       wofn.hwndOwner = v0->hwndOwner;
-       wofn.hInstance = v0->hInstance;
-       pw0 = DuplicateMtoWMultiString(v0->lpstrFilter);
-       wofn.lpstrFilter = pw0;
-       pw1 = DuplicateMtoWBuffer(v0->lpstrCustomFilter, -1, v0->nMaxCustFilter * 4);
-       wofn.lpstrCustomFilter = pw1;
-       wofn.nMaxCustFilter = v0->nMaxCustFilter * 4;
-       wofn.nFilterIndex = v0->nFilterIndex;
-       pw2 = DuplicateMtoWMultiStringBuffer(v0->lpstrFile, v0->nMaxFile * 4);
-       wofn.lpstrFile = pw2;
-       wofn.nMaxFile = v0->nMaxFile * 4;
-       pw3 = DuplicateMtoWBuffer(v0->lpstrFileTitle, -1, v0->nMaxFileTitle * 4);
-       wofn.lpstrFileTitle = pw3;
-       wofn.nMaxFileTitle = v0->nMaxFileTitle * 4;
-       pw4 = DuplicateMtoW(v0->lpstrInitialDir, -1);
-       wofn.lpstrInitialDir = pw4;
-       pw5 = DuplicateMtoW(v0->lpstrTitle, -1);
-       wofn.lpstrTitle = pw5;
-       wofn.Flags = v0->Flags;
-       wofn.nFileOffset = MtoW(NULL, 0, v0->lpstrFile, v0->nFileOffset);
-       wofn.nFileExtension = MtoW(NULL, 0, v0->lpstrFile, v0->nFileExtension);
-       pw6 = DuplicateMtoW(v0->lpstrDefExt, -1);
-       wofn.lpstrDefExt = pw6;
-       wofn.lCustData = v0->lCustData;
-       wofn.lpfnHook = v0->lpfnHook;
-       wofn.lpTemplateName = DuplicateMtoW(v0->lpTemplateName, -1);
-       wofn.pvReserved = v0->pvReserved;
-       wofn.FlagsEx = v0->FlagsEx;
-       r = GetOpenFileNameW(&wofn);
-       WtoM(v0->lpstrFile, v0->nMaxFile, wofn.lpstrFile, -1);
-       TerminateStringM(v0->lpstrFile, v0->nMaxFile);
-       v0->nFileOffset = WtoM(NULL, 0, wofn.lpstrFile, wofn.nFileOffset);
-       v0->nFileExtension = WtoM(NULL, 0, wofn.lpstrFile, wofn.nFileExtension);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       FreeDuplicatedString(pw2);
-       FreeDuplicatedString(pw3);
-       FreeDuplicatedString(pw4);
-       FreeDuplicatedString(pw5);
-       FreeDuplicatedString(pw6);
-       return r;
-}
-
-BOOL GetSaveFileNameM(LPOPENFILENAMEA v0)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       wchar_t* pw2 = NULL;
-       wchar_t* pw3 = NULL;
-       wchar_t* pw4 = NULL;
-       wchar_t* pw5 = NULL;
-       wchar_t* pw6 = NULL;
-       wchar_t* pw7 = NULL;
-       wchar_t* pw8 = NULL;
-       wchar_t* pw9 = NULL;
-       OPENFILENAMEW wofn;
-START_ROUTINE
-       wofn.lStructSize = sizeof(OPENFILENAMEW);
-       wofn.hwndOwner = v0->hwndOwner;
-       wofn.hInstance = v0->hInstance;
-       pw0 = DuplicateMtoWMultiString(v0->lpstrFilter);
-       wofn.lpstrFilter = pw0;
-       pw1 = DuplicateMtoWBuffer(v0->lpstrCustomFilter, -1, v0->nMaxCustFilter * 4);
-       wofn.lpstrCustomFilter = pw1;
-       wofn.nMaxCustFilter = v0->nMaxCustFilter * 4;
-       wofn.nFilterIndex = v0->nFilterIndex;
-       pw2 = DuplicateMtoWMultiStringBuffer(v0->lpstrFile, v0->nMaxFile * 4);
-       wofn.lpstrFile = pw2;
-       wofn.nMaxFile = v0->nMaxFile * 4;
-       pw3 = DuplicateMtoWBuffer(v0->lpstrFileTitle, -1, v0->nMaxFileTitle * 4);
-       wofn.lpstrFileTitle = pw3;
-       wofn.nMaxFileTitle = v0->nMaxFileTitle * 4;
-       pw4 = DuplicateMtoW(v0->lpstrInitialDir, -1);
-       wofn.lpstrInitialDir = pw4;
-       pw5 = DuplicateMtoW(v0->lpstrTitle, -1);
-       wofn.lpstrTitle = pw5;
-       wofn.Flags = v0->Flags;
-       wofn.nFileOffset = MtoW(NULL, 0, v0->lpstrFile, v0->nFileOffset);
-       wofn.nFileExtension = MtoW(NULL, 0, v0->lpstrFile, v0->nFileExtension);
-       pw6 = DuplicateMtoW(v0->lpstrDefExt, -1);
-       wofn.lpstrDefExt = pw6;
-       wofn.lCustData = v0->lCustData;
-       wofn.lpfnHook = v0->lpfnHook;
-       wofn.lpTemplateName = DuplicateMtoW(v0->lpTemplateName, -1);
-       wofn.pvReserved = v0->pvReserved;
-       wofn.FlagsEx = v0->FlagsEx;
-       r = GetSaveFileNameW(&wofn);
-       WtoM(v0->lpstrFile, v0->nMaxFile, wofn.lpstrFile, -1);
-       TerminateStringM(v0->lpstrFile, v0->nMaxFile);
-       v0->nFileOffset = WtoM(NULL, 0, wofn.lpstrFile, wofn.nFileOffset);
-       v0->nFileExtension = WtoM(NULL, 0, wofn.lpstrFile, wofn.nFileExtension);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       FreeDuplicatedString(pw2);
-       FreeDuplicatedString(pw3);
-       FreeDuplicatedString(pw4);
-       FreeDuplicatedString(pw5);
-       FreeDuplicatedString(pw6);
-       return r;
-}
-
-HWND HtmlHelpM(HWND hwndCaller, LPCSTR pszFile, UINT uCommand, DWORD_PTR dwData)
-{
-       HWND r = NULL;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(pszFile, -1);
-       r = HtmlHelpW(hwndCaller, pw0, uCommand, dwData);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-BOOL CreateProcessM(LPCSTR lpApplicationName, LPSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCSTR lpCurrentDirectory, LPSTARTUPINFOA lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       wchar_t* pw2 = NULL;
-       wchar_t* pw3 = NULL;
-       wchar_t* pw4 = NULL;
-       wchar_t* pw5 = NULL;
-       STARTUPINFOW wStartupInfo;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpApplicationName, -1);
-       pw1 = DuplicateMtoWBuffer(lpCommandLine, -1, (strlen(lpCommandLine) + 1) * 4);
-       pw2 = DuplicateMtoW(lpCurrentDirectory, -1);
-       wStartupInfo.cb = sizeof(LPSTARTUPINFOW);
-       pw3 = DuplicateMtoW(lpStartupInfo->lpReserved, -1);
-       wStartupInfo.lpReserved = pw3;
-       pw4 = DuplicateMtoW(lpStartupInfo->lpDesktop, -1);
-       wStartupInfo.lpDesktop = pw4;
-       pw5 = DuplicateMtoW(lpStartupInfo->lpTitle, -1);
-       wStartupInfo.lpTitle = pw5;
-       wStartupInfo.dwX = lpStartupInfo->dwX;
-       wStartupInfo.dwY = lpStartupInfo->dwY;
-       wStartupInfo.dwXSize = lpStartupInfo->dwXSize;
-       wStartupInfo.dwYSize = lpStartupInfo->dwYSize;
-       wStartupInfo.dwXCountChars = lpStartupInfo->dwXCountChars;
-       wStartupInfo.dwYCountChars = lpStartupInfo->dwYCountChars;
-       wStartupInfo.dwFillAttribute = lpStartupInfo->dwFillAttribute;
-       wStartupInfo.dwFlags = lpStartupInfo->dwFlags;
-       wStartupInfo.wShowWindow = lpStartupInfo->wShowWindow;
-       wStartupInfo.cbReserved2 = lpStartupInfo->cbReserved2;
-       wStartupInfo.lpReserved2 = lpStartupInfo->lpReserved2;
-       wStartupInfo.hStdInput = lpStartupInfo->hStdInput;
-       wStartupInfo.hStdOutput = lpStartupInfo->hStdOutput;
-       wStartupInfo.hStdError = lpStartupInfo->hStdError;
-       r = CreateProcessW(pw0, pw1, lpProcessAttributes, lpThreadAttributes, bInheritHandles, dwCreationFlags, lpEnvironment, pw2, &wStartupInfo, lpProcessInformation);
-       WtoM(lpCommandLine, strlen(lpCommandLine) + 1, pw1, -1);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       FreeDuplicatedString(pw2);
-       FreeDuplicatedString(pw3);
-       FreeDuplicatedString(pw4);
-       FreeDuplicatedString(pw5);
-       return r;
-}
-
-HINSTANCE FindExecutableM(LPCSTR lpFile, LPCSTR lpDirectory, LPSTR lpResult)
-{
-       HINSTANCE r = NULL;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       wchar_t* pw2 = NULL;
-       wchar_t* pw3 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpFile, -1);
-       pw1 = DuplicateMtoW(lpDirectory, -1);
-       pw2 = AllocateStringW(MAX_PATH * 4);
-       r = FindExecutableW(pw0, pw1, pw2);
-       // バッファ長不明のためオーバーランの可能性あり
-       WtoM(lpResult, MAX_PATH, pw2, -1);
-       TerminateStringM(lpResult, MAX_PATH);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       FreeDuplicatedString(pw2);
-       FreeDuplicatedString(pw3);
-       return r;
-}
-
-HINSTANCE ShellExecuteM(HWND hwnd, LPCSTR lpOperation, LPCSTR lpFile, LPCSTR lpParameters, LPCSTR lpDirectory, INT nShowCmd)
-{
-       HINSTANCE r = NULL;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       wchar_t* pw2 = NULL;
-       wchar_t* pw3 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpOperation, -1);
-       pw1 = DuplicateMtoW(lpFile, -1);
-       pw2 = DuplicateMtoW(lpParameters, -1);
-       pw3 = DuplicateMtoW(lpDirectory, -1);
-       r = ShellExecuteW(hwnd, pw0, pw1, pw2, pw3, nShowCmd);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       FreeDuplicatedString(pw2);
-       FreeDuplicatedString(pw3);
-       return r;
-}
-
-PIDLIST_ABSOLUTE SHBrowseForFolderM(LPBROWSEINFOA lpbi)
-{
-       PIDLIST_ABSOLUTE r = NULL;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       BROWSEINFOW wbi;
-START_ROUTINE
-       wbi.hwndOwner = lpbi->hwndOwner;
-       wbi.pidlRoot = lpbi->pidlRoot;
-       pw0 = DuplicateMtoWBuffer(lpbi->pszDisplayName, -1, MAX_PATH * 4);
-       wbi.pszDisplayName = pw0;
-       pw1 = DuplicateMtoW(lpbi->lpszTitle, -1);
-       wbi.lpszTitle = pw1;
-       wbi.ulFlags = lpbi->ulFlags;
-       // TODO: lpfn
-       wbi.lpfn = lpbi->lpfn;
-       wbi.lParam = lpbi->lParam;
-       wbi.iImage = lpbi->iImage;
-       r = SHBrowseForFolderW(&wbi);
-       // バッファ長不明のためオーバーランの可能性あり
-       WtoM(lpbi->pszDisplayName, MAX_PATH, wbi.pszDisplayName, -1);
-       lpbi->iImage = wbi.iImage;
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-BOOL SHGetPathFromIDListM(PCIDLIST_ABSOLUTE pidl, LPSTR pszPath)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = AllocateStringW(MAX_PATH * 4);
-       r = SHGetPathFromIDListW(pidl, pw0);
-       // バッファ長不明のためオーバーランの可能性あり
-       WtoM(pszPath, MAX_PATH, pw0, -1);
-       TerminateStringM(pszPath, MAX_PATH);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-int SHFileOperationM(LPSHFILEOPSTRUCTA lpFileOp)
-{
-       int r = 0;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       wchar_t* pw2 = NULL;
-       SHFILEOPSTRUCTW wFileOp;
-START_ROUTINE
-       wFileOp.hwnd = lpFileOp->hwnd;
-       wFileOp.wFunc = lpFileOp->wFunc;
-       pw0 = DuplicateMtoWMultiString(lpFileOp->pFrom);
-       wFileOp.pFrom = pw0;
-       pw1 = DuplicateMtoWMultiString(lpFileOp->pTo);
-       wFileOp.pTo = pw1;
-       wFileOp.fFlags = lpFileOp->fFlags;
-       wFileOp.fAnyOperationsAborted = lpFileOp->fAnyOperationsAborted;
-       wFileOp.hNameMappings = lpFileOp->hNameMappings;
-       if(lpFileOp->fFlags & FOF_SIMPLEPROGRESS)
-               pw2 = DuplicateMtoW(lpFileOp->lpszProgressTitle, -1);
-       r = SHFileOperationW(&wFileOp);
-       lpFileOp->fAnyOperationsAborted = wFileOp.fAnyOperationsAborted;
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       FreeDuplicatedString(pw2);
-       return r;
-}
-
-BOOL AppendMenuM(HMENU hMenu, UINT uFlags, UINT_PTR uIDNewItem, LPCSTR lpNewItem)
-{
-       int r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       if(uFlags & (MF_BITMAP | MF_OWNERDRAW))
-               r = AppendMenuW(hMenu, uFlags, uIDNewItem, (LPCWSTR)lpNewItem);
-       else
-       {
-               pw0 = DuplicateMtoW(lpNewItem, -1);
-               r = AppendMenuW(hMenu, uFlags, uIDNewItem, pw0);
-       }
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-BOOL GetMenuItemInfoM(HMENU hmenu, UINT item, BOOL fByPosition, LPMENUITEMINFOA lpmii)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-       MENUITEMINFOW wmii;
-START_ROUTINE
-       wmii.cbSize = sizeof(MENUITEMINFOW);
-       wmii.fMask = lpmii->fMask;
-       wmii.fType = lpmii->fType;
-       wmii.fState = lpmii->fState;
-       wmii.wID = lpmii->wID;
-       wmii.hSubMenu = lpmii->hSubMenu;
-       wmii.hbmpChecked = lpmii->hbmpChecked;
-       wmii.hbmpUnchecked = lpmii->hbmpUnchecked;
-       wmii.dwItemData = lpmii->dwItemData;
-       if(lpmii->fMask & MIIM_TYPE)
-       {
-               pw0 = DuplicateMtoWBuffer(lpmii->dwTypeData, -1, lpmii->cch * 4);
-               wmii.dwTypeData = pw0;
-               wmii.cch = lpmii->cch * 4;
-       }
-       wmii.hbmpItem = lpmii->hbmpItem;
-       r = GetMenuItemInfoW(hmenu, item, fByPosition, &wmii);
-       lpmii->fType = wmii.fType;
-       lpmii->fState = wmii.fState;
-       lpmii->wID = wmii.wID;
-       lpmii->hSubMenu = wmii.hSubMenu;
-       lpmii->hbmpChecked = wmii.hbmpChecked;
-       lpmii->hbmpUnchecked = wmii.hbmpUnchecked;
-       lpmii->dwItemData = wmii.dwItemData;
-       WtoM(lpmii->dwTypeData, lpmii->cch, wmii.dwTypeData, -1);
-       TerminateStringM(lpmii->dwTypeData, lpmii->cch);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-HFONT CreateFontIndirectM(CONST LOGFONTA *lplf)
-{
-       HFONT r = NULL;
-       LOGFONTW wlf;
-START_ROUTINE
-       wlf.lfHeight = lplf->lfHeight;
-       wlf.lfWidth = lplf->lfWidth;
-       wlf.lfEscapement = lplf->lfEscapement;
-       wlf.lfOrientation = lplf->lfOrientation;
-       wlf.lfWeight = lplf->lfWeight;
-       wlf.lfItalic = lplf->lfItalic;
-       wlf.lfUnderline = lplf->lfUnderline;
-       wlf.lfStrikeOut = lplf->lfStrikeOut;
-       wlf.lfCharSet = lplf->lfCharSet;
-       wlf.lfOutPrecision = lplf->lfOutPrecision;
-       wlf.lfClipPrecision = lplf->lfClipPrecision;
-       wlf.lfQuality = lplf->lfQuality;
-       wlf.lfPitchAndFamily = lplf->lfPitchAndFamily;
-       MtoW(wlf.lfFaceName, LF_FACESIZE, lplf->lfFaceName, -1);
-       TerminateStringW(wlf.lfFaceName, LF_FACESIZE);
-       r = CreateFontIndirect(&wlf);
-END_ROUTINE
-       return r;
-}
-
-BOOL ChooseFontM(LPCHOOSEFONTA v0)
-{
-       BOOL r = FALSE;
-       wchar_t* pw0 = NULL;
-       CHOOSEFONTW a0;
-       LOGFONTW* pwlf;
-START_ROUTINE
-       a0.lStructSize = sizeof(CHOOSEFONTW);
-       a0.hwndOwner = v0->hwndOwner;
-       a0.hDC = v0->hDC;
-       if(v0->lpLogFont && (pwlf = (LOGFONTW*)malloc(sizeof(LOGFONTW))))
-       {
-               pwlf->lfHeight = v0->lpLogFont->lfHeight;
-               pwlf->lfWidth = v0->lpLogFont->lfWidth;
-               pwlf->lfEscapement = v0->lpLogFont->lfEscapement;
-               pwlf->lfOrientation = v0->lpLogFont->lfOrientation;
-               pwlf->lfWeight = v0->lpLogFont->lfWeight;
-               pwlf->lfItalic = v0->lpLogFont->lfItalic;
-               pwlf->lfUnderline = v0->lpLogFont->lfUnderline;
-               pwlf->lfStrikeOut = v0->lpLogFont->lfStrikeOut;
-               pwlf->lfCharSet = v0->lpLogFont->lfCharSet;
-               pwlf->lfOutPrecision = v0->lpLogFont->lfOutPrecision;
-               pwlf->lfClipPrecision = v0->lpLogFont->lfClipPrecision;
-               pwlf->lfQuality = v0->lpLogFont->lfQuality;
-               pwlf->lfPitchAndFamily = v0->lpLogFont->lfPitchAndFamily;
-               MtoW(pwlf->lfFaceName, LF_FACESIZE, v0->lpLogFont->lfFaceName, -1);
-               TerminateStringW(pwlf->lfFaceName, LF_FACESIZE);
-       }
-       else
-               pwlf = NULL;
-       a0.lpLogFont = pwlf;
-       a0.iPointSize = v0->iPointSize;
-       a0.Flags = v0->Flags;
-       a0.rgbColors = v0->rgbColors;
-       a0.lCustData = v0->lCustData;
-       a0.lpfnHook = v0->lpfnHook;
-       a0.lpTemplateName = DuplicateMtoW(v0->lpTemplateName, -1);
-       a0.hInstance = v0->hInstance;
-       a0.lpszStyle = DuplicateMtoWBuffer(v0->lpszStyle, -1, LF_FACESIZE * 4);
-       a0.nFontType = v0->nFontType;
-       a0.nSizeMin = v0->nSizeMin;
-       a0.nSizeMax = v0->nSizeMax;
-       r = ChooseFontW(&a0);
-       if(v0->lpLogFont)
-       {
-               v0->lpLogFont->lfHeight = pwlf->lfHeight;
-               v0->lpLogFont->lfWidth = pwlf->lfWidth;
-               v0->lpLogFont->lfEscapement = pwlf->lfEscapement;
-               v0->lpLogFont->lfOrientation = pwlf->lfOrientation;
-               v0->lpLogFont->lfWeight = pwlf->lfWeight;
-               v0->lpLogFont->lfItalic = pwlf->lfItalic;
-               v0->lpLogFont->lfUnderline = pwlf->lfUnderline;
-               v0->lpLogFont->lfStrikeOut = pwlf->lfStrikeOut;
-               v0->lpLogFont->lfCharSet = pwlf->lfCharSet;
-               v0->lpLogFont->lfOutPrecision = pwlf->lfOutPrecision;
-               v0->lpLogFont->lfClipPrecision = pwlf->lfClipPrecision;
-               v0->lpLogFont->lfQuality = pwlf->lfQuality;
-               v0->lpLogFont->lfPitchAndFamily = pwlf->lfPitchAndFamily;
-               WtoM(v0->lpLogFont->lfFaceName, LF_FACESIZE, pwlf->lfFaceName, -1);
-               TerminateStringM(v0->lpLogFont->lfFaceName, LF_FACESIZE);
-       }
-       v0->rgbColors = a0.rgbColors;
-       WtoM(v0->lpszStyle, LF_FACESIZE, a0.lpszStyle, -1);
-       TerminateStringM(v0->lpszStyle, LF_FACESIZE);
-       v0->nFontType = a0.nFontType;
-       if(pwlf)
-               free(pwlf);
-       FreeDuplicatedString((void*)a0.lpTemplateName);
-       FreeDuplicatedString(a0.lpszStyle);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-INT_PTR DialogBoxParamM(HINSTANCE hInstance, LPCSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam)
-{
-       INT_PTR r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpTemplateName, -1);
-       r = DialogBoxParamW(hInstance, pw0, hWndParent, lpDialogFunc, dwInitParam);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-HWND CreateDialogParamM(HINSTANCE hInstance, LPCSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam)
-{
-       HWND r = NULL;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(lpTemplateName, -1);
-       r = CreateDialogParamW(hInstance, pw0, hWndParent, lpDialogFunc, dwInitParam);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-int mkdirM(const char * _Path)
-{
-       int r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Path, -1);
-       r = _wmkdir(pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-int _mkdirM(const char * _Path)
-{
-       int r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Path, -1);
-       r = _wmkdir(pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-int rmdirM(const char * _Path)
-{
-       int r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Path, -1);
-       r = _wrmdir(pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-int _rmdirM(const char * _Path)
-{
-       int r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Path, -1);
-       r = _wrmdir(pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-size_t _mbslenM(const unsigned char * _Str)
-{
-       size_t r = 0;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Str, -1);
-       r = wcslen(pw0);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-unsigned char * _mbschrM(const unsigned char * _Str, unsigned int _Ch)
-{
-       unsigned char* r = NULL;
-       wchar_t* pw0 = NULL;
-       wchar_t* wr;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Str, -1);
-       // TODO: 非ASCII文字の対応
-       wr = wcschr(pw0, _Ch);
-       if(wr)
-       {
-               *wr = L'\0';
-               r = (unsigned char*)_Str + WtoM(NULL, 0, pw0, -1) - 1;
-       }
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-unsigned char * _mbsrchrM(const unsigned char * _Str, unsigned int _Ch)
-{
-       unsigned char* r = NULL;
-       wchar_t* pw0 = NULL;
-       wchar_t* wr;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Str, -1);
-       // TODO: 非ASCII文字の対応
-       wr = wcsrchr(pw0, _Ch);
-       if(wr)
-       {
-               *wr = L'\0';
-               r = (unsigned char*)_Str + WtoM(NULL, 0, pw0, -1) - 1;
-       }
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-unsigned char * _mbsstrM(const unsigned char * _Str, const unsigned char * _Substr)
-{
-       unsigned char* r = NULL;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-       wchar_t* wr;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Str, -1);
-       pw1 = DuplicateMtoW(_Substr, -1);
-       wr = wcsstr(pw0, pw1);
-       if(wr)
-       {
-               *wr = L'\0';
-               r = (unsigned char*)_Str + WtoM(NULL, 0, pw0, -1) - 1;
-       }
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-int _mbscmpM(const unsigned char * _Str1, const unsigned char * _Str2)
-{
-       int r = 0;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Str1, -1);
-       pw1 = DuplicateMtoW(_Str2, -1);
-       r = wcscmp(pw0, pw1);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-int _mbsicmpM(const unsigned char * _Str1, const unsigned char * _Str2)
-{
-       int r = 0;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Str1, -1);
-       pw1 = DuplicateMtoW(_Str2, -1);
-       r = _wcsicmp(pw0, pw1);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-int _mbsncmpM(const unsigned char * _Str1, const unsigned char * _Str2, size_t _MaxCount)
-{
-       int r = 0;
-       wchar_t* pw0 = NULL;
-       wchar_t* pw1 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Str1, -1);
-       pw1 = DuplicateMtoW(_Str2, -1);
-       r = wcsncmp(pw0, pw1, _MaxCount);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       FreeDuplicatedString(pw1);
-       return r;
-}
-
-unsigned char * _mbslwrM(unsigned char * _String)
-{
-       unsigned char* r = NULL;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_String, -1);
-       _wcslwr(pw0);
-       r = _String;
-       WtoM(_String, strlen(_String) + 1, pw0, -1);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-unsigned char * _mbsuprM(unsigned char * _String)
-{
-       unsigned char* r = NULL;
-       wchar_t* pw0 = NULL;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_String, -1);
-       _wcsupr(pw0);
-       r = _String;
-       WtoM(_String, strlen(_String) + 1, pw0, -1);
-END_ROUTINE
-       FreeDuplicatedString(pw0);
-       return r;
-}
-
-unsigned char * _mbsnincM(const unsigned char * _Str, size_t _Count)
-{
-       unsigned char* r = NULL;
-       wchar_t* pw0 = NULL;
-       wchar_t* wr;
-START_ROUTINE
-       pw0 = DuplicateMtoW(_Str, -1);
-       wr = _wcsninc(pw0, _Count);