Index: trunk/ab5.0/abdev/BasicCompiler64/BasicCompiler.vcproj
===================================================================
--- trunk/ab5.0/abdev/BasicCompiler64/BasicCompiler.vcproj	(revision 479)
+++ trunk/ab5.0/abdev/BasicCompiler64/BasicCompiler.vcproj	(revision 480)
@@ -240,4 +240,8 @@
 			RelativePathToProject="..\jenga\projects\jenga\jenga.vcproj"
 		/>
+		<ProjectReference
+			ReferencedProjectIdentifier="{87835C33-64C9-4BA5-9B39-608BA5394387}"
+			RelativePathToProject=".\ab_common\ab_common.vcproj"
+		/>
 	</References>
 	<Files>
Index: trunk/ab5.0/abdev/BasicCompiler_Common/BasicCompiler.cpp
===================================================================
--- trunk/ab5.0/abdev/BasicCompiler_Common/BasicCompiler.cpp	(revision 479)
+++ trunk/ab5.0/abdev/BasicCompiler_Common/BasicCompiler.cpp	(revision 480)
@@ -251,5 +251,5 @@
 
 			hFile=CreateFile(
-				( Jenga::Common::Environment::GetAppDir() + "\\pgm.tmp" ).c_str(),
+				( ActiveBasic::Common::Environment::GetAbdevRootPath() + "\\pgm.tmp" ).c_str(),
 				GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_HIDDEN|FILE_ATTRIBUTE_TEMPORARY,NULL);
 			WriteFile(hFile,FileName,lstrlen(FileName),&dw,NULL);
@@ -681,12 +681,12 @@
 		{
 			// インクルードディレクトリを絶対パスに変更
-			program.SetIncludeDir( Jenga::Common::Path::MakeFullPath( program.GetIncludeDir(), ActiveBasic::Common::Environment::GetAbdevRootPath() ) );
+			program.SetIncludeDir( Jenga::Common::Path::MakeFullPathByCurrentDirectory( program.GetIncludeDir() ) );
 		}
 
 		// ソースファイル名を絶対パスに変換
-		program.SetSourceFilePath( Jenga::Common::Path::MakeFullPath( program.GetSourceFilePath(), baseDirPath ) );
+		program.SetSourceFilePath( Jenga::Common::Path::MakeFullPathByCurrentDirectory( program.GetSourceFilePath() ) );
 
 		// 出力ファイル名を絶対パスに変換
-		program.SetOutputFilePath( Jenga::Common::Path::MakeFullPath( program.GetOutputFilePath(), baseDirPath ) );
+		program.SetOutputFilePath( Jenga::Common::Path::MakeFullPathByCurrentDirectory( program.GetOutputFilePath() ) );
 
 		// モジュール名をセット
@@ -707,5 +707,5 @@
 		DWORD dwAccessBytes;
 		hFile=CreateFile(
-			( Jenga::Common::Environment::GetAppDir() + "\\pgm.tmp" ).c_str(),
+			( ActiveBasic::Common::Environment::GetAbdevRootPath() + "\\pgm.tmp" ).c_str(),
 			GENERIC_READ,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
 		if(hFile!=INVALID_HANDLE_VALUE){
Index: trunk/ab5.0/abdev/BasicCompiler_Common/src/Messenger.cpp
===================================================================
--- trunk/ab5.0/abdev/BasicCompiler_Common/src/Messenger.cpp	(revision 479)
+++ trunk/ab5.0/abdev/BasicCompiler_Common/src/Messenger.cpp	(revision 480)
@@ -471,5 +471,5 @@
 
 			hFile=CreateFile(
-				( Jenga::Common::Environment::GetAppDir() + "\\pgm.tmp" ).c_str(),
+				( ActiveBasic::Common::Environment::GetAbdevRootPath() + "\\pgm.tmp" ).c_str(),
 				GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_HIDDEN|FILE_ATTRIBUTE_TEMPORARY,NULL);
 			WriteFile(hFile,FileName,lstrlen(FileName),&dw,NULL);
Index: trunk/ab5.0/abdev/ProjectEditor/NonVolatile.cpp
===================================================================
--- trunk/ab5.0/abdev/ProjectEditor/NonVolatile.cpp	(revision 479)
+++ trunk/ab5.0/abdev/ProjectEditor/NonVolatile.cpp	(revision 480)
@@ -444,5 +444,5 @@
 
 	//インクルードディレクトリ
-	if(!GetStringValue("IncludeDir",szIncludeDir)) lstrcpy(szIncludeDir,"..\\Include\\");
+	if(!GetStringValue("IncludeDir",szIncludeDir)) lstrcpy(szIncludeDir,".\\ablib\\src");
 
 	HeapDefaultFree(buffer);
@@ -550,5 +550,5 @@
 
 	//インクルードディレクトリ
-	lstrcpy(szIncludeDir,"..\\Include\\");
+	lstrcpy(szIncludeDir,".\\ablib\\src");
 
 	//ウィンドウ位置、サイズ
Index: trunk/ab5.0/abdev/ProjectEditor/NonVolatile.h
===================================================================
--- trunk/ab5.0/abdev/ProjectEditor/NonVolatile.h	(revision 479)
+++ trunk/ab5.0/abdev/ProjectEditor/NonVolatile.h	(revision 480)
@@ -103,4 +103,8 @@
 	//インクルードディレクトリ
 	char szIncludeDir[MAX_PATH];
+	std::string GetIncludeDirFullPath()
+	{
+		return Jenga::Common::Path::MakeFullPath( szIncludeDir, ActiveBasic::Common::Environment::GetAbdevRootPath() );
+	}
 
 	//////////////////////////////////////////////////////////////
Index: trunk/ab5.0/abdev/ProjectEditor/ProjectEditor.cpp
===================================================================
--- trunk/ab5.0/abdev/ProjectEditor/ProjectEditor.cpp	(revision 479)
+++ trunk/ab5.0/abdev/ProjectEditor/ProjectEditor.cpp	(revision 480)
@@ -2079,5 +2079,5 @@
 
 					//インクルードディレクトリ
-					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->szIncludeDir);
+					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->GetIncludeDirFullPath().c_str());
 					lstrcat(temporary,temp2);
 
@@ -2129,5 +2129,5 @@
 
 					//インクルードディレクトリ
-					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->szIncludeDir);
+					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->GetIncludeDirFullPath().c_str());
 					lstrcat(temporary,temp2);
 
@@ -2160,5 +2160,5 @@
 
 					//インクルードディレクトリ
-					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->szIncludeDir);
+					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->GetIncludeDirFullPath().c_str());
 					lstrcat(temporary,temp2);
 
@@ -2224,5 +2224,5 @@
 
 					//インクルードディレクトリ
-					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->szIncludeDir);
+					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->GetIncludeDirFullPath().c_str());
 					lstrcat(temporary,temp2);
 
@@ -2263,5 +2263,5 @@
 
 					//インクルードディレクトリ
-					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->szIncludeDir);
+					sprintf(temp2," /include_dir:\"%s\"",pobj_nv->GetIncludeDirFullPath().c_str());
 					lstrcat(temporary,temp2);
 
Index: trunk/ab5.0/abdev/ProjectEditor/ProjectEditor.vcproj
===================================================================
--- trunk/ab5.0/abdev/ProjectEditor/ProjectEditor.vcproj	(revision 479)
+++ trunk/ab5.0/abdev/ProjectEditor/ProjectEditor.vcproj	(revision 480)
@@ -52,7 +52,7 @@
 				AdditionalIncludeDirectories="..\..\;..\..\cpplibs\boost;.\include"
 				PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;JPN;THETEXT;WINVER=0x0501;_WIN32_WINNT=0x0501"
-				StringPooling="true"
+				StringPooling="false"
 				RuntimeLibrary="0"
-				EnableFunctionLevelLinking="true"
+				EnableFunctionLevelLinking="false"
 				UsePrecompiledHeader="2"
 				PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"
@@ -63,4 +63,5 @@
 				WarningLevel="3"
 				SuppressStartupBanner="true"
+				DebugInformationFormat="3"
 			/>
 			<Tool
@@ -357,5 +358,5 @@
 				WarningLevel="3"
 				SuppressStartupBanner="true"
-				DebugInformationFormat="4"
+				DebugInformationFormat="3"
 			/>
 			<Tool
Index: trunk/ab5.0/abdev/ProjectEditor/SubOperation.cpp
===================================================================
--- trunk/ab5.0/abdev/ProjectEditor/SubOperation.cpp	(revision 479)
+++ trunk/ab5.0/abdev/ProjectEditor/SubOperation.cpp	(revision 480)
@@ -1260,14 +1260,4 @@
 	GetFullPath( temporary, pj_editor_Dir );
 	pHeaderBuf = ReadBuffer_NonErrMsg( temporary );
-	if( !pHeaderBuf )
-	{
-		lstrcpy(temporary,".\\Include\\basic.sbp");
-		GetFullPath( temporary, pj_editor_Dir );
-		pHeaderBuf = ReadBuffer( temporary );
-		if( pHeaderBuf )
-		{
-			lstrcpy( pobj_nv->szIncludeDir, ".\\Include\\" );
-		}
-	}
 
 	if( !pHeaderBuf ){
Index: trunk/ab5.0/abdev/ab_common/ab_common.vcproj
===================================================================
--- trunk/ab5.0/abdev/ab_common/ab_common.vcproj	(revision 479)
+++ trunk/ab5.0/abdev/ab_common/ab_common.vcproj	(revision 480)
@@ -17,5 +17,5 @@
 	<Configurations>
 		<Configuration
-			Name="Debug|Win32"
+			Name="Debug(x86)|Win32"
 			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
 			IntermediateDirectory="$(ConfigurationName)"
@@ -49,5 +49,5 @@
 				WarningLevel="3"
 				Detect64BitPortabilityProblems="true"
-				DebugInformationFormat="4"
+				DebugInformationFormat="3"
 			/>
 			<Tool
@@ -80,5 +80,129 @@
 		</Configuration>
 		<Configuration
-			Name="Release|Win32"
+			Name="Release(x86)|Win32"
+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+			IntermediateDirectory="$(ConfigurationName)"
+			ConfigurationType="4"
+			CharacterSet="2"
+			WholeProgramOptimization="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				AdditionalIncludeDirectories="..\..\;..\..\cpplibs\boost"
+				PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
+				RuntimeLibrary="0"
+				UsePrecompiledHeader="2"
+				WarningLevel="3"
+				Detect64BitPortabilityProblems="true"
+				DebugInformationFormat="3"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLibrarianTool"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Debug(x64)|Win32"
+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+			IntermediateDirectory="$(ConfigurationName)"
+			ConfigurationType="4"
+			CharacterSet="2"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				AdditionalIncludeDirectories="..\..\;..\..\cpplibs\boost"
+				PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="1"
+				UsePrecompiledHeader="2"
+				WarningLevel="3"
+				Detect64BitPortabilityProblems="true"
+				DebugInformationFormat="3"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLibrarianTool"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release(x64)|Win32"
 			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
 			IntermediateDirectory="$(ConfigurationName)"
@@ -157,5 +281,5 @@
 				>
 				<FileConfiguration
-					Name="Debug|Win32"
+					Name="Debug(x86)|Win32"
 					>
 					<Tool
@@ -165,5 +289,21 @@
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Release|Win32"
+					Name="Release(x86)|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						UsePrecompiledHeader="1"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Debug(x64)|Win32"
+					>
+					<Tool
+						Name="VCCLCompilerTool"
+						UsePrecompiledHeader="1"
+					/>
+				</FileConfiguration>
+				<FileConfiguration
+					Name="Release(x64)|Win32"
 					>
 					<Tool
Index: trunk/ab5.0/abdev/abcompiler32.sln
===================================================================
--- trunk/ab5.0/abdev/abcompiler32.sln	(revision 479)
+++ trunk/ab5.0/abdev/abcompiler32.sln	(revision 480)
@@ -45,12 +45,12 @@
 		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.TheText_Release|Win32.ActiveCfg = Release(x86)|Win32
 		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.TheText_Release|Win32.Build.0 = Release(x86)|Win32
-		{87835C33-64C9-4BA5-9B39-608BA5394387}.Debug|Win32.ActiveCfg = Debug|Win32
-		{87835C33-64C9-4BA5-9B39-608BA5394387}.Debug|Win32.Build.0 = Debug|Win32
-		{87835C33-64C9-4BA5-9B39-608BA5394387}.Release|Win32.ActiveCfg = Release|Win32
-		{87835C33-64C9-4BA5-9B39-608BA5394387}.Release|Win32.Build.0 = Release|Win32
-		{87835C33-64C9-4BA5-9B39-608BA5394387}.TheText_Debug|Win32.ActiveCfg = Debug|Win32
-		{87835C33-64C9-4BA5-9B39-608BA5394387}.TheText_Debug|Win32.Build.0 = Debug|Win32
-		{87835C33-64C9-4BA5-9B39-608BA5394387}.TheText_Release|Win32.ActiveCfg = Release|Win32
-		{87835C33-64C9-4BA5-9B39-608BA5394387}.TheText_Release|Win32.Build.0 = Release|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.Debug|Win32.ActiveCfg = Debug(x86)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.Debug|Win32.Build.0 = Debug(x86)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.Release|Win32.ActiveCfg = Release(x86)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.Release|Win32.Build.0 = Release(x86)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.TheText_Debug|Win32.ActiveCfg = Debug(x86)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.TheText_Debug|Win32.Build.0 = Debug(x86)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.TheText_Release|Win32.ActiveCfg = Release(x86)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.TheText_Release|Win32.Build.0 = Release(x86)|Win32
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
Index: trunk/ab5.0/abdev/abcompiler64.sln
===================================================================
--- trunk/ab5.0/abdev/abcompiler64.sln	(revision 479)
+++ trunk/ab5.0/abdev/abcompiler64.sln	(revision 480)
@@ -5,4 +5,6 @@
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jenga", "..\jenga\projects\jenga\jenga.vcproj", "{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ab_common", "ab_common\ab_common.vcproj", "{87835C33-64C9-4BA5-9B39-608BA5394387}"
 EndProject
 Global
@@ -16,8 +18,12 @@
 		{864B921B-423B-4F9E-9E6B-31B15968EDF9}.Release|Win32.ActiveCfg = Release|Win32
 		{864B921B-423B-4F9E-9E6B-31B15968EDF9}.Release|Win32.Build.0 = Release|Win32
-		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.Debug|Win32.ActiveCfg = Debug(amd64)|Win32
-		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.Debug|Win32.Build.0 = Debug(amd64)|Win32
-		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.Release|Win32.ActiveCfg = Release(amd64)|Win32
-		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.Release|Win32.Build.0 = Release(amd64)|Win32
+		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.Debug|Win32.ActiveCfg = Debug(x64)|Win32
+		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.Debug|Win32.Build.0 = Debug(x64)|Win32
+		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.Release|Win32.ActiveCfg = Release(x64)|Win32
+		{F01805B6-65B4-4708-88F4-A5E07DEA9FBD}.Release|Win32.Build.0 = Release(x64)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.Debug|Win32.ActiveCfg = Debug(x64)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.Debug|Win32.Build.0 = Debug(x64)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.Release|Win32.ActiveCfg = Release(x64)|Win32
+		{87835C33-64C9-4BA5-9B39-608BA5394387}.Release|Win32.Build.0 = Release(x64)|Win32
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
Index: trunk/ab5.0/jenga/include/common/Environment.h
===================================================================
--- trunk/ab5.0/jenga/include/common/Environment.h	(revision 479)
+++ trunk/ab5.0/jenga/include/common/Environment.h	(revision 480)
@@ -17,4 +17,11 @@
 {
 public:
+	static const std::string GetCurrentDir()
+	{
+		char temp[MAX_PATH];
+		::GetCurrentDirectory( MAX_PATH, temp );
+		return temp;
+	}
+
 	static const std::string &GetAppDir()
 	{
Index: trunk/ab5.0/jenga/include/common/Path.h
===================================================================
--- trunk/ab5.0/jenga/include/common/Path.h	(revision 479)
+++ trunk/ab5.0/jenga/include/common/Path.h	(revision 480)
@@ -64,4 +64,5 @@
 
 	static std::string MakeFullPath( const std::string &relativePath, const std::string &baseDirPath );
+	static std::string MakeFullPathByCurrentDirectory( const std::string &relativePath );
 };
 
Index: trunk/ab5.0/jenga/projects/jenga/jenga.vcproj
===================================================================
--- trunk/ab5.0/jenga/projects/jenga/jenga.vcproj	(revision 479)
+++ trunk/ab5.0/jenga/projects/jenga/jenga.vcproj	(revision 480)
@@ -16,5 +16,5 @@
 	<Configurations>
 		<Configuration
-			Name="Debug(amd64)|Win32"
+			Name="Debug(x64)|Win32"
 			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
 			IntermediateDirectory="$(ConfigurationName)"
@@ -80,5 +80,5 @@
 		</Configuration>
 		<Configuration
-			Name="Release(amd64)|Win32"
+			Name="Release(x64)|Win32"
 			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
 			IntermediateDirectory="$(ConfigurationName)"
Index: trunk/ab5.0/jenga/src/common/Path.cpp
===================================================================
--- trunk/ab5.0/jenga/src/common/Path.cpp	(revision 479)
+++ trunk/ab5.0/jenga/src/common/Path.cpp	(revision 480)
@@ -1,3 +1,4 @@
 #include <boost/foreach.hpp>
+#include <jenga/include/common/Environment.h>
 #include <jenga/include/common/Path.h>
 
@@ -77,2 +78,6 @@
 	return resultPath;
 }
+std::string Jenga::Common::Path::MakeFullPathByCurrentDirectory( const std::string &relativePath )
+{
+	return MakeFullPath( relativePath, Jenga::Common::Environment::GetCurrentDir() );
+}
