AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi ActiveX und OLEVariant Pointer / Array Übergabe
Thema durchsuchen
Ansicht
Themen-Optionen

ActiveX und OLEVariant Pointer / Array Übergabe

Ein Thema von CaptainMemo · begonnen am 26. Jan 2006 · letzter Beitrag vom 31. Jan 2006
Antwort Antwort
CaptainMemo

Registriert seit: 25. Sep 2004
Ort: Emmerich
7 Beiträge
 
#1

ActiveX und OLEVariant Pointer / Array Übergabe

  Alt 26. Jan 2006, 12:36
Hallo Entwickler,

ich hänge seit geraumer Zeit an einem Problem mit einem ActiveX-Control das mir ein OLEVarinat zurückgibt, aber dahinter stehen 4096 Bytes.

In der .tlb sieht das ganze so aus:

function GetData(var RtnData: OleVariant; var RtnLen: OleVariant): Integer; dispid 26;


in C++ funktioniert das Lesen so:

void COcxDlg::OnBtnGetConfiguration()
{
// TODO: Add your control notification handler code here
VARIANT varData,vatLen;
char szBuf[5000];
int nLen;
memset(szBuf,0,5000);
m_RichEdit.vSetRamContext((unsigned char *)szBuf,4096);
long nRtn = m_Ocx.GetData(&varData,&vatLen);
if(nRtn == FALSE)
{
AfxMessageBox("Read Data Error");
return;
}
nLen = vatLen.lVal;
memcpy(szBuf,varData.pcVal,nLen);
m_RichEdit.vSetRamContext((unsigned char *)szBuf,4096);
}


ich habe es wie folgt versucht:
var
ReadData,BytesRead:Olevariant;
...
isDataRead:=myOcx.GetData(ReadData,BytesRead);
...

Der Wert in BytesRead stimmt, aber in ReadData steht immer nur 0, wenn ich mit einem POLEVariant Pointer arbeite und die Bytesread einlese, dann steht da nur Grütze.

Kann mir jemand auf die Sprünge helfen?

Vielen Dank....
  Mit Zitat antworten Zitat
Benutzerbild von retnyg
retnyg

Registriert seit: 11. Feb 2005
193 Beiträge
 
#2

Re: ActiveX und OLEVariant Pointer / Array Übergabe

  Alt 31. Jan 2006, 23:33
probiers mal mit einem array of char und/oder nem pointer dadrauf
//edit: ups, bezieht sich auf eine andere codezeile
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:26 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