Когда вы используете систему Visual FoxPro, как Клиент Раннего Связывания (Early Binding Client) и хотите получить ссылку на данные типа Variant в объекте COM, вы должны сначала создать переменную-приемник с соответствующим типом данных, как показано в следующем Примере:

  CopyCode imageКопировать Код
DEFINE CLASS varianttest AS SESSION OLEPUBLIC
FUNCTION varret(outVal AS VARIANT@, inVal AS VARIANT) AS VOID
OutVal = inVal
ENDFUNC
ENDDEFINE

После компоновки данного класса в соответствующий модуль DLL, с именем myServer, вы можете использовать данную ссылку для получения конкретных данных, как демонстрируется далее, в программном Коде:

  CopyCode imageКопировать Код
x = CREATEOBJECT("myServer.varianttest","","")
ov = ""
tt.varret(@ov, "string") && Sets string value.
ov = 0
tt.varret(@ov, 123) && Sets ov to an integer value.
ov = 0.0
tt.varret(@ov, 44.44) && Sets ov to a real numeric value.
ov = l
tt.varret(@ov, f) && Sets ov to a Boolean value.

См. также