Апдейтер файлов

Аватара пользователя
poxmel
Сообщения: 29
Зарегистрирован: 02 авг 2011
Здравствуйте! Появилась необходимость в одной программке, а именно:
Маленький экзешник, который пользователь скачает с сайта (или любым другим способом - неважно)
При запуске, программа должна выкачивать файлы с источника.

Подробнее. Если кто знаком, то примерно это похоже не hldsupdatetool.
запускается программа, проверяется соединение с интернетом.
проверяет, отвечает ли сервер.
показывает как бы диалоговое окно, с размером файлов которые будет выкачивать.
и, после запуска скачивания, файлы качаются клиенту, важно что они должны качаться по одному, и в той иерархии, в которой лежат на сервере.

Я в программировании практически не шарю, но при нужде изучу что необходимо.
Помогите хотя бы правильно найти материал (то есть что нужно искать, потому что я пока не особо представляю с чего начать)

и еще пару вопросов. Я знаю что писать лучше в той среде и языке, который хоть как то знаешь.
С этим у меня проблема, я их практически не знаю. Советуют писать на визуал студио (С++)

Направьте пожалуйста в нужное русло. Заранее благодарен за помощь (Извиняюсь за неправильные формулировки)

-- добавлено 29 фев 2012, 15:09 --

up

Аватара пользователя
Distructor
Администратор
Сообщения: 1604
Зарегистрирован: 28 дек 2009
бери любой язык и читай как в нем нарисовать формочку и как работать с сокетами для скачивания файла

Аватара пользователя
SLITE
Сообщения: 203
Зарегистрирован: 01 янв 2010
Вот пример реализации в делфи:
Код

Код: Выделить всё

В uses добавить WinInet

procedure GetInetFile(const fileURL, FileName: String);
const BufferSize = 32768;
var
hSession, hURL: HInternet;
Buffer: array[1..BufferSize] of Byte;
BufferLen: DWORD;
f: File;
sAppName: string;
begin

hSession := InternetOpen( PChar(sAppName),
              INTERNET_OPEN_TYPE_PRECONFIG,
              nil, nil, 0);
try
hURL := InternetOpenURL( hSession,
          PChar(fileURL),
          nil,0,0,0);
try
  AssignFile(f, FileName);
  Rewrite(f,1);
  repeat
  InternetReadFile( hURL, @Buffer,SizeOf(Buffer), BufferLen);
  BlockWrite(f, Buffer, BufferLen);
  until BufferLen = 0;

  CloseFile(f);
finally
  InternetCloseHandle(hURL)
end
finally
InternetCloseHandle(hSession)
end;
 
end;

Вообще в делфи довольно не трудно разобраться, создаешь проект, открывается форма, на нее добавляешь нужный компонент(тупо перетаскиваешь значок нужного компонента на форму), например если нужно сделать действие по клику мышью на кнопку, то добавляешь баттон на форму, кликаешь на него, открывается код примерно с таким именем: procedure Buttin1cli......
begin
здесь пишешь код
end;

В кратце примерно так.

Аватара пользователя
poxmel
Сообщения: 29
Зарегистрирован: 02 авг 2011
спасибо большое


Вернуться в «Вопросы по программированию»