home *** CD-ROM | disk | FTP | other *** search
- Though the printer setup dialog box associated with each Windows 3.0
- printer driver is normally accessed through the Windows Control
- Panel, it is often convenient to allow users to modify printer
- settings directly from Visual Basic applications and Turbo Pascal for
- Windows For this reason, PSETUP.DLL was created.
-
- Files included with PSETUP.DLL:
-
- README.TXT - This documentation file.
-
- PRSEL.MAK - Visual Basic makefile for the sample application.
- PRSEL.BAS - Global variables, types & declarations for sample app.
- PRSEL.FRM - Visual Basic form for printer select dialog box.
- FORM1.FRM - Visual Basic form calling printer select dialog box.
-
- PSETUP.PAS TPW Source code for PSETUP.DLL
- PSETUP.DLL - DLL providing print setup interface.
-
- PSETUP.DLL contains one function (CallPSetup()), called by a Visual
- Basic application, that calls the ExtDeviceMode() function located in
- all Windows 3.0 printer drivers. The CallPSetup() DLL function
- brings up a dialog box displaying printer settings specific to each
- printer, and allows the user to modify those settings, saving them to
- an .INI file.
-
- The function declaration for CallPSetup() will appear as: (NOTE: the
- following declaration is broken into several lines for readability.
- In the actual Visual Basic application, it should be on a single
- line.)
-
- Declare Function CallPSetup Lib "PSETUP.DLL" (ByVal hWnd%,
- ByVal Driv$,
- ByVal Dev$,
- ByVal Port$,
- ByVal INI$) As Integer
-
- Where:
-
- hWnd% is the calling form's window handle. ie: Form1.hWnd.
-
- Driv$ should be a variable-length string containing the print driver
- filename ie: "HPPCL.DRV" Note: this can be obtained from the WIN.INI
- file via the API calls GetProfileString() or
- GetPrivateProfileString() and, since this is a filename, the .DRV
- extension must be added to the end of the name.
-
- Dev$ should be a variable-length string containing the device name of
- the printer ie: "PCL / HP LaserJet" (Also available from the WIN.INI
- file.)
-
- Port$ should be a variable-length string containing the actual
- printer port name for print driver to send output to ie: "LPT1:"
- (Available from the WIN.INI file.)
-
- INI$ should be a variable-length string set to the name of the .INI
- file to be modified by CallPSetup(). (Should normally be set to
- "WIN.INI". If though, your application has it's own .INI file
- associated with it, INI$ should be set to the name of your custom
- .INI file.
-
- RETURNS: An integer value indicating the success of the CallPSetup()
- function. If the OK button was pressed to exit the setup dialog box,
- a value IDOK (1) will be returned. If the CANCEL button was pressed,
- a value IDCANCEL (2) will be returned. If the dialog failed to open,
- a value less than zero will be returned.
-
- Using the sample application:
-
- To use the sample application provided (PRSEL),Copy the files
- to a directory on your hard disk and copy PSETUP.DLL to
- your WINDOWS directory. Then, start up Visual Basic and open the
- project PRSEL.MAK. From here, run the application (press F5). To
- access the printer selection dialog, select Printer Setup... from the
- application's file menu. This will display a dialog box containing a
- list of available printer drivers (as found in the WIN.INI file) with
- the current default printer highlighted. At this point, there are
- four options:
-
- * Select a printer via the listbox.
-
- * Choose the Setup button to bring up the print setup dialog box for
- the currently selected printer driver.
-
- * Choose the Cancel button to abort any new printer selections and
- return to the calling form. Note: any changes made from the print
- setup dialog specific to each printer will be saved regardless of
- whether Cancel or OK are pressed.
-
- * Choose the OK button to save the new default printer to the WIN.INI
- file.
-
-
- References:
-
- PSETUP.DLL is written in Turbo Pascal for Windows, and the source code is
- provided in PSETUP.PAS. Advanced programmers can optionally modify and
- rebuild PSETUP.DLL by using Turbo Pascal for Windows.
-
-