[o2on-svn] [94] ADD: メニューからのanalyze

Zurück zum Archiv-Index

o2on svn commit o2on-****@lists*****
2008年 5月 27日 (火) 22:28:54 JST


Revision: 94
          http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=o2on&view=rev&rev=94
Author:   k-uehara
Date:     2008-05-27 22:28:54 +0900 (Tue, 27 May 2008)

Log Message:
-----------
ADD: メニューからのanalyze

Modified Paths:
--------------
    branches/BRANCH_0043/o2on/src.o2on/O2DatIO.cpp
    branches/BRANCH_0043/o2on/src.o2on/O2DatIO.h
    branches/BRANCH_0043/o2on/src.o2on/main.cpp
    branches/BRANCH_0043/o2on/src.o2on/resource.h
    branches/BRANCH_0043/o2on/src.o2on/resource.rc

Modified: branches/BRANCH_0043/o2on/src.o2on/O2DatIO.cpp
===================================================================
--- branches/BRANCH_0043/o2on/src.o2on/O2DatIO.cpp	2008-05-27 12:48:10 UTC (rev 93)
+++ branches/BRANCH_0043/o2on/src.o2on/O2DatIO.cpp	2008-05-27 13:28:54 UTC (rev 94)
@@ -44,6 +44,7 @@
 	, ReindexThreadHandle(NULL)
 	, LoopRebuildDB(false)
 	, EnumDatThreadNum(0)
+	, AnalyzeThreadHandle(0)
 
 {
 	DWORD BytesPerSector;
@@ -878,6 +879,7 @@
 
 	CoInitialize(NULL);
 	me->RebuildDBThread(me->Profile->GetCacheRootW(), 0);
+	me->DatDB->analyze();
 	CoUninitialize();
 
 	CloseHandle(me->RebuildDBThreadHandle);
@@ -1148,3 +1150,34 @@
 	//_endthreadex(0);
 	return (0);
 }
+
+void
+O2DatIO::
+Analyze(void)
+{
+	if (AnalyzeThreadHandle)
+		return;
+	AnalyzeThreadHandle = (HANDLE)_beginthreadex(
+		NULL, 0, StaticAnalyzeThread, (void*)this, 0, NULL);
+}
+
+uint WINAPI
+O2DatIO::
+StaticAnalyzeThread(void *data)
+{
+	O2DatIO *me = (O2DatIO*)data;
+
+	CoInitialize(NULL);
+	me->ProgressInfo->Reset(true, false);
+	me->ProgressInfo->SetMessage(L"analyze...");
+	me->ProgressInfo->AddMax(2);
+	me->ProgressInfo->pos = 1;
+	me->DatDB->analyze();
+	me->ProgressInfo->Reset(false, false);
+	CoUninitialize();
+
+	CloseHandle(me->AnalyzeThreadHandle);
+	me->AnalyzeThreadHandle = NULL;
+
+	return (0);
+}
\ No newline at end of file

Modified: branches/BRANCH_0043/o2on/src.o2on/O2DatIO.h
===================================================================
--- branches/BRANCH_0043/o2on/src.o2on/O2DatIO.h	2008-05-27 12:48:10 UTC (rev 93)
+++ branches/BRANCH_0043/o2on/src.o2on/O2DatIO.h	2008-05-27 13:28:54 UTC (rev 94)
@@ -36,6 +36,7 @@
 
 	HANDLE			RebuildDBThreadHandle;
 	HANDLE			ReindexThreadHandle;
+	HANDLE			AnalyzeThreadHandle;
 	bool			LoopRebuildDB;
 	uint			EnumDatThreadNum;
 	Mutex			EnumDatThreadNumLock;
@@ -83,4 +84,6 @@
 
 	void Reindex(void);
 	static uint WINAPI StaticReindexThread(void *data);
+	void Analyze(void);
+	static uint WINAPI StaticAnalyzeThread(void *data);
 };

Modified: branches/BRANCH_0043/o2on/src.o2on/main.cpp
===================================================================
--- branches/BRANCH_0043/o2on/src.o2on/main.cpp	2008-05-27 12:48:10 UTC (rev 93)
+++ branches/BRANCH_0043/o2on/src.o2on/main.cpp	2008-05-27 13:28:54 UTC (rev 94)
@@ -1070,6 +1070,12 @@
 						DatIO->Reindex();
 					}
 					break;
+				case ID_ANALYZE:
+					if (!Active && !hwndProgressDlg) {
+						CreateProgressDialog(_T("analyze..."));
+						DatIO->Analyze();
+					}
+					break;
 				case ID_OPENWEBADMIN: {
 					wstring type = Profile->GetAdminBrowserType();
 					wstring path = Profile->GetAdminBrowserPath();

Modified: branches/BRANCH_0043/o2on/src.o2on/resource.h
===================================================================
--- branches/BRANCH_0043/o2on/src.o2on/resource.h	2008-05-27 12:48:10 UTC (rev 93)
+++ branches/BRANCH_0043/o2on/src.o2on/resource.h	2008-05-27 13:28:54 UTC (rev 94)
@@ -79,6 +79,7 @@
 #define ID_REBUILDDB                    40010
 #define ID_DB40013                      40013
 #define ID_REINDEX                      40014
+#define ID_ANALYZE                      40016
 
 // Next default values for new objects
 // 

Modified: branches/BRANCH_0043/o2on/src.o2on/resource.rc
===================================================================
--- branches/BRANCH_0043/o2on/src.o2on/resource.rc	2008-05-27 12:48:10 UTC (rev 93)
+++ branches/BRANCH_0043/o2on/src.o2on/resource.rc	2008-05-27 13:28:54 UTC (rev 94)
@@ -66,6 +66,7 @@
         BEGIN
             MENUITEM "Ä\’z(&B)",                     ID_REBUILDDB
             MENUITEM "reindex(&I)",                 ID_REINDEX
+            MENUITEM "analyze(&L)",                 ID_ANALYZE
         END
         MENUITEM SEPARATOR
         MENUITEM "ƒo[ƒWƒ‡ƒ“î•ñ(&A)...",              ID_ABOUT




o2on-svn メーリングリストの案内
Zurück zum Archiv-Index