Habe es jetzt mal so gemacht..
Delphi-Quellcode:
if IsUrl
then
begin
if DYDYoutubeFilter <>
nil then
begin
hr := CoCreateInstance(CLSID_3DYDYoutubeSource,
nil, CLSCTX_INPROC_SERVER, IID_IBaseFilter, Source);
if SUCCEEDED(hr)
then
begin
Source.QueryInterface(IID_ISupportedSites, SupportedSites);
// Version := SupportedSites.GetVersion;
hr := SupportedSites.Test(PWideChar(MediaFile), false,
url);
if SUCCEEDED(hr)
then
begin
if (hr = S_OK)
then
begin
x := SupportedSites.GetCount;
if x <> 0
then
begin
for IntI := 0
to x - 1
do
Test := SupportedSites.GetName(IntI);
end;
end;
end;
end;
end;
end;
Aber sehe keinerlei unterschiede zwischen
hr := SupportedSites
hr ist ja 0 also S_OK
eine nochmalige Abfrage von
if (hr = S_OK) then
ist für mich unverständlich den ich weis doch das hr = 0 ist.
Mit der erneuten abfrage ist das ergebnis gleich
URL ist LEER obwohl ich nochmals gegenprüfe und hr = 0 ist siehe Pic.
Hmmm... unverständlich
gruss