instinctfx 0 Newbie Poster

Hi

Im writing an application that uses the Microsoft Tablet PC api's

When im trying to set the FACTOID for an ink recogniser, im getting an OLE Error that i cant seem to find a plausable explanation for

The code is this

vPicture := (Components[i] as TInkPicture);
        case vPicture.Tag of
        40,41,42,43:
        begin
          FRecogniser.Factoid := 'DIGIT';
        end;
        else
          FRecogniser.Factoid := 'DEFAULT';
        end;

The code part that is failing is FRecogniser.Factoid := 'DEFAULT'; and FRecogniser.Factoid := 'DIGIT';

This calls a COM library that ive imported calling this

property Factoid: WideString read Get_Factoid write Set_Factoid;

in the type library

The code in the type library is this

procedure TInkRecognizerContext.Set_Factoid(const Factoid: WideString);
var
  InterfaceVariant: OleVariant;
begin
  InterfaceVariant := DefaultInterface;
  InterfaceVariant.Factoid := Factoid;
end;

Which the error is on this line, InterfaceVariant.Factoid := Factoid;

The ole Error is 80040237

Ive not been able to find an explanation that could suit the error, the only one i seem to find is

H_ERR_NOT_OPENED
Or
Operation failed due to a SQL integrity

Now none of these make sense esp the SQL integrity as there
s no database operations going on for this.

Any clues??


Brendan
Developer
IFX Software

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.