EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "open_jtalk_lib", "open_jtalk_lib\open_jtalk_lib.vcxproj", "{125DDEDE-934B-4B5D-B2F3-6635B1E99EC1}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "speaker", "speaker\speaker.vcxproj", "{FBE9021E-5717-4EEE-A3AC-E4516C8A29AD}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
{125DDEDE-934B-4B5D-B2F3-6635B1E99EC1}.Debug|Win32.Build.0 = Debug|Win32
{125DDEDE-934B-4B5D-B2F3-6635B1E99EC1}.Release|Win32.ActiveCfg = Release|Win32
{125DDEDE-934B-4B5D-B2F3-6635B1E99EC1}.Release|Win32.Build.0 = Release|Win32
+ {FBE9021E-5717-4EEE-A3AC-E4516C8A29AD}.Debug|Win32.ActiveCfg = Debug|Win32
+ {FBE9021E-5717-4EEE-A3AC-E4516C8A29AD}.Debug|Win32.Build.0 = Debug|Win32
+ {FBE9021E-5717-4EEE-A3AC-E4516C8A29AD}.Release|Win32.ActiveCfg = Release|Win32
+ {FBE9021E-5717-4EEE-A3AC-E4516C8A29AD}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
#include "open_jtalk\mecab\src\mecab.h"
#include "hts_engine_API\include\HTS_engine.h"
-#include "hts_engine_API\lib\HTS_hidden.h"
#include "open_jtalk\jpcommon\jpcommon.h"
#include "open_jtalk\njd\njd.h"
#include "open_jtalk\mecab2njd\mecab2njd.h"
--- /dev/null
+========================================================================
+ スタティック ライブラリ: speaker プロジェクトの概要
+========================================================================
+
+この speaker ライブラリ プロジェクトは、AppWizard
+により作成されました。
+
+このファイルには、speaker
+アプリケーションを構成する各ファイルの内容の概要が含まれています。
+
+
+speaker.vcxproj
+ これは、アプリケーション ウィザードを使用して生成された VC++
+ プロジェクトのメイン プロジェクト ファイルです。
+ ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション
+ ウィザードで選択されたプラットフォーム、
+ 構成、およびプロジェクト機能に関する情報が含まれています。
+
+speaker.vcxproj.filters
+ これは、アプリケーション ウィザードで生成された VC++ プロジェクトのフィルター
+ ファイルです。
+ このファイルには、プロジェクト内のファイルとフィルターとの間の関連付けに関する
+ 情報が含まれています。 この関連付けは、特定のノー
+ ドで同様の拡張子を持つファイルのグループ化を
+ 示すために IDE で使用されます (たとえば、".cpp" ファイルは "ソース ファイル"
+ フィルターに関連付けられています)。
+
+
+/////////////////////////////////////////////////////////////////////////////
+
+StdAfx.h、StdAfx.cpp
+ これらのファイルは、speaker.pch
+ という名前のプリコンパイル済みヘッダー (PCH) ファイルと、StdAfx.obj
+ という名前のプリコンパイル済みの型ファイルを構築するために使用されます。
+
+/////////////////////////////////////////////////////////////////////////////
+その他のメモ :
+
+AppWizard では "TODO:"
+コメントを使用して、ユーザーが追加またはカスタマイズする必要のあるソース
+コードを示します。
+
+/////////////////////////////////////////////////////////////////////////////
--- /dev/null
+#include "stdafx.h"
+#include "speaker_include.h"
+
+
+namespace speaker{
+namespace openJtalk{
+
+
+///
+///\83R\83\93\83X\83g\83\89\83N\83^
+///
+CMeiNormal::CMeiNormal()
+{}
+
+
+///
+///\8f\89\8aú\89»\8aÖ\90\94
+///
+void CMeiNormal::Initialize(){
+
+ COpenJtalkCore::Initialize(true,48000,240,0.55,0,0.0,1600,0.5,false,0.7,0.5,1.0);
+
+ return;
+}
+
+
+void CMeiNormal::Load(const TChar_P voiceDataDir,const TChar_P dictionaryDataDir){
+
+ //COpenJtalkCore::Load(voiceDataDir,dictionaryDataDir,"dur.pdf","tree-dur.inf","mgc.pdf",
+ return;
+}
+
+
+}
+}
\ No newline at end of file
--- /dev/null
+#pragma once
+
+
+namespace speaker{
+namespace openJtalk{
+
+ class CMeiNormal:public COpenJtalkCore{
+
+
+ ///
+ ///\83R\83\93\83X\83g\83\89\83N\83^
+ ///
+ CMeiNormal();
+
+
+ ///
+ ///\8f\89\8aú\89»\8aÖ\90\94
+ ///
+ void Initialize();
+
+
+ ///
+ ///\89¹\90º\83f\81[\83^\93Ç\82Ý\8eæ\82è
+ ///
+ void Load(const TChar_P voiceDataDir,const TChar_P dictionaryDataDir);
+ };
+
+
+}
+}
\ No newline at end of file
--- /dev/null
+#include "stdafx.h"
+#include "speaker_include.h"
+
+namespace speaker{
+namespace openJtalk{
+
+
+
+COpenJtalkCore::COpenJtalkCore():
+manageFlag(false){}
+
+
+COpenJtalkCore::~COpenJtalkCore(){
+ if(this->manageFlag == true)this->Clear();
+}
+
+void COpenJtalkCore::Initialize( HTS_Boolean use_lpf, int sampling_rate,
+ int fperiod, double alpha, int stage, double beta, int audio_buff_size,
+ double uv_threshold, HTS_Boolean use_log_gain, double gv_weight_mgc,
+ double gv_weight_lf0, double gv_weight_lpf){
+ if(this->manageFlag == true)this->Clear();
+ ::OpenJTalk_initialize(&this->openJtalk_internal,use_lpf,sampling_rate,fperiod,alpha,stage,
+ beta,audio_buff_size,uv_threshold,use_log_gain,gv_weight_mgc,gv_weight_lf0,gv_weight_lpf);
+
+ this->manageFlag = true;
+}
+
+void COpenJtalkCore::Load( const TChar_P in_voiceDataDir,const TChar_P in_dictinalyDataDir, Char_P fn_ms_dur, Char_P fn_ts_dur,
+ Char_P fn_ms_mgc, Char_P fn_ts_mgc, Char_P *fn_ws_mgc, int num_ws_mgc,
+ Char_P fn_ms_lf0, Char_P fn_ts_lf0, Char_P *fn_ws_lf0, int num_ws_lf0,
+ Char_P fn_ms_lpf, Char_P fn_ts_lpf, Char_P *fn_ws_lpf, int num_ws_lpf,
+ Char_P fn_ms_gvm, Char_P fn_ts_gvm, Char_P fn_ms_gvl, Char_P fn_ts_gvl,
+ Char_P fn_ms_gvf, Char_P fn_ts_gvf,Char_P fn_gv_switch){
+
+ if(this->manageFlag == true){
+
+ CStringA dictionaryDataDir(in_dictinalyDataDir); //\8e«\8f\91\83f\81[\83^\83f\83B\83\8c\83N\83g\83\8a
+ CStringA voiceDataDir(in_voiceDataDir); //\89¹\90º\81[\83f\81[\83^\83f\83B\83\8c\83N\83g\83\8a
+
+ std::vector<Char_P> ws_mgcList(num_ws_mgc);
+
+
+ for(int ws_mgc_index = 0;ws_mgc_index < num_ws_mgc;++ws_mgc_index){
+
+ ws_mgcList.push_back((char *)(const char*)(voiceDataDir + fn_ws_mgc[ws_mgc_index]));
+ }
+
+ std::vector<Char_P> ws_lf0List(num_ws_lf0);
+
+ for(int ws_lf0Index = 0;ws_lf0Index < num_ws_lf0;++ws_lf0Index){
+
+ ws_mgcList.push_back((char *)(const char*)(voiceDataDir + fn_ws_mgc[ws_lf0Index]));
+ }
+
+ std::vector<Char_P> ws_lpfList(num_ws_lpf);
+
+ for(int ws_lpfIndex = 0;ws_lpfIndex < num_ws_lpf;++ws_lpfIndex){
+
+ ws_mgcList.push_back((char *)(const char*)(voiceDataDir + fn_ws_mgc[ws_lpfIndex]));
+ }
+
+ ::OpenJTalk_load(&this->openJtalk_internal,
+ (char *)(const char*)(dictionaryDataDir),
+ (char *)(const char*)(voiceDataDir +fn_ms_dur),
+ (char *)(const char*)(voiceDataDir +fn_ts_dur),
+ (char *)(const char*)(voiceDataDir +fn_ms_mgc),
+ (char *)(const char*)(voiceDataDir +fn_ts_mgc),
+ &ws_mgcList[0],
+ num_ws_mgc,
+ (char *)(const char*)(voiceDataDir +fn_ms_lf0),
+ (char *)(const char*)(voiceDataDir +fn_ts_lf0),
+ &ws_mgcList[0],
+ num_ws_lf0,
+ (char *)(const char*)(voiceDataDir +fn_ms_lpf),
+ (char *)(const char*)(voiceDataDir +fn_ts_lpf),
+ &ws_lpfList[0],
+ num_ws_lpf,
+ (char *)(const char*)(voiceDataDir +fn_ms_gvm),
+ (char *)(const char*)(voiceDataDir +fn_ts_gvm),
+ (char *)(const char*)(voiceDataDir +fn_ms_gvl),
+ (char *)(const char*)(voiceDataDir +fn_ts_gvl),
+ (char *)(const char*)(voiceDataDir +fn_ms_gvf),
+ (char *)(const char*)(voiceDataDir +fn_ts_gvf),
+ fn_gv_switch
+ );
+ }
+}
+
+void COpenJtalkCore::Synthesis( Char_P txt, FILE * wavfp, FILE * logfp){
+ ::OpenJTalk_synthesis(&this->openJtalk_internal,txt,wavfp,logfp);
+}
+
+
+void COpenJtalkCore::Clear(){
+ ::OpenJTalk_clear(&this->openJtalk_internal);
+ this->manageFlag = false;
+}
+
+}
+}
\ No newline at end of file
--- /dev/null
+#pragma once
+
+namespace speaker{
+namespace openJtalk{
+
+ ///
+ ///OpenJtalk\82ð\83\89\83b\83v\82µ\82½\83N\83\89\83X
+ ///\83f\83B\83\8c\83N\83g\83\8a\82Ì\88µ\82¢\82Ì\8aÈ\88Õ\89»\82Æ\83I\83u\83W\83F\83N\83g\82ð\83f\83X\83g\83\89\83N\83^\82Å\8e©\93®\94j\8aü\82³\82ê\82é\82æ\82¤\82É\82µ\82½\82à\82Ì
+ ///
+ class COpenJtalkCore{
+
+ private:
+ OpenJTalk openJtalk_internal; //\93à\95\94\83I\83u\83W\83F\83N\83g
+ bool manageFlag; //\8aÇ\97\9d\83t\83\89\83O
+
+
+ protected:
+ ///
+ ///\83R\83\93\83X\83g\83\89\83N\83^
+ ///
+ COpenJtalkCore();
+
+ ///
+ ///\83f\83X\83g\83\89\83N\83^
+ ///
+ virtual ~COpenJtalkCore();
+
+ //\83R\83s\81[\83K\81[\83h
+ private:
+ COpenJtalkCore (const COpenJtalkCore&);
+ COpenJtalkCore& operator=(const COpenJtalkCore&);
+
+ protected:
+ ///
+ ///\8f\89\8aú\89»\8aÖ\90\94
+ ///
+ void Initialize( HTS_Boolean use_lpf, int sampling_rate,
+ int fperiod, double alpha, int stage, double beta, int audio_buff_size,
+ double uv_threshold, HTS_Boolean use_log_gain, double gv_weight_mgc,
+ double gv_weight_lf0, double gv_weight_lpf);
+
+
+ ///
+ ///\89¹\90º\83t\83@\83C\83\8b\93Ç\82Ý\8d\9e\82Ý
+ ///
+ void Load( const TChar_P in_voiceDataDir,const TChar_P in_dictinalyDataDir, Char_P fn_ms_dur, Char_P fn_ts_dur,
+ Char_P fn_ms_mgc, Char_P fn_ts_mgc, Char_P *fn_ws_mgc, int num_ws_mgc,
+ Char_P fn_ms_lf0, Char_P fn_ts_lf0, Char_P *fn_ws_lf0, int num_ws_lf0,
+ Char_P fn_ms_lpf, Char_P fn_ts_lpf, Char_P *fn_ws_lpf, int num_ws_lpf,
+ Char_P fn_ms_gvm, Char_P fn_ts_gvm, Char_P fn_ms_gvl, Char_P fn_ts_gvl,
+ Char_P fn_ms_gvf, Char_P fn_ts_gvf, Char_P fn_gv_switch);
+
+ public:
+
+ ///
+ ///\89¹\90º\8d\87\90¬
+ ///
+ void Synthesis( Char_P txt, FILE * wavfp, FILE * logfp);
+
+
+
+ ///
+ ///\83I\83u\83W\83F\83N\83g\82Ì\83N\83\8a\83A
+ ///
+ void Clear();
+
+ };
+
+
+}
+}
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{FBE9021E-5717-4EEE-A3AC-E4516C8A29AD}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>speaker</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <IncludePath>$(solutiondir)open_jtalk_lib;$(IncludePath)</IncludePath>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <IncludePath>$(solutiondir)open_jtalk_lib;$(IncludePath)</IncludePath>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <PrecompiledHeader>Use</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>Use</PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <None Include="ReadMe.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="mei_normal.h" />
+ <ClInclude Include="open_jtalk_core.h" />
+ <ClInclude Include="speaker_define.h" />
+ <ClInclude Include="speaker_include.h" />
+ <ClInclude Include="stdafx.h" />
+ <ClInclude Include="targetver.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="mei_normal.cpp" />
+ <ClCompile Include="open_jtalk_core.cpp" />
+ <ClCompile Include="stdafx.cpp">
+ <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
+ <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
+ </ClCompile>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="ソース ファイル">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="ヘッダー ファイル">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="リソース ファイル">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="ReadMe.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="stdafx.h">
+ <Filter>ヘッダー ファイル</Filter>
+ </ClInclude>
+ <ClInclude Include="targetver.h">
+ <Filter>ヘッダー ファイル</Filter>
+ </ClInclude>
+ <ClInclude Include="open_jtalk_core.h">
+ <Filter>ヘッダー ファイル</Filter>
+ </ClInclude>
+ <ClInclude Include="speaker_include.h">
+ <Filter>ヘッダー ファイル</Filter>
+ </ClInclude>
+ <ClInclude Include="speaker_define.h">
+ <Filter>ヘッダー ファイル</Filter>
+ </ClInclude>
+ <ClInclude Include="mei_normal.h">
+ <Filter>ヘッダー ファイル</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="stdafx.cpp">
+ <Filter>ソース ファイル</Filter>
+ </ClCompile>
+ <ClCompile Include="open_jtalk_core.cpp">
+ <Filter>ソース ファイル</Filter>
+ </ClCompile>
+ <ClCompile Include="mei_normal.cpp">
+ <Filter>ソース ファイル</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+</Project>
\ No newline at end of file
--- /dev/null
+#pragma once
+
+namespace speaker{
+
+ typedef char Char;
+ typedef wchar_t WChar;
+
+#ifdef _UNICODE
+
+ typedef WChar TChar;
+
+#else
+
+ typedef Char TChar;
+
+#endif
+
+
+ typedef Char *Char_P;
+ typedef WChar *WChar_P;
+ typedef TChar *TChar_P;
+}
\ No newline at end of file
--- /dev/null
+#pragma once
+
+#include <open_jtalk_lib.h>
+
+#include "speaker_define.h"
+
+#include "open_jtalk_core.h"
+#include "mei_normal.h"
\ No newline at end of file
--- /dev/null
+// stdafx.cpp : \95W\8f\80\83C\83\93\83N\83\8b\81[\83h speaker.pch \82Ì\82Ý\82ð
+// \8aÜ\82Þ\83\\81[\83X \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
--- /dev/null
+// stdafx.h : \95W\8f\80\82Ì\83V\83X\83e\83\80 \83C\83\93\83N\83\8b\81[\83h \83t\83@\83C\83\8b\82Ì\83C\83\93\83N\83\8b\81[\83h \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[\83h \83t\83@\83C\83\8b
+// \82ð\8bL\8fq\82µ\82Ü\82·\81B
+//
+
+#pragma once
+
+#include "targetver.h"
+
+#define WIN32_LEAN_AND_MEAN // Windows \83w\83b\83_\81[\82©\82ç\8eg\97p\82³\82ê\82Ä\82¢\82È\82¢\95\94\95ª\82ð\8f\9c\8aO\82µ\82Ü\82·\81B
+
+
+
+// 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 <atlstr.h>
+#include <vector>
--- /dev/null
+#pragma once
+
+// SDKDDKVer.h \82ð\83C\83\93\83N\83\8b\81[\83h\82·\82é\82Æ\81A\97\98\97p\82Å\82«\82é\8dÅ\82à\8fã\88Ê\82Ì Windows \83v\83\89\83b\83g\83t\83H\81[\83\80\82ª\92è\8b`\82³\82ê\82Ü\82·\81B
+
+// \88È\91O\82Ì Windows \83v\83\89\83b\83g\83t\83H\81[\83\80\97p\82É\83A\83v\83\8a\83P\81[\83V\83\87\83\93\82ð\83r\83\8b\83h\82·\82é\8fê\8d\87\82Í\81AWinSDKVer.h \82ð\83C\83\93\83N\83\8b\81[\83h\82µ\81A
+// SDKDDKVer.h \82ð\83C\83\93\83N\83\8b\81[\83h\82·\82é\91O\82É\81A\83T\83|\81[\83g\91Î\8fÛ\82Æ\82·\82é\83v\83\89\83b\83g\83t\83H\81[\83\80\82ð\8e¦\82·\82æ\82¤\82É _WIN32_WINNT \83}\83N\83\8d\82ð\90Ý\92è\82µ\82Ü\82·\81B
+
+#include <SDKDDKVer.h>