Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   pdf aus TWebbrowser speichern - Dialog hinter dem Programm (https://www.delphipraxis.net/165682-pdf-aus-twebbrowser-speichern-dialog-hinter-dem-programm.html)

bra_parametrix 11. Jan 2012 10:54

pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Hallo zusammen,

wir verwenden TWebbrowser in unserem Programm um pdfs anzuzeigen.
Klickt nun der Benutzer auf "Kopie speichern unter" wird der "Speichern unter"-Dialog hinter der Anwendung.
Was kann ich tun, damit der Dialog vor der Anwendung erscheint?

Wir verwenden Delphi 2006. Der Acrobat Reader hat die Versionnummer X 10.1.1

Vielen Dank und Grüsse

Stefan

DeddyH 11. Jan 2012 10:58

AW: pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Ich nehme an, der Dialog ist modal? Dafür habe ich mir mal eine Unit geschrieben, da mir ein solches Verhalten auch auf den Keks ging. Bei Bedarf kann ich die mal raussuchen.

himitsu 11. Jan 2012 10:59

AW: pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Zitat:

Zitat von bra_parametrix (Beitrag 1145363)
Klickt nun der Benutzer auf "Kopie speichern unter" wird der "Speichern unter"-Dialog hinter der Anwendung.

Im Browser/Acrobat oder in eurem Programm?
Und ihr verwendet nicht irgendwo StayOnTop oder sowas?

Bernhard Geyer 11. Jan 2012 11:10

AW: pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Ist ein Bug vom Adobe Reader.
Tritt soweit wir es gesehen habe nur unter XP mit der 10.1er Version auf. Die 10.0er und ältere Versionen gehen. W2k und Win7 geht auch.

Kannst du das mit XP bestätigen oder hast du das Problem auch unter W2k/Win7?
kannst du es auch mal mit der brandneuen 10.1.2er Version probieren?

bra_parametrix 11. Jan 2012 11:38

AW: pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Liste der Anhänge anzeigen (Anzahl: 1)
Es passiert mit Windows Vista und 7. Andere Versionen konnte ich nicht testen.

Der Benutzer klickt in der Webbrowser-Komponente auf den Button von Adobe.

Da ein Bild mehr sagt als 1000 Worte, hänge ich einen Screenshot an. Ist das Programm im Vollbildmodus ist der "Speichern unter"-Dialog natürlich völlig unsichtbar.

Progman 11. Jan 2012 14:19

AW: pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Vielleicht hilft es, das Form auf den Desktop zu "kleben"?
Beispiel-Code:
Delphi-Quellcode:
type
  TfrmMain = class(TForm)
    ...
  private
    //
  public
    //
  protected
    procedure CreateParams(var Params: TCreateParams); override;
  end;


var
  frmMain: TfrmMain;

implementation

{$R *.dfm}

procedure TfrmMain.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  if Assigned(Application.MainForm) then begin
    Params.WndParent := GetDesktopWindow;
    Params.Style := WS_CHILD;
  end;
end;
Dann kann eigentlich nichts mehr dahinter sein ;-)

bra_parametrix 11. Jan 2012 15:44

AW: pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Danke Progman,

ich habe deinen Code ausprobiert. Leider funktioniert es immer noch nicht.

Als ich Test halber den Acrobat Reader 9 installiert habe, funktioniert es perfekt. Mir ist aufgefallen dass der Speichern-Dialog das Icon unserer Anwendung hatte. Mit aktuellen Acrobat Reader (10.1.2) hat der Dialog das normale Windows-Speichern-Icon.

Es scheint das Adobe da etwas grundlegendes geändert hat.

Bernhard Geyer 11. Jan 2012 16:42

AW: pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Hab gerade gesehen das die die aktuelle 10er Version immer noch den gleichen Fehler hat :-(

Lösung wäre ein Hooking der entsprechenden Win32-API-Funktion um dieser einen korrekten Fensterhandle zu geben

bra_parametrix 16. Jan 2012 08:12

AW: pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Mit dem Umstellen des folgenden Registry-Keys kann man das unerwünschte Verhalten des Acrobat Readers ändern:

[HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\10.0\Privileged]
"bProtectedMode"=dword:00000000

DeddyH 16. Jan 2012 08:18

AW: pdf aus TWebbrowser speichern - Dialog hinter dem Programm
 
Danke für den Tipp :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:17 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz