Поделиться через


Ограничения OLE для потоков

Разработчикам баз данных установки необходимо учитывать два ограничения на обработку потоков с помощью реализации структурированного хранилища OLE Win32. Эти ограничения могут влиять на функции установщика косвенно путем преобразований и других данных, которые могут храниться в базе данных в виде потока.

Существует два важных ограничения:

  • Двоичные данные хранятся с именем индекса, созданным путем объединения имени таблицы и значений первичных ключей записи с помощью разделителя периодов. OLE ограничивает имена потоков до 32 символов (31 + конца null). Установщик Windows использует алгоритм сжатия, который может расширить ограничение до 62 символов в зависимости от символа. Обратите внимание, что двойные байтовые символы считаются 2.
  • Хотя в один раз можно открыть несколько потоков, невозможно открыть поток во второй раз, пока первая ссылка не будет закрыта. Это означает, что вы не можете выбрать один двоичный поток данных, который можно открыть одновременно в нескольких записях. Попытка считывать двоичные данные из второй записи завершается ошибкой. Кроме того, нельзя переименовать первичные ключи записи во время открытия двоичного потока данных в этой записи.