<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx</link><description>I’m not sure how many people know that Windows comes with an embeddable, transactional database engine which is available to developers through the Windows SDK. The ESENT database engine can be used whenever an application wants high-performance, low-overhead</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>infoblog &amp;raquo; ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9012216</link><pubDate>Thu, 23 Oct 2008 05:33:50 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9012216</guid><dc:creator>infoblog &amp;raquo; ESENT (Extensible Storage Engine) API in the Windows SDK</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://blog.a-foton.ru/index.php/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk/"&gt;http://blog.a-foton.ru/index.php/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk/&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>infoblog &amp;raquo; ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9012219</link><pubDate>Thu, 23 Oct 2008 05:34:06 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9012219</guid><dc:creator>infoblog &amp;raquo; ESENT (Extensible Storage Engine) API in the Windows SDK</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://blog.a-foton.ru/index.php/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk/"&gt;http://blog.a-foton.ru/index.php/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk/&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>My post on the Windows SDK blog</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9012463</link><pubDate>Thu, 23 Oct 2008 07:50:06 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9012463</guid><dc:creator>ESE/ESENT Database Stuff</dc:creator><description>&lt;p&gt;Although the ESENT API has been available in the Windows SDK for several years, I don't think enough&lt;/p&gt;
</description></item><item><title>ESENT tips and tricks</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9012536</link><pubDate>Thu, 23 Oct 2008 09:06:32 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9012536</guid><dc:creator>ascend slowly, breathing normally</dc:creator><description>&lt;p&gt;ESENT is powerful embedded database engine that is part of Windows. It used by the Active Directory,&lt;/p&gt;
</description></item><item><title>Visual Studio Links #81</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9014848</link><pubDate>Fri, 24 Oct 2008 18:09:57 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9014848</guid><dc:creator>Visual Studio Hacks</dc:creator><description>&lt;p&gt;My latest in a series of the weekly, or more often, summary of interesting links I come across related to Visual Studio. Scott Guthrie posted the latest installment of links for ASP.NET, Visual Studio, WPF and Silverlight . Vance Morrison posted links&lt;/p&gt;
</description></item><item><title>Un wrapper .NET pour les API ESENT (une des versions d’ESE, Extensible Storage Engine)</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9250174</link><pubDate>Tue, 23 Dec 2008 18:10:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9250174</guid><dc:creator>CoqBlog</dc:creator><description>&lt;p&gt;Vous avez probablement d&amp;#233;j&amp;#224; vu, au cours de vos recherches dans Process Explorer par exemple, que certains&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9251478</link><pubDate>Wed, 24 Dec 2008 09:09:11 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9251478</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;Any help here?&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; I want to create an instance of Database by ESE API, then attach an offline backuped Active Directory Database file &amp;quot;ntds.dit&amp;quot;. It always report error &amp;quot;database page size mismatches engine size&amp;quot;.&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; The offline Active Directory Database size is 8192. However, The ESE API on windows server 2003 always creates an instance with default database page size 4096.&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; I try to call JetSetSystemParameter function to set database page size to 8192, it always fails.&lt;/p&gt;
&lt;p&gt;question:&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; How can I create an instance of Database with default page size 8192 on Windows Server 2003 by ESE API?&lt;/p&gt;
&lt;p&gt;Any feedback will help. Thanks&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9251687</link><pubDate>Wed, 24 Dec 2008 14:06:01 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9251687</guid><dc:creator>laurionb</dc:creator><description>&lt;p&gt;If setting the database page size is failing then esent is probably already initialized. Set the system parameter before calling JetInit.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9258146</link><pubDate>Wed, 31 Dec 2008 09:24:23 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9258146</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;I ever tried the method of setting system parameter before calling JetInit, but it still failed.&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;
&lt;p&gt;Changhua&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9258160</link><pubDate>Wed, 31 Dec 2008 09:45:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9258160</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;I ever tried like thus.&lt;/p&gt;
&lt;p&gt;1.) set system parameter&lt;/p&gt;
&lt;p&gt;2.) create instance&lt;/p&gt;
&lt;p&gt;3.) call JetInit&lt;/p&gt;
&lt;p&gt;Actually, it will fail in calling JetInit.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9258163</link><pubDate>Wed, 31 Dec 2008 09:46:35 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9258163</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;I ever tried like thus.&lt;/p&gt;
&lt;p&gt;1.) call setsystemparameter to set page size to 8192&lt;/p&gt;
&lt;p&gt;2.) create instance&lt;/p&gt;
&lt;p&gt;3.) call JetInit&lt;/p&gt;
&lt;p&gt;Actually, it will fail in calling JetInit&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9267788</link><pubDate>Fri, 02 Jan 2009 08:57:35 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9267788</guid><dc:creator>laurionb</dc:creator><description>&lt;p&gt;You are probably referencing the wrong logfiles then. Look for logfiles in the current directory and make sure you are setting the log path, basename and extension system parameters properly.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9270823</link><pubDate>Sun, 04 Jan 2009 04:26:11 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9270823</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;Thank you very much! I will try.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9271003</link><pubDate>Sun, 04 Jan 2009 09:20:20 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9271003</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;// Mount01.cpp : Defines the entry point for the console application.&lt;/p&gt;
&lt;p&gt;//&lt;/p&gt;
&lt;p&gt;#include &amp;quot;stdafx.h&amp;quot;&lt;/p&gt;
&lt;p&gt;//#undef &amp;nbsp;JET_VERSION&lt;/p&gt;
&lt;p&gt;//#define JET_VERSION 0x0501&lt;/p&gt;
&lt;p&gt;// #define _WIN32_WINNT 0X0501&lt;/p&gt;
&lt;p&gt;#undef &amp;nbsp;WINVER&lt;/p&gt;
&lt;p&gt;#define WINVER 0x0502&lt;/p&gt;
&lt;p&gt;#include &amp;lt;stdio.h&amp;gt;&lt;/p&gt;
&lt;p&gt;#include &amp;lt;string.h&amp;gt;&lt;/p&gt;
&lt;p&gt;#include &amp;lt;esent.h&amp;gt;&lt;/p&gt;
&lt;p&gt;#include &amp;lt;string&amp;gt;&lt;/p&gt;
&lt;p&gt;using namespace std;&lt;/p&gt;
&lt;p&gt;typedef struct {&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;int errcode;&lt;/p&gt;
&lt;p&gt;	string msg ;&lt;/p&gt;
&lt;p&gt;} errmap_t;&lt;/p&gt;
&lt;p&gt;void PrintErrorMsg(JET_ERR retcode, char *name);&lt;/p&gt;
&lt;p&gt;#define IMPLEMENT_MAP(code, msg) {code, #msg},&lt;/p&gt;
&lt;p&gt;#define END_MAP() {0, &amp;quot;&amp;quot;}&lt;/p&gt;
&lt;p&gt;errmap_t map[] = {&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_wrnRemainingVersions, The version store is still active. This error is returned by the directory manager.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_wrnNyi, The function is not yet implemented)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errRfsNotArmed, &amp;nbsp;The Resource Failure Simulator has not been initialized.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errInvalidParameter, An invalid API parameter is being used.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errOutOfMemory, The system is out of memory.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errInitInProgress, The database engine is being initialized.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errLogFilePathInUse, The log file path is already being used by another database instance.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errTempPathInUse, The path to the temporary database is already being used by another database instance.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errDatabaseUnavailable, This database cannot be used because it encountered a fatal error.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errNotInitialized, The database engine has not been initialized.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errAlreadyInitialized, The database engine is already initialized.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errDatabaseCorrupted, There is a non-database file or corrupt database.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errInvalidDatabaseVersion, The database engine is incompatible with the database.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errPageSizeMismatch, The database page size does not match the engine.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errAttachedDatabaseMismatch, An outstanding database attachment has been detected at the start or end of the recovery but the database is missing or does not match attachment info.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errCatalogCorrupted, Corruption was detected in the catalog.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errPartiallyAttachedDB, The database is only partially attached and the attach operation cannot be completed.)&lt;/p&gt;
&lt;p&gt;IMPLEMENT_MAP(JET_errInvalidSettings, The system parameters were set improperly.)&lt;/p&gt;
&lt;p&gt;END_MAP()&lt;/p&gt;
&lt;p&gt;};&lt;/p&gt;
&lt;p&gt;int _tmain(int argc, _TCHAR* argv[])&lt;/p&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;JET_ERR errcode = 0;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;JET_INSTANCE instance;&lt;/p&gt;
&lt;p&gt;	JET_SESID &amp;nbsp; &amp;nbsp;sesid;&lt;/p&gt;
&lt;p&gt;	JET_API_PTR &amp;nbsp;value;&lt;/p&gt;
&lt;p&gt;	char &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; szbuff[1024] = {0};&lt;/p&gt;
&lt;p&gt;	JET_DBID &amp;nbsp; &amp;nbsp; dbid;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;// JET_PFNSTATUS status;&lt;/p&gt;
&lt;p&gt;	// Database Parameters&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetSetSystemParameter(&amp;amp;instance, JET_sesidNil, JET_paramDatabasePageSize, 8192, NULL);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetSetSystemParameter&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;// create database instance;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetCreateInstance(&amp;amp;instance, &amp;quot;JetDatabaseInstance&amp;quot;);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetCreateInstance&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;// Transaction Log Parameters&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetSetSystemParameter(&amp;amp;instance, JET_sesidNil, JET_paramLogFilePath, NULL, &amp;quot;D:\\ntdsbackup\\&amp;quot;);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetSetSystemParameter&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;// errcode = JetSetSystemParameter(&amp;amp;instance, JET_sesidNil, JET_paramBaseName, NULL, &amp;quot;edb&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetSetSystemParameter(&amp;amp;instance, JET_sesidNil, JET_paramSystemPath, NULL, &amp;quot;D:\\ntdsbackup\\&amp;quot;);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetSetSystemParameter&amp;quot;);&lt;/p&gt;
&lt;p&gt;	// I/O Parameters&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetSetSystemParameter(&amp;amp;instance, JET_sesidNil, JET_paramAccessDeniedRetryPeriod, 1000, NULL);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetSetSystemParameter&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetSetSystemParameter(&amp;amp;instance, JET_sesidNil, JET_paramCreatePathIfNotExist, 1, NULL);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetSetSystemParameter&amp;quot;);&lt;/p&gt;
&lt;p&gt;	// Database Parameters&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;// errcode = JetSetSystemParameter(&amp;amp;instance, JET_sesidNil, JET_paramDbExtensionSize, 256, NULL);&lt;/p&gt;
&lt;p&gt;	// Database Cache Parameters&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;// errcode = JetSetSystemParameter(&amp;amp;instance, JET_sesidNil, JET_paramCacheSize, 10, NULL);&lt;/p&gt;
&lt;p&gt;	// Temporary Database Parameters&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetSetSystemParameter(&amp;amp;instance, JET_sesidNil, JET_paramTempPath, NULL, &amp;quot;C:\\WINDOWS\\Temp&amp;quot;);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetSetSystemParameter&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetGetSystemParameter(instance, JET_sesidNil, JET_paramDatabasePageSize, &amp;amp;value, szbuff, 1024);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetGetSystemParameter&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetInit(&amp;amp;instance); &amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetInit&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetBeginSession(instance, &amp;amp;sesid, 0, 0);&lt;/p&gt;
&lt;p&gt; 	PrintErrorMsg(errcode, &amp;quot;JetBeginSession&amp;quot;);&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;errcode = JetGetSystemParameter(instance, sesid, JET_paramDatabasePageSize, &amp;amp;value, szbuff, 1024);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetGetSystemParameter&amp;quot;);&lt;/p&gt;
&lt;p&gt;	errcode = JetAttachDatabase(sesid, &amp;quot;D:\\ntdsbackup\\ntds.dit&amp;quot;, 0);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetAttachDatabase&amp;quot;);&lt;/p&gt;
&lt;p&gt;	errcode = JetOpenDatabase(sesid, &amp;quot;D:\\ntdsbackup\\ntds.dit&amp;quot;, 0, &amp;amp;dbid, 0);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetOpenDatabase&amp;quot;);&lt;/p&gt;
&lt;p&gt;	errcode = JetCloseDatabase(sesid, dbid, 0);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetCloseDatabase&amp;quot;);&lt;/p&gt;
&lt;p&gt;	errcode = JetDetachDatabase(sesid, &amp;quot;D:\\ntdsbackup\\ntds.dit&amp;quot;);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetDetachDatabase&amp;quot;);&lt;/p&gt;
&lt;p&gt;	errcode = JetTerm(instance);&lt;/p&gt;
&lt;p&gt;	PrintErrorMsg(errcode, &amp;quot;JetTerm&amp;quot;);&lt;/p&gt;
&lt;p&gt;	return 0;&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;void PrintErrorMsg(JET_ERR retcode, char *name)&lt;/p&gt;
&lt;p&gt;{ &amp;nbsp; if(retcode ==0) return;&lt;/p&gt;
&lt;p&gt;	for(int n = 0; n &amp;lt; sizeof(map) / sizeof(errmap_t); n++) {&lt;/p&gt;
&lt;p&gt;		if(map[n].errcode == 0) break;&lt;/p&gt;
&lt;p&gt;		if(retcode == map[n].errcode) {printf(&amp;quot;%s : %d ----- %s\n&amp;quot;, name, retcode, map[n].msg.c_str()); break;}&lt;/p&gt;
&lt;p&gt;	}&lt;/p&gt;
&lt;p&gt;	return;&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;I run above code, it still reports -1216 error.&lt;/p&gt;
&lt;p&gt;&amp;quot;An outstanding database attachment has been detected at the start or end of the recovery, but the database is missing or does not match attachment info.&amp;quot;&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9271004</link><pubDate>Sun, 04 Jan 2009 09:21:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9271004</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;The error is returned in calling JetInit.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9271073</link><pubDate>Sun, 04 Jan 2009 11:07:29 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9271073</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;There are a few files in directory D:\\ntdsbackup\\&lt;/p&gt;
&lt;p&gt;They are ntds.dit edb.chk edb.log edb00002.log.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9275355</link><pubDate>Mon, 05 Jan 2009 05:00:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9275355</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;Hi laurionb:&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;I had backuped all Active Directory files, including ntds.dit edb.chk edb.log edbxxxxx.log, temp.edb, res1.log res2.log to the directory &amp;quot;d:\ntdsbackup&amp;quot;. &amp;nbsp;Then I run above program. It still returns error -1216.&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;Would you please give me extra help?&lt;/p&gt;
&lt;p&gt;Thank you very much... &lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9277665</link><pubDate>Mon, 05 Jan 2009 10:00:03 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9277665</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;It seems that it fails because of failing of soft recovery in calling JetInit.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9284517</link><pubDate>Tue, 06 Jan 2009 06:25:23 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9284517</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;I Attached an Active Directory Database. But I didn't know that how many tables there are in it&lt;/p&gt;
&lt;p&gt;and the table's name, id of each.&lt;/p&gt;
&lt;p&gt;Question:&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;How did I get to the table's name, id for above case?&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9284521</link><pubDate>Tue, 06 Jan 2009 06:26:47 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9284521</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;It seems that there isn't revelant ESE API to traverse the table's id and name etc.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9284552</link><pubDate>Tue, 06 Jan 2009 06:53:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9284552</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;Are there ESE API to traverse all tables'name of Active Directory Database?&lt;/p&gt;
</description></item><item><title>ESE, Microsoft's Embeddable Database</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9289981</link><pubDate>Wed, 07 Jan 2009 23:24:31 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9289981</guid><dc:creator>LonTonG</dc:creator><description>&lt;p&gt;Mungkin ada benarnya juga kata pengantar di blog Windows SDK yang membahas tentang ESE , bahwa sedikit&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9290382</link><pubDate>Thu, 08 Jan 2009 00:26:32 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9290382</guid><dc:creator>KarinM</dc:creator><description>&lt;p&gt;LonTonG, I’m not very fluent in Bhasa. &amp;nbsp;Are you saying that a correction is needed in the preface of the ESE article? &amp;nbsp;&lt;/p&gt;
&lt;p&gt;--Karin&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9301790</link><pubDate>Fri, 09 Jan 2009 13:54:50 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9301790</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;It seemed that I found a workaround. &lt;/p&gt;
&lt;p&gt;The concrete way is that we can get all tables'name by microsoft tool esentutl.exe, then I can access each table with the table's name just gotten.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9307130</link><pubDate>Mon, 12 Jan 2009 10:15:25 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9307130</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;Why is there only few resource relevant to program with ESE API? &lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9313895</link><pubDate>Tue, 13 Jan 2009 12:09:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9313895</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;I wanted to present Active Directory Objects logically from an offline Active Director Database. &amp;nbsp;Currently, I can mount and open the offline Active Directory Database. But I didn't know any relation between their datas in the tables.&lt;/p&gt;
&lt;p&gt;Question:&lt;/p&gt;
&lt;p&gt;Can I present the Active Directory Objects with close logical relationship like the Active Directory Users and Computers console in Windows 2003 by ESE API?&lt;/p&gt;
&lt;p&gt;Any feedback will help. Thank you in advance.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9316018</link><pubDate>Tue, 13 Jan 2009 20:03:34 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9316018</guid><dc:creator>KarinM</dc:creator><description>&lt;p&gt;Flatfish, you will have better luck getting your questions answered on the MSDN Developer Forum for General Windows Development Issues &lt;a rel="nofollow" target="_new" href="http://social.msdn.microsoft.com/Forums/en-US/windowsgeneraldevelopmentissues/threads/"&gt;http://social.msdn.microsoft.com/Forums/en-US/windowsgeneraldevelopmentissues/threads/&lt;/a&gt;. &amp;nbsp;The SDK team is only a ship vehicle for this technology and can’t answer your questions. &amp;nbsp;Thousands of developers, including Microsoft MVP, technical support staff and Microsoft developers review and answer questions posted on the &amp;nbsp;Developer Forums.&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9317946</link><pubDate>Wed, 14 Jan 2009 07:03:47 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9317946</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;Thanks, KarinM. &amp;nbsp;I will try my luck in the Developer Forum.&lt;/p&gt;
&lt;p&gt;In Windows Server 2003, there isn't ESE API used to get column's name of a table. How do I get the column name of a table in Windows Server 2003 by ESE API, or any workaround?&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9322626</link><pubDate>Fri, 16 Jan 2009 03:58:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9322626</guid><dc:creator>flatfish</dc:creator><description>&lt;p&gt;Which is the schema table in Active Directory Database? What is the schema table's name? &lt;/p&gt;
&lt;p&gt;Any help?&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9322677</link><pubDate>Fri, 16 Jan 2009 04:04:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9322677</guid><dc:creator>KarinM</dc:creator><description>&lt;p&gt;Flatfish, please post your question on the MSDN Developer Forum for General Windows Development Issues &lt;a rel="nofollow" target="_new" href="http://social.msdn.microsoft.com/Forums/en-US/windowsgeneraldevelopmentissues/threads/"&gt;http://social.msdn.microsoft.com/Forums/en-US/windowsgeneraldevelopmentissues/threads/&lt;/a&gt;. This is not the forum to ask development-related questions. Thanks! &lt;/p&gt;
</description></item><item><title>Jet Blue is still alive or in the need of DBS</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9504658</link><pubDate>Tue, 24 Mar 2009 19:43:32 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9504658</guid><dc:creator>FrankFi's view of the world</dc:creator><description>&lt;p&gt;Hi… most US citizens see in the term Jet Blue the airline. Some others (like me) remember there was something&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9517316</link><pubDate>Sun, 29 Mar 2009 20:35:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9517316</guid><dc:creator>jlu2000</dc:creator><description>&lt;p&gt;Here is the scenario I like to do with ESENT:&lt;/p&gt;
&lt;p&gt;On a table, there is index on two colums: &amp;nbsp;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; PararnetId	byte[8] &amp;nbsp; nuallable&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; recId	 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;byte[8] unique&lt;/p&gt;
&lt;p&gt;index on these two columns: idxParentToId &lt;/p&gt;
&lt;p&gt;To query a list of records in a database which belongs to same parented, do you know how to achieve this :&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;JetSetCurrentIndex: idxParentToId&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;JetMakeKey &amp;nbsp;-&amp;gt; key – {parentId} to search ?&lt;/p&gt;
&lt;p&gt; &amp;nbsp;JetSeek&lt;/p&gt;
&lt;p&gt; &amp;nbsp;JetSetIndexRange&lt;/p&gt;
&lt;p&gt;Then using JetMove to read each record.&lt;/p&gt;
&lt;p&gt;However, I am not able to do any seek on JetSeek, it always failed JET_wrnSeekNotEqual. Could anyone give me a sample how should I do this?&lt;/p&gt;
</description></item><item><title>re: ESENT (Extensible Storage Engine) API in the Windows SDK</title><link>http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx#9517805</link><pubDate>Mon, 30 Mar 2009 05:53:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9517805</guid><dc:creator>jlu2000</dc:creator><description>&lt;p&gt;JetOpenTable return with error = JET_errCallbackNotResolved, A callback function could not be found. &lt;/p&gt;
&lt;p&gt;How could I register callback if I am not able to open table, since register would require table id?&lt;/p&gt;
</description></item></channel></rss>