Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Olevariant Typ explizit zuweisen (https://www.delphipraxis.net/207652-olevariant-typ-explizit-zuweisen.html)

Rainer Wolff 19. Apr 2021 11:32

Delphi-Version: 10.4 Sydney

Olevariant Typ explizit zuweisen
 
Hallo,

ich bin heute an einer Variant-Zuweisung hängen geblieben, habe auch eine Lösung gefunden, wollte aber wissen, ob es auch richtiger geht.

Wenn ich folgendes mache:
Code:
procedure TForm15.FormCreate(Sender: TObject);
var
  v: variant;
  o: olevariant;
  dw: LongWord;
begin
  dw:=5;
  v:=dw;
  o:=dw;
  caption:=vartype(v).ToString+' o:'+vartype(o).ToString;
end;
dann erhalte ich als vartype von v die 19 (=varUInt32), für o jedoch die 3 (=varInteger), obwohl nachdem, was ich gegoogelt habe, auch die OleVariant UInt32 kennt.

Gelöst habe ich das, indem ich nach der Zuweisung direkt den gewünschten Typ in die Variantenstruktur schmiere:

TVarData(ItemValue).VType:=varUInt32;

Das hilft bei meinem Problem, aber ob es auch der Weisheit letzter Schluss ist, weiss ich nicht.

Stevie 19. Apr 2021 16:29

AW: Olevariant Typ explizit zuweisen
 
Is wohl ette hier: https://quality.embarcadero.com/browse/RSP-18363


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz