Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#13

AW: C++ Delphi Übersetzung 3DYDYoutube Filter

  Alt 5. Okt 2018, 01:13
WideString bzw PChar sollte ein BSTR darstellen falls das hilft.
Soweit bin ich auch schon das es Widestring ist.. (Wenn schon dann PWideChar aber auch schon versucht kommt nix bei rum)
Es scheint aber ein Pointer zu sein
Code:
BSTR*
Nun in dem Fall wäre es PWideString und das hab ich schon versucht es liefert keinen verwendbaren string zurück.

Hier ist irgend etwas noch unverständlich für mich also die Übersetzung.
Code:
CComPtr<IBaseFilter> source;
 if (FAILED(hr = source.CoCreateInstance(__uuidof(IYoutubeSource)))) {
     return VLC_EGENERIC;
 }
 CComQIPtr<ISupportedSites> ss = source;
 if (!ss) {
     return VLC_EGENERIC;
 }
 CComBSTR url;
 if (S_OK != (hr = ss->Test(original_url.c_str(), FALSE, &url))) {
     return VLC_EGENERIC;
 }
bin mir nicht sicher ob das richtig ist!
Delphi-Quellcode:
  
var
  URL: PWideString;
  Source: IBaseFilter; //oder IFileSourceFilter
//...
if DYDYoutubeFilter <> nil then
   begin
     hr := CoCreateInstance(CLSID_DYDYoutube, nil, CLSCTX_INPROC_SERVER, IID_IBaseFilter, Source);
     if SUCCEEDED(hr) then
       SupportedSites := ISupportedSites(Source);
       hr := SupportedSites.Test(PWideChar(MediaFile), false, url);
       if SUCCEEDED(hr) then
       begin

       end;
   end;
Source basierend auf IBaseFilter oder auf IFileSourceFilter.
Zitat:
ISupportedSites IID is {FF762ACC-13EC-463A-A29C-FD4B0CD3E019} (see SDK). You must query it from the filter instance. Example (C++):
Nun das SDK ist ja mein Problem blicke da nicht wirklich durch.

gruss

Geändert von EWeiss ( 5. Okt 2018 um 01:21 Uhr)
  Mit Zitat antworten Zitat