Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Chromium Neues Tab Problem (https://www.delphipraxis.net/178037-chromium-neues-tab-problem.html)

CreativeMD 12. Dez 2013 15:57

AW: Chromium Neues Tab Problem
 
Ja es gibt ja viele Notifications, ich könnte auch das öffnen verhindern, aber ich suche dabei noch einer Information ob es eigentlich ein neues Tab ist. Das brauche ich, weil es viele verschiedene Download Anbieter gibt und ich für jeden neuen es extra programmieren müsste :(.

Beispiel einer Notification (hat keine Bedeutung):
Delphi-Quellcode:
procedure TDownload.chrmDownloadBeforeResourceLoad(Sender: TObject;
  const browser: ICefBrowser; const frame: ICefFrame;
  const request: ICefRequest; out Result: Boolean);

mkinzler 12. Dez 2013 15:58

AW: Chromium Neues Tab Problem
 
https://groups.google.com/forum/#!to...ed/xzshOr-pjnU

CreativeMD 12. Dez 2013 16:05

AW: Chromium Neues Tab Problem
 
Zitat:

Zitat von mkinzler (Beitrag 1239609)

Ja, das ist ein ähnliches Problem. Anscheinend wurde früher dieser Funktion onBeforePopUp auch bei neuen Tabs geöffnet. Früher Leider, jetzt nicht mehr habs getestet.

Edit:
hab dort schon selber angeschrieben
https://code.google.com/p/dcef3/issu...&ts=1386858034

CreativeMD 13. Dez 2013 17:40

AW: Chromium Neues Tab Problem
 
Ok, also niemand hat eine Idee wie man das einstellen kann?

Perlsau 13. Dez 2013 18:16

AW: Chromium Neues Tab Problem
 
Die Lösung wurde dir bereits genannt: Die Komponente stellt lediglich die Render-Engine zur Verfügung, also nur die Anzeige, jedoch nicht, wie du offenbar erwartest, die komplette Browser-Funktionalität. Wenn du eine zweite Anzeige möchtest, platzierst du deine Chrome-Komponente auf einem TabSheet (das ist die Seite eines PageControls) und erzeugst bei Bedarf ein neues Tabsheet, in welchem du dann eine neue Instanz deiner Chrome-Komponente erzeugst. Verwalten mußt du die erzeugten Objekte natürlich selbst. Wenn du dagegen lieber einen kompletten Browser willst, dann verwende den Originalbrowser via ShellExecute. Es gibt meines Wissens nach keine Browser-Komponenten für Delphi, die die gesamte Funktionalität eines Browsers zur Verfügung stellen – zumindest kenne ich keine. Vielleicht gibt's ja eine kommerzielle Komponente, die diese Features bietet, da müßtest du dann etwas im Netz recherchieren.

CreativeMD 13. Dez 2013 19:24

AW: Chromium Neues Tab Problem
 
Zitat:

Zitat von Perlsau (Beitrag 1239699)
Die Lösung wurde dir bereits genannt: Die Komponente stellt lediglich die Render-...

Wie schon vorhin gesagt, ich brauche keinen neuen Tab, sondern ich will einfach nur verhindern das er nicht die Webseite, wo er ein neues Tab öffnen sollte, in das aktuelle Tab lädt. Von mir aus muss er die Seite (Neue Tab)überhaupt gar nicht laden oder wahlweise ein neues Browser Fenster öffnet (Das gibt es). Ich finde aber keine Einstellung dafür oder ein Möglichkeit das zu verhindern.

Perlsau 13. Dez 2013 20:51

AW: Chromium Neues Tab Problem
 
Zitat:

Zitat von CreativeMD (Beitrag 1239706)
Zitat:

Zitat von Perlsau (Beitrag 1239699)
Die Lösung wurde dir bereits genannt: Die Komponente stellt lediglich die Render-...

Wie schon vorhin gesagt, ich brauche keinen neuen Tab, sondern ich will einfach nur verhindern das er nicht die Webseite, wo er ein neues Tab öffnen sollte, in das aktuelle Tab lädt. Von mir aus muss er die Seite (Neue Tab)überhaupt gar nicht laden oder wahlweise ein neues Browser Fenster öffnet (Das gibt es). Ich finde aber keine Einstellung dafür oder ein Möglichkeit das zu verhindern.

Was soll ein Browser denn sonst machen, wenn hinter einem Link, auf den der Anwender klickt, eine HTML-Seite steht? Und wohin soll die Chrome-Render-Machine sonst laden, wenn nicht in die bereits existierende Instanz? Wenn du diese Seite nicht laden willst, dann klicke halt nicht auf diesen Link.

Aber eigentlich willst du ja was ganz anderes, nicht wahr? Du willst einen Download-Link auf einer Seite, die weder geladen noch angezeigt wird, aktivieren und die damit verknüpfte (dahinterstehende) Datei auf deinen Rechner laden. Habe ich das soweit richtig interpretiert? Du kommst aber an den Downloadlink gar nicht heran, wenn du die Seite nicht lädst. Das bedeutet, entweder lädst du die Seite mit der Chrome-Komponente oder eben mit einer anderen HTTP-Komponente, z.B. TIdHTTP aus den Indy-Package. Damit kannst du dann auch einen Download realisieren, ohne die Chrome-Komponente zu verwenden. Wenn du den Download-Link gar im Voraus kennst, benötigst du nicht mal einen Embedded Browser dazu.

Sollte ich falsch geraten haben – ich hatte noch nie eine Glaskugel –, wäre es hilfreich, genau zu beschreiben, was du tatsächlich willst. Bisher war nämlich der Eindruck entstanden, du willst einfach wie gewohnt im Browser ein neues Tab erstellen und dort eine Seite hineinladen. Wenn man nicht genau weiß, was ein Fragesteller will, ist es allermeist verdammt schwer bis schier unmöglich, ihm wirklich zu helfen, ob mit oder ohne Glaskugel :stupid:

CreativeMD 13. Dez 2013 22:56

AW: Chromium Neues Tab Problem
 
Das hab ich schon beschrieben, hast du wahrscheinlich übersehen:

Ich habe einen Minecraft Launcher programmiert mit dem man Mods installieren kann. Da ich aber die Lizenzen der Mods nicht besitzte sollen sie von einem internen Webbrowser heruntergeladen werden. Indem ich den Leuten einen Adfly link öffne sie auf Skip Ad und anschließend auf Download klicken. Soweit so gut, doch vor kurzem hat Mediafire hinzugefügt das beim klick auf download ein neuer Tab mit Werbung mit öffnet.
Dadurch das der Browser das neue Tab in das alte Tab reinlädt wird die Datei nicht heruntergeladen, deshalb versuche ich das zu verhindern. Jetzt war meine Frage wie kann ich verhindern das der Browser automatisch den neuen Tab in den Alten lädt? Ich benötige keine Tabs dafür lediglich diese Funktion.

Es geht einfach darum das die Modersteller Geld für Downloads von diesem Launcher bekommen und das geht nur auf diesem Wege, deshalb läuft das alles über den Browser. Die Webseiten sind von Mod zu Mod anders, aber die häufigste Kombination von Werbe- und Downloadseite ist Adfly und Mediafire. Aber wie schon gesagt öffnet Mediafire einfach ein neues Tab, wenn man auf Download klickt. Der Browser öffnet den Downloadlink, doch im selben Moment wird die Webseite (Werbung) vom neuen Tab geladen. So wird der Download abgebrochen oder genauer gesagt fängt er noch nichteinmal an.

Ich hoffe ich konnte dir das erklären.

Perlsau 13. Dez 2013 23:38

AW: Chromium Neues Tab Problem
 
Deine Erklärung hatte ich bereits zuvor gelesen und konnte auch damals nichts damit anfangen. Weder weiß ich was ein Minecraftlauncher, noch was ein Mod ist, noch weiß ich, weshalb die Leute sich nicht das Zeug, was immer da auch sein soll, so runterladen, wie's der Anbieter oder Betreiber vorgesehen hat. Ich hab auch keine Ahnung, was Adfly und SkipAd sind oder was Mediafire ist. Offenbar willst du die Aktivierung der geschalteten Werbung irgendwie umgehen. Wieso eigentlich? Ob das legal ist, solltest du mit demjenigen abklären, der an der Werbung verdienen möchte, denn offenbar schützt sich der Werbetreibende davor, daß seine Werbung umgangen wird. Das ist sein gutes Recht, und wenn du eine Software anbietest, die ihm seine Werbeeinnahmen wegnimmt, könnte er dich u.U. schadenersatzpflichtig machen.

Zum gefühlt hundertsten Mal: Es gibt keine solche Funktion in den gängigen kostenlosen Browser-Komponenten für Delphi, wie du sie ständig zu suchen scheinst, denn diese Komponenten stellen lediglich die Render-Machine bereit. Jede weitere Funktionalität mußt du selber programmieren. Was verstehst du daran nicht?

Alternative Lösungsmöglichkeiten habe u.a. ich dir bereits geliefert. Du benötigst nicht wirklich einen Browser, sondern eine Liste mit Downloadlinks, um diese Mods runterzuladen. Hab ich dir aber oben schon erzählt. Versuche das umzusetzen, indem du die Website als String oder Stream lädst, die entsprechenden Links heraussuchst und in eine Liste einträgst. Wenn du damit Schwierigkeiten hast, kannst du ja wieder eine Frage im Forum stellen.

Jetzt bin ich erstmal mit meinem Latein am Ende. Soll's jemand anders versuchen ...

Und vergiß nicht, den Betreiber der Seite erst mal um Erlaubnis zu bitten, denn sonst kommt irgendwann die böse Überraschung in Form einer Schadenersatzklage, und das kann mal richtig teuer werden.

CreativeMD 14. Dez 2013 00:05

AW: Chromium Neues Tab Problem
 
Es tut mir leid, mir war nicht klar das du diese Begriffe nicht kennst (hab nicht damit gerechnet).
Das ist das Programm, ich musste es auf diesem Weg machen damit es nicht illegal ist: http://www.minecraftforum.net/topic/2131020-
Vielen Dank für dein Engagement. Ich bin froh das es immer wieder hilfsbereite Menschen gibt auch wenn es diesmal nicht geklappt hat wurde mir hier schon oft geholfen :-D:-D:-D:-D:-D:-D:-D:-D.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:46 Uhr.
Seite 2 von 2     12   

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