Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];

Вниз

а так можно? почему-то ошибка 216 выскакивает   Найти похожие ветки 

 
zetta   (2002-07-25 12:44) [0]


procedure BGProc;
var ll:word;
begin
readstr; //читает строчку из файла в s, вызывает w.ProcessMessages;
if eoff then
begin
exit;
end;
if s[1] = "%" then
begin
if not tr then
begin
if findL("%AI5_TargetResolution:") then
begin
s := tr_n;
wrstr1;
tr := true;
end
else
wrstr1; //пишет строчку в файл из s, вызывает w.ProcessMessages;
end
else
wrstr1;
end
else
begin
ll := length(s);
if ll > 3 then
begin
if (s[ll] = "r") and (s[ll - 1] = "A") then
begin
s := ar_n;
wrstr1;
end
else
wrstr1
end
else
wrstr1;
end;

if totread > breaking then
begin
while totread >= breaking do
begin
breaking := breaking + breakst;
pix := pix + pixst;
end;
end;
end;



procedure onclosewin(sender:pobj;var accept:boolean);
begin
eoff:=(msgbox("Terminate program?",MB_YESNO)=ID_YES);
accept:=eoff;
end;

begin //основная программа
Applet := NewApplet( " " );
Applet.Visible := False;
W := NewForm( Applet, "zetta window" ).SetSize( 240, 99 );

W.CanResize := False;w.hascaption:=true;
w.style:=WS_OVERLAPPED or WS_CAPTION or WS_SYSMENU or WS_THICKFRAME or WS_MINIMIZEBOX;
W.CenterOnParent; w.OnClose:=TOnEventAccept( MakeMethod( nil, @onclosewin ) );
if Applet = nil then
Applet := W;
a := max;
b1 := 0;

rsp := 0;
wsn1 := 1;
wsp1 := 1;
rsn := 0;dialog1:=newopensavedialog("","",[OSFileMustExist,OSHideReadonly]);
dialog1.Title:="Open source file";
dialog1.opendialog:=true;
dialog1.filter:="Illustrator files (*.ai;*.eps;*.ps)|*.ai;*.eps;*.ps|All files|*.*";
if not dialog1.execute then exit;
s:=dialog1.filename;
n:=length(s);l:=n;m:=0;
while (n>0) and (m=0) do begin if s[n]="." then m:=n;n:=n-1; end;
outname:=s;if m<>0 then setlength(outname,m-1);
outname:=outname+" 2400dpi";
if m<>0 then
for n:=m to l do outname:=outname+s[n];
dialog1.Title:="Save result as";
dialog1.opendialog:=false;dialog1.filter:="All files|*.*";dialog1.options:=[OSHideReadonly,OSOverwritePrompt,OSNoReadonlyReturn];
dialog1.filename:=outname;
if not dialog1.execute then exit;
outname:=dialog1.filename;
assignfile(f1,s);
reset(f1,1);
if inoutres<>0 then err("Can""t open file "+s);

i:=0;
str(dpin, tr_n);
ar_n := " Ar";
strcat(ar_n, tr_n, ar_n);
strcat(tr_n, "%AI5_TargetResolution: ", tr_n);
eoff := false;
fsz:=filesize(s);
totread := 0;
checkfile;

filemode:=1;
assignfile(f2,outname);
rewrite(f2,1);
if inoutres<>0 then err("Can""t create file "+outname);

total1 := 0;
a := 0;
pix := 0;
if fsz > bars then
begin
pixst := 1;
breakst := fsz div bars;
end
else
begin
breakst := 1;
pixst := fsz div bars;
end;
breaking := breakst - 1;


Applet.Visible := False;
W.Show;
while not eoff do bgproc;
if b1 <> 0 then begin c:=b1;
BlockwRite(f2,wrbuf1,b1,b1);end;
Close(f2);
Close(f1);
end.


как вообще правильно?


 
HekTo   (2002-07-25 13:48) [1]

> procedure onclosewin(sender:pobj;var accept:boolean);
procedure onclosewin( dummy: pointer; sender:pobj;var accept:boolean);

Это как минимум. А вообще трудно понять что и как в таком листинге...


 
zetta   (2002-07-25 14:07) [2]

за dummy: pointer; спасибо.
но еще помимо 216 вылетает 255 ошибка.
readstr и wrstr1 работают с буфером.
запрашивается имя входного, выходного файла, настраивается окошко, открываются файлы, запускается цикл и закрываются файлы.


 
HekTo   (2002-07-26 01:38) [3]

Прогони эту программу при помощи F7/F8 и посмотри где конкретно вылетает ошибка - так будет проще понять что не так...



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

Форум: "KOL";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.009 c
3-383
iKS
2003-04-14 16:22
2003.05.01
Разрыв соединения


3-461
Shrek
2003-04-04 11:37
2003.05.01
Исключение полей!


1-583
-= Demon =-
2003-04-18 14:34
2003.05.01
Сообщение закрывается формой


1-569
ctapik
2003-04-17 19:01
2003.05.01
Ка это побороть?


1-521
Misory
2003-04-20 16:35
2003.05.01
Разница в днях между двумя датами?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский