Computerhilfen.de Logo
Forum
Tipps
News
Frage stellen

[C++] Instanzen einer DLL mit "eigenen" globalen Variablen

Hallo zusammen,

ich habe ein kleines Problem mit einer DLL und irgendwie habe ich das Gefühl das die Lösung gar nicht soo schwer ist, aber ich komm einfach nicht drauf. Folgendes:

Ich habe einen Filter für DirectShow geschrieben, dieser wird als DLL gespeichert und nun kann nun von DShow eine Instanz gebildet werden, die verschiedene Sachen machen kann. Für die Auswahl welche Sache sie machen soll habe ich zZ eine globale Variable im Filter benutzt.
Das heisst allerdings auch, dass wenn ich zB 2 Instanzen des Filters benutze und bei einer die Variable ändere, die zweite diese Änderung "übernimmt".

Wie kann ich eine Variable deklarieren, die in der Instanz "voll sichtbar" ist, aber eben nur in einer Instanz genutzt wird?

Merci Spawn


Antworten zu [C++] Instanzen einer DLL mit "eigenen" globalen Variablen:

class bla : public CTransformFilter // oder CBaseFilter oder ...
{
public:
   DECLARE_IUNKNOWN;
   STDMETHODIMP   NonDelegatingQueryInterface( REFIID riid, void** ppv );

   static CUnknown* WINAPI CreateInstance(LPUNKNOWN punk, HRESULT *phr);
public:
   ~CMediaSampleTransform();

   HRESULT      Transform(IMediaSample *pIn, IMediaSample *pOut);
   HRESULT      CheckInputType(const CMediaType *mtIn);
   HRESULT      CheckTransform(const CMediaType *mtIn,const CMediaType *mtOut);
   HRESULT      GetMediaType(int iPosition, CMediaType *pMediaType);
   HRESULT      DecideBufferSize(IMemAllocator *pAlloc, ALLOCATOR_PROPERTIES *pProperties);

private:
   // hier deine eigenen Instanz-Variablen
   int frame_counter;
   int ticks;
};

google keyword :
[bold]c++ klassen member[/bold]

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Öhm, okay. Das klingt ja fast zu einfach... Gleich mal ausprobieren.
Vielen Dank


« klassen in VBA anlegenDelphi Gods requied ;-) »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
DLL Datei
Die Abkürzung DLL steht für Dynamic Link Library. Dies ist eine Windows-Datei mit Programmroutinen, auf die mehrere verschiedene Programme zurückgreifen k&...

Quellcode
Ein Quellcode, auch als Quelltext bekannt, bezeichnet den unkompilierten Programm-Code einer Software. Quell- oder Programm-Code ist der auch für Menschen lesbare Co...

Unicode
Unicode ist ein international anerkannter Standard, der als universeller Zeichencode ("Universal Code") dient und durch das Unicode-Konsortium entwickelt und verwaltet wi...