Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Undefinierter Bezeichner: 'VarToStr' (https://www.delphipraxis.net/10353-undefinierter-bezeichner-vartostr.html)

ChrisH90 16. Okt 2003 17:51


Undefinierter Bezeichner: 'VarToStr'
 
Hallo an alle,

bitte um euere Mithilfe. Kann die Source nicht mehr compilieren. Unter Delphi6 gings noch. Jetzt bei Delphi 7 gehts nicht mehr:

Delphi-Quellcode:
// wrapper for IOPCSyncIO.Read (single item only)
function ReadOPCGroupItemValue(GroupIf: IUnknown; ItemServerHandle: OPCHANDLE;
          var ItemValue: string; var ItemQuality: Word): HResult;
var
  SyncIOIf: IOPCSyncIO;
  Errors: PResultList;
  ItemValues: POPCITEMSTATEARRAY;
begin
  Result := E_FAIL;
  try
    SyncIOIf := GroupIf as IOPCSyncIO;
  except
    SyncIOIf := nil;
  end;
  if SyncIOIf <> nil then
  begin
    Result := SyncIOIf.Read(OPC_DS_CACHE, 1, @ItemServerHandle, ItemValues,
                            Errors);
    if Succeeded(Result) then
    begin
      Result := Errors[0];
      CoTaskMemFree(Errors);
      ItemValue := VarToStr(ItemValues[0].vDataValue);
      ItemQuality := ItemValues[0].wQuality;
      VariantClear(ItemValues[0].vDataValue);
      CoTaskMemFree(ItemValues);
    end;
  end;
end;
Es geht um die Zeile: ItemValue := VarToStr(ItemValues[0].vDataValue);

Dort wird mir die Fehlermeldung Undefinierter Bezeichner: 'VarToStr' ausgegeben. Mache ich das VarToStr weg funzt es, aber natürlich macht das mit der Software ärger.

[edit=Admin]BBCOdes aktiviert. Mfg, Daniel[/edit]

Alexander 16. Okt 2003 18:03

Re: Undefinierter Bezeichner: 'VarToStr'
 
Ist die Funktion vielleicht in eine andere Unit gerutscht? Kuck mal in die OH...

Dagon 16. Okt 2003 18:06

Re: Undefinierter Bezeichner: 'VarToStr'
 
Die Funktion befindet sich in der Unit Variants.

Duffy 16. Okt 2003 18:10

Re: Undefinierter Bezeichner: 'VarToStr'
 
Hallo ChrisH90,
das sagt die Hilfe unter D7
Zitat:

Zitat von Delphi Hilfe
Die Funktion konvertiert den Wert einer Variante in einen String.

Unit

Variants

Kategorie

Variantenunterstützung

Delphi-Syntax:

function VarToStr(const V: Variant): string;

C++ Syntax:

extern PACKAGE AnsiString __fastcall VarToStr(const Variant V);

Beschreibung

VarToStr konvertiert die Daten in der Variante V in einen String und gibt das Ergebnis zurück. Hat die Variante den Wert Null, gibt VarToStr einen leeren String zurück.

bye

ChrisH90 16. Okt 2003 19:43

Re: Undefinierter Bezeichner: 'VarToStr'
 
Danke für die schnellen Auskünfte, doch warum funktioniert das in D6 und nicht in D7 ? Was genau kann nun mein Problem sein? Kann das eine .dll sein die mir fehlt?

CalganX 16. Okt 2003 19:57

Re: Undefinierter Bezeichner: 'VarToStr'
 
Hi,
wenn du die Unit Variants einbindest, müsste es eigentlich funktionieren. Hast du es denn schon ausprobiert?

Chris

ChrisH90 16. Okt 2003 20:17

Re: Undefinierter Bezeichner: 'VarToStr'
 
Die Variants binde ich morgen ein, da ich im Moment nicht an meinem Firmenrechner sitze. Ich gebe euch morgen bescheid! Danke einstweilen!

Alexander 16. Okt 2003 20:21

Re: Undefinierter Bezeichner: 'VarToStr'
 
Ich glaube ich zitiere mich mal selbst :mrgreen:
Zitat:

Ist die Funktion vielleicht in eine andere Unit gerutscht?

CalganX 16. Okt 2003 20:31

Re: Undefinierter Bezeichner: 'VarToStr'
 
Hi Alex,
Zitat:

Zitat von Duffy
Zitat:

Zitat von Delphi Hilfe
Unit

Variants


:mrgreen:

Chris

PS: Das stammt aus der D7-Hilfe... ;)

ChrisH90 16. Okt 2003 20:34

Re: Undefinierter Bezeichner: 'VarToStr'
 
Jetzt wird mir auch klar was ihr alle gemeint habt. Sorry, bin halt noch Anfänger!


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:57 Uhr.
Seite 1 von 2  1 2      

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