![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Здравствуйте! Программа должна скачивать код интернет страницы (например:www.lm/n125412 от 000000 до 999999). Delphi владею плоховато, буду благодарен за помощь. вот, что получилось:
Код:
unit Unit12;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,ComCtrls,progressbar1, edit1, label1;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var LoadStream: TMemoryStream; i:integer; str:string;
begin
progressbar1.Max:=strtoint(edit1.Te xt);
progressbar1.Min:=strtoint(edit2.Te xt);
assignfile(f,'c:\st.txt');
rewrite(f);
closefile(f);
for i := strtoint(edit2.Text) to strtoint(edit1.Text) do
begin
rewrite(f);
closefile(f);
str:='http://www.lm/n'+inttostr(i);;
LoadStream := TMemoryStream.Create;
idHTTP1.Get(str, LoadStream);
LoadStream.SaveToFile('c:\st.txt');
LoadStream.Free;
form1.Refresh;
progressbar1.Position:=i;
label1.Caption:=inttostr(i)+'/'+edit1.Text;
progressbar1.Repaint;
end;
end;
end.Последний раз редактировалось rob777, 23.11.2011 в 23:19. |
|
#2
|
||||
|
||||
|
_ И?
|
|
#3
|
|||
|
|||
|
Программа не работает, где-то я допустил ошибку, не знаю где
|
|
#4
|
||||
|
||||
|
Код:
assignfile(f,'c:\st.txt'); rewrite(f); closefile(f); .... rewrite(f); closefile(f); |
|
#5
|
|||
|
|||
|
Создает файл, открывает,закрывает. Если есть свой способ, можете показать свой, непринципиально
|
|
#6
|
||||
|
||||
|
Мне не понятно, на кой она его открывает, перезаписывает, потом закрывает, а потом мы пытаемся работать уже с закрытым файлом (а точнее ничего с ним не делаем).
В чем смысл? |
|
#7
|
|||
|
|||
|
да, вы правы, closefile надо перенести в конец, но программа все равно не работает. Я оформил правильно, все модули подключил?
|
|
#8
|
||||
|
||||
|
Пока твоя программа делает полную хрень. Ткнули носом в бред, но видно не понял. Зачем вообще ЭТО нужно:
Код:
...
assignfile(f,'c:\st.txt');
rewrite(f);
closefile(f);
for i := strtoint(edit2.Text) to strtoint(edit1.Text) do
begin
rewrite(f);
closefile(f);
... |
|
#9
|
|||
|
|||
|
С idHTTP я не дружу но ради теста кинул на форму компонент TIdHTTP и у меня каким то мистическим образом Delphi сам прописал в uses такие модули: IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP
Или я слепой или у тебя таких нету, а если их нету должно писать ошибку: Цитата:
Оо На кой черт у тебя в uses прописано: progressbar1, edit1, label1;? Это я чего то не догоняю? |
|
#10
|
||||
|
||||
|
Цитата:
|
|
#11
|
|||
|
|||
|
это всё к тому что код можно выкинуть, а где-то на форуме сравнительно недавно выкладывалась работающая процедура типа DownladInternetFile(url, filename)
|
|
#12
|
|||
|
|||
|
ТС явный начинающий DDoser
![]() Я раньше пробовал так делать, только вся "мощь" пишется в потоке TThread, а на форме только счетчик "удачных скачиваний" реализуемый через TTimer и кнопка старта/убийства потока... |