winspool: implement EnumFormsA/W for form level 1, add a few builtinforms

Marcel Partap mpartap at gmx.net
Tue Dec 11 08:04:19 CST 2007


> I guess this info should be fetched from the printer, not hard coded.
No no there are indeed builtin forms:
(from http://www.unixwiz.net/techtips/winspooler-forms.html)
FORM_INFO_1.Flags
 Each form can be one of three types: FORM_BUILTIN, FORM_PRINTER and FORM_USER. Builtin forms are an
inherent part of the print system (TODO: which part?), and they cannot be deleted or changed with
the Forms API.
Printer" forms are stored in the registry, as are "User" forms. The Microsoft documentation suggests
that the "Printer" forms are associated with individual printers, but we've not found any indication
that they are anything other than system wide and available to all printers. We have not found how
"user" forms are implemented.
 The database of user and print forms (but not builtin forms) is found in the registry:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Forms\"

first I wanted to put them into the registry somewhere beneath the wine tree but decided against..
There are lots more builtin forms on windows of course (try winspool crosstest)..
regards marcel




More information about the wine-devel mailing list