О XE2, единственно возможная новая функция должна быть 64-битной.
Но с точки зрения COM, может иметь значение реализация или вызов объекта COM в 32-битном или 64-битном режиме.битовый код.
Типы COM-объектов регистрируются через ключи реестра.Это то, что делает утилита regasm.exe (записывает в реестр).32-разрядные узлы реестра и явно отличаются от 64-разрядных узлов реестра.
Например, если ваш COM-объект скомпилирован как 32-разрядный, он должен быть зарегистрирован в 32-разрядном реестре или в 64-разрядном.битовый реестр (с помощью reagasm
вызовов)
Но если вы будете использовать 32-битное приложение Delphi, у вас не возникнет никаких дополнительных проблем, если вы укажете обертку COM, которая будет экспортироваться как 32-битная.Короче говоря, XE2 ведет себя точно так же, как и любая предыдущая версия Delphi, при создании 32-разрядных процессов.
См. http://www.gfi.com/blog/32bit-object-64bit-environment для получения дополнительной информации.
Другое решение может состоять в запускеCOM-объект вне процесса : в этом случае разрядность не имеет значения, и у вас не должно возникать проблем с 32- или 64-разрядными.
Имейте в виду, что была очень досадная ошибка в XE2 : короче говоря, COM-доступ был прерван в некоторых случаях.Похоже, последнее «Обновление 2» решило проблему.
Конечно, если вы используете кроссплатформенные функции Delphi XE2, ваш COM-объект не будет доступен в Mac OSX.;)