AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

VCap.QueryInterface 64bit

Ein Thema von luki pescoller · begonnen am 13. Okt 2010 · letzter Beitrag vom 4. Nov 2010
 
luki pescoller

Registriert seit: 8. Dez 2009
6 Beiträge
 
Delphi XE7 Professional
 
#1

VCap.QueryInterface 64bit

  Alt 13. Okt 2010, 13:44
Hallo Experten,

ich habe eine funktionierende Anwendung die die Komponente VideoCapture_d6.dprj von Egor Averchenkov nutzt, um von einer Kamera über DirectShow Bilder zu übernehmen. Ich habe diese Komponente um eine Funktion erweitert, die ein zusätzliches Interface des Treibers finden kann, über welches Parameter der Kamera gesteuert werden.

Delphi-Quellcode:
function TVideoCapture.InitMFilter(aGUID: TGUID): boolean;
var
  hr: HRESULT;
begin
  Result := false;
  MFilter := nil; // definiert als Variable von TVideoCapture vom Typ IBaseFilter
  try
    hr := VCap.QueryInterface(aGuid,MFilter);
    Result := succeeded(hr);
  finally
  end;
end;
Das funktioniert unter Windows2000, WindowsXP, Windows Vista und Windows 7 mit 32bit ohne Probleme. Ich kriege den Pointer auf das Interface in MFilter und kann diesen dann auch außerhalb der Komponente ansprechen:

Delphi-Quellcode:
...
  IVideoInterface = interface (IUnknown)
    ['{926ddb19-3c8e-476c-9068-eb4555a99231}'] // GUID
    function SetShutterSpeed(const lShutter : eShutterSpeedCMOS):HRESULT; safecall;
  end;

...
   AGUID := StringToGUID('{926ddb19-3c8e-476c-9068-eb4555a99231}');
   if (gCap.InitMFilter(AGUID)) then begin // gCap vom Typ TVideoCapture
      VideoInterface := gCap.MCOMFilter as IVideoInterface; // definiert
      VideoInterface.SetShutterSpeed(v);
...
auf 64bit Systemen erhalte ich immer die Fehlermeldung (hr) NOINTERFACE

Der Treiber für die Kamere existiert als 32bit und als 64bit Version. Die Bilder werden problemlos auch unter 64bit übertragen, nur das Interface kann ich nicht finden.

hat jemand eine Idee woran das liegen kann?

Danke für eure Hilfe
Gruss
Lukas

Geändert von mkinzler ( 3. Nov 2010 um 20:57 Uhr) Grund: Delphi-Tags eingefügt
  Mit Zitat antworten Zitat
 


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 13:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz