Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Zuweisung von Variablen verschiedenen Typs (https://www.delphipraxis.net/159160-zuweisung-von-variablen-verschiedenen-typs.html)

windmaster 16. Mär 2011 15:07

Zuweisung von Variablen verschiedenen Typs
 
Hallo,

ich muss ein Prüfgerät mittels DCOM automatisieren. Grundsätzlich funktioniert es schon gut.

Leider hat der Prüfanlagenhersteller an einer Stelle eine Methode (Order) für zwei Typen(IOrder und IBatch) zusammengefasst:

aus Handbuch:

HRESULT Order([out, retval] IOrder **ppOrder):
Get pointer to Order object
Order object manages interfaces IOrder and IBatch

In einem Beispiel in Visual Basic funktioniert es so:

Private Sub btnCreateBatch_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles btnCreateBatch.Click

Dim m_IOrder As QvDefinition.IOrder
Dim m_IBatch As QvDefinition.IBatch

m_IOrder = m_QvAutomation.Order //Get pointer to Order object
m_IBatch = m_IOrder
...


In Delphi erhalte ich beim Übersetzen den Fehler "Inkompatible Typen: 'IOrder' und 'IBatch'":

Delphi-Quellcode:
procedure TForm1.BtnCreateBatchClick(Sender: TObject);
var m_IOrder : iorder;
    m_IBatch : IBatch;
begin
  m_IOrder := m_QvAutomation.Order;      //Get pointer to Order object
  m_IBatch := m_Iorder;                  //[Fehler] TestU.pas(244): Inkompatible Typen: 'IOrder' und 'IBatch'    
  {...}                               
end;
Wie kann ich in Delphi die Variable unterschiedlichen Typs zuweisen wie im Basicprogramm?

Viele Grüße
windmaster

mkinzler 16. Mär 2011 15:14

AW: Zuweisung von Variablen verschiedenen Typs
 
Verwende einen übergeordneten Typ oder einen Variant

Btw. Delphi ist halt streng typisiert

Uwe Raabe 16. Mär 2011 16:12

AW: Zuweisung von Variablen verschiedenen Typs
 
Delphi-Quellcode:
m_IBatch := m_IOrder as IBatch;
sollte auch compilieren. Ob es dann auch funktioniert musst du ausprobieren.

windmaster 17. Mär 2011 08:50

AW: Zuweisung von Variablen verschiedenen Typs
 
hat so funktioniert... (Ich war wohl krank als der Operator as dran war)

Besten Dank für die schnelle und gute Antwort.

Viele Grüße
windmaster


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:15 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