473,840 Members | 1,455 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Extending Print Dialog

Hello,

Is it possible to modify the print dialog box that appears when a user
clicks File->Print?

Is it possible to make this modification so that all Windows programs
use the modified print dialog box?

What about just changing the print dialog box used by Internet
Explorer?

Is there an easy way to then easily port this to a Mac OS?

I have done some reading on extending the common dialog controls from
within a new program but I have not found anything about replacing a
common dialog box that all progams use. If this is doable then do you
have any thoughts on how hard this will be? Could this be something
that can be muddled through by someone with only a small amount of
Windows programming experience.

Thanks,
John
Nov 16 '05 #1
1 2543


John wrote:
Hello,

Is it possible to modify the print dialog box that appears when a user
clicks File->Print?

Is it possible to make this modification so that all Windows programs
use the modified print dialog box?

What about just changing the print dialog box used by Internet
Explorer?

Is there an easy way to then easily port this to a Mac OS?

I have done some reading on extending the common dialog controls from
within a new program but I have not found anything about replacing a
common dialog box that all progams use. If this is doable then do you
have any thoughts on how hard this will be? Could this be something
that can be muddled through by someone with only a small amount of
Windows programming experience.


Probably not. getting a single program to use a modified version of a
common dialog is fairly simple; just inject a DLL into its address space
that pirates the import table and points to a version that extends the
dialog. It gets a little harder when you figure you have to go through
all DLL's the program has loaded (or will in the future load) and patch
their import tables as well. And then you have to retroactively go back
and do this for all programs that were already running when you kick off
the process... and you have to have some method of monitoring program
starts to get the process to happen as new programs start. On the NT
platforms we are talking drivers and /or services to fulfill all these
needs, which makes it non-trivial.

I'm open to suggestions if there is an easier way to do this...

David
Nov 16 '05 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
2509
by: William Gill | last post by:
I have created a widget that extends Frame() and contains labels, checkboxes, and entrys. I am trying to use tkSimpleDialog.Dialog to create a modal display of this widget, but am running into some (addressing) problems. My widget displays in the parent widget, not the tkSimpleDialog.Dialog? I hope this snippet is enough to help, as my actual code is really too hard to follow. class showtestWidget(tkSimpleDialog.Dialog): def...
0
3291
by: KohlerTommy | last post by:
In my application I need to give the user the ability to print duplex if the selected printer supports duplex printing. Many of the printer options do not make much sense in my application, and many of the settings in the common printer dialog would have a negative impact on my printing process. To handle this strict printing constraint on which my application imposes I do not want to show the common print dialog. I want to be able to...
2
3828
by: Stuart | last post by:
I'm looking to implement a Standard File Open Dialog, and put a little File Preview segment onto the dialog. Unfortunately it's not as straightforward as just inheriting a regular file open dialog and adding the bits I need. Does anyone know of any easy way to achieve what I'm looking for? Or will it be a case of me having to write a whole new dialog from scratch? Many thanks Stuart
1
5725
by: hamil | last post by:
I am trying to print a graphic file (tif) and also use the PrintPreview control, the PageSetup control, and the Print dialog control. The code attached is a concatination of two examples taken out of a Microsoft book, "Visual Basic,Net Step by Step" in Chapter 18. All but the bottom two subroutines will open a text file, and then allow me to use the above controls, example 1. The bottom two subroutines will print a graphic file, example...
3
3768
by: John Peterson | last post by:
Hello all! I'm at my wits end trying to search for what I assumed to be a relatively straightforward task. I have a Web application written in C#, and I have a button on the form that I want to print the current contents of the browser without bringing up the print dialog. At first I thought it was a simple matter to have the button's "onclick" attribute set to "window.print();". However, that always brings up the print dialog box. ...
5
3836
by: vbgunz | last post by:
Hello everyone. I own two books. Learning Python and Python in a nutshell. When cross referencing the two books to try and clarify the ideas behind extending methods and delegates, this is where confusion veered it's ugly head :( Learning Python explains on page 324: Class Interface Techniques (21.3.3 in the ebook) the following is an extender method. ''' #################################### '''
2
22134
by: Brad Pears | last post by:
I have some sample code that uses the print dialog, print preview and a print direct options. If I select print preview and then click the printer icon from that, the document prints. If I select the print directly option, it also prints right away to the defauilt printer. However, if I use the printer dialog control to print and I click 'OK' to actually print the document - nothing happens. The job does not even go into the print...
2
6999
by: WP | last post by:
Hello, I making and Windows Forms program and I have a dialog with two buttons. I have set the DialogResult property for these buttons to DialogResult.OK and DialogResult.No, respectively (however, these buttons are not labelled "OK" and "No"). Settting this property is very convenient, I don't need to write any code determining what should happen when one of these buttons is clicked. Anyway, now I need to add a third button and I guess I...
0
2123
by: Tim Spens | last post by:
--- On Fri, 6/27/08, Tim Spens <t_spens@yahoo.comwrote: I think I know where the problem is but I'm unsure how to fix it. When I call Register_Handler(...) from python via callback.setHandler1(callback1) this only seems to affect pythons ability to trigger an "event" in c. PyObject *Handler is always NULL even after I call Register_Handler(...). I thought there was some magic here that was assigning the pointer *Handler to my python...
0
9856
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, weíll explore What is ONU, What Is Router, ONU & Routerís main usage, and What is the difference between ONU and Router. Letís take a closer look ! Part I. Meaning of...
0
9698
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10598
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10657
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
7022
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5872
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4495
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
4071
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
3136
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.