CHtmlView: Drucken Dialog unterbinden
-
Hi Leute,
ich habe eine Anwendung mit einem CHtmlView und möchte verbieten, dass der Standard Windows Drucker Dialog aufgerufen wird.
Drucken soll gar nicht möglich sein.Wie kann ich das machen ?
Habe bis jetzt eine bestimmte Seite ausprobiert (http://www.oberstaufen.de/lebensfreude/unterhaltung/, ganz unten der weiße Druckbutton), da wird es über Javascript window.print() realisiert.
Habe ein paar Dinge probiert: Funktionen OnFilePrint, OnPreparePrinting werden nicht aufgerufen, über ON_OLECMD / DISP_FUNCTION hatte ich auch kein Glück, sehe über Spy++ auch keine hilfreichen Messages.Mir fällt nur noch ein, dass ich regelmäßig (Timer/Thread) nach dem Fenster suchen kann und es dann schließe oder vielleicht sogar über einen Hook es überwache...
Der Dialog soll grundsätzlich nicht angezeigt werden.Kann mir jemand helfen ?
-
Ich bin mirnicht ganz sicher, aber über eine Angepasste ControlSite müste das gehen:
Schau Dir mal den Code an. Hier wird zum Beispiel das Popup Menu ausgeschaltet. Aber auch andere Seiten Properties lassen sich dadurch verändern.
http://support.microsoft.com/kb/236312/en-usSuch mal weiter nach OLECMDID_PRINT
-
Danke erst mal für deine Antwort Martin.
Interessant mit der eigenen ControlSite (Deaktivierung Kontextmenü könnt ich auch ganz gut gebrauchen), aber habe zum Thema Print dort nix weiter gefunden.
Auch den MSDN Artikel WebBrowser Customization http://msdn.microsoft.com/en-us/library/aa770041%28v=vs.85%29.aspx hab ich mir angeschaut, finde da ebenfalls nix konkretes...EDIT: Noch was vergessen: Teste es derzeit mit einem Hook (WH_CBT und HCBT_CREATEWND abfangen, falls Klasse = Dialog). Funktioniert so bis jetzt gut, ist vielleicht die Alternative dazu ??