Index: trunk/ab5.0/abdev/abdev/Common.h
===================================================================
--- trunk/ab5.0/abdev/abdev/Common.h	(revision 713)
+++ trunk/ab5.0/abdev/abdev/Common.h	(revision 717)
@@ -620,5 +620,4 @@
 
 //FileOperation.cpp
-void MakeUserSettingDir(void);
 char *ReadBuffer( const std::string &path );
 char *ReadBuffer_NonErrMsg( const std::string &path );
@@ -843,6 +842,6 @@
 	~CHistory();
 
-	void load(char *path);
-	void save(char *path);
+	void load( const std::string &path );
+	void save( const std::string &path );
 
 	void add(char *path);
Index: trunk/ab5.0/abdev/abdev/DialogBoxes.cpp
===================================================================
--- trunk/ab5.0/abdev/abdev/DialogBoxes.cpp	(revision 713)
+++ trunk/ab5.0/abdev/abdev/DialogBoxes.cpp	(revision 717)
@@ -1123,7 +1123,4 @@
 
 		pobj_nv->bSaveWebFindStr=temp_bSaveWebFindStr;
-
-		//Web検索
-		pobj_nv->pobj_DBDomain->copy_get(pobj_temp_DBDomain);
 
 		//SideWebウィンドウを再表示
Index: trunk/ab5.0/abdev/abdev/ExtensionLink.cpp
===================================================================
--- trunk/ab5.0/abdev/abdev/ExtensionLink.cpp	(revision 713)
+++ trunk/ab5.0/abdev/abdev/ExtensionLink.cpp	(revision 717)
@@ -35,5 +35,6 @@
 }
 
-void CExtLink::load(char *path){
+void CExtLink::load( const std::string &path )
+{
 	char *buffer;
 	buffer=ReadBuffer_NonErrMsg(path);
@@ -82,5 +83,6 @@
 	}
 }
-void CExtLink::save(char *path){
+void CExtLink::save( const std::string &path )
+{
 	int i;
 	char buffer[8192];
Index: trunk/ab5.0/abdev/abdev/ExtensionLink.h
===================================================================
--- trunk/ab5.0/abdev/abdev/ExtensionLink.h	(revision 713)
+++ trunk/ab5.0/abdev/abdev/ExtensionLink.h	(revision 717)
@@ -21,6 +21,6 @@
 	~CExtLink();
 
-	void load(char *path);
-	void save(char *path);
+	void load( const std::string &path );
+	void save( const std::string &path );
 
 	BOOL add(BOOL bReg,char *lpszExtension,char *lpszNote,BOOL bWindowsSearch,COLORREF tab_color);
Index: trunk/ab5.0/abdev/abdev/FileOperation.cpp
===================================================================
--- trunk/ab5.0/abdev/abdev/FileOperation.cpp	(revision 713)
+++ trunk/ab5.0/abdev/abdev/FileOperation.cpp	(revision 717)
@@ -2,23 +2,4 @@
 
 #include "Common.h"
-
-void MakeUserSettingDir(void){
-	char temporary[MAX_PATH];
-	sprintf(temporary,"%sUserSetting",pj_editor_Dir);
-
-	HANDLE hFind;
-	WIN32_FIND_DATA wfd;
-	hFind=FindFirstFile(temporary,&wfd);
-	if(hFind==INVALID_HANDLE_VALUE){
-		//UserSettingディレクトリを作成
-		if(!CreateDirectory(temporary,NULL)){
-			MessageBox(hOwner,"UserSettingディレクトリの作成に失敗",APPLICATION_NAME,MB_OK|MB_ICONEXCLAMATION);
-			return;
-		}
-	}
-	else{
-		FindClose(hFind);
-	}
-}
 
 char *ReadBuffer( const std::string &path ){
Index: trunk/ab5.0/abdev/abdev/History.cpp
===================================================================
--- trunk/ab5.0/abdev/abdev/History.cpp	(revision 713)
+++ trunk/ab5.0/abdev/abdev/History.cpp	(revision 717)
@@ -16,5 +16,6 @@
 }
 
-void CHistory::load(char *path){
+void CHistory::load( const std::string &path )
+{
 	char temporary[MAX_PATH];
 
@@ -38,5 +39,6 @@
 	}
 }
-void CHistory::save(char *path){
+void CHistory::save( const std::string &path )
+{
 	char *buffer;
 	buffer=(char *)HeapAlloc(hHeap,0,iNum*MAX_PATH+1);
Index: trunk/ab5.0/abdev/abdev/NonVolatile.cpp
===================================================================
--- trunk/ab5.0/abdev/abdev/NonVolatile.cpp	(revision 713)
+++ trunk/ab5.0/abdev/abdev/NonVolatile.cpp	(revision 717)
@@ -235,16 +235,11 @@
 	char temporary[MAX_PATH];
 
+	std::string userAppDir = ActiveBasic::IDE::Program::GetUserAppDir();
+
 
 	///////////////////////////////////
 	// 関連付け用の拡張子オブジェクト
 	///////////////////////////////////
-	sprintf(temporary,"%sUserSetting\\extlink.ini",pj_editor_Dir);
-	pobj_ExtLink->load(temporary);
-
-
-	//////////////////////////////////////
-	// Web検索用ドメイン管理オブジェクト
-	//////////////////////////////////////
-	pobj_DBDomain->load();
+	pobj_ExtLink->load( userAppDir + "\\extlink.ini" );
 
 
@@ -252,6 +247,5 @@
 	// 「最近使ったファイル」オブジェクト
 	///////////////////////////////////////
-	sprintf(temporary,"%sUserSetting\\history.ini",pj_editor_Dir);
-	pobj_History->load(temporary);
+	pobj_History->load( userAppDir + "\\history.ini" );
 
 
@@ -259,12 +253,10 @@
 	// 「最近使ったプロジェクト」オブジェクト
 	////////////////////////////////////////////
-	sprintf(temporary,"%sUserSetting\\pj_history.ini",pj_editor_Dir);
-	pobj_ProjectHistory->load(temporary);
+	pobj_ProjectHistory->load( userAppDir + "\\pj_history.ini" );
 
 
 
 	//開く
-	sprintf(temporary,"%sUserSetting\\editor.ini",pj_editor_Dir);
-	buffer=ReadBuffer_NonErrMsg(temporary);
+	buffer=ReadBuffer_NonErrMsg( userAppDir + "\\editor.ini" );
 	if(!buffer){
 
@@ -454,6 +446,5 @@
 	int i2,i3;
 
-	sprintf(temporary,"%sUserSetting\\findstr.ini",pj_editor_Dir);
-	buffer=ReadBuffer_NonErrMsg(temporary);
+	buffer=ReadBuffer_NonErrMsg( userAppDir + "\\findstr.ini" );
 	if(buffer){
 		i2=0;
@@ -476,6 +467,5 @@
 	// 置換文字列
 	/////////////////
-	sprintf(temporary,"%sUserSetting\\permustr.ini",pj_editor_Dir);
-	buffer=ReadBuffer_NonErrMsg(temporary);
+	buffer=ReadBuffer_NonErrMsg( userAppDir + "\\permustr.ini" );
 	if(buffer){
 		i2=0;
@@ -498,6 +488,5 @@
 	// Web検索文字列
 	/////////////////
-	sprintf(temporary,"%sUserSetting\\webstr.ini",pj_editor_Dir);
-	buffer=ReadBuffer_NonErrMsg(temporary);
+	buffer=ReadBuffer_NonErrMsg( userAppDir + "webstr.ini" );
 	if(buffer){
 		i2=0;
@@ -678,18 +667,8 @@
 void CNonVolatile::save(){
 	int i;
-	char temporary[MAX_PATH];
-
-	sprintf(temporary,"%sUserSetting",pj_editor_Dir);
-
-	HANDLE hFind;
-	WIN32_FIND_DATA wfd;
-	hFind=FindFirstFile(temporary,&wfd);
-	if(hFind==INVALID_HANDLE_VALUE){
-		//UserSettingディレクトリを作成
-		if(!CreateDirectory(temporary,NULL)){
-			MessageBox(hOwner,"UserSettingディレクトリの作成に失敗",APPLICATION_NAME,MB_OK|MB_ICONEXCLAMATION);
-			return;
-		}
-	}
+	
+	// ユーザ情報保存用のディレクトリを作成
+	Jenga::Common::Directory dir( ActiveBasic::IDE::Program::GetUserAppDir(), true );
+
 
 	buffer=(char *)HeapAlloc(hHeap,0,65536);
@@ -827,7 +806,8 @@
 
 
+	std::string userAppDir = ActiveBasic::IDE::Program::GetUserAppDir();
+
 	//保存
-	sprintf(temporary,"%sUserSetting\\editor.ini",pj_editor_Dir);
-	WriteBuffer(temporary,buffer,lstrlen(buffer));
+	WriteBuffer( userAppDir + "\\editor.ini", buffer,lstrlen(buffer));
 
 
@@ -845,6 +825,5 @@
 
 	//保存
-	sprintf(temporary,"%sUserSetting\\findstr.ini",pj_editor_Dir);
-	WriteBuffer(temporary,buffer,lstrlen(buffer));
+	WriteBuffer( userAppDir + "\\findstr.ini", buffer,lstrlen(buffer));
 
 
@@ -862,6 +841,5 @@
 
 	//保存
-	sprintf(temporary,"%sUserSetting\\permustr.ini",pj_editor_Dir);
-	WriteBuffer(temporary,buffer,lstrlen(buffer));
+	WriteBuffer( userAppDir + "\\permustr.ini", buffer,lstrlen(buffer));
 
 
@@ -879,6 +857,5 @@
 
 	//保存
-	sprintf(temporary,"%sUserSetting\\webstr.ini",pj_editor_Dir);
-	WriteBuffer(temporary,buffer,lstrlen(buffer));
+	WriteBuffer( userAppDir + "\\webstr.ini", buffer,lstrlen(buffer));
 
 	HeapDefaultFree(buffer);
@@ -889,12 +866,5 @@
 	// 関連付け用の拡張子オブジェクト
 	///////////////////////////////////
-	sprintf(temporary,"%sUserSetting\\extlink.ini",pj_editor_Dir);
-	pobj_ExtLink->save(temporary);
-
-
-	//////////////////////////////////////
-	// Web検索用ドメイン管理オブジェクト
-	//////////////////////////////////////
-	pobj_DBDomain->save();
+	pobj_ExtLink->save( userAppDir + "\\extlink.ini" );
 
 
@@ -902,6 +872,5 @@
 	// 「最近使ったファイル」オブジェクト
 	///////////////////////////////////////
-	sprintf(temporary,"%sUserSetting\\history.ini",pj_editor_Dir);
-	pobj_History->save(temporary);
+	pobj_History->save( userAppDir + "\\history.ini" );
 
 	
@@ -909,5 +878,4 @@
 	// 「最近使ったファイル」オブジェクト
 	///////////////////////////////////////
-	sprintf(temporary,"%sUserSetting\\pj_history.ini",pj_editor_Dir);
-	pobj_ProjectHistory->save(temporary);
-}
+	pobj_ProjectHistory->save( userAppDir + "\\pj_history.ini" );
+}
Index: trunk/ab5.0/abdev/abdev/include/Program.h
===================================================================
--- trunk/ab5.0/abdev/abdev/include/Program.h	(revision 713)
+++ trunk/ab5.0/abdev/abdev/include/Program.h	(revision 717)
@@ -16,4 +16,7 @@
 	static const WindowComponents::CodeEditor::Language *ablang;
 
+	// ユーザデータ格納用のディレクトリを取得
+	static const std::string GetUserAppDir();
+
 	static void Main();
 
Index: trunk/ab5.0/abdev/abdev/src/Program.cpp
===================================================================
--- trunk/ab5.0/abdev/abdev/src/Program.cpp	(revision 713)
+++ trunk/ab5.0/abdev/abdev/src/Program.cpp	(revision 717)
@@ -27,4 +27,9 @@
 }
 
+const std::string Program::GetUserAppDir()
+{
+	return Jenga::Common::Environment::GetUserAppDir() + "\\ActiveBasic\\ide";
+}
+
 void Program::Main()
 {
