internal bool AddInfoKeywordsToTable(DataTable table, DataColumn keyword)
 {
     using (IDBInfoWrapper wrapper = this.IDBInfo())
     {
         string str;
         System.Data.Common.UnsafeNativeMethods.IDBInfo info = wrapper.Value;
         if (info == null)
         {
             return(false);
         }
         Bid.Trace("<oledb.IDBInfo.GetKeywords|API|OLEDB> %d#\n", base.ObjectID);
         OleDbHResult keywords = info.GetKeywords(out str);
         Bid.Trace("<oledb.IDBInfo.GetKeywords|API|OLEDB|RET> %08X{HRESULT}\n", keywords);
         if (keywords < OleDbHResult.S_OK)
         {
             this.ProcessResults(keywords);
         }
         if (str != null)
         {
             string[] strArray = str.Split(new char[] { ',' });
             for (int i = 0; i < strArray.Length; i++)
             {
                 DataRow row = table.NewRow();
                 row[keyword] = strArray[i];
                 table.Rows.Add(row);
                 row.AcceptChanges();
             }
         }
         return(true);
     }
 }