Неуказанная ошибка при вызове Word CentimetersToPoints через OLE

Следующий код завершается с ошибкой OLE 800040005 «не указано» наCentimetersToPoint вызов при выполнении в Delphi (XE), аналогичная версия VBS или VBA проходит

var w : OleVariant;

w := CreateOleObject('Word.Application');
w.Visible := true;
Writeln(w.CentimetersToPoints(2.0));

FWIW библиотека типов дает

/ [id(0x00000173), helpcontext(0x09700173)]
// single CentimetersToPoints([in] single Centimeters);

По умолчанию Delphi передает только плавающие значения как Double, поэтому я попытался вызватьIDispatch.Invoke непосредственно и передавая аргумент какVT_R4, но без лучших результатов.

редактировать: версия VB, которая работает (сохранить в .vbs)

set w = CreateObject("Word.Application")
w.Visible = true
msgbox w.CentimetersToPoints(2.0)

Любые другие предложения о том, что может пойти не так?

Ответы на вопрос(1)

Ваш ответ на вопрос