OLE-Einschränkungen für Datenströme
Entwickler von Installationsdatenbanken müssen sich über zwei Einschränkungen beim Umgang mit Datenströmen durch die Win32 OLE-Strukturierte Speicherimplementierung bewusst sein. Diese Einschränkungen können sich indirekt auf Installationsfunktionen auswirken, indem Transformationen und andere Daten, die in der Datenbank als Datenstrom gespeichert werden können.
Es gibt zwei relevante Einschränkungen:
- Binäre Daten werden mit einem Indexnamen gespeichert, der durch Verketten des Tabellennamens und der Werte der Primärschlüssel des Datensatzes mithilfe eines Punkttrennzeichens erstellt wird. OLE beschränkt Datenstromnamen auf 32 Zeichen (31 + NULL-Terminator). Windows Installer verwendet einen Komprimierungsalgorithmus, der je nach Zeichen den Grenzwert auf 62 Zeichen erweitern kann. Beachten Sie, dass Doppelbytezeichen als 2 zählen.
- Obwohl mehrere Datenströme gleichzeitig geöffnet sein können, können Sie einen Datenstrom nicht ein zweites Mal öffnen, bis der erste Verweis geschlossen ist. Dies bedeutet, dass Sie nicht denselben binären Datenstrom auswählen können, der gleichzeitig in mehreren Datensätzen geöffnet werden soll. Versuche, die Binärdaten aus dem zweiten Datensatz zu lesen, schlagen fehl. Außerdem können Sie die Primärschlüssel eines Datensatzes nicht umbenennen, während ein binärer Datenstrom in diesem Datensatz geöffnet ist.