Всем привет!!!
С наступившим 2017 годом!
Желаю всем добра, успехов и благополучия во всем!
Устал от выходных. Сегодня уже решил поработать.
Вот столкнулся с такой проблемкой.
Когда я открываю базу чертежа через функцию Database.ReadDwgFile(...)
то чтение свойства (Entity as DbText).GeometricExtents выдает исключение eInvalidExtents.
У меня такое подозрение, что свойство GeometricExtents 
связано с контекстом графического устройства (hDC),
а т.к. база просто читается, а сам dwg-файл не загружается 
в графическую среду AutoCAD, то и свойство не может быть возвращено.
метод открытия базы
    Public Function OPEN_DATABASE(dwgFileName As String) As Database
        Dim db As Database = Nothing
        Dim acadHost As New DwgHost
        Try
            db = New Database
        Catch ex As Exception
            Return Nothing
        End Try
        HostApplicationServices.WorkingDatabase = db
        Try
            db.ReadDwgFile(dwgFileName, IO.FileShare.ReadWrite, False, Nothing)
            Return db
        Catch ex As System.Exception
            MsgBox("Не могу прочесть данные из файла " & dwgFileName & vbCr & ex.Message)
            db.Dispose()
            Return Nothing
        End Try
    End Function
 
    Public Class DwgHost
        Inherits HostApplicationServices
        Public Sub New()
            RuntimeSystem.Initialize(Me, 1033)
        End Sub
        Protected Overrides Sub Finalize()
            RuntimeSystem.Terminate()
            MyBase.Finalize()
        End Sub
        Public Overrides Function FindFile(fileName As String, _
                                           database As CAD_DBS.Database, _
                                           hint As CAD_DBS.FindFileHint) As String
            Return ""
        End Function
    End Class
метод чтения таблицы примитивов:
        static void acadnet_load_Texts(Database db) {
            if (db != null)  {
                using (Transaction tr = db.TransactionManager.StartTransaction())  {
                    BlockTable bt = (BlockTable)tr.GetObject(db.BlockTableId, OpenMode.ForRead);
                    BlockTableRecord ms = (BlockTableRecord)tr.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite);
                    BlockTableRecordEnumerator enu = ms.GetEnumerator();
                    enu.Reset();
                    while (enu.MoveNext()) {
                        DBObject obj = tr.GetObject(enu.Current, OpenMode.ForWrite);
                        if (obj is DBText) {
                            Extents3d Ext3d = (obj as DBText).GeometricExtents; // В этой строке исключение eInvalidExtents
                        }
                    }
                    tr.Commit();
                }
            }
        }
Тестовая команда
<CommandMethod("TXT_LOAD")> _
        Public Sub COMM_DWG_LOAD()
            Dim db As Database = OPEN_DATABASE("C:\File.dwg")
            If db IsNot Nothing Then
                acadnet_load_Texts(db)
           End If
        End Sub