Помогите справиться с задачей

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

Re: Помогите справиться с задачей

Сообщение dangreen » 22.03.2011 20:10:02

evd писал(а):
да пожалуста, скажите как через synapse http узнать размер файла на сервере не скачивая сам файл?

Самый простой способ это послать запрос HEAD
Код: Выделить всё
  http.HTTPMethod('HEAD','http://example.org/file.exe');
  Size:=-1;
  for i := 0 to http.Headers.Count - 1 do
  begin
    if Pos('CONTENT-LENGTH:',UpperCase(http.Headers[i]))>0 then
    begin
      Size:= StrToIntDef(Trim(SeparateRight(http.Headers[i], ' ')), -1);
      break;
    end;
  end;

Но не все сервера поддерживают HEAD


а какие юзесы и переменные к этому?
Аватара пользователя
dangreen
новенький
 
Сообщения: 72
Зарегистрирован: 21.11.2010 20:55:49

Re: Помогите справиться с задачей

Сообщение evd » 23.03.2011 12:30:54

а какие юзесы и переменные к этому?

Код: Выделить всё
uses httpsend, synautil;

var
   http: THTTPSend;
   i,Size: integer;
Аватара пользователя
evd
новенький
 
Сообщения: 21
Зарегистрирован: 13.09.2009 09:42:28
Откуда: Вологда

Re: Помогите справиться с задачей

Сообщение dangreen » 23.03.2011 13:42:57

спасибо! :mrgreen:
Аватара пользователя
dangreen
новенький
 
Сообщения: 72
Зарегистрирован: 21.11.2010 20:55:49

Re: Помогите справиться с задачей

Сообщение v-t-l » 23.03.2011 16:11:45

dangreen писал(а):а какие юзесы и переменные к этому?

Код: Выделить всё
uses Brain, Eyes, Hands;

dangreen
а Вы не блондинко случайно, или на Вашу психику так разрушительно действует MacOS :evil:

Добавлено спустя 1 минуту 1 секунду:
Извините, не сдержался.
v-t-l
энтузиаст
 
Сообщения: 733
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Помогите справиться с задачей

Сообщение ViTality » 23.03.2011 19:28:04

v-t-l писал(а):uses Brain, Eyes, StraightHands;

FXD
ViTality
постоялец
 
Сообщения: 308
Зарегистрирован: 05.10.2007 15:12:02

Re: Помогите справиться с задачей

Сообщение dangreen » 23.03.2011 19:57:12

v-t-l писал(а):
dangreen писал(а):а какие юзесы и переменные к этому?

Код: Выделить всё
uses Brain, Eyes, Hands;

dangreen
а Вы не блондинко случайно, или на Вашу психику так разрушительно действует MacOS :evil:

Добавлено спустя 1 минуту 1 секунду:
Извините, не сдержался.

от брюнетки слышу

Добавлено спустя 19 секунд:
Код: Выделить всё
http.HTTPMethod('HEAD','http://repo.inmac.org/roxinf.xml');
   Size:=-1;
   for y := 0 to http.Headers.Count - 1 do
   begin
   if Pos('CONTENT-LENGTH:',UpperCase(http.Headers[y]))>0 then
    begin
     Size:= StrToIntDef(Trim(SeparateRight(http.Headers[y], ' ')), -1);
     break;
    end;
   end;       


пишет
Код: Выделить всё
An unhandled exception occurred at $00079F05 :
EAccessViolation : Access violation
  $00079F05  THTTPSEND__HTTPMETHOD,  line 394 of /Volumes/NEW/Roxy/RoxFTP//Developer/lazarus/components/synapse/httpsend.pas
Аватара пользователя
dangreen
новенький
 
Сообщения: 72
Зарегистрирован: 21.11.2010 20:55:49

Re: Помогите справиться с задачей

Сообщение Maxizar » 23.03.2011 20:23:46

v-t-l - Получили... Надо было учиться на моем печальном опыте
Maxizar
постоялец
 
Сообщения: 385
Зарегистрирован: 20.03.2010 19:48:14

Re: Помогите справиться с задачей

Сообщение v-t-l » 23.03.2011 23:06:06

Человек явно не пытается учиться, ведет себя как капризная барышня, подход не "помогите разобраться, как это работает", а "покажите, какие буквы и цифры ввести, чтобы получилось". Странно, что еще кто-то отзывается.
v-t-l
энтузиаст
 
Сообщения: 733
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Помогите справиться с задачей

Сообщение ViTality » 23.03.2011 23:35:32

да вот я тоже удивился как после этого сообщения ему продолжили помогать.
видимо v-t-l решил потренировать свое человеколюбие и терпимость к хамству...

последнее время вопросы в этом раздел все больше и больше мне напоминают нечто - "мне тут по учебе пришлось залезть в вашу яму с д...мом , так что нырнули все разом по быстрому, написали мне че-как, а то у меня уже туфельки заморались"
ViTality
постоялец
 
Сообщения: 308
Зарегистрирован: 05.10.2007 15:12:02

Re: Помогите справиться с задачей

Сообщение dangreen58 » 07.04.2011 04:30:53

помогите еще разик
используя TProcess мне нужно записать в текстовую преременную вывод.
ну например при команде "df -h" вывод такой:
Код: Выделить всё
dangreen:~ dangreen$ df -h
Filesystem      Size   Used  Avail Capacity  Mounted on
/dev/disk1s2   231Gi   86Gi  146Gi    37%    /
devfs          188Ki  188Ki    0Bi   100%    /dev
map -hosts       0Bi    0Bi    0Bi   100%    /net
map auto_home    0Bi    0Bi    0Bi   100%    /home
/dev/disk1s3    66Gi  203Mi   66Gi     1%    /Volumes/Rezerv HD
/dev/disk0s2   1.4Ti  1.3Ti   35Gi    98%    /Volumes/Movie
/dev/disk2s2   726Gi  712Gi   14Gi    99%    /Volumes/Media
/dev/disk2s3    19Gi   10Gi  8.5Gi    55%    /Volumes/Untitled
/dev/disk3     7.0Mi  5.9Mi  1.1Mi    84%    /Volumes/Untitled 1

как его ловить я понял, но вывод curl таким способом не ловится ...
dangreen58
незнакомец
 
Сообщения: 3
Зарегистрирован: 29.03.2011 14:36:10

Re: Помогите справиться с задачей

Сообщение dangreen58 » 13.04.2011 18:56:15

как вызвать в лазарус окно авторизации юзера http://puu.sh/1ym7
для того чтобы можно было через TProcess использовать sudo команды?
dangreen58
незнакомец
 
Сообщения: 3
Зарегистрирован: 29.03.2011 14:36:10

Пред.

Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16

Рейтинг@Mail.ru