0

这是我的代码:

**if** FWordApp = UnAssigned **then**
    FWordApp := CreateOleObject('Word.Application') ;
Result := FWordApp;

以上内容位于 GETter 中,用于 OleVariant 类型的属性。

第一次,它很好,将 TRUE 与 Unassigned 进行比较。但是,第二次情况并非如此,与 UnAssigned 进行比较会给我一个 Invalid Variant Operation 错误。

4

1 回答 1

4

正如错误消息告诉您的那样,您不能UnassignedOleVariant. 这是非法的比较。

您的测试应改为使用VarIsEmpty

if VarIsEmpty(FWordApp) then
  FWordApp := CreateOleObject('Word.Application');
于 2013-08-30T13:23:54.050 回答