Вот так можно печатать в Delphi7
Код:
var
eQuery: OLECMDF;
vaIn, vaOut: OleVariant;
procedure TForm1.FormCreate(Sender: TObject);
begin
WebBrowser1.Navigate('D:\AAA\IMHO.ws\misc.php.html');
vaIn:=null;vaOut:=null;
eQuery := Webbrowser1.QueryStatusWB(OLECMDID_PROPERTIES);
if (eQuery and OLECMDF_ENABLED) = OLECMDF_ENABLED then
Webbrowser1.ExecWB( OLECMDID_PROPERTIES, OLECMDEXECOPT_PROMPTUSER, vaIn, vaOut);
procedure TForm1.Button2Click(Sender: TObject);
begin
// напечатает без диалогов
WebBrowser1.ControlInterface.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER, vaIn, vaOut);
// установка параметров страницы
WebBrowser1.ControlInterface.ExecWB(OLECMDID_PAGESETUP, OLECMDEXECOPT_PROMPTUSER,vaIn, vaOut);
// PREVIEW
WebBrowser1.ControlInterface.ExecWB(OLECMDID_PRINTPREVIEW, OLECMDEXECOPT_DONTPROMPTUSER, vaIn, vaOut);
Описание на .ExecWB скудное ,я так и не разобрался.
Попытайтесь разобраться сами.
Приведенная программа мне 12 листов напечатала ( собака

), без всяких диалогов.