Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi PopupBlocker programmieren (https://www.delphipraxis.net/59435-popupblocker-programmieren.html)

Chrissi91 22. Dez 2005 10:31


PopupBlocker programmieren
 
Hallo :hi:,

ich hoffe, das ist hier in der richtigen Spalte :lol:.

Nach welchem Schema funktionieren PopupBlocker? Schon klar, wenn sich ein neues Fenster öffnet wird dieses gleich wieder geschlossen bzw. gar nicht erst geöffnet.

Aber wie gehe ich da ran? Ich habe zwar einen alten Thread aus dem Jahre 2003 von MrKnogge gefunden, jedoch gab es keine richtige Antwort, außer, er solle es mit Api anstellen.

Wie gehe ich jetzt da ran? Er soll ja nicht gleich perfekt sein, sondern ich möchte mich langsam ranarbeiten und keine endslangen Codes sammeln :mrgreen:

Danke schon im Vorraus :nerd:

Daniel B 22. Dez 2005 10:36

Re: PopupBlocker programmieren
 
Die meisten kannst Du abblocken indem Du alle Fenster verhinderst, die eine bestimmte Grösse haben. Meintwegen hast Du ne 1024x768er Auflösung, wenn Du eine neue Instanz vom IE öffnest, dann kommt die je nach Einstellung sagen wir mal 800x600, dann kannst Du alle öffnenden Fenster schliessen die Kleiner 600x400. Nur mal so grob... vllt kennt noch einer den alten WebWasher von Siemens, der hat genau das gemacht... ja, Siemens hat auch mal Software geschrieben. ;)

Chrissi91 22. Dez 2005 10:40

Re: PopupBlocker programmieren
 
Also,

danke für deine schnelle Antwort. Ich habe eine 1024 x 768er Auflösung. Wie kann ich denn prüfen, ob offene Fenster mit einer bestimmten Größe zur Zeit existieren und wie kann ich diese dann schließen?
Ich habe noch nicht sehr viel gemacht, wobei ich mit meinem Programm auf andere Programme zugegriffen habe :lol:.

Daniel B 22. Dez 2005 10:45

Re: PopupBlocker programmieren
 
Such mal hier im Forum und schau erstmal wie man andere Instanzen findet, dann kannst Du später schauen wie gross die sind.
Aktuellere Blocker arbeiten sicherlich auch mit der Url die da angefordert wird.

Der_Unwissende 22. Dez 2005 11:43

Re: PopupBlocker programmieren
 
Hi,
ich denke mal, dass aktuelle Popup-Blocker sich einfach als Plugin installieren. Für diese Plugins gibt es dann natürlich eine API, so kann jedes Plugin auf festgelegte Ereignisse reagieren (z.B. ein neues Fenster wird geöffnet). Jetzt musst du halt nur noch wissen ob es ein Gewünschtes ist oder nicht (und ggf. den Schließen-Befehl senden).
Wenn es die API zulässt, kannst du natürlich immer schauen, ob es einen Mausklick gab oder nicht, der zum öffnen führte.

Ein anderer Ansatz wäre es dich wie ein Firewall zwischen Netzwerkadapter und Browser zu hängen, dort den empfangenen Datenstrom auszulesen und z.B. JavaScript-Code einfach zu filtern (also den der automatische Popups erzeugt). Hast du natürlich dann Probleme wenn der Datenstrom verschlüsselt ist.

Gruß Der Unwissende

CG2003 22. Dez 2005 22:26

Re: PopupBlocker programmieren
 
Man kann es aber auch so machen, indem man den Fenstertitel nach "bestimmten" Wörtern "durchsucht".
Sobald ein Fenster ein "schmutziges" Wort :shock: enthält, wird es geschlossen.

Schau' Dir mal das Projekt "ProgWatch 2000" auf Delphi-Source.de an:
Delphi-Source.de - ProgWatch 2000


Hoffe, DIr damit geholfen zu haben.

Chrissi91 23. Dez 2005 10:23

Re: PopupBlocker programmieren
 
Zitat:

Zitat von Daniel B
Such mal hier im Forum und schau erstmal wie man andere Instanzen findet, dann kannst Du später schauen wie gross die sind.
Aktuellere Blocker arbeiten sicherlich auch mit der Url die da angefordert wird.

Ich glaube, ich stell mich zu blöd an beim Suchen :lol:

Wonach soll ich denn Suchen? Mir fallen keine Begriffe daür ein. :xmas:

Zitat:

Zitat von CG2003
Man kann es aber auch so machen, indem man den Fenstertitel nach "bestimmten" Wörtern "durchsucht".
Sobald ein Fenster ein "schmutziges" Wort :shock: enthält, wird es geschlossen.

Schau' Dir mal das Projekt "ProgWatch 2000" auf Delphi-Source.de an:
Delphi-Source.de - ProgWatch 2000


Hoffe, DIr damit geholfen zu haben.

Danke! Ich muss mich aber erstmal in die Programmoberfläche einarbeiten, wie das genau funktioniert :lol:

Da habe ich über Weihnachten schön viel zu tun! :mrgreen:

Chrissi91 23. Dez 2005 11:44

Re: PopupBlocker programmieren
 
Ups. Ich glaube, ich habe eben ein wenig Mist programmiert:

23.12.05 12:11:19 -> Object Inspector
23.12.05 12:11:19 -> Delphi 7 - progwatch2000 [Running]
23.12.05 12:11:20 -> Object TreeView
23.12.05 12:11:20 -> Project Manager
23.12.05 12:11:20 -> Delphi 7
23.12.05 12:11:20 -> DDE Server Window
23.12.05 12:11:20 -> Acrobat IEHelper
23.12.05 12:11:20 -> WIN95 RPC Wmsg Window
23.12.05 12:11:20 -> SYSTEM AGENT COM WINDOW
23.12.05 12:11:20 -> WIN95 RPC Wmsg Window
23.12.05 12:11:20 -> Hardware sicher entfernen
23.12.05 12:11:20 -> ATI Tray Icon Application
23.12.05 12:11:20 -> DDE Server Window
23.12.05 12:11:20 -> Multimedia Input Service
23.12.05 12:11:20 -> ATI video bios poller
23.12.05 12:11:20 -> DDE Server Window
23.12.05 12:11:20 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:11:21 -> PRISM Profiles Server Module
23.12.05 12:11:21 -> Program Manager
23.12.05 12:11:23 -> Delphi 7 - progwatch2000 [Running]
23.12.05 12:11:23 -> Object Inspector
23.12.05 12:11:23 -> Object TreeView
23.12.05 12:11:23 -> Project Manager
23.12.05 12:11:24 -> Delphi 7
23.12.05 12:11:24 -> DDE Server Window
23.12.05 12:11:25 -> WIN95 RPC Wmsg Window
23.12.05 12:11:25 -> SYSTEM AGENT COM WINDOW
23.12.05 12:11:26 -> WIN95 RPC Wmsg Window
23.12.05 12:11:26 -> Hardware sicher entfernen
23.12.05 12:11:27 -> ATI Tray Icon Application
23.12.05 12:11:27 -> DDE Server Window
23.12.05 12:11:28 -> Multimedia Input Service
23.12.05 12:11:28 -> ATI video bios poller
23.12.05 12:11:29 -> DDE Server Window
23.12.05 12:11:29 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:11:29 -> Program Manager
23.12.05 12:11:30 -> DDE Server Window
23.12.05 12:11:30 -> WIN95 RPC Wmsg Window
23.12.05 12:11:31 -> WIN95 RPC Wmsg Window
23.12.05 12:11:31 -> DDE Server Window
23.12.05 12:11:32 -> Delphi 7 - progwatch2000 [Running]
23.12.05 12:11:32 -> Object Inspector
23.12.05 12:11:33 -> Object TreeView
23.12.05 12:11:33 -> Project Manager
23.12.05 12:11:33 -> Delphi 7
23.12.05 12:11:34 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:11:34 -> Program Manager
23.12.05 12:11:35 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:11:35 -> DDE Server Window
23.12.05 12:11:36 -> WIN95 RPC Wmsg Window
23.12.05 12:11:37 -> WIN95 RPC Wmsg Window
23.12.05 12:11:37 -> Project Manager
23.12.05 12:11:37 -> Object TreeView
23.12.05 12:11:38 -> Object Inspector
23.12.05 12:11:38 -> Delphi 7 - progwatch2000 [Running]
23.12.05 12:11:39 -> Delphi 7
23.12.05 12:11:39 -> Program Manager
23.12.05 12:11:40 -> WIN95 RPC Wmsg Window
23.12.05 12:11:41 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:11:41 -> DDE Server Window
23.12.05 12:11:41 -> WIN95 RPC Wmsg Window
23.12.05 12:11:42 -> Delphi 7 - progwatch2000 [Running]
23.12.05 12:11:42 -> Object Inspector
23.12.05 12:11:43 -> Project Manager
23.12.05 12:11:43 -> Object TreeView
23.12.05 12:11:43 -> Delphi 7
23.12.05 12:11:44 -> Program Manager
23.12.05 12:11:44 -> Delphi 7 - progwatch2000 [Running]
23.12.05 12:11:45 -> Object Inspector
23.12.05 12:11:45 -> Project Manager
23.12.05 12:11:46 -> Object TreeView
23.12.05 12:11:46 -> Delphi 7
23.12.05 12:11:46 -> WIN95 RPC Wmsg Window
23.12.05 12:11:47 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:11:47 -> WIN95 RPC Wmsg Window
23.12.05 12:11:47 -> WIN95 RPC Wmsg Window
23.12.05 12:11:48 -> Delphi 7 - progwatch2000 [Running]
23.12.05 12:11:48 -> Object Inspector
23.12.05 12:11:49 -> Project Manager
23.12.05 12:11:49 -> Object TreeView
23.12.05 12:11:50 -> Delphi 7
23.12.05 12:11:50 -> WIN95 RPC Wmsg Window
23.12.05 12:11:51 -> DDE Server Window
23.12.05 12:11:52 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:11:52 -> Program Manager
23.12.05 12:11:53 -> DDE Server Window
23.12.05 12:11:54 -> Program Manager
23.12.05 12:21:38 -> DDE Server Window
23.12.05 12:21:44 -> Gigaset WLAN Adapter Monitor
23.12.05 12:21:44 -> DDE Server Window
23.12.05 12:21:44 -> Hardware sicher entfernen
23.12.05 12:21:44 -> WIN95 RPC Wmsg Window
23.12.05 12:21:44 -> ATI Tray Icon Application
23.12.05 12:21:44 -> DDE Server Window
23.12.05 12:21:44 -> Multimedia Input Service
23.12.05 12:21:44 -> SYSTEM AGENT COM WINDOW
23.12.05 12:21:44 -> ATI video bios poller
23.12.05 12:21:44 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:21:44 -> Program Manager
23.12.05 12:21:45 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:21:45 -> DDE Server Window
23.12.05 12:21:47 -> Lite SignOnWrapper Window
23.12.05 12:21:47 -> WIN95 RPC Wmsg Window
23.12.05 12:21:47 -> PRISM Profiles Server Module
23.12.05 12:21:47 -> ActiveSkin Helper Window
23.12.05 12:21:47 -> Gigaset WLAN Adapter Monitor
23.12.05 12:21:48 -> WIN95 RPC Wmsg Window
23.12.05 12:21:48 -> DDE Server Window
23.12.05 12:21:49 -> Program Manager
23.12.05 12:21:49 -> WIN95 RPC Wmsg Window
23.12.05 12:21:50 -> Lite Session Window
23.12.05 12:21:50 -> Xprt Message Window
23.12.05 12:21:50 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:21:50 -> Lite SignOnWrapper Window
23.12.05 12:21:50 -> WIN95 RPC Wmsg Window
23.12.05 12:21:51 -> PRISM Profiles Server Module
23.12.05 12:21:51 -> ActiveSkin Helper Window
23.12.05 12:21:51 -> Gigaset WLAN Adapter Monitor
23.12.05 12:21:52 -> Program Manager
23.12.05 12:21:52 -> WIN95 RPC Wmsg Window
23.12.05 12:21:53 -> WIN95 RPC Wmsg Window
23.12.05 12:21:53 -> ICQ Lite
23.12.05 12:21:53 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:21:53 -> Gigaset WLAN Adapter Monitor
23.12.05 12:21:54 -> Program Manager
23.12.05 12:21:54 -> Gigaset WLAN Adapter Monitor
23.12.05 12:21:55 -> ICQ Lite
23.12.05 12:21:56 -> WIN95 RPC Wmsg Window
23.12.05 12:21:56 -> WIN95 RPC Wmsg Window
23.12.05 12:21:57 -> AntiVir PersonalEdition Classic - Guard
23.12.05 12:21:57 -> Program Manager

Das schließt er bei mir jetzt immer :lol:

Mit welchem Befehl kann ich denn die Namen der Fenster abfragen? Ich blicke durch den Code nämlich nicht durch ^^

Chrissi91 27. Dez 2005 20:21

Re: PopupBlocker programmieren
 
Da ich den Beispielcode nicht verstehe, möchte ich fragen ^^, nach welchen Suchbegriffen ich suchen soll, um etwas geeignetes hierzu zu finden:

- Namen von laufenden Programmen einlesen

Danke. Stelle mich ein wenig blöd an ^^

CG2003 27. Dez 2005 20:35

Re: PopupBlocker programmieren
 
Hallo,

diese beiden Funktionen innerhalb des Quellcodes von diesem "Progwatch 2000" sollten für Dich interessant sein:

Delphi-Quellcode:
function FindAWindow(caption: string; ClassName: string): THandle;
Delphi-Quellcode:
function EnumWindowsProc(hWindow: hWnd; lParam: LongInt): boolean; stdcall;
Hoffe, Dir damit geholfen zu haben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:23 Uhr.
Seite 1 von 2  1 2      

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