Einzelnen Beitrag anzeigen

Kyro

Registriert seit: 16. Aug 2005
Ort: Wien
45 Beiträge
 
Delphi XE2 Professional
 
#8

Re: Problem bei eigenem "DownloadUI" im InternetEx

  Alt 9. Jan 2008, 23:02
Ist jetzt schon gute 2 Monate her dass ich dieses Thema angeschnitten habe bin aber bislang leider noch nicht weitergekommen......

Ich hab einige neues getestet.....

Mit folgendem Code funktioniert die einbindung nicht korrekt.....
Delphi-Quellcode:
function TIEDownloadManager.Download(pmk: IMoniker; pbc: IBindCtx;
  dwBindVerb: DWORD; grfBINDF: DWORD; pBindInfo: PBindInfo; pszHeaders,
  pszRedir: PWidechar; uiCP: UINT): HRESULT;
var
  Url: PWidechar;
begin
  pmk.GetDisplayName(pbc, nil, Url);
  Showmessage (URL);
  Result := E_NOTIMPL;
end;
lasse ich jedoch
  Showmessage (URL); weg.... funktioniert es....
okay was macht showmessage - es macht nichts anderes als dass es eine Form erstellt und es MODAL! aufruft.....
stellen wir das mit einer Form selbst nach......
Delphi-Quellcode:
function TIEDownloadManager.Download(pmk: IMoniker; pbc: IBindCtx;
  dwBindVerb: DWORD; grfBINDF: DWORD; pBindInfo: PBindInfo; pszHeaders,
  pszRedir: PWidechar; uiCP: UINT): HRESULT;
var
  Url: PWidechar;
begin
  EigeneForm := TCallBackForm.Create(nil);
  EigeneForm.ShowModal;
  EigeneForm.Free;
  Result := E_NOTIMPL;
end;
hiermit tritt das selbe problem auf.... rufe ich jedoch jetzt die form nicht modal auf sondern nur mit show - klappt das ganze....

Delphi-Quellcode:
function TIEDownloadManager.Download(pmk: IMoniker; pbc: IBindCtx;
  dwBindVerb: DWORD; grfBINDF: DWORD; pBindInfo: PBindInfo; pszHeaders,
  pszRedir: PWidechar; uiCP: UINT): HRESULT;
var
  Url: PWidechar;
begin
  EigeneForm := TCallBackForm.Create(nil);
  EigeneForm.Show;
  sleep(2000);
  EigeneForm.Free;
  Result := E_NOTIMPL;
end;
Demnach dürfte wohl irgendetwas in der Funktion ShowModal die ganze sache zum kippen bringen....
das blöde dabei ist dass auch das problem bei der verwendung von ShellExecute auftritt. Was ich eigentlich ursprünglich auch brauche

Hat jemand einen Tipp für mich?
  Mit Zitat antworten Zitat