Вниз
Скачать: CL | DM;

Вывод HTML файла на принтер   Найти похожие ветки 

← →
ksu ©   (2002-10-09 13:28) [0]

для отображения файла HTML на форме использую Active X компонент TDHTMLED,который был импортирован стандартным образом. Загружаю через метод LoadURL файл, печатаю на принтере методом PrintDocument - все выполняется нормально. При выходе из программы или при методе Destroy или Free компоненты TDHTMLED выдается сообщение об ошибке " Access violation in module DHTMLED.OCX ...". Помогите в чем проблема - может его надо проинициализовать как-то, а потом освободить. Может кто подскажет другой способ печати через компоненту WEBBrowser - не могу найти как через эту компоненту послать на печать файл HTML.


← →
Владимир Васильев ©   (2002-10-09 14:07) [1]

procedure TOutForm.DoCopy;
var
A,B : OleVariant;
//Doc : IHTMLDocument2;
rng : IHTMLTxtRange;
Sel : IHTMLSelectionObject;

//TxtList : TStringList;
//SelTxt : WideString;
//Prn : System.Text;
//i : integer;

IECommand : IOleCommandTarget;

MaxBuff : integer;
begin
MaxBuff:=10240;

//Doc := WebBrowser1.Document as IHTMLDocument2;
if Doc=(nil) then
begin
//ShowMessage("Doc Not Loaded");
Exit;
end;

Sel:=Doc.selection as IHTMLSelectionObject;
rng:=Sel.createRange as IHTMLTxtRange;

if Length(rng.text)>MaxBuff then
begin
rng.collapse(true);
//rng.expand("Sentence");
//rng.moveEnd("Sentence",2);
//rng.moveEnd("word",2);
rng.moveEnd("character",MaxBuff);
rng.select;
end;

IECommand := Doc as IoleCommandTarget;
IECommand.Exec(nil, OLECMDID_COPY,OLECMDEXECOPT_PROMPTUSER, A, B);

Exit;

//Print

SelTxt:=rng.text;
if SelTxt="" then
begin
PrintAllDoc:=false;
ShowLocalHelpForm;
end
else
begin
OleCheck(Doc.QueryInterface(IOleCommandTarget,OleCommandTarget));
OleCommandTarget.Exec(nil,OLECMDID_PRINT,OLECMDEXECOPT_PROMPTUSER,A,A);
OleCommandTarget:=nil;
Exit;
end;

Application.ProcessMessages;

if PrintAllDoc then
begin
OleCheck(Doc.QueryInterface(IOleCommandTarget,OleCommandTarget));
OleCommandTarget.Exec(nil,OLECMDID_PRINT,OLECMDEXECOPT_PROMPTUSER,A,A);
OleCommandTarget:=nil;
end;

end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
8-56228
~E~R~R~O~R~
2002-06-15 13:38
2002.10.17
sndPlaySound


1-56145
Max2
2002-10-07 08:59
2002.10.17
Альтернатива TTimer


14-56308
dimon79
2002-09-18 11:53
2002.10.17
компиляция проекта


3-55963
cypher
2002-09-11 22:07
2002.10.17
ODBC & BDE


6-56255
XPatriot
2002-08-16 20:12
2002.10.17
Работа с почтовым сервером




   Наверх